.quiz{scroll-margin-top:5rem}.quiz-shell{border:1px solid var(--line);background:radial-gradient(80% 50% at 50% 0,#a8336a2e,#0000 70%),linear-gradient(#321b3fd9,#1a1029d9);border-radius:26px;margin:1rem 0 0;padding:clamp(1.25rem,4vw,2.25rem);position:relative;box-shadow:0 30px 60px -30px #000000b3}.quiz-screen{gap:1.1rem;padding:.5rem 0;display:grid}.quiz-screen h2{outline:none;margin:0;font-size:clamp(1.8rem,6vw,2.4rem)}.quiz-sub,.quiz-meta{color:var(--muted);margin:0}.quiz-hook{font-family:var(--font-display);color:var(--blush);margin:0;font-size:1.5rem;font-style:italic;line-height:1.3}.quiz-count{margin:0}.btn-lg{justify-self:start;min-height:56px;font-size:1.1rem}.progress{background:#f8efe61a;border-radius:999px;height:6px;margin-bottom:1.25rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--wine-2), var(--rose), var(--gold-2));border-radius:999px;height:100%;transition:width .35s}.birthday-fields{grid-template-columns:2fr 1fr;gap:.75rem;display:grid}.field{gap:.35rem;font-size:.95rem;font-weight:600;display:grid}.field select,.field input[type=text]{min-height:54px;font:inherit;color:var(--text);background:#100a1d99;border:1px solid #d9b56c73;border-radius:14px;padding:.6rem .85rem;font-weight:500}.field select option{background:var(--night-2);color:var(--text)}.field select:focus-visible,.field input:focus-visible{border-color:var(--gold-2)}.field select:disabled{opacity:.5}.options{gap:.7rem;display:grid}.option{text-align:left;min-height:62px;font:inherit;color:var(--text);cursor:pointer;background:#100a1d73;border:1px solid #d9b56c4d;border-radius:16px;align-items:center;gap:.9rem;padding:.9rem 1.15rem;font-size:1.05rem;line-height:1.4;transition:border-color .15s,background-color .15s,transform .15s;display:flex}.option-key{border:1px solid var(--line);width:30px;height:30px;font-family:var(--font-caps);color:var(--gold);border-radius:50%;flex:none;place-items:center;font-size:.8rem;display:grid}.option:hover{border-color:var(--rose);background:#f2a7bd1a;transform:translate(2px)}.option.is-selected{border-color:var(--gold-2);background:#d9b56c24}.option-symbol{color:var(--gold-2);font-size:1.5rem}.option-note{color:var(--muted);font-size:.9rem}.link-btn{min-height:44px;font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-self:start;padding:.5rem 0;font-weight:600}.link-btn:hover{color:var(--text)}@media (prefers-reduced-motion:reduce){.option{transition:none}.option:hover{transform:none}}.flip{perspective:1400px;max-width:22rem;margin:1rem auto .75rem}.flip-inner{transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.7,.2,1);position:relative}.flip.is-flipped .flip-inner{transform:rotateY(180deg)}.flip-back,.flip-front{-webkit-backface-visibility:hidden;backface-visibility:hidden;color:var(--cream);border:1px solid var(--gold);background:radial-gradient(90% 55% at 50% 0,#a8336a73,#0000 70%),linear-gradient(#3a1f49,#1b0f2a);border-radius:50% 50% 24px 24px/150px 150px 24px 24px;box-shadow:0 0 0 6px #100a1de6,0 0 0 7px #d9b56c66,0 30px 60px -20px #f2a7bd59}.flip-back{place-items:center;display:grid;position:absolute;inset:0}.flip-back svg{width:45%;height:auto;color:var(--gold)}.flip-front{text-align:center;padding:3rem 1.5rem 2rem;transform:rotateY(180deg)}.reveal-kicker{font-family:var(--font-caps);text-transform:uppercase;letter-spacing:.22em;color:var(--gold);margin:0;font-size:.78rem;font-weight:600}.reveal-sigil{color:var(--gold-2);margin:1rem auto .25rem;display:block}.reveal-name{color:var(--cream);outline:none;margin:.5rem 0;font-size:clamp(2.4rem,9vw,3rem)}.reveal-tagline{color:var(--blush);font-family:var(--font-display);margin:0;font-size:1.3rem;font-style:italic;line-height:1.35}.reveal-sign{font-family:var(--font-caps);letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin:1.25rem 0 0;font-size:.85rem}@media (prefers-reduced-motion:reduce){.flip-inner,.progress-fill{transition:none}}.center{text-align:center}.result-block{margin-top:2.5rem}.result-block>h2{margin:0 0 .75rem;font-size:clamp(1.8rem,6vw,2.3rem)}.result-block h3{color:var(--gold-2);margin:1.4rem 0 .25rem;font-size:1.35rem}.result-block ul{padding-left:1.2rem}.result-block li::marker{color:var(--gold)}.share-card{gap:1rem;margin-top:2.5rem;display:grid}.share-card h2{margin:0;font-size:clamp(1.8rem,6vw,2.3rem)}.share-controls{gap:1rem;display:grid}.format-toggle{border:0;flex-wrap:wrap;gap:1rem;margin:0;padding:0;display:flex}.format-toggle legend{margin-bottom:.35rem;font-size:.95rem;font-weight:600}.format-toggle label{align-items:center;gap:.4rem;min-height:44px;display:flex}.format-toggle input{accent-color:var(--gold)}.card-canvas{border:1px solid var(--line);border-radius:14px;justify-self:center;width:100%;max-width:300px;height:auto;box-shadow:0 20px 40px -15px #000000b3}.card-story{aspect-ratio:9/16}.card-pin{aspect-ratio:2/3}.share-buttons{flex-wrap:wrap;gap:.75rem;display:flex}.share-status{color:#9fe0b8;flex-basis:100%;min-height:1.5em;margin:0;font-weight:600}.match-card{color:var(--text);align-items:center;gap:1.1rem;margin-top:1rem;text-decoration:none;display:flex}.match-card h3{margin:0}.match-card p{margin:.25rem 0 0}.match-card .match-sigil{color:var(--gold-2);flex:none}.match-score{color:var(--rose);font-weight:600}.sign-matches{gap:.6rem;margin-top:1rem;list-style:none;display:grid;padding:0!important}.sign-matches li{align-items:center;gap:.85rem;display:flex}.sign-symbol{color:var(--gold-2);text-align:center;width:2rem;font-size:1.5rem}.sign-score{color:var(--muted);text-align:right;margin-left:auto;font-size:.9rem}.next-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.match-card:hover{color:var(--text);border-color:var(--gold)}.compat-form,.compat-people{gap:1.25rem;display:grid}@media (width>=680px){.compat-people{grid-template-columns:1fr 1fr}}.compat-person{border:1px solid var(--line);border-radius:18px;min-width:0;margin:0;padding:1rem 1rem .75rem}.compat-person legend{padding:0 .4rem}.compat-sign{min-height:2rem;font-family:var(--font-display);align-items:center;gap:.4rem;margin:.75rem 0 0;font-size:1.35rem;font-weight:600;display:flex}.muted{color:var(--muted);font-weight:400}.compat-sign .muted{font-size:1rem;font-family:var(--font-body)}.cusp-pick{flex-wrap:wrap;align-items:center;gap:.25rem 1rem;margin-top:.5rem;display:flex}.cusp-pick .quiz-sub{flex-basis:100%;font-size:.9rem}.cusp-pick label{align-items:center;gap:.4rem;min-height:44px;display:flex}.cusp-pick input{accent-color:var(--gold)}.compat-result{margin-top:2.5rem;scroll-margin-top:5rem}.compat-result h2{outline:none;margin:.3rem 0 0;font-size:clamp(2.2rem,7vw,3rem)}.score-ring{width:170px;margin:0 auto .75rem;position:relative}.score-ring svg{width:100%;height:auto;display:block}.ring-track{fill:none;stroke:#f8efe61a;stroke-width:7px}.ring-fill{fill:none;stroke:var(--rose);stroke-width:7px;stroke-linecap:round}.score-num{font-family:var(--font-display);color:var(--gold-2);place-items:center;font-size:3.4rem;font-weight:600;display:grid;position:absolute;inset:0}
