:root{--bg:#241323;--ink:#fff2df;--muted:#c9b7c5;--line:#594052;--gold:#e3c78b;--coral:#ff826b}body{background:radial-gradient(ellipse at 80% 0,#452031,transparent 60%),var(--bg);color:var(--ink);font-size:16px}header{max-width:1400px;margin:auto;padding:24px 6%;border-color:#ffffff16}.brand{font:30px Georgia,serif;letter-spacing:-1px;font-weight:400}nav{gap:24px}nav a{font-size:14px}.hero{padding-top:40px;min-height:660px;gap:30px}.hero h1{font-size:clamp(56px,6.8vw,94px);letter-spacing:-3px;line-height:1.04}.hero em{color:#ff9d87;font-style:normal}.intro>p{color:#e0cfd8;font-size:20px}.eyebrow{color:var(--gold);font-size:10px}.button{border-radius:40px;background:var(--coral);color:#281422;font-weight:650;min-height:52px;justify-content:center;padding:16px 28px;box-shadow:none}.button:hover{background:#ff9f89;color:#281422}.button:disabled{opacity:.5;cursor:default}.hero-cta{min-width:245px;font-size:18px}.mini{color:#cbb9c4;font-size:13px}.hero-portraits{text-align:center}.hero-portraits img{width:100%;max-height:580px;object-fit:contain;border-radius:28px;display:block}.hero-portraits small{color:#cbb9c4;font-size:11px}.member-section,.workspace,.method{padding:64px 6%;border-top:1px solid var(--line)}h2{font-size:clamp(32px,4vw,48px);letter-spacing:-1.2px}h3{font-family:Georgia,serif;font-size:29px;font-weight:400;letter-spacing:-.6px}.panel,.result,.notice,.inbox-entry{background:#321d30;color:var(--ink);border:1px solid var(--line);border-radius:24px;box-shadow:none}.panel{padding:30px}.hint,.small,.optional,.member-intro,.section-heading>p,.result p{color:var(--muted)}label{color:var(--ink);font-size:14px}input,select,textarea{background:#40283c;color:var(--ink);border:1px solid #7f6678;border-radius:12px;min-height:50px;font:inherit;max-width:100%;color-scheme:dark}input::placeholder,textarea::placeholder{color:#c5adbf}input[type=checkbox]{min-height:auto;accent-color:var(--coral)}input:focus,select:focus,textarea:focus{outline:2px solid var(--coral);outline-offset:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.text-button{color:#ffb5a2}.tag,.pill,.visibility-label{background:#493044;border-color:#795069;color:#f5d6c6}.visibility-label.visible{background:#345146;color:#ecfff2}.onboarding{max-width:620px;margin:32px auto}.onboarding h2{margin-top:18px}.quick-intents{display:grid;gap:12px;margin:24px 0}.intent-choice{padding:20px;text-align:left;background:#392336;color:var(--ink);border:1px solid #6b4e64;border-radius:16px;font:inherit;cursor:pointer}.intent-choice strong{display:block;font-size:18px;font-weight:550}.intent-choice small{display:block;color:var(--muted);margin-top:5px}.intent-choice[aria-pressed=true]{border:2px solid var(--coral);background:#50303f}.onboarding>.button{width:100%}#member-auth{max-width:620px;margin:32px auto;padding:32px}#account-controls h3{font-size:38px}#account-controls form .button{width:100%;margin-top:12px}#email-verify{margin-top:24px}.member-nav{display:flex;justify-content:center;gap:10px;margin:24px 0 32px}.member-nav button{font:inherit;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:30px;padding:13px 22px;cursor:pointer}.member-nav button.active{background:var(--coral);color:#281422;border-color:var(--coral)}.directory-grid{display:block}.profile-editor{max-width:680px;margin:auto}#discover-view{max-width:860px;margin:auto}.inbox-panel{margin-top:0}.inbox-panel h3{font-size:27px}.birth-details{border:1px solid var(--line);border-radius:16px;padding:18px;margin:22px 0}.birth-details summary{cursor:pointer;color:#eed4a7;margin-bottom:8px}.birth-details[open]>label{margin-top:18px}.consent-box{background:#452737;border-color:var(--line)}fieldset{border-color:var(--line)}.result{padding:28px;margin:20px 0}.member-avatar{background:linear-gradient(145deg,#74505f,#42253e);color:#ffe1be;border-radius:24px;font:48px Georgia,serif;width:88px;height:100px;display:grid;place-items:center}.score{background:transparent;color:#e7c385;font-size:24px}.score small{color:var(--muted);font-size:10px}.result details{margin:20px 0}.result summary{color:#edceb0}.empty{background:#2d1c2b;border:1px dashed #765a70;border-radius:24px;color:var(--ink);padding:40px}.empty p{color:var(--muted)}.tiny-orbit{color:var(--gold)}.model-details{margin-top:35px;color:var(--muted)}.method-grid article{border-color:var(--line)}.method p,.method article p,.method details{color:var(--muted)}.method em{color:#ffc1a8}.cosmos{display:none}.tabs{border-color:var(--line)}.tab{color:var(--muted)}.tab.active{color:var(--ink)}.member-result-actions{gap:14px}.account-bar{color:var(--muted);font-size:13px}.inbox-badge{background:var(--coral);color:#281422}footer{border-color:var(--line);padding:35px 6%;gap:24px}footer span{color:var(--muted)}[hidden]{display:none!important}.error-status,#error{color:#ffb5aa}details summary{cursor:pointer}.intent-guide article,.dimension-list>div{background:#392536;border-color:var(--line)}
@media(max-width:700px){header{padding:20px 6%}header .brand{font-size:26px}header nav{gap:16px}header nav a{font-size:13px}header nav a:last-child{display:none}.hero{display:flex;flex-direction:column-reverse;gap:10px;padding:10px 6% 40px;min-height:0}.hero-portraits{width:100%}.hero-portraits img{max-height:350px;width:100%;object-fit:contain}.hero-portraits small{font-size:10px}.hero .intro{width:100%;text-align:center}.hero .eyebrow{display:none}.hero h1{font-size:54px;margin:22px 0 14px;letter-spacing:-2px}.intro>p{font-size:17px;margin:0 auto 22px}.hero-cta{width:100%}.member-section,.workspace,.method{padding:36px 5%}.section-heading{display:block}.section-heading .tag{display:none}.panel,#member-auth{padding:23px}.member-nav{gap:6px;position:sticky;top:0;background:#241323f5;z-index:5;padding:10px 0}.member-nav button{padding:12px 15px;font-size:13px}.row{display:block}.row>label{width:100%}.result-top{flex-wrap:wrap;gap:15px}.member-avatar{width:70px;height:80px;font-size:34px}.score{width:100%;text-align:left}.member-result-actions{display:flex;flex-wrap:wrap}.result{padding:22px}.quick-intents{gap:10px}.intent-choice{padding:18px}footer{flex-wrap:wrap}#account-controls h3{font-size:32px}.profile-actions{flex-wrap:wrap}.inbox-entry{overflow-wrap:anywhere}.hero-portraits img{height:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* One route and one profile step at a time. */
body[data-page=home] footer{display:none}body:not([data-page=home]) .hero{display:none}main>section[hidden]{display:none!important}.member-section{border-top:0;padding-top:24px}.member-section>.section-heading{margin-bottom:14px}.member-section>.section-heading h2{font-size:28px;margin:8px 0}.member-section>.section-heading .eyebrow,.member-section>.section-heading .tag{display:none}.model-details{display:none}.account-bar{margin:10px 0}.member-nav{margin:16px 0 24px}.profile-stage>h3{margin-bottom:20px}.profile-stage .birth-details{border:0;padding:0;margin-top:0}.profile-stage .birth-details>summary{display:none}.step-controls{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:16px}.profile-stage[hidden]{display:none!important}.profile-stage .intent-choices{grid-template-columns:1fr 1fr}body[data-page=home] .hero{min-height:calc(100svh - 96px);padding-top:15px;padding-bottom:24px}.hero-portraits img{max-height:calc(100svh - 180px)}
@media(max-width:700px){body[data-page=home] .hero{min-height:0}.hero-portraits img{max-height:36svh}.hero h1{font-size:43px;margin:16px 0 10px}.hero .intro>p{font-size:16px;margin-bottom:16px}.hero .mini{margin-top:14px}.member-section{padding-top:12px}.member-nav{position:static}.profile-stage .intent-choices{grid-template-columns:1fr}.member-section>.section-heading h2{font-size:25px}.profile-stage h3{font-size:27px}}

.photo-editor{text-align:center;margin:20px 0 28px}.photo-frame{width:150px;height:170px;background:#4b3044;border:1px solid #8b687c;border-radius:24px;margin:0 auto 18px;display:grid;place-items:center;overflow:hidden}.photo-frame img{width:100%;height:100%;object-fit:cover}.photo-frame span{font-size:65px;color:#d9b69e}.photo-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.photo-editor .hint{font-size:12px;margin-top:14px}.member-picture{flex-shrink:0}.member-photo{width:150px;height:185px;object-fit:cover;border-radius:20px;display:block}.member-avatar[hidden],.member-photo[hidden]{display:none!important}@media(max-width:700px){.member-photo{width:110px;height:140px}}
/* Override the older directory panel rule so cream text stays readable. */
.directory-grid .panel,.workspace,.chart-summary{background:#321d30;color:#fff2df}.tabs{background:#40283c}.tab.active{background:#59384f;color:#fff2df}.placements span{background:#51364a;color:#fff2df}.directory-grid .panel input,.directory-grid .panel select,.directory-grid .panel textarea{background:#40283c;color:#fff2df}.directory-grid .panel label,.directory-grid .panel legend{color:#fff2df}
/* Readable house and aspect explanations on the established plum panels. */
.place-results{display:grid;gap:.5rem;margin:.75rem 0}.place-option{background:#40283c;color:#fff2df;border:1px solid #bd9aaa;border-radius:.7rem;padding:.8rem;text-align:left;cursor:pointer;font:inherit}
.aspect-summary{padding:.8rem 0}.aspect-summary h4{color:#fff2df;margin:1.2rem 0 .5rem}.aspect-summary li{margin:.5rem 0}.aspect-summary small{color:#e2cbd5}.score:has(small){min-width:6rem}
.directory-grid .panel summary,.directory-grid .panel .hint{color:#e2cbd5}
.composite-view{margin:1rem 0;padding:.9rem;border:1px solid #b98ca9;border-radius:1rem;background:#321d30;color:#fff2df}.composite-view>summary{color:#fff2df;font-weight:650;cursor:pointer}.composite-view>summary:focus-visible{outline:3px solid #ff916f;outline-offset:4px}

/* Word ratings wrap comfortably on smaller screens. */
.result .score{font-family:inherit;font-size:clamp(1rem,2.5vw,1.5rem);line-height:1.25;max-width:12rem;min-width:0;overflow-wrap:normal;flex:0 1 10rem;color:#fff2df}
.result .score small{font-size:.72rem;max-width:none;line-height:1.4;margin-top:.3rem;color:#e2cbd5}
@media(max-width:500px){.result-top{flex-wrap:wrap}.result .score{flex:1 0 100%;max-width:none;text-align:left;margin-top:.4rem}}
