
.theme-toggle{font:inherit;font-size:12px;white-space:nowrap;border:1px solid var(--line);border-radius:20px;background:transparent;color:var(--ink);padding:8px 13px;cursor:pointer;order:2}.nav-links{order:1}.menu{order:3}.nav{gap:18px}
html[data-theme=night]{color-scheme:dark;--ink:#f0f0f0;--paper:#080808;--muted:#b8b8b8;--line:#353535}
html[data-theme=night] body{background:#080808;color:var(--ink)}
html[data-theme=night] .header{background:#080808ed}
html[data-theme=night] .card{background:#171717dd}
html[data-theme=night] .dark,html[data-theme=night] .footer{background:#000000;color:#fff}
html[data-theme=night] .origin{background:#202020}
html[data-theme=night] .button{background:#f2f2f2;color:#080808;border-color:#f2f2f2}
html[data-theme=night] .button:hover{background:#d3d3d3}
html[data-theme=night] .button.secondary{background:transparent;color:#f0f0f0;border-color:#555555}
html[data-theme=night] .cta{color:#151515}
html[data-theme=night] .cta .button{background:#151515;color:#fff;border-color:#151515}
html[data-theme=night] .loop-visual{--loop-ink:#f0f0f0;--loop-surface:#171717;--loop-border:#484848;--loop-muted:#b8b8b8}
html[data-theme=night] input,html[data-theme=night] textarea,html[data-theme=night] select{background:#171717;color:#f0f0f0;border-color:#555555}
html[data-theme=night] .privacy-banner,html[data-theme=night] .privacy-dialog{background:#171717;color:#f0f0f0;border-color:#484848}
html[data-theme=night] .privacy-dialog label small{color:#b8b8b8}
html[data-theme=night] .privacy-dialog input{background:#171717}
html[data-theme=night] .privacy-actions button{background:#171717;color:#f0f0f0;border-color:#555555}
html[data-theme=night] .privacy-actions button:last-child{background:#f0f0f0;color:#151515}
html[data-theme=night] .ambient-lines{stroke:#c8c8c8;opacity:.09}
html[data-theme=night] .strip{border-color:#353535}
html[data-theme=night] .skip{background:#171717}
@media(max-width:1050px){.nav-links{gap:14px}.nav{gap:12px}.theme-toggle{padding:8px 10px}}
@media(max-width:760px){.theme-toggle{margin-left:auto}.nav-links{order:4}.nav{gap:10px}}

/* Animate only theme colors while switching; preserve the site's other motion. */
html.theme-transitioning body,
html.theme-transitioning body :where(header,nav,main,section,footer,div,p,span,h1,h2,h3,a,button,label,small,input,textarea,select,dialog,svg,path,circle),
html.theme-transitioning body *::before,
html.theme-transitioning body *::after{
transition-property:background-color,color,border-color,box-shadow,fill,stroke;
transition-duration:550ms;
transition-timing-function:ease-in-out;
}
.theme-toggle{display:inline-flex;align-items:center;justify-content:space-between;position:relative;width:76px;min-width:76px;height:38px;padding:7px 9px;background:#e9edef;gap:12px;isolation:isolate}
.theme-icon{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:1}
.theme-sun{color:#af510d}.theme-moon{color:#63717a}
.theme-thumb{position:absolute;left:3px;top:3px;width:30px;height:30px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #08080818;transition:transform 550ms ease-in-out!important;pointer-events:none}
html[data-theme=night] .theme-toggle{background:#292929}
html[data-theme=night] .theme-thumb{transform:translateX(38px);background:#4d4d4d}
html[data-theme=night] .theme-sun{color:#a5a5a5}
html[data-theme=night] .theme-moon{color:#fff}
@media(max-width:1050px){.theme-toggle{padding:7px 9px}}
@media(prefers-reduced-motion:reduce){html.theme-transitioning body,html.theme-transitioning body *,html.theme-transitioning body *::before,html.theme-transitioning body *::after,.theme-thumb{transition:none!important}}
html.theme-transitioning .button{transition:background-color 550ms ease-in-out,color 550ms ease-in-out,border-color 550ms ease-in-out,transform .4s ease,box-shadow .4s ease}
html.theme-transitioning .card{transition:background-color 550ms ease-in-out,color 550ms ease-in-out,border-color 550ms ease-in-out,transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease}
html.theme-transitioning .system{transition:background-color 550ms ease-in-out,color 550ms ease-in-out,border-color 550ms ease-in-out,transform .6s ease}
html.theme-transitioning .step-button{transition:color 550ms ease-in-out,border-color 550ms ease-in-out,padding-left .4s ease}
html.theme-transitioning .step-panel{transition:color 550ms ease-in-out,opacity .3s ease,transform .3s ease}
@media(prefers-reduced-motion:reduce){html.theme-transitioning .button,html.theme-transitioning .card,html.theme-transitioning .system,html.theme-transitioning .step-button,html.theme-transitioning .step-panel{transition:none!important}}

/* Night uses neutral blacks and grays, with Stride orange for active signals. */
html[data-theme=night] .ambient-glow{background:radial-gradient(ellipse at 80% 25%,#ffb8820b,transparent 40%),radial-gradient(ellipse at 10% 70%,#ffffff08,transparent 45%)}
html[data-theme=night] .system{background:#141414;box-shadow:0 30px 60px #00000030}
html[data-theme=night] .system .node{background:#242424;border-color:#454545;animation-name:night-system-node}
html[data-theme=night] .system :where(.system-top,.node small,.hub span,.flow-label,.system-bottom){color:#b8b8b8}
html[data-theme=night] .system-bottom{border-color:#454545}
html[data-theme=night] .system .connector{background:#666}
html[data-theme=night] .dark :where(.lead,p,.eyebrow),html[data-theme=night] .footer :where(p,h3){color:#b8b8b8}
html[data-theme=night] .footer-bottom{border-color:#414141;color:#ababab}
html[data-theme=night] :where(.step-buttons,.step-button,.sector-links a,.loop-grid article){border-color:#454545}
html[data-theme=night] .step-button span{color:#a5a5a5}
html[data-theme=night] .origin .big{color:#999}
html[data-theme=night] .origin hr{border-color:#454545}
html[data-theme=night] .sector-photo-window{background:#242424}
html[data-theme=night] .sector-photo-window:after{background:linear-gradient(0deg,#000000b3,transparent 65%)}
html[data-theme=night] .system-photo:after{background:linear-gradient(0deg,#000000aa,transparent 80%)}
@keyframes night-system-node{0%,15%,100%{border-color:#666;background:#303030;box-shadow:0 0 15px #ff7d3714}25%,90%{border-color:#454545;background:#242424;box-shadow:none}}
html[data-theme=night] :where(.deliverable,.dark+.dark){border-color:#414141}
html[data-theme=night] .step-button{color:#b8b8b8}
html[data-theme=night] .privacy-banner{box-shadow:0 15px 65px #00000055}
html[data-theme=night] .privacy-dialog::backdrop{background:#00000080}
html[data-theme=night] .photo-window{background:#242424}

/* Loading screen follows the saved theme from the first paint. */
html[data-theme=night].stride-loading{background:#080808}
html[data-theme=night] .stride-loader{background:#080808;color:#f0f0f0}
html[data-theme=night] .loader-slogan #brain-field stop:first-child{stop-color:#ededed}
html[data-theme=night] .loader-slogan #brain-field stop:last-child{stop-color:#a5a5a5}
html[data-theme=night] .loader-slogan .brain-network>path:first-child{stroke:#494949}
html[data-theme=night] .loader-slogan .brain-cortex{stroke:#4d4d4d;filter:drop-shadow(0 0 4px #ffffff35)}
html[data-theme=night] .loader-brain-hud{color:#b8b8b8;opacity:.18}
html[data-theme=night] .loader-neural-backdrop{opacity:.13}
html[data-theme=night] .stride-loader .loader-neural-backdrop .brain-network>path:first-child,
html[data-theme=night] .stride-loader .loader-neural-backdrop .brain-cortex{stroke:#b8b8b8}
html[data-theme=night] .stride-loader .loader-neural-backdrop .brain-synapses{stroke:#ff9759}
html[data-theme=night] .stride-loader .loader-neural-backdrop .brain-neurons{fill:#ff9759}
