@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,650;9..144,700&family=Sora:wght@400;500;600&display=swap");:root{--ink:#0e1412;--ink-soft:#1a2420;--panel:rgba(24,36,31,0.72);--line:rgba(214,186,122,0.18);--text:#e8efe9;--muted:#8fa396;--accent:#d6ba7a;--accent-strong:#e8c96a;--warn:#e07a5f;--ok:#6fbf8a;--glow:rgba(214,186,122,0.12);--radius:18px;--font-display:"Fraunces",Georgia,serif;--font-body:"Sora",system-ui,sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--text);background:radial-gradient(1200px 700px at 10% -10%,rgba(214,186,122,.16),transparent 55%),radial-gradient(900px 600px at 100% 0,rgba(78,140,110,.18),transparent 50%),linear-gradient(160deg,#0b100e,#121a17 45%,#0d1311);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");z-index:0}a{color:var(--accent)}button{font-family:inherit}.shell{position:relative;z-index:1;width:min(720px,calc(100% - 2rem));margin:0 auto;padding:3.5rem 0 5rem}.brand{display:flex;flex-direction:column;gap:.35rem;margin-bottom:2.5rem;animation:rise .7s ease both}.brand-mark{font-family:var(--font-display);font-size:clamp(2.4rem,6vw,3.4rem);font-weight:650;letter-spacing:-.03em;line-height:1.05;color:var(--text)}.brand-sub{color:var(--muted);font-size:.95rem;max-width:36ch;line-height:1.5}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2rem);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 24px 60px rgba(0,0,0,.28);animation:rise .75s ease both}.eyebrow{display:inline-block;color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.85rem}h1,h2{font-family:var(--font-display);font-weight:650;letter-spacing:-.02em;margin:0 0 .85rem;line-height:1.15}h1{font-size:clamp(1.7rem,4vw,2.2rem)}h2{font-size:clamp(1.5rem,3.5vw,1.9rem)}.lede{line-height:1.65;margin:0 0 1.5rem;font-size:.98rem}.disclaimer,.lede{color:var(--muted)}.disclaimer{border-left:2px solid var(--accent);padding:.85rem 0 .85rem 1rem;margin:0 0 1.75rem;font-size:.82rem;line-height:1.6;background:linear-gradient(90deg,var(--glow),transparent)}.actions{display:flex;flex-wrap:wrap;gap:.75rem}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;border-radius:999px;padding:.85rem 1.35rem;font-size:.92rem;font-weight:600;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--accent);color:#1a160c}.btn-primary:hover{background:var(--accent-strong)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--line)}.btn-ghost:hover{border-color:rgba(214,186,122,.45);background:rgba(214,186,122,.08)}.progress-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.4rem}.progress-meta{color:var(--muted);font-size:.78rem;letter-spacing:.04em}.progress-track{flex:1 1;height:4px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#a9894d,var(--accent-strong));border-radius:inherit;transition:width .35s ease}.dim-tag{display:inline-block;margin-bottom:.75rem;padding:.28rem .65rem;border-radius:999px;border:1px solid var(--line);color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.question-text{font-family:var(--font-display);font-size:clamp(1.25rem,3.2vw,1.55rem);font-weight:500;line-height:1.35;margin:0 0 1.6rem}.scale{display:grid;grid-gap:.55rem;gap:.55rem}.scale-option{display:grid;grid-template-columns:2rem 1fr;align-items:center;grid-gap:.75rem;gap:.75rem;width:100%;text-align:left;padding:.85rem 1rem;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.02);color:var(--text);cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}.scale-option:hover{border-color:rgba(214,186,122,.45);background:rgba(214,186,122,.07)}.scale-option.selected{border-color:var(--accent);background:rgba(214,186,122,.14);box-shadow:inset 0 0 0 1px rgba(214,186,122,.2)}.scale-num{width:1.7rem;height:1.7rem;display:grid;place-items:center;border-radius:50%;background:rgba(0,0,0,.25);color:var(--accent);font-size:.82rem;font-weight:600}.nav-row{display:flex;justify-content:space-between;gap:.75rem;margin-top:1.4rem}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem;margin:1.4rem 0 1.75rem}.score-card{padding:.9rem .8rem;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18)}.score-card span{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.score-card strong{font-family:var(--font-display);font-size:1.45rem;font-weight:650;color:var(--accent-strong)}.archetype-symbol{color:var(--muted);font-size:.82rem;margin:-.35rem 0 1rem}.rules{list-style:none;padding:0;margin:0 0 1.5rem;display:grid;grid-gap:.65rem;gap:.65rem}.rules li{position:relative;padding:.85rem .95rem .85rem 2.2rem;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);line-height:1.5;font-size:.92rem}.rules li:before{content:"";position:absolute;left:.9rem;top:1.15rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent)}.warning,.watchout{padding:1rem 1.1rem;border-radius:14px;margin-bottom:1rem;line-height:1.55;font-size:.9rem}.watchout{background:rgba(111,191,138,.08);border:1px solid rgba(111,191,138,.25)}.warning{background:rgba(224,122,95,.1);border:1px solid rgba(224,122,95,.3)}.warning strong,.watchout strong{display:block;margin-bottom:.35rem;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.watchout strong{color:var(--ok)}.warning strong{color:var(--warn)}.footer-note{margin-top:1.5rem;color:var(--muted);font-size:.75rem;line-height:1.55}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.shell{padding-top:2.2rem}.score-grid{grid-template-columns:1fr}.actions{flex-direction:column}.btn{width:100%}}