/* Keep the initial Arial appearance; no downloaded face should replace it after paint. */
*{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{margin:0;background:#130e19;color:#f4f0e6;font:16px/1.55 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}a{color:inherit;text-underline-offset:.3em}button,input,select,textarea{border:1px solid #62536f;background:#ffffff02;border-radius:8px}button{padding:10px 18px;transition:border-color .2s,background .2s}button:hover,a:hover{color:#d6fa81}button:hover{border-color:#d6fa81}input,select,textarea{color:#f4f0e6;padding:13px 15px;width:100%;min-width:0;min-height:48px}input[type=checkbox]{accent-color:#d6fa81;width:20px;height:20px;min-height:20px;margin:0;flex-shrink:0}input[type=range]{accent-color:#d6fa81;padding:0;min-height:25px}select option{background:#241931}button:disabled{opacity:.45;cursor:not-allowed}label{display:block;font-size:.9rem;color:#ded3e7}input:focus-visible,button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:2px solid #d6fa81;outline-offset:4px}.primary{background:#d6fa81;color:#17200c;border-color:#d6fa81;min-height:58px;font-weight:600}.primary:hover{background:#e1fda9;color:#17200c}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.1rem,5.5vw,6.4rem)}h2{font-size:clamp(2rem,3.8vw,4rem)}h3{font-size:1.6rem}p{margin:0 0 1rem}small,.muted{color:#b9a7cc}small{font-size:.8rem}.eyebrow{font-size:.78rem;letter-spacing:.25em;color:#c7b7d5;text-transform:uppercase;margin-bottom:28px}header{height:88px;border-bottom:1px solid #baa8cb22;display:flex;align-items:center;justify-content:space-between;padding:0 3.5vw;gap:24px}.brand{display:inline-flex;align-items:center;gap:18px;text-decoration:none;white-space:nowrap}.brand svg{width:33px;height:45px;flex-shrink:0}.brand span{font-size:1.1rem;letter-spacing:.32em}nav{display:flex;align-items:center;gap:35px}nav a{text-decoration:none;color:#d5ccd9;font-size:.92rem}nav select{width:140px;min-height:40px;padding:7px 12px}.hero{display:grid;grid-template-columns:minmax(350px,.87fr) minmax(0,1.35fr);gap:1vw;padding:70px 0 60px 3.5vw;max-width:1920px;margin:auto;min-height:900px}.intro{position:relative;z-index:1;max-width:625px}.intro h1{max-width:650px;margin-bottom:24px}.subtitle{font-size:1.13rem;color:#e5dce9;max-width:480px;line-height:1.5;margin-bottom:32px}.birth-form{max-width:460px;display:grid;gap:13px}.birth-form label input{display:block;margin-top:5px}.birth-form label.check input{margin:0}.birth-form .form-row{display:grid;grid-template-columns:.8fr 1.3fr;gap:14px}.check{display:flex;align-items:center;gap:12px;min-height:35px;font-size:.9rem}.form-error:empty,.place-selected:empty{display:none}.form-error{color:#ffbaac;margin:0;font-size:.9rem}.reveal{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:12px}.keep{letter-spacing:.17em;color:#c8b8d7;font-size:.86rem;margin:38px 0 0}.portrait{position:relative;min-width:0;align-self:center;padding-right:3.5vw}.solar-stage{height:clamp(420px,47vw,710px);width:100%;position:relative;background:radial-gradient(ellipse at 50% 50%,#73421e18,transparent 48%)}.solar-stage canvas{display:block;width:100%;height:100%}.scene-meta{display:flex;gap:14px;flex-wrap:wrap;color:#c2b1d1;font-size:.78rem;letter-spacing:.08em;position:relative;z-index:1}#moment-label{color:#e7d29e}.scene-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;color:#b9a7cc;font-size:.8rem}.scene-foot p{margin:0}.scene-foot button{padding:5px 12px;font-size:.8rem}.line-controls{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:18px}.line-controls .check{font-size:.8rem}.line-controls input{width:15px;height:15px}.timeline{margin:32px 3% 0}.timeline input{height:20px}.timeline div{display:flex;justify-content:space-between;font-size:.8rem;color:#b9a7cc}.text-button{border:0;padding:0;background:none;font-size:inherit}.body-panel{position:absolute;right:4vw;top:10%;padding:22px;background:#241931f2;border:1px solid #64536d;border-radius:12px;max-width:300px;z-index:2}.body-panel h3{margin-bottom:12px}.body-panel button{margin-top:12px}.place-field{position:relative}.place-field>label{margin-bottom:5px}.city-options{position:absolute;top:80px;left:0;right:0;min-width:280px;list-style:none;margin:0;padding:5px;background:#241931;border:1px solid #81718f;border-radius:8px;max-height:300px;overflow:auto;z-index:20;box-shadow:0 20px 50px #0008}.city-options button{display:block;width:100%;text-align:left;border:0;padding:12px}.city-options small{display:block}.how-teaser{max-width:850px;text-align:center;margin:0 auto;padding:90px 25px;border-top:1px solid #baa8cb22}.how-teaser h2{margin-bottom:24px}.how-teaser p{color:#c7b7d5}footer{padding:55px 3.5vw 25px;border-top:1px solid #baa8cb22;display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px;align-items:center}footer .brand span{font-size:.85rem}footer .brand svg{width:24px}footer p{font-size:.8rem;width:100%;color:#b9a7cc}.footer-links{display:flex;gap:22px;flex-wrap:wrap;font-size:.85rem}dialog{background:#241931;color:#f4f0e6;border:1px solid #736083;border-radius:16px;padding:45px;max-width:600px}dialog::backdrop{background:#08050dba}dialog h2{margin-bottom:24px}dialog button{margin:12px 8px 0 0}.dialog-close{position:absolute;top:4px;right:8px;border:0}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#35263f;color:#fff;border-radius:12px;z-index:100;max-width:90%;padding:0}#toast:not(:empty){padding:14px 24px;border:1px solid #806b90}.section{padding:70px 3.5vw;max-width:1600px;margin:auto}.section h2{margin-bottom:25px}.section p{max-width:800px}.hidden,[hidden]{display:none!important}.result-mode .hero{grid-template-columns:1fr;padding:48px 3.5vw}.result-mode .intro{max-width:none}.result-mode .intro h1{max-width:none;font-size:clamp(2.4rem,4vw,4.5rem)}.result-mode #birth-form,.result-mode .keep,.result-mode .subtitle,.result-mode .intro>.eyebrow{display:none}.result-mode .portrait{padding:0}.result-mode .solar-stage{height:620px}.result-mode .timeline{display:none}.result-mode .how-teaser{display:none}.result-actions,.tabs{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.tabs button[aria-pressed=true]{border-color:#d6fa81;color:#d6fa81}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{background:#24193155;border:1px solid #6f5a7d66;border-radius:12px;padding:28px}.card h3{margin:0 0 18px}.card p:last-child{margin-bottom:0}.stat{font-size:2.1rem;color:#d4b5fa}.editorial{max-width:880px;padding:65px 24px;margin:auto}.editorial h1{font-size:3rem;margin-bottom:30px}.editorial h2{font-size:2rem;margin:40px 0 18px}.editorial li{margin-bottom:12px}.editorial p{line-height:1.75}.form-row label{min-width:0}#sky-stage{width:100%;height:580px;position:relative;border-radius:12px;overflow:hidden}#sky-stage canvas{display:block;width:100%;height:100%;touch-action:pan-y}.sky-controls{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0}.studio-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:45px;align-items:start}.preview-shell{background:#0e0b1380;border:1px solid #685573;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:16px}.preview-shell canvas{max-width:100%;max-height:740px;width:auto;height:auto;display:block}.studio-controls{display:grid;gap:18px}.control-label{font-size:.9rem;margin-bottom:6px}.studio-controls h3{margin-top:8px}.privacy-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}details{border-top:1px solid #73608366;padding:18px 0}summary{cursor:pointer;font-size:1.05rem}details p{margin-top:15px}video{max-width:100%;max-height:650px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid #74608044}th{color:#c9b1df;font-weight:400}code{overflow-wrap:anywhere}.notice{border-left:2px solid #d4b5fa;padding:8px 18px;color:#d1bddf}.duo-preview{display:grid;grid-template-columns:1fr 1fr;gap:16px}.duo-preview img{width:100%;height:auto}.culture-card a{font-size:.8rem}.culture-card button{margin-top:15px}.body-picker{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.body-picker button{font-size:.85rem;padding:7px 12px}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.status-good{color:#d6fa81}.status-bad{color:#ffbaac}
@media(min-width:1700px){.hero{padding-top:95px}.intro{padding-left:15px}}
@media(max-width:1100px){nav{gap:18px}.hero{grid-template-columns:.95fr 1.1fr;padding-top:48px;min-height:800px}h1{font-size:3.9rem}.scene-foot{flex-direction:column;align-items:start}.birth-form .form-row{grid-template-columns:1fr}.solar-stage{height:550px}.cards{grid-template-columns:1fr 1fr}.studio-grid{gap:25px}.facts-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){header{height:auto;min-height:78px;padding:14px 20px;gap:12px}.brand{gap:9px}.brand span{font-size:.86rem;letter-spacing:.23em}.brand svg{width:27px;height:38px}nav a{display:none}nav select{width:115px;font-size:.85rem}.hero{display:flex;flex-direction:column;padding:40px 20px 35px;gap:30px}.intro{max-width:none}h1{font-size:clamp(3rem,10vw,4.5rem);max-width:600px}.eyebrow{font-size:.69rem;margin-bottom:20px}.birth-form{max-width:none}.birth-form .form-row{grid-template-columns:.8fr 1.3fr}.portrait{width:100%;padding:0}.solar-stage{height:410px}.scene-meta{font-size:.72rem}.scene-foot{flex-direction:row;font-size:.74rem}.line-controls{gap:12px;justify-content:flex-start}.line-controls small{width:100%}.keep{margin-top:25px}.timeline{margin-top:20px}.how-teaser{padding:50px 24px}footer{padding:35px 20px}.footer-links{gap:18px}.cards{grid-template-columns:1fr}.section{padding:45px 20px}.result-mode .hero{padding:35px 20px}.result-mode .solar-stage{height:410px}.studio-grid{grid-template-columns:1fr;gap:30px}.preview-shell canvas{max-height:580px}.privacy-grid{gap:8px}.button-grid{gap:8px}.button-grid button{padding:11px;font-size:.85rem}.result-actions button,.tabs button{font-size:.88rem}#sky-stage{height:420px}dialog{padding:38px 24px;margin:20px;max-width:calc(100vw - 40px)}.body-panel{right:0;top:15%;max-width:260px}.editorial h1{font-size:2.7rem}.facts-grid{grid-template-columns:1fr 1fr}.city-options{min-width:0;width:min(310px,70vw);right:0;left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.admin-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:30px 0}.admin-filters label{max-width:185px}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.admin-page{max-width:1450px;padding:50px 25px;margin:auto}.admin-page h1{font-size:3.5rem;margin-bottom:20px}.admin-page h2{font-size:2rem;margin:45px 0 20px}.admin-page svg{width:100%;height:auto}.table-scroll{overflow:auto}.button-link{display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:8px;text-decoration:none}.result-actions{align-items:center}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.recipient{max-width:1300px;margin:auto;padding:50px 25px}.recipient h1{font-size:clamp(2.6rem,5vw,5rem);margin:20px 0}.recipient .solar-stage{height:550px}.recipient .primary{margin-top:20px}.recipient-sky{height:500px}.recipient-preview{max-width:100%;height:auto}.admin-page #admin-chart{border:1px solid #665472;border-radius:12px;padding:15px}@media(max-width:700px){.admin-stats{grid-template-columns:1fr 1fr}.admin-page h1{font-size:2.7rem}.recipient .solar-stage{height:380px}.recipient-sky{height:400px}}

.shared-result{max-width:1100px;margin:45px auto;padding:0 24px}.shared-result h1{font-size:clamp(34px,5vw,65px);max-width:950px}.shared-result .solar-stage{height:550px}.shared-result img{max-width:100%}.shared-result .card{margin:28px 0}
#shared-sky{height:500px}#shared-sky canvas{width:100%;height:100%}.result-mode .hero{min-height:0;padding-bottom:0}.result-top{padding-top:25px}.studio-controls input[type=checkbox]{min-height:20px}.result-mode #second-form{display:grid}

.sky-mode .portrait{display:none}.sky-mode .hero{padding-bottom:0}

/* Round one: one uninterrupted scene with floating, readable controls. */
body:has(#solar-stage){background:#100d17}body:has(#solar-stage)>header{position:relative;z-index:5;border:0;background:transparent}
.hero,.result-mode .hero{position:relative;display:block;max-width:none;min-height:max(880px,100svh);margin-top:-88px;padding:140px 4vw 130px;isolation:isolate}
.hero .intro{position:relative;z-index:3;width:36%;max-width:490px;pointer-events:none;text-shadow:0 2px 18px #05020be6}
.hero .intro .birth-form{pointer-events:auto}.hero .intro h1{font-size:clamp(3.3rem,4.65vw,6.5rem);font-weight:300;letter-spacing:-.055em;line-height:1.02;margin-bottom:20px}.hero .eyebrow{margin-bottom:22px}.hero .subtitle{font-size:1rem;max-width:380px;margin-bottom:25px;line-height:1.5}.hero .keep{margin-top:22px;font-size:.72rem;letter-spacing:.13em}
.hero .portrait{position:absolute;inset:0;padding:0;width:100%;height:100%;align-self:stretch;z-index:0}.hero .solar-stage,.result-mode .hero .solar-stage{position:absolute;inset:0;height:100%;background:none}
.hero .scene-foot{position:absolute;right:4vw;bottom:125px;gap:24px;font-size:.75rem;text-shadow:0 1px 8px #000;z-index:2}.scene-foot button{min-height:44px;min-width:44px;background:transparent}.hero .scene-foot p{max-width:200px}.hero .scene-foot>div{display:flex;gap:8px}
.hero .timeline,.result-mode .timeline{display:block;position:absolute;bottom:28px;left:4vw;right:4vw;margin:0;z-index:2}.timeline .scene-meta{justify-content:flex-start;gap:12px;font-size:.78rem;color:#d7cbdc;letter-spacing:.03em;text-shadow:0 2px 9px #000;min-height:24px}.timeline #moment-label{color:#f5eddc}.timeline>div:last-child{justify-content:flex-end}.timeline #live-now{min-width:44px;min-height:30px;color:#fff}
.timeline input[type=range]{appearance:none;-webkit-appearance:none;display:block;width:100%;height:44px;min-height:44px;margin:0;border:0;border-radius:0;background:transparent;cursor:pointer}.timeline input::-webkit-slider-runnable-track{height:1px;background:#fff9}.timeline input::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;background:#fff;margin-top:-5px;box-shadow:0 0 10px #fff4}.timeline input::-moz-range-track{height:1px;background:#fff9}.timeline input::-moz-range-thumb{width:11px;height:11px;border:0;border-radius:50%;background:#fff}
.birth-form{gap:10px}.birth-form input:not([type=checkbox]),.date-part>button{background:transparent;border:1px solid #88709888;border-radius:9px;color:#f4eff8;min-height:46px;padding:10px 12px}.birth-form input::placeholder{color:#bcaacb}.birth-form fieldset{border:0;padding:0;margin:0;min-width:0}.birth-form legend{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.date-parts{display:grid;gap:10px;grid-template-columns:1fr 1.6fr 1fr}.time-parts{grid-template-columns:1fr 1fr 1fr}.date-part{position:relative;min-width:0}.date-part>span{display:block;font-size:.85rem;color:#ded3e7;margin-bottom:5px}.date-part>button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;font-weight:300;white-space:nowrap}.date-part>button>span:first-child{overflow:hidden;text-overflow:ellipsis}.chevron{display:block;width:6px;height:6px;border-right:1px solid #d5c1e5;border-bottom:1px solid #d5c1e5;transform:rotate(45deg);margin-right:3px;margin-bottom:4px;flex-shrink:0}.part-menu{position:absolute;top:calc(100% + 5px);left:0;min-width:100%;width:max-content;max-width:280px;max-height:230px;overflow:auto;overscroll-behavior:contain;background:#211a2df5;border:1px solid #8d739c;border-radius:9px;padding:5px;z-index:30;box-shadow:0 12px 35px #0009;text-shadow:none}.part-menu.above{top:auto;bottom:calc(100% - 20px)}.part-menu>[role=option]{padding:9px 13px;min-height:42px;border-radius:5px;cursor:pointer;font-size:.95rem}.part-menu>[role=option]:hover,.part-menu>.active{background:#50405e;color:#fff}.part-menu>[aria-selected=true]{color:#e1c5fa}.date-part:has([aria-expanded=true]){z-index:31}.city-options{z-index:35;background:#211a2df5;top:calc(100% + 5px)}.birth-form .check{font-size:.83rem}.birth-form .reveal{min-height:48px;margin-top:3px;font-weight:400}.birth-form small{font-size:.73rem}.birth-form .place-selected{font-size:.8rem;margin:0}
.result-mode .hero .intro{width:45%;max-width:600px}.result-mode .hero{height:100svh;min-height:650px;padding-top:140px}.result-mode .hero .intro h1{font-size:clamp(2.8rem,4vw,5rem)}.sky-mode .hero{height:auto;min-height:0;padding-bottom:15px}.sky-mode .intro{width:100%}.hero #scene-fallback{position:absolute;top:35%;left:45%;max-width:45%;z-index:4}.body-panel{background:transparent;border:0;box-shadow:none;text-shadow:0 2px 10px #000;padding:0}
@media(max-width:1100px) and (min-width:761px){.hero{padding-top:125px}.hero .intro{width:40%}.hero .intro h1{font-size:3.5rem}.hero .subtitle{font-size:.94rem}.date-parts{gap:7px}.hero .scene-foot{max-width:50%;flex-direction:row}}
@media(max-width:760px){.hero,.result-mode .hero{margin-top:-78px;padding:116px 22px 150px;min-height:1220px;gap:0}.hero .intro{width:100%;max-width:none}.hero .intro h1{font-size:clamp(2.85rem,10.3vw,4.5rem);max-width:480px;line-height:1.04}.hero .eyebrow{font-size:.64rem;margin-bottom:16px}.hero .subtitle{font-size:.95rem;max-width:360px;margin-bottom:0}.hero #birth-form{margin-top:285px;max-width:480px}.hero .keep{font-size:.64rem}.hero .portrait{height:100%;padding:0}.hero .scene-foot{left:22px;right:22px;bottom:122px;justify-content:space-between;flex-direction:row;gap:10px}.hero .scene-foot p{font-size:.68rem;max-width:155px}.hero .scene-foot button{padding:7px 11px}.hero .timeline{left:22px;right:22px;bottom:26px}.timeline .scene-meta{font-size:.69rem;gap:7px}.date-part>button{padding:10px}.hero #scene-fallback{top:330px;left:22px;max-width:90%}.result-mode .hero{height:100svh;min-height:700px}.result-mode .hero .intro{width:100%}.result-mode .hero .intro h1{font-size:2.8rem}.sky-mode .hero{height:auto;min-height:0;padding-bottom:10px}}

@media(max-width:760px){.hero{padding-bottom:200px}.result-mode .hero{padding-bottom:150px}.hero .scene-foot p{max-width:135px}}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero .body-panel{position:absolute;right:auto;max-width:280px;width:260px;z-index:4;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;text-shadow:0 2px 5px #08040f,0 0 18px #08040f,0 0 30px #08040f;pointer-events:auto;color:#f6f0fb}.body-panel h3{font-size:1.8rem;font-weight:300;letter-spacing:-.035em;margin:5px 0 7px}.body-panel p{margin:0 0 8px}.body-panel .planet-context{font-size:.68rem;letter-spacing:.07em;color:#d6c7e2}.body-panel .planet-placement{font-size:1.02rem;color:#f2dcb8}.body-panel .planet-meaning{font-size:.91rem;line-height:1.45}.body-panel .planet-secondary{font-size:.72rem;color:#d6c7e2;line-height:1.5}.body-panel small{font-size:.62rem;line-height:1.4;color:#b9abc7;display:block}
@media(max-width:760px){.hero .body-panel{width:min(245px,calc(100vw - 36px))}.body-panel h3{font-size:1.5rem}.body-panel .planet-meaning{font-size:.83rem}.body-panel .planet-context{font-size:.63rem}}
@media(max-width:760px){.hero:has(.body-panel:not([hidden])) .intro>h1,.hero:has(.body-panel:not([hidden])) .intro>.eyebrow,.hero:has(.body-panel:not([hidden])) .intro>.subtitle{visibility:hidden}}
.hero{transition:height .85s cubic-bezier(.18,.65,.28,1)}

/* Direct date selection: a quiet white line and a stationary selected moment. */
.hero .timeline{bottom:20px;display:flex;flex-direction:column;align-items:center;pointer-events:none}
.timeline .scene-meta{justify-content:center;align-items:baseline;gap:10px;text-align:center;min-height:24px;font-size:.82rem;line-height:1.45}
.timeline #moment-label{color:#bfb1ca;font-size:.73rem}.timeline #moment-date{color:#f4f0e6;font-variant-numeric:tabular-nums}
.timeline>div.time-navigation{display:block;width:min(640px,100%);pointer-events:auto}
.time-slider{position:relative;display:block;width:100%;height:48px;padding:0;cursor:pointer;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;border-radius:4px}
.time-track{position:absolute;left:12px;right:12px;top:50%;height:1px;background:#fff9;pointer-events:none}
.time-dot{position:absolute;left:50%;top:50%;width:10px;height:10px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 7px #fff3}
.time-centre{position:absolute;left:50%;top:-3px;height:7px;width:1px;background:#fff8}
.time-slider:focus-visible{outline:2px solid #d6fa81;outline-offset:2px}.time-slider.is-dragging{cursor:grabbing}
.time-captions{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin:-6px 12px 0;font-size:.7rem;color:#bfb1ca}.time-captions>span:last-child{text-align:right}
.time-navigation #time-present{min-width:48px;min-height:44px;padding:7px 12px;border:0;background:transparent;color:#fff;font:inherit}
.hero .scene-foot{bottom:139px}.hero{padding-bottom:165px}
.birth-form .time-parts{grid-template-columns:1fr 1fr}.unknown-time{margin-top:12px}.unknown-help{display:block;min-height:1.55em;margin-top:5px}.unknown-help:not(.is-active){visibility:hidden}
.birth-form .place-selected{display:block;min-height:1.55em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.place-field{position:relative}.city-options{position:absolute;left:0;right:0;width:100%;min-width:0;max-height:250px;overflow-y:auto;overscroll-behavior:contain;margin:0}.city-options .search-status{padding:10px 12px}.city-options button{width:100%;text-align:left;white-space:normal}
.manual-place-open{text-align:left;font-size:.75rem;padding:0;border:0;min-height:30px;width:fit-content;color:#c4b4d0}.manual-place{width:min(520px,calc(100vw - 40px));max-height:85svh;overflow-y:auto}.manual-place label{margin:12px 0}.manual-place .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.manual-place h2{font-size:1.7rem}.manual-place p{font-size:.85rem}.place-attribution{font-size:.65rem}
.result-mode .hero .timeline{display:none}.result-mode .hero .scene-foot{bottom:30px}
@media(max-width:760px){.hero{padding-bottom:240px}.result-mode .hero{padding-bottom:90px;min-height:730px}.hero .timeline{left:22px;right:22px;bottom:18px}.timeline .scene-meta{flex-direction:column;align-items:center;gap:2px;font-size:.76rem}.timeline #moment-label{font-size:.68rem}.hero .scene-foot{bottom:156px}.result-mode .hero .scene-foot{bottom:24px}.birth-form input:not([type=checkbox]){font-size:16px}}
/* Touch instructions follow the primary input, independently of viewport size. */
.scene-hint-touch{display:none}
@media(pointer:coarse){.scene-hint-desktop{display:none}.scene-hint-touch{display:inline}}

/* Public explanations stay below the immersive scene. */
.home-guide{max-width:1100px;padding:80px 28px;text-align:left}
.home-guide>p{max-width:760px}.home-guide h2{max-width:850px}
.guide-steps{list-style:none;counter-reset:steps;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:38px 0;padding:0}
.guide-steps li{counter-increment:steps;border-top:1px solid #baa8cb55;padding-top:20px}
.guide-steps li::before{content:'0' counter(steps);display:block;color:#c7b7d5;font-size:.85rem;margin-bottom:16px}
.guide-steps h3{font-size:1.4rem;margin:0 0 14px;letter-spacing:-.025em}.guide-steps p{font-size:1rem}
.guide-links{display:flex;align-items:start;flex-wrap:wrap;gap:14px 26px;margin-top:42px;padding-top:26px;border-top:1px solid #baa8cb44}
.guide-links a{font-size:1rem;text-decoration:underline}
.breadcrumbs a,.guide-links a{display:inline}
.breadcrumbs{display:block;margin-bottom:36px;line-height:1.6;font-size:.9rem;color:#c7b7d5}.breadcrumbs a{font-size:inherit;text-decoration:underline}
.editorial>.guide-intro{font-size:1.15rem}.editorial .primary.button-link{display:inline-block;padding:12px 20px;border-radius:8px;margin:10px 0}
@media(max-width:760px){.guide-steps{grid-template-columns:1fr;gap:24px}.home-guide{padding:56px 22px}.editorial{padding:44px 22px}.breadcrumbs{margin-bottom:24px}.editorial h1{font-size:2.65rem}.guide-links{gap:18px;flex-direction:column}}
/* Private dashboard: compact, readable summaries without affecting public scenes. */
.admin-header nav{gap:14px}.admin-header button{font-size:.85rem}.admin-login{max-width:480px;margin:10vh auto 16vh;padding:32px 24px}.admin-login h1{font-size:clamp(2.2rem,5vw,3.3rem);margin-bottom:22px}.admin-login form{display:grid;gap:12px;margin:34px 0 22px}.admin-login form label{font-size:.9rem}.admin-login form .primary{margin-top:8px;display:flex;justify-content:space-between}.admin-login #login-status{min-height:25px;font-size:.87rem;color:#ffcab7}.admin-login>a{font-size:.85rem;color:#c7b7d5}.admin-page{max-width:1470px;padding:48px 36px 72px}.admin-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px}.admin-heading .eyebrow{margin-bottom:15px}.admin-page h1{font-size:clamp(2.2rem,4vw,3.5rem);margin-bottom:12px;max-width:920px}.admin-badge{border:1px solid #685572;border-radius:30px;color:#dbc7f1;font-size:.72rem;padding:8px 12px;max-width:190px}.admin-toolbar{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.admin-toolbar label{min-width:180px}.admin-toolbar select{margin-top:5px;font-size:.88rem;padding:10px 13px}.admin-toolbar-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.admin-toolbar-actions button,.admin-toolbar-actions a{font-size:.85rem;min-height:44px}.admin-toolbar-actions a{color:#d6fa81}.admin-toolbar-actions a:not([href]){opacity:.4;pointer-events:none}.admin-connection{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;margin:18px 0 20px;color:#c4b6cf;font-size:.76rem}.admin-connection p{margin:0}.admin-connection #admin-status:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:8px}.admin-warning{padding:12px 16px;border:1px solid #94734355;border-radius:8px;color:#eed5a9;background:#b68c4210;font-size:.84rem}.admin-primary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.metric-card{background:linear-gradient(140deg,#251b30aa,#1b152266);border:1px solid #72617d55;border-radius:13px;padding:24px}.admin-page .metric-card h2{font-size:.95rem;line-height:1.4;letter-spacing:0;margin:0 0 18px;color:#e4dcea}.admin-page .metric-value{font-size:clamp(1.6rem,3vw,2.8rem);line-height:1.1;letter-spacing:-.04em;color:#d6fa81;margin-bottom:18px;overflow-wrap:anywhere}.admin-page .metric-note{font-size:.77rem;line-height:1.55;letter-spacing:0;color:#bdb0c9;margin:0 0 12px;max-width:none}.admin-secondary-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:24px 0 32px;padding:0 5px}.admin-secondary-metrics article{border-left:1px solid #75618344;padding:0 15px}.admin-page .admin-secondary-metrics h2{font-size:.8rem;line-height:1.4;letter-spacing:0;margin:0 0 10px;color:#d3c7dc}.metric-unavailable{color:#e0d4e9;font-size:1.02rem;margin-bottom:7px}.admin-chart-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:18px;margin-bottom:18px}.admin-panel{border:1px solid #6b587344;background:#22182944;padding:24px;border-radius:12px;min-width:0}.admin-page .admin-panel h2{font-size:1.18rem;letter-spacing:-.025em;margin:0 0 18px;line-height:1.3}.admin-page #admin-chart{border:0;border-radius:0;padding:4px 0 0;min-height:220px;display:flex;align-items:center;color:#bdb0c9}.admin-page #admin-chart svg{width:100%;display:block}.admin-panel details{font-size:.78rem;padding:10px 0 0;border:0}.admin-panel details summary{font-size:.78rem;color:#c8bad5}.admin-breakdown{margin:20px 0}.admin-breakdown-row{display:flex;justify-content:space-between;gap:15px;font-size:.85rem;margin-bottom:10px}.admin-breakdown-row strong{font-weight:400}.admin-bar{height:4px;background:#e6d6ff0b;border-radius:8px;overflow:hidden}.admin-bar span{display:block;height:100%;background:#bfa1e1;border-radius:8px}.admin-breakdowns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px}.admin-breakdowns .admin-panel>.admin-breakdown-row{margin:19px 0;font-size:.8rem}.admin-page table{font-size:.8rem}.admin-page th{font-size:.75rem}.admin-page td{color:#e1d7e9;overflow-wrap:anywhere}.admin-page th,.admin-page td{padding:12px 9px}.admin-page .admin-page-list{max-height:315px;overflow:auto}.admin-page-list td:first-child{overflow-wrap:anywhere}.admin-section-heading{display:flex;gap:20px;justify-content:space-between;align-items:start}.admin-section-heading button,.admin-pagination button{font-size:.8rem;flex-shrink:0}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}.admin-pagination p{margin:0}.admin-activity{margin-bottom:18px}.admin-coverage dl{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 0 22px}.admin-coverage dl div:last-child{grid-column:1/-1}.admin-coverage dt{font-size:.73rem;color:#bdb0c9;margin-bottom:7px}.admin-coverage dd{margin:0;font-size:.87rem}.admin-explainer{font-size:.86rem;margin-top:16px}.admin-explainer summary{font-size:.93rem}.admin-explainer p{max-width:1000px}.admin-test-links{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.admin-test-links button{font-size:.8rem;margin-left:auto}.admin-page .is-stale .metric-value{color:#b7a8c4}.admin-page .is-stale{opacity:.65}.admin-activity .table-scroll{min-height:70px}.admin-page .table-scroll table{min-width:0}.admin-activity .table-scroll table{min-width:660px}
@media(max-width:1000px){.admin-page{padding:35px 24px 55px}.admin-breakdowns{grid-template-columns:1fr 1fr}.admin-breakdowns section:last-child{grid-column:1/-1}.admin-secondary-metrics{gap:12px}.admin-secondary-metrics article{padding:0 10px}.admin-primary-metrics .metric-card{padding:20px}}
@media(max-width:700px){.admin-page{padding:30px 18px 45px}.admin-heading{display:block}.admin-badge{display:inline-block;max-width:none;margin-top:6px}.admin-toolbar{gap:12px}.admin-toolbar label{min-width:0;flex:1}.admin-toolbar-actions{width:100%;justify-content:space-between;margin:0}.admin-connection{display:block}.admin-connection p+p{margin-top:8px}.admin-primary-metrics{grid-template-columns:1fr;gap:12px}.admin-primary-metrics .metric-card{padding:20px}.admin-page .metric-card h2{margin-bottom:12px}.admin-page .metric-value{font-size:2.3rem;margin-bottom:12px}.admin-secondary-metrics{grid-template-columns:1fr 1fr;gap:20px 10px;margin:26px 0}.admin-chart-grid,.admin-breakdowns{grid-template-columns:1fr}.admin-breakdowns section:last-child{grid-column:auto}.admin-panel{padding:20px 17px}.admin-page #admin-chart{min-height:140px}.admin-page .admin-section-heading h2{font-size:1.1rem;max-width:180px}.admin-section-heading button{padding:8px 11px;font-size:.72rem}.admin-coverage dl{grid-template-columns:1fr}.admin-coverage dl div:last-child{grid-column:auto}.admin-test-links button{margin-left:0}.admin-header{padding:14px 18px}.admin-header nav{gap:8px}.admin-header nav select{width:100px}.admin-header nav button{padding:8px 10px;font-size:.75rem}.admin-header .brand span{font-size:.72rem;letter-spacing:.17em}.admin-header .brand svg{width:23px}}

@media(max-width:360px){.admin-header{flex-wrap:wrap}.admin-header nav{width:100%;justify-content:space-between}.admin-heading h1{font-size:2rem}}
.admin-page [tabindex]:focus-visible{outline:2px solid #d6fa81;outline-offset:4px}

.admin-activity td:first-child,.admin-activity td:nth-child(3){white-space:nowrap}

/* Continuous planetary page. Glass has no coloured or dark fill. */
body:has(.flow-home){background:#100d17;overflow-x:clip}
body:has(.flow-home)>header,body:has(.flow-home)>footer{position:relative;z-index:2;background:transparent}
.world-stage#solar-stage{position:fixed;inset:0;width:100%;height:100svh;background:none;z-index:0;pointer-events:none}
.world-stage canvas{pointer-events:none}
.flow-home{position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:20px 36px 64px}
.flow-home .glass{background:transparent;background-image:none;border:1px solid #ffffff26;border-radius:18px;box-shadow:none;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);text-shadow:0 1px 3px #080610,0 0 9px #08061080;padding:28px}
.flow-home .opening{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}
.flow-home .opening h1{font-size:clamp(2.5rem,4vw,3.6rem);line-height:1.06;max-width:730px}
.flow-home .opening .eyebrow{margin-bottom:16px;font-size:.75rem}
.flow-home .opening .subtitle{max-width:320px;margin:0;font-size:1rem}
.explore-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,1fr);gap:28px;align-items:start}
.viewer-column{position:relative;min-width:0}
.model-area{height:clamp(370px,47svh,550px);width:100%;border:1px solid #ffffff1c;border-radius:18px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.model-area:active{cursor:grabbing}.model-area:focus-visible{outline:2px solid #d6fa81;outline-offset:4px}
.flow-home .scene-foot{position:static;display:flex;padding:16px 20px;margin-top:12px;gap:15px;font-size:.875rem}
.flow-home .scene-foot>div{display:flex;gap:8px;flex-shrink:0}.flow-home .scene-foot button{font-size:.875rem;min-height:44px;min-width:44px}
.flow-home .scene-meta{position:static;padding:14px 20px;display:flex;flex-direction:column;gap:4px;margin-top:12px;letter-spacing:0;font-size:.875rem}
.flow-home #moment-label{color:#ded3e7}.flow-home #moment-date{color:#f4f0e6;font-variant-numeric:tabular-nums}
.scroll-aside{font-size:.8rem;color:#c7b7d5;margin:12px 8px}.flow-home .form-panel{position:relative;z-index:3}
.form-panel h2{font-size:1.6rem;margin:0 0 14px}.form-panel #form-zone{font-size:.8rem;margin-bottom:20px}
.flow-home .birth-form{max-width:none}.flow-home .birth-form label,.flow-home .birth-form .check,.flow-home .date-part>span{font-size:.875rem}
.flow-home .birth-form small{font-size:.8rem}.flow-home .keep{margin-top:26px;font-size:.8rem}
.flow-home .manual-place-open{font-size:.875rem}.flow-home .part-menu,.flow-home .city-options{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:#ffffff08;text-shadow:0 1px 3px #080610;border-color:#ffffff55}
.flow-home .part-menu>.active,.flow-home .part-menu>[role=option]:hover,.flow-home .city-options button:hover{background:#ffffff15}
.flow-home .section{max-width:none;padding:0;margin:40px 0;scroll-margin-top:24px}
.flow-home .section.glass{padding:32px}.flow-home .section h2{font-size:clamp(1.9rem,3vw,2.65rem);margin-bottom:18px}
.flow-home .section .eyebrow{margin-bottom:16px}.flow-home .section p{max-width:none}
.result-identity time{font-size:.875rem;color:#ded3e7}.result-identity .eyebrow{color:#d6fa81}
.reading-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.reading-pair h3{font-size:1.45rem;margin-bottom:24px}
.sky-facts{margin:0 0 22px;display:grid;gap:12px}.sky-facts>div{display:flex;justify-content:space-between;gap:16px}.sky-facts dt{color:#ddd0e7}.sky-facts dd{margin:0;color:#ead9ff}
.reflection-line{font-size:1.55rem;line-height:1.3;letter-spacing:-.02em}.flow-home .muted{color:#d0c2dc}.flow-home small{color:#cbbbd7;font-size:.875rem}
.flow-home .body-picker{margin:20px 0 0}.flow-home .body-picker button{font-size:.875rem;min-height:44px}
.flow-home .section-heading{margin-bottom:22px}.flow-home .cards{gap:22px}.flow-home .culture-card{padding:22px}.flow-home .culture-card details{padding:0;border:0}.flow-home .culture-card summary{font-size:1.2rem;line-height:1.4}.flow-home .culture-card p{margin-top:18px}
.flow-home .home-guide{max-width:none;text-align:left;padding:32px;margin:40px 0;scroll-margin-top:24px}
.flow-home #method details{padding:18px 0;border-bottom:1px solid #ffffff22}.flow-home #method details p{margin:18px 0}.flow-home #method>a{display:inline-block;margin-top:24px}
.flow-home .preview-shell{background:transparent;border:1px solid #ffffff22}.flow-home .studio-grid{align-items:start}.flow-home .studio-controls h3{margin:12px 0}.flow-home .studio-controls details{background:transparent}
.flow-home .body-panel{position:fixed;z-index:7;width:260px;max-width:calc(100vw - 48px);padding:18px;border-radius:12px;background:transparent;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.flow-home #scene-fallback{margin-top:12px;overflow-wrap:anywhere}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.flow-home .glass{background:transparent;text-shadow:0 1px 3px #080610,0 0 8px #080610}}
@media(max-width:1000px){.flow-home{padding:16px 24px 40px}.explore-layout{grid-template-columns:minmax(0,1fr) minmax(315px,1fr);gap:20px}.flow-home .opening{display:block}.flow-home .opening .subtitle{max-width:700px;margin-top:18px}.flow-home .glass{padding:22px}.flow-home .scene-foot{flex-direction:column;align-items:start}}
@media(max-width:760px){body:has(.flow-home)>header{height:auto;min-height:78px;flex-wrap:wrap;padding:18px 24px;gap:14px}body:has(.flow-home)>header nav{width:100%;gap:16px;justify-content:space-between;flex-wrap:wrap}body:has(.flow-home)>header nav a{display:inline;font-size:.8rem}body:has(.flow-home)>header nav select{width:105px;font-size:.85rem}.flow-home{padding:12px 24px 32px}.flow-home .opening{padding:20px}.flow-home .opening h1{font-size:2.45rem}.flow-home .opening .eyebrow{font-size:.68rem;line-height:1.6}.explore-layout{display:flex;flex-direction:column;gap:20px}.viewer-column,.form-panel{width:100%}.model-area{height:360px}.flow-home .scene-foot{flex-direction:row;flex-wrap:wrap;padding:14px;gap:12px}.flow-home .scene-foot p{font-size:.8rem}.flow-home .scene-meta{padding:14px;font-size:.8rem}.flow-home .form-panel{padding:22px 18px}.flow-home .section{margin:30px 0}.flow-home .section.glass,.flow-home .home-guide{padding:22px}.reading-pair,.flow-home .cards{grid-template-columns:1fr;gap:16px}.flow-home .section h2{font-size:2rem}.flow-home .studio-grid{grid-template-columns:1fr}.flow-home .body-panel{width:240px}.flow-home #birthday-facts .cards{grid-template-columns:1fr 1fr}.flow-home #birthday-facts h3{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Latest content cleanup: keep the scene prominent and the page quiet. */
body:has(.flow-home)>header{max-width:1440px;width:100%;margin:0 auto;padding:20px 36px;box-sizing:border-box}
.header-language{margin-left:auto}.header-language select{min-width:120px}
.flow-home .reading-pair{margin-top:0}
.flow-home .birth-form .manual-place-open{margin-top:-4px;margin-bottom:10px;min-height:38px}
.birth-form .form-error:empty,.birth-form .ambiguity:empty{display:none}
.flow-home .everyday-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 28px}
.everyday-facts article{min-width:0}.flow-home .everyday-facts h3{font-size:1.08rem;line-height:1.4;margin-bottom:12px}
.everyday-facts .stat{font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.25;overflow-wrap:anywhere;margin:0 0 6px}
.reflection-reading p{font-size:1rem;line-height:1.6}.reflection-reading p:last-child{margin-bottom:0}
.flow-home .model-area:focus-visible{outline:2px solid #d6fa81;outline-offset:4px}
.flow-home .model-area:focus-visible:not(.pointer-active) #model-keyboard{position:absolute!important;clip:auto;white-space:normal;width:auto;height:auto;max-width:calc(100% - 24px);padding:10px 12px;margin:10px;background:#100d17e8;border-radius:8px;font-size:.875rem}
@media(max-width:1000px){body:has(.flow-home)>header{padding:18px 24px}}
@media(max-width:760px){body:has(.flow-home)>header{flex-wrap:nowrap;gap:12px}.header-language select{min-width:104px;width:104px;padding:10px;font-size:.875rem}.flow-home .everyday-facts{grid-template-columns:1fr 1fr;gap:26px 18px}.flow-home .everyday-facts h3{font-size:1rem}.everyday-facts .stat{font-size:1.35rem}}
@media(max-width:360px){body:has(.flow-home)>header{flex-wrap:wrap}.header-language{margin-left:auto}.flow-home .everyday-facts{grid-template-columns:1fr}}

/* Shared image/video centreline and compact page ending. */
.studio-media{min-width:0}#video-preview{display:block;width:auto;max-width:100%;height:auto;max-height:76vh;margin:1.25rem auto 0;object-fit:contain}#video-preview[hidden]{display:none}.home-contact h2{font-size:1.35rem}.home-contact p{margin:.6rem 0}.home-contact .learn-more{display:inline-block;margin-top:.6rem;font-size:.9rem}.home-contact a{overflow-wrap:anywhere}footer{padding-block:1.5rem;min-height:0}#facts-title:focus{outline:none}
