/* Approved direction2 + connected planets1. Decorative assets never show progress. */
:root{--ink:#100b1b;--panel:#181222;--blue:#71d8fa;--pink:#f3a0d9;--orange:#ff6900;--white:#faf7fc;--muted:#c1b6cd;--line:#51415d;background:var(--ink)}
body{background:var(--ink) url('./art/night-sky.webp') center top / max(100%,800px) auto no-repeat;min-height:100svh}
.header{height:auto;min-height:125px;border:0;justify-content:center;flex-direction:column;gap:12px;padding:28px 24px 0}
.brand{flex-direction:column;gap:12px;align-items:center}
.brand img:first-child{width:205px;height:auto}
.brand .tag{font:500 14px Inter,sans-serif;color:var(--blue);letter-spacing:.38em;margin-left:.38em}
.flow-motif{display:block;width:120px;height:80px;object-fit:contain}
.is-home .flow-motif{display:none}
.hero{display:block;max-width:780px;margin:0 auto;padding:0 24px 30px;min-height:0;text-align:center}
.connection-hero{display:block;width:168px;height:auto;margin:0 auto 8px;object-fit:contain}
.hero h1{font-size:clamp(2.8rem,6vw,4.25rem);letter-spacing:-.055em;line-height:1.08}
.perfect{color:var(--blue)}.match{color:var(--pink)}
.hero .lead{font-size:1.125rem;line-height:1.65;max-width:630px;margin:18px auto 22px;color:var(--white)}
.hero .primary{min-width:min(100%,350px);margin-bottom:14px}
.hero-joke{font-size:18px;line-height:1.7;color:var(--muted);max-width:540px;margin:38px auto 26px;padding-top:25px;border-top:1px solid var(--line)}
.hero-note{max-width:590px;margin:18px auto 0;font-size:.9375rem}
.match-about{max-width:650px;margin:36px auto;padding:0 24px;line-height:1.7;font-size:1.125rem}.match-about h2{margin-bottom:16px}
.primary,.secondary{border-radius:40px;min-height:56px;padding:16px 26px;line-height:1.4}
.primary{color:#140a00;border-color:var(--orange);box-shadow:0 6px 32px #ff690025}
.primary:hover:not(:disabled){background:#ff883d}
.secondary{background:#1b1329;border-color:var(--line);box-shadow:none}
.text-button{color:var(--blue);min-height:44px}
.text-button:hover{color:var(--white)}
.primary:disabled,.secondary:disabled{opacity:1;background:#312739;border-color:#695872;color:#aaa0b3;box-shadow:none}
button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--pink);outline-offset:4px}
.how{max-width:780px;margin:10px auto 24px;gap:24px;padding:0 24px}
.how>div{border-color:var(--line)}.how b{color:var(--pink)}
.honesty{margin-bottom:30px}
.stage{width:calc(100% - 40px);max-width:650px;padding-top:18px;padding-bottom:35px}
.center{max-width:580px;padding-top:24px}
.center h1{font-size:clamp(34px,5vw,51px);line-height:1.15;letter-spacing:-.045em}
.center .lead{margin:22px auto;color:var(--muted);font-size:1.125rem;line-height:1.7}
.center>.primary,.center>.secondary,.center>.text-button{margin:8px 0;max-width:100%;white-space:normal}
.center .small,.waiting-status{font-size:1rem;line-height:1.7}
.center .stack{max-width:390px;margin:26px auto}
.eyebrow{font-family:Inter,sans-serif;font-weight:600;letter-spacing:.065em;color:var(--pink);font-size:12px}
.eyebrow:before{display:none}
.quiz-top{gap:10px}.counter{font-family:Inter,sans-serif}
.progress{height:4px;gap:4px}.progress i{border-radius:3px}.progress i.done{background:var(--blue)}.progress i.current{background:var(--pink);height:7px;transform:translateY(-1px)}
.question-card{background:var(--panel);border-color:var(--line);border-radius:22px;padding:34px;min-height:350px;box-shadow:0 14px 45px #05020a40}
.question-card h1{line-height:1.15;font-size:clamp(29px,4vw,40px)}
.question-card .eyebrow{margin-bottom:22px}
.card-note:empty{display:none}.card-note{margin:14px 0 24px}
.options{margin-top:26px;gap:12px}
.option,.swipe-option{border:1px solid #665473;background:#1d162b;border-radius:12px;min-height:56px;font-size:15px;padding:16px 18px;line-height:1.45}
.option.selected{background:#30203b;border:2px solid var(--pink);padding:15px 17px}
.option.checkbox{gap:14px}.option.checkbox>span{color:var(--white)}
input[type=checkbox]{width:20px;height:20px;accent-color:var(--pink)}
.number-answer select{border-radius:12px;background:#21192e;border-color:#665473}
.swipe-option strong{font-size:15px}
.quiet,.swipe-hint{font-size:12px;color:var(--muted)}
.review-list,.profile-tools,.my-tests{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:0 22px}
.profile-tools{padding-block:22px}.my-tests{max-width:740px;padding-block:20px}
.review-row,.test-link{border-color:var(--line)}.review-row p{font-size:13px}
.test-link{gap:16px;line-height:1.6}.test-link span:last-child{text-align:right}
.waiting-status{line-height:1.7}.wait-clock{font-family:Inter,sans-serif;font-variant-numeric:tabular-nums;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px;color:var(--blue)}
.results{width:calc(100% - 40px);max-width:780px;margin:0 auto;padding:20px 0 35px}
.results h1{font-size:clamp(35px,5.7vw,58px);letter-spacing:-.045em;line-height:1.15}
.results>.lead{font-size:15px;color:var(--muted);margin:0 0 30px}
.shared-report,.personal-report{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:32px}
.report-prose{max-width:65ch;font-size:1.125rem;line-height:1.7;text-align:left;color:#eee7f3}
.report-prose p+p{margin-top:22px}
.personal-report{margin-top:24px}.personal-report .small{margin-bottom:18px}
.astrology-report{border-color:var(--line)}.astrology-report h2{color:var(--pink)}.astrology-report p{font-size:1.125rem;line-height:1.7;color:#eee7f3}
.score{color:var(--blue)}.score[data-testid=score-rest]{color:var(--pink)}.score.medium{color:#f4c780}.score.low{color:#ffa58c}.score.unknown{color:var(--muted)}
.score figcaption{font-size:.875rem}.score-note{font-size:.9375rem}.score-warning{text-align:left;font-size:1rem}.score text{font-family:Inter,sans-serif}
.result-actions{flex-wrap:wrap;margin-top:28px;gap:16px}
.notice{background:#d6c9ed;color:#160c21;border-radius:12px}.notice.error{background:#ffcebc;color:#3a1408}
footer{text-align:center;border:0;margin:20px auto 0;padding:24px;font-size:12px;color:var(--muted)}
@media(hover:hover) and (pointer:fine){.option:hover,.swipe-option:hover{border-color:#b398c9;background:#292034}}
@media(max-width:760px){
  .header{min-height:103px;padding-top:24px;gap:8px}.brand{gap:10px}.brand img:first-child{width:165px}.brand .tag{font-size:11px}.flow-motif{width:96px;height:64px}
  .hero{padding:0 22px 28px}.connection-hero{width:156px;max-width:100%;margin:4px auto 12px}.hero h1{font-size:clamp(39px,10.3vw,62px)}
  .hero .lead{font-size:1.125rem;line-height:1.65;margin:18px auto 22px}.hero .primary{width:100%;max-width:390px;min-width:0}.hero-joke{font-size:15px;margin-top:30px}.hero-note{font-size:.9375rem}
  .how{margin:0 auto 24px;padding:0 22px;gap:14px}.how span{font-size:1rem;line-height:1.6}
  .stage{width:calc(100% - 32px);padding-top:18px}.center{padding-top:24px}.center .lead{font-size:1.125rem;line-height:1.7}.center h1{font-size:35px}
  .question-card{padding:25px 21px;border-radius:19px;min-height:340px}.question-card h1{font-size:31px}.question-card .eyebrow{font-size:11px}.quiz-top>.small{font-size:10px}.counter{font-size:16px}
  .option,.swipe-option{font-size:15px;min-height:56px}.swipe-option strong{font-size:14px}.quiet{font-size:11px}
  .results{width:calc(100% - 32px);margin:0 auto;padding-top:20px}.results h1{font-size:35px}.shared-report,.personal-report{padding:25px 20px;border-radius:20px}.report-prose{font-size:1.125rem;line-height:1.7}
  .astrology-report p{font-size:1.125rem}.match-scores{gap:9px;margin-top:28px;padding-top:24px}.score figcaption{font-size:.875rem}.score svg{max-width:105px}.score-warning{font-size:1rem}.result-actions{align-items:stretch;gap:10px}.my-tests{width:calc(100% - 40px)}
}
.contact-field { display: grid; gap: .65rem; text-align: left; margin: 1.5rem 0; }
.contact-field input { box-sizing: border-box; width: 100%; min-width: 0; background: #211631; color: #f6f2ff; border: 1px solid #85729f; border-radius: 12px; padding: 14px 16px; font: inherit; }
.contact-field input:focus-visible { outline: 2px solid #b8b1ff; outline-offset: 3px; }
