:root{--paper:#f2f0e8;--ink:#17201d;--muted:#66706b;--line:#c8cbc2;--sun:#e7ff59;--blue:#145dff;--rust:#d84c2f;--dark:#0d1513;--panel:#fffefa;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:Inter,Avenir,"Helvetica Neue",Arial,sans-serif;--serif:Iowan Old Style,Baskerville,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}.skip-link{position:fixed;z-index:99;left:1rem;top:-5rem;background:var(--ink);color:white;padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.2rem,4vw,4.5rem);border-bottom:1px solid var(--line);background:rgba(242,240,232,.92);backdrop-filter:blur(12px);position:relative;z-index:4}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:800;letter-spacing:-.03em}.brand b{color:var(--blue)}.brand-mark{width:28px;height:28px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;position:relative}.brand-mark:before,.brand-mark:after{content:"";position:absolute;width:36px;height:1px;background:var(--ink);transform:rotate(45deg)}.brand-mark:after{transform:rotate(-45deg)}.brand-mark i{display:block;width:9px;height:9px;border-radius:50%;background:var(--sun);border:1px solid var(--ink);z-index:1}.site-header nav{display:flex;gap:clamp(1rem,3vw,2.5rem);font:700 .73rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline}.eyebrow,.section-number{font:700 .7rem var(--mono);letter-spacing:.14em;text-transform:uppercase}.eyebrow:before{content:"";display:inline-block;width:28px;height:1px;background:currentColor;margin:0 .7rem .25rem 0}.lede{font-size:clamp(1.06rem,2vw,1.35rem);line-height:1.55;color:#43504b;max-width:720px}.home-hero{min-height:620px;padding:clamp(4rem,8vw,8rem) clamp(1.2rem,7vw,8rem);display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:3rem;overflow:hidden}.home-copy h1,.hub-hero h1,.tool-intro h1,.method-page h1{font:500 clamp(3.4rem,8vw,7.4rem)/.88 var(--serif);letter-spacing:-.07em;margin:.5rem 0 2rem;max-width:1000px}.home-copy h1 em{color:var(--blue);font-weight:400}.climate-dial{width:min(36vw,420px);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 50%,#fff 0 2%,transparent 2.2%),repeating-conic-gradient(from 0deg,transparent 0 14deg,rgba(23,32,29,.25) 14.1deg 14.5deg)}.dial-ring{width:72%;height:72%;border:32px solid var(--sun);border-radius:50%;display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 1px var(--ink),0 0 0 1px var(--ink)}.dial-hand{position:absolute;width:42%;height:2px;background:var(--ink);left:50%;transform-origin:left;transform:rotate(-35deg)}.dial-hand:after{content:"";position:absolute;right:-4px;top:-4px;width:9px;height:9px;background:var(--ink);border-radius:50%}.dial-core{font:500 3.5rem var(--serif);background:var(--paper);width:52%;height:52%;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;z-index:1}.dial-label{position:absolute;font:700 .65rem var(--mono);letter-spacing:.18em}.dial-label-a{top:9%;left:47%}.dial-label-b{bottom:16%;right:4%}.climate-dial small{position:absolute;bottom:-2.2rem;font:700 .62rem var(--mono);letter-spacing:.15em}.market-doors{padding:5rem clamp(1.2rem,7vw,8rem);border-top:1px solid var(--line)}.market-doors h2{font:500 clamp(2rem,4vw,4rem)/1.05 var(--serif);letter-spacing:-.04em;max-width:820px}.door-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:3rem;border:1px solid var(--ink)}.market-door{min-height:260px;padding:2rem;display:grid;grid-template-columns:1fr auto;align-content:space-between;text-decoration:none;position:relative;transition:background .2s,color .2s}.market-door+ .market-door{border-left:1px solid var(--ink)}.market-door:hover{background:var(--ink);color:var(--paper)}.market-door strong{grid-column:1/-1;font:500 clamp(3rem,7vw,6rem) var(--serif);letter-spacing:-.06em}.market-door span:not(.market-code){font:700 .7rem var(--mono)}.market-code{font:800 1rem var(--mono);color:var(--blue)}.market-door i{font-style:normal;font-size:2rem}.proof-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--dark);color:#e8eee9;padding:4rem clamp(1.2rem,7vw,8rem);gap:3rem}.proof-strip span{font:700 .7rem var(--mono);color:var(--sun)}.proof-strip strong{display:block;margin:1rem 0 .3rem;font-size:1.05rem}.proof-strip p{color:#99a59f;margin:0;font-size:.9rem}.hub-hero,.tool-intro{padding:clamp(4rem,8vw,7rem) clamp(1.2rem,7vw,8rem);position:relative}.hub-hero:after,.tool-intro:after{content:"";position:absolute;right:7%;top:15%;width:150px;height:150px;border:1px solid var(--ink);border-radius:50%;box-shadow:inset 0 0 0 26px var(--sun),inset 0 0 0 27px var(--ink)}.hub-hero h1{font-size:clamp(3.3rem,7vw,6.4rem);max-width:900px}.primary-link{display:inline-flex;align-items:center;gap:2rem;background:var(--ink);color:white;padding:1rem 1.3rem;text-decoration:none;font-weight:800;margin-top:1.5rem}.primary-link span{color:var(--sun);font-size:1.3rem}.hub-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:1rem;padding:0 clamp(1.2rem,7vw,8rem) 7rem}.notebook-card,.evidence-card{background:var(--panel);border:1px solid var(--ink);padding:2rem;min-height:280px}.notebook-card{background-image:linear-gradient(var(--line) 1px,transparent 1px);background-size:100% 32px}.notebook-card h2{font:500 2.5rem var(--serif);margin:2rem 0 1rem}.card-index{font:700 .65rem var(--mono);background:var(--sun);padding:.3rem}.fine-note{font:700 .72rem var(--mono);color:var(--muted)}.evidence-card{background:var(--blue);color:white;display:flex;flex-direction:column;justify-content:space-between}.evidence-card p:last-child{font:500 1.25rem var(--serif)}.tool-intro{display:grid;grid-template-columns:1fr auto;align-items:end;padding-bottom:3rem}.tool-intro:after{display:none}.tool-intro h1{font-size:clamp(3rem,6vw,5.6rem);margin-bottom:1.2rem}.method-stamp{width:130px;height:130px;border:1px solid var(--ink);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(7deg)}.method-stamp span,.method-stamp small{font:700 .58rem var(--mono);letter-spacing:.12em}.method-stamp strong{font:500 2.2rem var(--serif)}.tool-layout{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(440px,1.2fr);gap:1rem;padding:0 clamp(1.2rem,4vw,4.5rem) 5rem;align-items:start}.field-form,.calculation-result{border:1px solid var(--ink);background:var(--panel)}.field-form>header,.result-header{background:var(--ink);color:white;display:flex;justify-content:space-between;padding:.8rem 1rem;font:700 .65rem var(--mono);letter-spacing:.1em}.field-form fieldset{border:0;border-top:1px solid var(--line);margin:0;padding:1.4rem}.field-form legend{font:700 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:1.4rem 0 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{font:700 .72rem var(--mono);text-transform:uppercase;letter-spacing:.04em}.form-grid label>span{float:right;color:var(--muted);text-transform:none}.span-2{grid-column:1/-1}.field-form input,.field-form select{display:block;width:100%;height:44px;border:0;border-bottom:1px solid #8d9691;background:#f5f4ee;border-radius:0;padding:.55rem .6rem;margin-top:.35rem;color:var(--ink)}.field-form input:focus,.field-form select:focus{outline:2px solid var(--blue);outline-offset:1px}.check-label{display:flex;align-items:center;gap:.65rem;padding-top:1.1rem}.check-label input{width:20px;height:20px;margin:0;accent-color:var(--blue)}.check-label span{float:none!important;color:var(--ink)!important}.calculate-button{margin:1.4rem;width:calc(100% - 2.8rem);border:1px solid var(--ink);background:var(--sun);min-height:54px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:.8rem;cursor:pointer;box-shadow:4px 4px 0 var(--ink);transition:transform .1s,box-shadow .1s}.calculate-button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}.loading-dot{display:none;width:8px;height:8px;background:var(--ink);border-radius:50%}.htmx-request .loading-dot{display:block;animation:pulse .8s infinite alternate}.form-caveat{padding:0 1.4rem 1.4rem;margin:0;color:var(--muted);font-size:.78rem}.calculation-result{min-height:610px}.calculation-result[aria-busy=true]{opacity:.65}.result-empty{min-height:610px;padding:3rem;display:flex;flex-direction:column;justify-content:center}.result-empty>span{font:700 .67rem var(--mono);letter-spacing:.14em}.result-empty h2{font:500 2.5rem var(--serif);margin:2rem 0 .5rem}.result-empty p{max-width:460px;color:var(--muted)}.result-error{justify-content:flex-start;background:#fff2ed}.result-error>span{color:var(--rust)}.empty-plot{height:190px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:end;gap:9%;padding:0 10%;margin:2rem 0;position:relative;background:repeating-linear-gradient(0deg,transparent 0 37px,rgba(23,32,29,.08) 38px)}.empty-plot i{width:12%;background:#d7dbd2;height:20%}.empty-plot i:nth-child(2){height:42%}.empty-plot i:nth-child(3){height:70%;background:var(--sun)}.empty-plot i:nth-child(4){height:54%}.range-panel{padding:2rem;border-bottom:1px solid var(--ink);background:var(--sun)}.range-panel p{font:700 .65rem var(--mono);letter-spacing:.12em;margin:0}.range-panel strong{display:block;font:500 clamp(2.8rem,6vw,5rem)/1 var(--serif);letter-spacing:-.06em;margin:.5rem 0}.range-panel>span{font:700 .75rem var(--mono)}.recommendation{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.4rem;border-bottom:1px solid var(--line)}.recommendation span{font:700 .65rem var(--mono);text-transform:uppercase}.recommendation strong{text-align:right}.metric-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.metric-row>div{padding:1.3rem}.metric-row>div+div{border-left:1px solid var(--line)}.metric-row span,.metric-row small{display:block;font:700 .62rem var(--mono);color:var(--muted);text-transform:uppercase}.metric-row strong{display:block;font:500 1.55rem var(--serif);margin:.3rem 0}.solar-note{display:flex;gap:1rem;padding:1rem 1.4rem;background:#edf4ff;border-bottom:1px solid var(--line);align-items:center}.solar-note i{width:12px;height:12px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 5px #ccdcff}.solar-note p{margin:0;font-size:.85rem}.load-ledger{padding:1.4rem;border-bottom:1px solid var(--line)}.load-ledger h2{font:500 1.6rem var(--serif);margin:0 0 1rem}.load-ledger details{border-top:1px solid var(--line);padding:.75rem 0}.load-ledger summary{display:grid;grid-template-columns:130px 1fr 70px;gap:1rem;align-items:center;cursor:pointer;font-size:.83rem}.load-ledger summary i{height:7px;background:#e0e2dc}.load-ledger summary b{display:block;height:100%;background:var(--blue)}.load-ledger summary strong{text-align:right;font:700 .7rem var(--mono)}.load-ledger details p{color:var(--muted);font-size:.78rem;margin:.6rem 0 0 130px}.claim-box{margin:1.4rem;border:1px solid var(--ink);padding:1rem;background:#f6f4ec}.claim-box>span{font:700 .62rem var(--mono);letter-spacing:.1em}.claim-box p{font:500 1.05rem var(--serif)}.claim-box small{font:600 .62rem var(--mono);color:var(--muted)}.source-ledger{margin:1.4rem;border-top:1px solid var(--ink);padding-top:1rem}.source-ledger>summary{font:800 .72rem var(--mono);cursor:pointer}.source-ledger>summary span{float:right;background:var(--ink);color:white;border-radius:12px;padding:.05rem .45rem}.source-row{display:grid;grid-template-columns:120px 1fr;gap:.2rem 1rem;border-top:1px solid var(--line);padding:.75rem 0;margin-top:.75rem;font-size:.74rem}.source-row>span{grid-row:1/3;font:700 .6rem var(--mono);color:var(--muted);text-transform:uppercase}.source-row small{color:var(--muted)}.warning-list{margin:1.4rem;padding:1rem;background:#fff2ed;border-left:3px solid var(--rust)}.warning-list p{font-size:.75rem;margin:.3rem 0}.crawlable-explainer{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:4rem clamp(1.2rem,7vw,8rem);display:grid;grid-template-columns:.4fr 1.6fr}.crawlable-explainer h2{font:500 2.8rem var(--serif);margin:0}.crawlable-explainer p{max-width:680px}.console-shell{background:#08100e;min-height:calc(100vh - 76px);color:#d8e1dd;padding:1.2rem;font-family:var(--mono)}.console-topbar{border:1px solid #26342f;background:#101a17;padding:.9rem 1rem;display:flex;justify-content:space-between;font-size:.7rem;letter-spacing:.07em}.console-pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:#68f0a3;margin-right:.7rem;box-shadow:0 0 12px #68f0a3}.console-summary{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #26342f;border-top:0}.console-summary>div{padding:1.2rem}.console-summary>div+div{border-left:1px solid #26342f}.console-summary span,.console-summary small{display:block;color:#6f8179;font-size:.62rem}.console-summary strong{display:block;color:#e7ff59;font-size:1.5rem;margin:.4rem 0}.console-table-wrap{margin-top:1rem;border:1px solid #26342f;overflow:auto}.console-table{width:100%;border-collapse:collapse;font-size:.68rem}.console-table th{text-align:left;background:#101a17;color:#70827a;padding:.75rem;letter-spacing:.06em}.console-table td{border-top:1px solid #26342f;padding:.8rem;vertical-align:top}.console-table td:nth-child(3){min-width:420px;max-width:700px}.console-table td strong{color:#e5ede9}.console-table td p{color:#84968e;line-height:1.5;margin:.4rem 0 0}.market-pill,.status-pill{padding:.2rem .45rem;border:1px solid #3b5048;color:#a9c2b7}.status-pill{color:#e7ff59;border-color:#69752e}.empty-table{text-align:center;padding:4rem!important;color:#70827a}.method-page{max-width:1040px;margin:0 auto;padding:6rem 1.2rem}.method-page header{padding-bottom:4rem}.method-page h1{font-size:clamp(3rem,7vw,6rem)}.method-page section{display:grid;grid-template-columns:120px 1fr;border-top:1px solid var(--ink);padding:2.5rem 0}.method-page section>span{font:700 .7rem var(--mono);color:var(--blue)}.method-page h2{font:500 2rem var(--serif);margin:0}.method-page section p{max-width:700px;color:#4d5853}.method-page aside{background:var(--sun);border:1px solid var(--ink);padding:2rem;margin-top:2rem}.method-page aside strong{font:500 1.8rem var(--serif)}.site-footer{padding:2rem clamp(1.2rem,4vw,4.5rem);display:flex;justify-content:space-between;gap:2rem;font-size:.78rem}.site-footer div{display:flex;gap:2rem}.error-page{max-width:700px;margin:12vh auto;padding:2rem}.error-page h1{font:500 4rem var(--serif)}
@keyframes pulse{to{opacity:.25;transform:scale(.7)}}
@media(max-width:900px){.home-hero{grid-template-columns:1fr}.climate-dial{width:min(75vw,380px);margin:auto}.hub-hero:after{opacity:.22}.hub-grid,.tool-layout{grid-template-columns:1fr}.tool-layout{padding-inline:1rem}.crawlable-explainer{grid-template-columns:1fr}.proof-strip{grid-template-columns:1fr}.method-stamp{display:none}.tool-intro{grid-template-columns:1fr}.console-summary{grid-template-columns:1fr}.console-summary>div+div{border-left:0;border-top:1px solid #26342f}}
@media(max-width:600px){.site-header{padding-inline:1rem}.brand span:last-child{font-size:.88rem}.site-header nav{gap:.8rem}.home-hero,.hub-hero,.tool-intro{padding:3.5rem 1rem}.home-copy h1{font-size:3.5rem}.door-grid{grid-template-columns:1fr}.market-door+ .market-door{border-left:0;border-top:1px solid var(--ink)}.hub-grid{padding:0 1rem 4rem}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.load-ledger summary{grid-template-columns:100px 1fr 62px}.load-ledger details p{margin-left:0}.source-row{grid-template-columns:1fr}.source-row>span{grid-row:auto}.site-footer{flex-direction:column}.method-page section{grid-template-columns:45px 1fr}.console-topbar{gap:1rem}.console-topbar>span{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Tabler Icons v3.45.0 — local SVG sprite, MIT licensed. */
.ti{width:1.15em;height:1.15em;display:inline-block;flex:0 0 auto;vertical-align:-.18em;overflow:visible}
.market-door>.ti{width:2rem;height:2rem;transition:transform .2s ease}.market-door:hover>.ti{transform:translate(.2rem,-.2rem)}
.proof-icon{display:block;width:1.65rem;height:1.65rem;margin-top:1.25rem;color:var(--sun)}
.proof-strip .proof-icon+strong{margin-top:.65rem}
.primary-link>.ti{width:1.3rem;height:1.3rem;color:var(--sun);transition:transform .15s ease}.primary-link:hover>.ti{transform:translateX(.25rem)}
.card-index{display:inline-flex;align-items:center;gap:.35rem}.card-index>.ti{width:1rem;height:1rem}
.calculate-button>.ti{width:1.25rem;height:1.25rem}
.result-header>span,.recommendation>span,.metric-row span,.load-ledger h2,.claim-box>span,.source-ledger>summary,.console-topbar>div{display:flex;align-items:center;gap:.45rem}
.result-header .ti{color:var(--sun)}
.recommendation .ti{width:1rem;height:1rem;color:var(--blue)}
.metric-row span>.ti{width:1rem;height:1rem;color:var(--blue)}
.solar-note>.ti{width:1.4rem;height:1.4rem;color:var(--blue);padding:.15rem;border-radius:50%;box-shadow:0 0 0 5px #ccdcff}
.load-ledger h2>.ti{width:1.2rem;height:1.2rem;color:var(--blue)}
.claim-box>span>.ti,.source-ledger>summary>.ti{width:1rem;height:1rem;color:var(--blue)}
.source-ledger>summary>span{margin-left:auto;float:none}
.warning-list{display:flex;align-items:flex-start;gap:.7rem}.warning-list>.ti{width:1.1rem;height:1.1rem;margin-top:.2rem;color:var(--rust)}
.console-topbar>div>.ti{width:1rem;height:1rem;color:#68f0a3}
