:root{--ink:#34263a;--muted:#776b7a;--plum:#5b245f;--plum2:#7a3b7d;--gold:#c4914b;--cream:#fffaf3;--paper:#fff;--line:#eadfd5;--soft:#f6edf4;--shadow:0 22px 70px rgba(67,38,61,.13)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 10%,#f4e5ee 0,transparent 32%),radial-gradient(circle at 90% 85%,#f3e8d6 0,transparent 30%),#fbf8f4;color:var(--ink);font-family:"IBM Plex Sans",sans-serif;font-size:16px}.shell{width:min(920px,calc(100% - 32px));margin:auto;padding:30px 0}.brand{display:flex;align-items:center;gap:12px;margin:0 0 22px 4px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(91,36,95,.22);border-radius:50%;color:var(--gold);font-size:20px}.brand span,.brand strong{display:block}.brand span{font-size:.68rem;letter-spacing:.18em;color:var(--muted)}.brand strong{font-family:"Lora",serif;font-size:1.08rem;color:var(--plum)}.app-card{position:relative;min-height:650px;background:rgba(255,255,255,.95);border:1px solid rgba(196,145,75,.2);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.app-card:before,.app-card:after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(196,145,75,.13);border-radius:50%;pointer-events:none}.app-card:before{top:-120px;right:-70px}.app-card:after{bottom:-135px;left:-70px}.step{display:none;padding:54px 9% 48px;animation:rise .36s ease}.step.active{display:block}@keyframes rise{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}h1,h2{font-family:"Lora",serif;margin:0;color:var(--ink)}h1{font-size:clamp(2.7rem,7vw,5rem);line-height:.98;letter-spacing:-.035em;text-align:center}h1 em{font-style:normal;color:var(--plum)}h2{font-size:clamp(1.9rem,4.5vw,3rem);line-height:1.1;text-align:center}.eyebrow{text-align:center;color:var(--gold);font-weight:700;letter-spacing:.18em;font-size:.72rem;margin:0 0 18px}.lead,.sub{max-width:660px;margin:22px auto;color:var(--muted);text-align:center;line-height:1.75}.lead{font-size:1.08rem}.intro-symbol{margin:0 auto 22px;width:78px;height:78px;border:1px solid rgba(196,145,75,.35);border-radius:50%;display:grid;place-items:center;font-family:serif;font-size:2rem;color:var(--plum);background:var(--cream)}.notice{max-width:690px;margin:28px auto;padding:18px 22px;border-left:3px solid var(--gold);background:var(--cream);color:#65566a;line-height:1.65;border-radius:4px 12px 12px 4px;font-size:.92rem}.primary,.outline,.back,.choice,.segmented button{font:inherit;cursor:pointer}.primary{display:flex;align-items:center;justify-content:center;gap:26px;margin:30px auto 0;padding:15px 24px;min-width:240px;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,var(--plum),var(--plum2));font-weight:600;box-shadow:0 10px 22px rgba(91,36,95,.2)}.primary:hover{transform:translateY(-1px)}.primary:disabled{opacity:.38;cursor:not-allowed;transform:none}.primary.small{min-width:185px;margin:0}.micro{text-align:center;color:#998f99;font-size:.76rem}.progress-wrap{padding:24px 9% 0}.progress-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem;margin-bottom:9px}.progress{height:5px;background:#f0e9e5;border-radius:10px;overflow:hidden}.progress i{display:block;width:16%;height:100%;background:linear-gradient(90deg,var(--gold),#d7b77c);transition:width .35s}.choice-grid{display:grid;gap:14px;margin:30px auto;max-width:710px}.cols-3{grid-template-columns:repeat(3,1fr)}.choice{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px 14px;color:var(--ink);transition:.2s}.choice:hover{border-color:#b98abd;transform:translateY(-2px)}.choice.selected{border-color:var(--plum);box-shadow:0 0 0 2px rgba(91,36,95,.09);background:var(--soft)}.choice-icon{display:block;font-size:1.5rem;color:var(--gold);margin-bottom:9px}.choice b,.choice small{display:block}.choice small{margin-top:7px;color:var(--muted);font-size:.76rem;line-height:1.45}.choice-grid.compact{grid-template-columns:repeat(4,1fr);max-width:760px}.compact .choice{padding:14px 10px;min-height:60px;font-size:.88rem}.counter{margin:0 auto;text-align:center;color:var(--plum);font-size:.82rem;font-weight:600}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:36px}.back{border:0;background:transparent;color:var(--muted);padding:13px}.field-group{max-width:650px;margin:30px auto}.field-group label{display:block;font-weight:600;margin-bottom:12px}.field-group label span{font-weight:400;color:var(--muted);font-size:.8rem}.segmented{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);padding:5px;border-radius:14px;background:#fbf8f6}.segmented button{border:0;background:transparent;padding:13px 8px;border-radius:10px;color:var(--muted)}.segmented button.selected{background:#fff;color:var(--plum);box-shadow:0 3px 12px rgba(60,40,55,.09);font-weight:600}input{width:100%;border:1px solid var(--line);border-radius:12px;padding:14px 15px;font:inherit;color:var(--ink);outline:none}input:focus{border-color:var(--plum);box-shadow:0 0 0 3px rgba(91,36,95,.08)}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px auto;max-width:760px}.name-card{text-align:left;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;cursor:pointer;transition:.2s;color:var(--ink)}.name-card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 12px 30px rgba(70,40,60,.1)}.name-card strong{font-family:"Lora",serif;font-size:1.55rem;color:var(--plum);display:block;margin-bottom:10px}.name-card p{color:var(--muted);font-size:.82rem;line-height:1.55;margin:0 0 15px}.name-card span{color:var(--plum);font-size:.78rem;font-weight:600}.result-actions{display:flex;justify-content:center;align-items:center;gap:20px}.outline{border:1px solid var(--plum);color:var(--plum);background:#fff;border-radius:999px;padding:12px 18px}.chosen-wrap{text-align:center}.chosen-name{font-family:"Lora",serif;font-size:clamp(3.2rem,9vw,6rem);color:var(--plum);line-height:1;margin:15px 0}.ornament{color:var(--gold);margin:20px}.meaning{font-family:"Lora",serif;font-size:1.18rem;line-height:1.7}.qualities{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin:25px}.qualities span{padding:8px 13px;border-radius:999px;background:var(--soft);color:var(--plum);font-size:.82rem}blockquote{max-width:620px;margin:28px auto;padding:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:"Lora",serif;font-size:1.25rem;line-height:1.6;color:#5d4a61}.reminder{max-width:650px;margin:25px auto;color:var(--muted);font-size:.85rem;line-height:1.65}footer{text-align:center;color:#8e858e;font-size:.75rem;padding:22px}@media(max-width:680px){.shell{width:min(100% - 18px,920px);padding:10px 0}.brand{margin:8px 8px 14px}.app-card{border-radius:20px;min-height:670px}.step{padding:38px 20px 34px}.progress-wrap{padding:20px 20px 0}.cols-3,.choice-grid.compact,.suggestions{grid-template-columns:1fr}.cols-3{gap:10px}.cols-3 .choice{text-align:left;padding:15px 18px}.choice-icon{display:inline;margin-right:12px}.choice small{margin-left:34px}.choice-grid.compact{grid-template-columns:repeat(2,1fr);gap:9px}.compact .choice{min-height:54px}.suggestions{gap:10px}.name-card{padding:18px}.nav{margin-top:25px}.segmented button{font-size:.79rem;padding:12px 4px}.result-actions{flex-direction:column;gap:7px}h1{font-size:3.1rem}}
