:root{--bg:#14110f;--bg-elevated:#1f1a17;--fg:#f3ece4;--fg-muted:#b3a89c;--accent:#e8853a;--accent-strong:#ffa05a;--accent-contrast:#1a1207;--border:#36302a;--focus:#ffc785;--ok:#6fbf73;--radius:16px;--maxw:560px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5}.screen{min-height:100dvh;display:flex;flex-direction:column;max-width:var(--maxw);margin:0 auto;padding:24px 20px 32px}.progress{height:6px;background:var(--border);border-radius:99px;overflow:hidden;margin-bottom:28px}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-strong));transition:width .35s ease}.step-body{flex:1 1;display:flex;flex-direction:column;justify-content:center}h1.question{font-size:clamp(1.5rem,5vw,2rem);font-weight:700;letter-spacing:-.01em;margin:0 0 8px}p.help{color:var(--fg-muted);margin:0 0 24px;font-size:.95rem}.options{display:grid;grid-gap:12px;gap:12px}.option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:var(--bg-elevated);color:var(--fg);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px 18px;font-size:1.05rem;cursor:pointer;transition:border-color .15s ease,transform .05s ease,background .15s ease}.option:hover{border-color:var(--accent)}.option:active{transform:scale(.99)}.option[aria-checked=true],.option[aria-pressed=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--bg-elevated))}.option .check{margin-left:auto;color:var(--accent-strong);font-weight:700}:where(button,.option,input,a):focus-visible{outline:3px solid var(--focus);outline-offset:2px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:99px;padding:15px 22px;font-size:1.05rem;font-weight:700;cursor:pointer;background:var(--accent);color:var(--accent-contrast);transition:background .15s ease,opacity .15s ease}.btn:hover{background:var(--accent-strong)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.secondary{background:transparent;color:var(--fg-muted);border:1.5px solid var(--border)}.footer-actions{display:flex;gap:12px;align-items:center;margin-top:24px}.footer-actions .spacer{flex:1 1}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:.9rem;color:var(--fg-muted)}.field input[type=email],.field input[type=number],.field input[type=tel],.field input[type=text]{background:var(--bg-elevated);border:1.5px solid var(--border);border-radius:12px;color:var(--fg);padding:14px 16px;font-size:1.05rem}.range-row{display:flex;gap:16px}.range-row .field{flex:1 1}.checkbox-row{display:flex;gap:10px;align-items:flex-start;margin:10px 0;color:var(--fg-muted);font-size:.95rem}.reveal-archetype{font-size:clamp(1.8rem,6vw,2.6rem);font-weight:800;background:linear-gradient(90deg,var(--accent),var(--accent-strong));-webkit-background-clip:text;background-clip:text;color:transparent;margin:0 0 12px}.reveal-count{color:var(--accent-strong);font-weight:700}.analysis{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.spinner{width:56px;height:56px;border-radius:50%;border:4px solid var(--border);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.error{color:#ff8a7a;font-size:.9rem;margin-top:8px}.note{color:var(--fg-muted);font-size:.85rem;margin-top:16px}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:3s}.progress>span{transition:none}}