@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Instrument+Serif:ital@0;1&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#080d10;--panel:#0e181e;--panel2:#122127;--ink:#e5eff0;--muted:#a4b6bc;--line:#2b3e46;--cyan:#a9edff;--orange:#f3b98b;--sans:'Space Grotesk',system-ui,sans-serif;--mono:'DM Mono',monospace;--serif:'Instrument Serif',Georgia,serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:var(--cyan);text-underline-offset:.25em}a:hover{color:#fff}button,input,select,textarea{font:inherit}button,.button{min-height:44px;cursor:pointer}button{color:var(--ink);background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:.6rem 1rem}button:hover{border-color:var(--cyan)}:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}input,select,textarea{width:100%;border:1px solid #4d646d;border-radius:3px;background:#080f13;color:var(--ink);padding:.65rem .75rem;min-height:46px}textarea{resize:vertical;min-height:92px}input[type=checkbox]{width:20px;min-height:20px;height:20px;accent-color:var(--cyan);flex-shrink:0}input[aria-invalid=true]{border:2px solid var(--orange)}[hidden]{display:none!important}p{margin:.75rem 0 1.2rem}h1,h2,h3,h4{line-height:1.15;font-weight:500}h1{font-size:clamp(3.2rem,6vw,6.6rem);letter-spacing:-.065em;margin:1.7rem 0}h1 em,h2 em{font-family:var(--serif);font-weight:400;color:var(--cyan)}h2{font-size:clamp(2.25rem,3.7vw,3.9rem);letter-spacing:-.05em;margin:.8rem 0 1.5rem}h3{font-size:1.22rem;margin:0 0 .85rem}h4{font-size:1rem}.mono,.kicker,.chapter-number{font-family:var(--mono);font-size:.69rem;letter-spacing:.12em;text-transform:uppercase}.kicker{color:var(--cyan)}.muted{color:var(--muted)}.skip{position:fixed;top:-100px;left:20px;background:var(--cyan);color:var(--bg);padding:12px;z-index:100}.skip:focus{top:15px}.topbar{height:80px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:#080d10f5;z-index:30}.identity{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:.9rem;font-weight:600;letter-spacing:.2em}.identity img{width:26px;height:26px}.toplinks{display:flex;align-items:center;gap:24px;font-family:var(--mono);font-size:.68rem}.toplinks a{text-decoration:none}.stage{color:var(--orange);display:flex;align-items:center;gap:7px}.stage:before{content:'';width:5px;height:5px;background:var(--orange);border-radius:50%}.hero{padding:65px 4vw 45px;max-width:1600px;margin:auto;position:relative}.hero-meta{display:flex;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid var(--line);color:var(--muted)}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:4vw;align-items:center;padding:22px 0 40px}.hero-copy>p{max-width:490px;color:var(--muted);font-size:1.08rem;line-height:1.7}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;text-decoration:none;padding:.8rem 1.15rem;border:1px solid var(--line);font-size:.85rem}.button.primary{background:var(--cyan);color:#071218;border-color:var(--cyan)}.button.primary:hover{background:white}.hero-diagram{min-width:0;background:radial-gradient(ellipse at center,#16313b75,transparent 68%),linear-gradient(#92d8f509 1px,transparent 1px),linear-gradient(90deg,#92d8f509 1px,transparent 1px);background-size:auto,27px 27px,27px 27px;border:1px solid var(--line);padding:18px 18px 12px;border-radius:3px}.diagram-label{display:flex;justify-content:space-between;color:var(--muted);font:11px var(--mono);letter-spacing:.04em}.hero-diagram svg{width:100%;height:auto;display:block;margin:7px 0}.hero-diagram figcaption{font-size:.75rem;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}.hero-diagram{margin:0}.hero-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;border-top:1px solid var(--line);padding-top:25px}.hero-strip>div{display:flex;gap:15px}.hero-strip b{font:1.3rem var(--serif);color:var(--cyan)}.hero-strip p{font-size:.8rem;margin:0;color:var(--muted)}.hero-strip strong{display:block;color:var(--ink);font-size:.82rem;font-weight:500;margin-bottom:4px}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:5vw;max-width:1450px;margin:auto;padding:50px 4vw 80px;border-top:1px solid var(--line)}.sidebar{align-self:start;position:sticky;top:110px}.sidebar .kicker{margin:0 0 17px;color:var(--muted)}.toc{display:grid;gap:2px}.toc a{display:flex;gap:13px;align-items:center;padding:9px 12px;text-decoration:none;color:var(--muted);font-size:.78rem;border-left:2px solid transparent;min-height:40px}.toc a span{font:10px var(--mono);color:var(--muted)}.toc a[aria-current=true]{color:var(--cyan);border-left-color:var(--cyan);background:#a9edff08}.toc a:hover{color:#fff}.sidebar-foot{margin-top:25px;border-top:1px solid var(--line);padding:20px 12px 0;font-size:.73rem;color:var(--muted)}.sidebar-foot button{font-size:.75rem;width:100%;margin-top:10px}.mobile-nav{display:none}.chapter{padding-bottom:65px;margin-bottom:60px;border-bottom:1px solid var(--line);scroll-margin-top:0}.chapter:last-child{margin-bottom:0}.chapter-head{max-width:680px;margin-bottom:28px}.chapter-head>p:not(.kicker){color:var(--muted);font-size:1.03rem}.lead{font-size:1.2rem}.note{border-left:2px solid var(--orange);padding:17px 22px;background:#f3b98b09;font-size:.88rem;margin:25px 0}.note p{margin:0}.note strong{color:var(--orange);font-weight:500}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.card{background:var(--panel);border:1px solid var(--line);padding:25px;border-radius:3px}.card p{font-size:.9rem;color:var(--muted)}.card p:last-child{margin-bottom:0}.card .index{display:block;color:var(--cyan);font:11px var(--mono);margin-bottom:25px}.readout{display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:25px;padding-top:15px;font-size:.78rem;color:var(--muted)}.pill{font:10px var(--mono);letter-spacing:.04em;padding:4px 8px;border:1px solid var(--line);color:var(--cyan);white-space:nowrap}.worksheet{display:grid;gap:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{display:block;font-size:.83rem;margin-bottom:8px}.field small{display:block;color:var(--muted);font-size:.73rem;margin-top:6px}.field.full{grid-column:1/-1}.required-note{font-size:.75rem;color:var(--muted)}.formula{display:flex;align-items:baseline;gap:25px;border-top:1px solid var(--line);padding:22px 0}.formula:last-child{border-bottom:1px solid var(--line)}.formula code{color:var(--cyan);font-size:1.2rem;min-width:190px}.formula p{font-size:.88rem;color:var(--muted);margin:0}.inline-diagram{width:100%;height:auto;background:var(--panel);border:1px solid var(--line);margin:20px 0}.calculator{border:1px solid #3c5e6c;background:var(--panel);border-radius:4px;overflow:hidden}.calc-top{padding:24px 28px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.calc-top p{margin:0;font-size:.82rem;color:var(--muted)}.calc-top h3{margin-bottom:5px}.calc-body{display:grid;grid-template-columns:1.1fr 1fr}.calc-inputs{padding:28px;border-right:1px solid var(--line)}.calc-inputs .form-grid{gap:16px}.calc-inputs label{font-size:.76rem}.calc-inputs small{font-size:.68rem}.calc-results{padding:28px;background:#0a1217}.result-primary{padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line)}.result-label{display:block;font-size:.75rem;color:var(--muted)}.result-value{font-size:3rem;letter-spacing:-.06em;line-height:1.3;color:var(--cyan);font-weight:400}.result-value small{font-size:1rem;letter-spacing:0}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 12px}.result-grid b{display:block;font-weight:400;font-size:1.5rem;letter-spacing:-.025em}.result-grid b small{font-size:.8rem;color:var(--muted)}.result-disclaimer{font-size:.77rem;color:var(--orange);line-height:1.65;margin-top:25px}.chart{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.chart h4{margin:0 0 7px}.chart p{font-size:.73rem;color:var(--muted)}.bar-row{display:grid;grid-template-columns:65px minmax(25px,1fr) 75px;gap:10px;align-items:center;margin:12px 0;font:11px var(--mono)}.bar-track{height:8px;background:#203640}.bar-fill{height:100%;background:var(--cyan)}.calc-bottom{padding:17px 28px;border-top:1px solid var(--line);font-size:.76rem;color:var(--muted)}.error-summary{color:var(--orange);padding:15px;background:#f3b98b0d;border:1px solid var(--orange);font-size:.8rem;margin-bottom:18px}.field-error{color:var(--orange)!important}.calc-status{font-size:.75rem;color:var(--muted);margin:15px 0 0;min-height:20px}.compact{padding:.5rem .8rem;font-size:.75rem}.steps{display:grid;gap:14px}.step{padding:24px;border:1px solid var(--line);display:grid;grid-template-columns:50px 1fr;gap:15px}.step-number{font:1.8rem var(--serif);color:var(--cyan)}.step h3{margin-top:3px}.step p{font-size:.88rem;color:var(--muted);margin:.5rem 0}.step strong{color:var(--ink);font-weight:500}.gate-check{display:flex;gap:12px;align-items:flex-start;font-size:.8rem;color:var(--cyan);margin-top:15px;cursor:pointer}.gate-check input{margin-top:2px}.gate-summary{margin:20px 0;font-size:.84rem;color:var(--cyan)}.table-wrap{overflow-x:auto;margin:20px 0}table{border-collapse:collapse;width:100%;font-size:.83rem}th{text-align:left;color:var(--muted);font-weight:400;font:11px var(--mono);letter-spacing:.04em}td,th{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}td:first-child,th:first-child{padding-left:0}td p{margin:0;font-size:.8rem;color:var(--muted)}td:last-child,th:last-child{text-align:right}.budget-table input{min-width:105px;font-family:var(--mono);font-size:.8rem}.budget-total{display:flex;justify-content:space-between;gap:20px;background:var(--panel2);padding:20px;margin-top:14px}.budget-total b{color:var(--cyan);font-weight:500;font-size:1.3rem}.checklist{padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--line);padding:15px 0;font-size:.9rem;display:flex;gap:15px}.checklist li:before{content:'↗';color:var(--cyan)}details{border:1px solid var(--line);border-radius:3px;margin:13px 0;background:var(--panel)}summary{padding:17px 20px;cursor:pointer;font-size:.9rem;min-height:48px}details>div{padding:0 20px 20px;font-size:.86rem;color:var(--muted)}details>div p:last-child{margin-bottom:0}.sources{list-style:none;padding:0;display:grid;gap:0}.sources li{padding:20px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:35px 1fr;gap:15px}.source-id{color:var(--cyan);font:11px var(--mono);padding-top:5px}.sources a{font-size:.94rem}.sources p{font-size:.78rem;color:var(--muted);margin:7px 0 0}.footer{display:flex;justify-content:space-between;gap:25px;padding:35px 4vw;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}.footer a{margin-left:20px}.no-js{margin:20px;padding:15px;border:1px solid var(--orange)}.print-only{display:none}
@media(min-width:1500px){.hero{padding-top:80px}.hero-grid{gap:6vw}.hero-copy>p{max-width:550px}}
@media(max-width:1100px){.layout{grid-template-columns:170px minmax(0,1fr);gap:30px}.calc-body{grid-template-columns:1fr}.calc-inputs{border-right:0;border-bottom:1px solid var(--line)}.calc-results{display:block}.grid-3{grid-template-columns:1fr}.hero-grid{gap:25px}.hero h1{font-size:4.3rem}.toc a{padding-left:6px}}
@media(max-width:760px){html{scroll-padding-top:144px}.topbar{height:66px;padding:0 20px}.identity{font-size:.75rem}.toplinks{gap:15px}.toplinks .desktop-link{display:none}.hero{padding:32px 20px}.hero-meta span:last-child{display:none}.hero-grid{grid-template-columns:1fr;padding-top:12px;gap:35px}.hero h1{font-size:clamp(3.1rem,11vw,4.6rem);margin:1.4rem 0}.hero-copy>p{font-size:1rem}.hero-diagram{padding:14px}.hero-strip{gap:18px;grid-template-columns:1fr}.hero-strip>div{gap:20px}.hero-strip b{min-width:24px}.layout{display:block;padding:35px 20px 30px}.sidebar{display:none}.mobile-nav{display:block;position:sticky;top:66px;padding:9px 20px;background:#101b20;z-index:25;border-bottom:1px solid var(--line)}.mobile-nav select{min-height:42px;font-size:.8rem;padding:6px 10px}.chapter{padding-bottom:40px;margin-bottom:40px;scroll-margin-top:0}.grid-2,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.card{padding:20px}.formula{display:block}.formula code{display:block;margin-bottom:8px}.calc-top,.calc-inputs,.calc-results{padding:21px}.calc-inputs .form-grid{grid-template-columns:1fr 1fr}.calc-inputs .field.full{grid-column:1/-1}.calc-top{display:block}.calc-top button{margin-top:14px}.calc-bottom{padding:16px 21px}.step{grid-template-columns:30px 1fr;padding:18px;gap:12px}.footer{display:block;padding:25px 20px}.footer a{margin:0 15px 0 0}.footer>div:last-child{margin-top:14px}.note{padding:15px 17px}.table-wrap{margin-right:0}.budget-total{flex-wrap:wrap}.diagram-label{font-size:9px}.result-value{font-size:2.8rem}.actions{gap:12px}.button{font-size:.78rem;gap:12px}.budget-table td{padding:12px 8px}.budget-table td:first-child{padding-left:0}.budget-table input{width:100px;min-width:85px}}
@media(max-width:390px){.calc-inputs .form-grid{grid-template-columns:1fr}.calc-inputs .field.full{grid-column:auto}.toplinks{font-size:.58rem}.stage{font-size:.58rem}.calc-results{padding:18px}.result-grid b{font-size:1.3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{:root{color-scheme:light;--bg:white;--panel:#fff;--panel2:#edf2f3;--ink:#14252b;--muted:#354c56;--line:#bac9ce;--cyan:#125069;--orange:#843b0c}body{font-size:10pt}.topbar{position:static;height:50px}.stage,.toplinks,.sidebar,.mobile-nav,.actions,button,.skip{display:none!important}.hero{padding:20px 0}.hero h1{font-size:40pt}.hero-grid{grid-template-columns:1fr 1fr}.hero-diagram{background:#102027;color:#e5eff0;print-color-adjust:exact}.layout{display:block;padding:20px 0}.chapter{break-inside:auto;margin-bottom:25px;padding-bottom:20px}h2{font-size:26pt}h3,summary{break-after:avoid}.card,.step,.formula,.calc-results{break-inside:avoid}input,textarea,select{color:#14252b;background:white;border-color:#bac9ce}.calc-results{background:#f4f6f7}.calc-body{grid-template-columns:1fr 1fr}.result-value{font-size:24pt}a{color:#125069}.chapter a[href^=http]:after{content:' (' attr(href) ')';font-size:7pt;overflow-wrap:anywhere}.footer{padding:15px 0}.print-only{display:block}.no-print{display:none!important}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.preset-bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:15px 28px;border-bottom:1px solid var(--line);font-size:.75rem}.preset-bar button[aria-pressed=true]{color:var(--cyan);border-color:var(--cyan);background:#a9edff0a}@media(max-width:760px){.preset-bar{padding:15px 21px}}
.context-controls{padding:28px;border-bottom:1px solid var(--line)}.context-controls .note{margin-bottom:0}.context-controls .gate-check{color:var(--muted)}.evidence-readout{margin-top:23px;border-top:1px solid var(--line);padding-top:8px}.evidence-readout p{margin:12px 0;font-size:.78rem}.evidence-readout span{display:block;color:var(--muted)}.evidence-readout strong{font-weight:500}.mechanism-diagrams figure{margin:0;padding:14px}.mechanism-diagrams svg{display:block;width:100%;height:auto}.mechanism-diagrams svg text{font-family:var(--mono);font-size:8px;fill:var(--cyan)}.mechanism-diagrams figcaption{font-size:.77rem;color:var(--muted);padding:8px}.mechanism-diagrams figcaption strong{display:block;color:var(--ink);margin-bottom:5px}.architecture-table{min-width:640px}.architecture-table th[scope=row]{font:inherit;color:var(--ink);width:23%}.architecture-table td{text-align:left!important;width:38%;font-size:.8rem;color:var(--muted)}caption{text-align:left;color:var(--muted);font-size:.75rem;padding-bottom:15px}.gate-field{margin-top:17px;max-width:400px}.bar-row{grid-template-columns:70px minmax(25px,1fr) 70px}#result-surface-status{color:var(--orange);margin-bottom:0}.formula code{font-size:1rem;white-space:nowrap}.chapters{min-width:0}.sources a{overflow-wrap:anywhere}@media(max-width:760px){.context-controls{padding:21px}.mechanism-diagrams{grid-template-columns:1fr}.mechanism-diagrams figure{display:grid;grid-template-columns:135px 1fr;align-items:center}.mechanism-diagrams figcaption{padding:8px}.architecture-table{min-width:640px}.formula code{white-space:normal}}@media print{.context-controls{padding:15px}.mechanism-diagrams svg{background:#102027;print-color-adjust:exact}.architecture-table{min-width:0}.table-wrap{overflow:visible}.calc-body{display:block}.calc-inputs{border-right:0}.formula code{white-space:normal}}
.field,.step>div{min-width:0}select{min-width:0}.step{grid-template-columns:50px minmax(0,1fr)}.mechanism-diagrams svg text[fill="#071218"]{fill:#071218}@media(max-width:760px){.step{grid-template-columns:30px minmax(0,1fr)}}
.chapter p{overflow-wrap:anywhere}@media print{.topbar{background:white}.hero-diagram .diagram-label,.hero-diagram figcaption{color:#bfd4dc}.mechanism-diagrams svg text{fill:#a9edff}.mechanism-diagrams svg text[fill="#071218"]{fill:#071218}}
