:root{--bg:#0b0d10;--surface:#11141a;--surface2:#171b23;--border:#2c3340;--text:#e7ebf1;--muted:#aab3c1;--accent:#75c7e5;--accent-bg:#122b36;--inverse:#07141a;--error:#f1aaba;--font:'Inter',system-ui,sans-serif;--display:'Instrument Serif',Georgia,serif;--xs:.8rem;--sm:.9rem;--base:1rem;--lg:1.3rem;--xl:clamp(1.7rem,2vw,2.4rem);--hero:clamp(2.5rem,4.6vw,4.5rem);--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.25rem;--s6:1.5rem;--s8:2rem;--s10:2.5rem;--s12:3rem;--s16:4rem;--s20:5rem}
[data-theme=light]{--bg:#f7f9fb;--surface:#fff;--surface2:#edf1f5;--border:#cbd3dd;--text:#17202c;--muted:#4c5b6b;--accent:#176181;--accent-bg:#e5f3f8;--inverse:#fff;--error:#a12849}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:400 var(--base)/1.65 var(--font)}[hidden]{display:none!important}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display);font-weight:400;line-height:1.08}h1{font-size:var(--hero);letter-spacing:-.02em}h1 span{color:var(--accent)}h2{font-size:var(--xl)}h3{font-size:var(--lg);line-height:1.35;font-weight:600}p{color:var(--muted);max-width:72ch}p+p{margin-top:var(--s4)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button,a,input,select,summary{touch-action:manipulation}button{min-height:44px}input:not([type=checkbox]):not([type=range]),textarea,select{display:block;width:100%;background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:var(--s3);color:var(--text)}textarea{resize:vertical}label{display:block;font-size:var(--sm);margin:var(--s4) 0 var(--s2);color:var(--text)}input[type=range]{width:100%;min-height:36px;accent-color:var(--accent)}input[type=checkbox]{accent-color:var(--accent);width:18px;height:18px;flex-shrink:0}.check{display:flex;align-items:flex-start;gap:var(--s2)}.primary,.secondary,.quiet{border-radius:5px;font-size:var(--sm);padding:var(--s3) var(--s5);font-weight:600}.primary{background:var(--accent);color:var(--inverse);border:1px solid var(--accent)}.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.quiet{border:0;background:transparent;color:var(--muted);padding:var(--s2) var(--s3)}.primary:hover{filter:brightness(1.08)}.secondary:hover,.quiet:hover{background:var(--surface2)}.skip{position:absolute;top:-90px;left:var(--s4);z-index:50;background:var(--surface);padding:var(--s3)}.skip:focus{top:var(--s3)}
.site-header{display:flex;justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s5) clamp(var(--s5),4vw,var(--s12));border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:var(--s3);color:var(--text);font-weight:600;white-space:nowrap}.brand svg{color:var(--accent)}.brand-divider{color:var(--border);margin-inline:var(--s2)}.hp-label{font-size:var(--sm);font-weight:400;color:var(--muted)}.header-actions{display:flex;gap:var(--s2)}.container{max-width:1180px;margin:auto;padding-inline:clamp(var(--s5),4vw,var(--s12))}.preview-notice{padding:var(--s2) var(--s5);text-align:center;font-size:var(--xs);color:var(--muted);background:var(--surface2);border-bottom:1px solid var(--border)}
.gate{max-width:1180px;min-height:75vh;margin:auto;padding:var(--s20) clamp(var(--s5),4vw,var(--s12));display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s20);align-items:center}.gate-copy h1{margin-bottom:var(--s6)}.gate-small{font-size:var(--sm);margin-top:var(--s8)}.login-panel{padding:var(--s8);background:var(--surface);border:1px solid var(--border);border-radius:10px}.login-panel h2{margin-bottom:var(--s6)}.login-panel .primary{width:100%;margin-top:var(--s6)}.eyebrow{font-size:var(--xs);letter-spacing:.11em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:var(--s5)}.note{font-size:var(--sm);margin-top:var(--s4)}.preview-help{font-size:var(--xs);padding:var(--s3);border-left:2px solid var(--accent);background:var(--accent-bg);margin-top:var(--s4)}code{font-family:ui-monospace,monospace;color:var(--text)}.status{color:var(--error);font-size:var(--sm);margin-top:var(--s3);min-height:1.5em}.status:empty{min-height:0;margin:0}.admin-toggle{border-top:1px solid var(--border);margin-top:var(--s6);padding-top:var(--s3);font-size:var(--sm);color:var(--muted)}summary{cursor:pointer;padding-block:var(--s2)}
.tab-nav{display:flex;justify-content:center;align-items:stretch;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-inline:var(--s4);gap:var(--s2)}.tab-nav a{display:flex;align-items:center;gap:var(--s2);padding:var(--s5) var(--s3);font-size:var(--sm);color:var(--muted);border-bottom:2px solid transparent}.tab-nav a span{font-size:var(--xs);opacity:.65}.tab-nav a[aria-current=page]{color:var(--text);border-color:var(--accent)}.hero{padding:var(--s20) 0 var(--s16)}.hero.compact{padding-bottom:var(--s12)}.hero .lede{font-size:var(--lg);max-width:62ch;margin-top:var(--s8)}.hero-meta{display:flex;flex-wrap:wrap;gap:var(--s6);margin-top:var(--s10);font-size:var(--xs);color:var(--muted)}.hero-meta span{border-left:2px solid var(--accent);padding-left:var(--s3)}.section{padding-block:var(--s16);border-top:1px solid var(--border)}.section h2{margin-bottom:var(--s6)}.section h3{margin-bottom:var(--s3)}.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s16)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--s6);margin-top:var(--s8)}.panel{padding:var(--s8);border:1px solid var(--border);border-radius:8px;background:var(--surface)}.panel .eyebrow{margin-bottom:var(--s3)}.closing .primary{margin-top:var(--s8)}.steps article{display:flex;gap:var(--s8);padding:var(--s8) 0;border-bottom:1px solid var(--border)}.steps article:first-child{padding-top:0}.steps article:last-child{border:0;padding-bottom:0}.step-number{font-size:var(--sm);color:var(--accent);padding-top:var(--s2)}.steps h2{margin-bottom:var(--s4)}.fact-strip{border-left:2px solid var(--accent);padding-left:var(--s6);margin-top:var(--s8)}.fact-strip strong{display:block;font-size:var(--xl);font-weight:500;color:var(--text);margin-bottom:var(--s2)}.fact-strip p{font-size:var(--sm)}.calculator{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--border);border-radius:8px;margin-top:var(--s8);background:var(--surface)}.controls{padding:var(--s8);border-right:1px solid var(--border)}.controls label:first-child{margin-top:0}.controls output{float:right;color:var(--accent)}.controls button{margin-top:var(--s6)}.calculation{padding:var(--s8)}.math-main strong{display:block;font:400 var(--hero)/1.1 var(--display);color:var(--accent)}.math-main span{color:var(--muted);font-size:var(--sm)}dl{margin:var(--s8) 0 0}dl div{display:flex;justify-content:space-between;gap:var(--s4);border-top:1px solid var(--border);padding:var(--s3) 0;font-size:var(--sm)}dt{color:var(--muted)}dd{margin:0;font-variant-numeric:tabular-nums}.table-wrap{margin-top:var(--s8);overflow:auto}table{width:100%;border-collapse:collapse;font-size:var(--sm)}th{text-align:left;font-weight:600;color:var(--text);background:var(--surface2)}th,td{padding:var(--s5);border:1px solid var(--border);vertical-align:top}td{color:var(--muted)}td:first-child{color:var(--text);width:20%;font-weight:500}.comparison th:nth-child(2),.comparison th:nth-child(3){width:40%}.callout{margin-top:var(--s8);padding:var(--s8);border-left:2px solid var(--accent);background:var(--surface)}.callout h3{color:var(--text)}
.discussion-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--s8)}.thread-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5)}.thread-heading h2{margin:0}.thread{border:1px solid var(--border);padding:var(--s6);border-radius:8px;margin-bottom:var(--s5);overflow-wrap:anywhere}.thread-meta{display:flex;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s3);font-size:var(--xs);color:var(--muted)}.thread-meta strong{color:var(--text);font-weight:600}.thread p{white-space:pre-wrap}.badge{display:inline-block;font-size:var(--xs);padding:var(--s1) var(--s2);background:var(--accent-bg);color:var(--accent);border-radius:3px}.thread details{margin-top:var(--s5);font-size:var(--sm)}.thread .reply{margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--border)}.reply-form{margin-top:var(--s3)}.reply-form button{margin-top:var(--s4)}.empty{padding:var(--s12) var(--s8);border:1px dashed var(--border);border-radius:8px}.empty h3{margin-bottom:var(--s3)}.text-link{display:inline-block;padding-block:var(--s3)}footer{display:flex;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;padding-block:var(--s8);border-top:1px solid var(--border);font-size:var(--xs);color:var(--muted)}
@media(max-width:850px){.gate{gap:var(--s10);padding-block:var(--s12)}.hp-label,.brand-divider{display:none}.split{gap:var(--s8)}.tab-nav{justify-content:flex-start}.tab-nav a{padding:var(--s3);font-size:var(--xs)}.discussion-layout{grid-template-columns:1fr}.hero{padding-top:var(--s12)}}
@media(max-width:620px){.gate,.split,.two-col,.calculator{grid-template-columns:1fr}.gate{gap:var(--s8)}.gate-copy h1{font-size:var(--xl)}.gate-copy p:not(.eyebrow){font-size:var(--sm)}.gate-small{display:none}.login-panel,.panel{padding:var(--s6)}.hero .lede{font-size:var(--base)}.section{padding-block:var(--s10)}.controls{border-right:0;border-bottom:1px solid var(--border);padding:var(--s6)}.calculation{padding:var(--s6)}.tab-nav a span{display:none}.tab-nav a{flex:1 1 40%;min-height:44px}.table-wrap table{min-width:650px}.steps article{gap:var(--s4)}.hero-meta{gap:var(--s4)}.header-actions{gap:0}.site-header{padding:var(--s4) var(--s5)}.quiet{padding:var(--s2);font-size:var(--xs)}}
.status.success{color:var(--accent)}#comment-form>.primary{margin-top:var(--s5)}.table-wrap:focus-visible{outline:2px solid var(--accent)}
.adoption-controls{display:grid;grid-template-columns:1.1fr 1fr;gap:var(--s8);margin-top:var(--s8);padding:var(--s6);background:var(--surface);border:1px solid var(--border);border-radius:8px}.adoption-controls label{margin-top:0}.adoption-controls .eyebrow{margin-bottom:var(--s3)}.footprint-bars{display:grid;gap:var(--s6);margin-top:var(--s8)}.footprint-row>div:first-child{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s4);margin-bottom:var(--s2);font-size:var(--sm)}.footprint-row strong{font-weight:500}.footprint-row>div>span{font-variant-numeric:tabular-nums;white-space:nowrap}.footprint-track{height:12px;background:var(--surface2);border-radius:2px;overflow:hidden}.footprint-track>span{display:block;height:100%;background:var(--accent)}.footprint-track .comparison-bar{background:var(--muted)}#adoption-model .table-wrap td:first-child{width:32%}
@media(max-width:620px){.adoption-controls{grid-template-columns:1fr;gap:var(--s6)}.footprint-row>div:first-child{align-items:flex-start}.footprint-row strong{max-width:23ch}}
.model-details{margin-top:var(--s6);border-top:1px solid var(--border);padding-top:var(--s3)}.model-details>summary{font-size:var(--sm);color:var(--accent);font-weight:600;min-height:44px}.model-details .adoption-controls{margin-top:var(--s4)}.model-details .secondary{margin-top:var(--s4)}
.here-map{margin:var(--s8) 0 0}.here-map img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:5px}.here-map figcaption{margin-top:var(--s3);font-size:var(--sm);color:var(--muted);max-width:80ch}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
