/* Sampling-cost film. Every class is prefixed sc-. Pre-states come only from the kit's :root[data-m-go] guard; scroll-linked motion is transform and opacity on elements of their own. */
.sc-defs{position:absolute;width:0;height:0;overflow:hidden}
.sc-kicker{font:12px/1.8 var(--gft-font-mono);text-transform:uppercase;letter-spacing:.1em}
.sc-small{font:12px/1.8 var(--gft-font-mono);max-width:75ch;color:#3a4d43}
.sc-error{padding:20px;background:#efe0c9;color:#513209;border-left:3px solid var(--gft-ochre);margin-top:24px}
.sc-tool [hidden],[data-sc-tool] [hidden],.sc-compare [hidden]{display:none!important}

/* ---- splash (this tool's own grammar) ---- */
[data-splash=sampling-cost] .gft-splash__structure{inset:0 0 0 41%;background:url('/tools/sampling-cost/splash.svg') center/contain no-repeat}
[data-splash=sampling-cost] .gft-structure{display:none}
[data-splash=sampling-cost] .gft-splash__structure::after{display:none}
[data-splash=sampling-cost] .gft-splash__content{pointer-events:none}
[data-splash=sampling-cost] .gft-splash__content a{pointer-events:auto}
:root[data-m-go] [data-splash=sampling-cost] .gft-splash__structure{animation-name:sc-splash-arrive;animation-duration:860ms;animation-timing-function:var(--gft-ease-out);animation-iteration-count:1;animation-direction:normal}
@keyframes sc-splash-arrive{from{opacity:.15;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

/* ---- live behaviours of this page: run only while on screen ([data-m-on]) ---- */
:root[data-m-go] [data-m-live~=sc-weave][data-m-on]{animation-name:sc-weave;animation-duration:15s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
:root[data-m-go] [data-m-live~=sc-run][data-m-on]{animation-name:sc-run;animation-duration:5.5s;animation-timing-function:linear;animation-iteration-count:infinite}
@keyframes sc-weave{from{transform:translateX(0)}to{transform:translateX(-27px)}}
@keyframes sc-run{from{transform:translateX(-110%)}to{transform:translateX(560%)}}
[data-m-live~=sc-weave],[data-m-live~=sc-run]{overflow-anchor:none}

/* ---- segmented radio control ---- */
.sc-seg{display:flex;flex-wrap:wrap;border:1px solid #ffffff44}
.sc-seg__opt{position:relative;flex:1 1 auto;display:block;cursor:pointer}
.sc-seg__opt input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}
.sc-seg__opt span{display:grid;place-items:center;text-align:center;min-height:52px;padding:10px 16px;font-size:14px;font-weight:650;line-height:1.25;color:#dbe8e0;border-left:1px solid #ffffff2a;transition:background-color 260ms var(--gft-ease-out),color 260ms var(--gft-ease-out)}
.sc-seg__opt:first-child span{border-left:0}
.sc-seg__opt input:checked+span{background:var(--gft-sage);color:var(--gft-night)}
.sc-seg__opt input:focus-visible+span{outline:3px solid var(--gft-ochre);outline-offset:-3px}
.sc-seg__opt--custom{display:none}.sc-seg__opt--custom:has(input:checked){display:block}
.sc-seg__opt input:disabled:checked+span{background:#ffffff1f;color:#f6f4ef}
.sc-seg--light{border-color:#9aafa0;background:#ffffff80}
.sc-seg--light .sc-seg__opt span{color:var(--gft-night);border-left-color:#c4d1c8}
.sc-seg--light .sc-seg__opt input:checked+span{background:var(--gft-forest);color:#fff}
.sc-seg--light .sc-seg__opt input:disabled:checked+span{background:#c98a2b33;color:var(--gft-night)}

/* ---- rails: one sage thread per prose section, scroll-linked on its own element ---- */
.sc-formula,.sc-assump,.sc-sources{view-timeline-name:--sc-sec;view-timeline-axis:block}
.sc-rail{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gft-sage);opacity:.7;pointer-events:none;transform-origin:50% 0;overflow-anchor:none}
@supports(animation-timeline:view()){
 :root[data-m-go] .sc-rail{animation-name:sc-rail;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--sc-sec;animation-range-start:entry 10%;animation-range-end:exit 30%}
 @keyframes sc-rail{from{transform:scaleY(0)}to{transform:scaleY(1)}}
}

/* ---- bench: the instrument directly under the splash ---- */
.sc-bench{position:relative;isolation:isolate;margin-top:-1px;background:linear-gradient(180deg,#072d2b 0,#08403c 46%,#0a3d3a 100%);color:var(--gft-paper);padding-block:clamp(36px,5vw,72px) clamp(64px,8vw,120px)}
.sc-bench__fibre{position:absolute;inset:0 0 auto 0;height:380px;z-index:-1;overflow:clip;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 0,transparent 100%);mask-image:linear-gradient(180deg,#000 0,transparent 100%)}
.sc-bench__fibre svg{width:110%;height:100%;display:block}
.sc-bench__threads path{fill:none;stroke:#6bb68f;stroke-width:1;opacity:.75;vector-effect:non-scaling-stroke}
.sc-bench__head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:28px}
.sc-bench__head .gft-eyebrow{color:var(--gft-sage);margin-bottom:18px}
.sc-bench h2{font-size:clamp(2.2rem,4.4vw,4.4rem);color:var(--gft-paper);max-width:16ch}
.sc-presetbox .sc-kicker{color:#b8d0c1;margin-bottom:10px}
.sc-banner{display:flex;align-items:flex-start;gap:20px;border-block:1px solid #ffffff24;padding-block:18px;margin-bottom:32px;font-size:15px;color:#c8dccf;max-width:none}
.sc-chip{background:var(--gft-sage);color:var(--gft-night);padding:8px 12px;font:12px/1.5 var(--gft-font-mono);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em}
.sc-workbench{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(24px,4vw,64px);align-items:start}
.sc-mini{display:none}
.sc-controls{min-width:0}
.sc-controls fieldset{border:0;padding:0;margin:0 0 32px}
.sc-controls legend{font-size:clamp(1.4rem,2vw,1.9rem);font-weight:800;letter-spacing:-.04em;margin-bottom:10px;color:var(--gft-paper)}
.sc-field{border-top:1px solid #ffffff22;padding:14px 0 12px;transition:background-color 400ms}
.sc-field[data-flash]{outline:2px solid var(--gft-ochre);outline-offset:4px}
.sc-field>label{display:flex;justify-content:space-between;gap:14px;font-size:16px;font-weight:600;align-items:baseline;color:#eaf2ed}
.sc-field>label span{font:12px var(--gft-font-mono);color:#a9c6b6;text-align:right}
.sc-field-controls{display:flex;gap:20px;align-items:center;margin-top:4px}
.sc-field-controls input[type=range]{width:100%;min-width:0;height:44px;accent-color:var(--gft-sage)}
.sc-field-controls input[type=number]{width:124px;flex-shrink:0;min-height:46px;border:1px solid #ffffff55;background:#ffffff12;text-align:right;padding:8px 10px;font-size:16px;color:var(--gft-paper)}
.sc-controls .sc-small{color:#a9c6b6}
.sc-dashboard{position:sticky;top:24px;align-self:start;min-width:0;background:#051f1e;border:1px solid #6bb68f4d;padding:clamp(20px,2.4vw,32px)}
.sc-readout .sc-kicker{color:#b8d0c1}
.sc-big{display:block;font-size:clamp(2.8rem,5vw,5.2rem);line-height:1.1;font-weight:850;letter-spacing:-.065em;margin:8px 0 6px;overflow-wrap:anywhere;min-height:1.15em;color:var(--gft-paper)}
.sc-rate{display:flex;align-items:baseline;gap:12px;color:#c8dccf;font-size:15px}
.sc-rate output{font:24px var(--gft-font-mono);color:var(--gft-sage)}
.sc-interpretation{font-size:14px;line-height:1.55;color:#c8dccf;margin-top:10px;min-height:4.7em}
.sc-garment{padding-block:14px 8px}
.sc-garment svg{width:100%;height:clamp(150px,17vw,200px)}
.sc-garment svg text{fill:#d3e3da;font:25px var(--gft-font-mono);letter-spacing:0}
.sc-garment figcaption{font:12px/1.6 var(--gft-font-mono);color:#aec9b9;margin-top:4px}
.sc-inspect{display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 8px;font-size:13px;margin-top:6px;color:#dbe8e0}
.sc-inspect output{font:12px var(--gft-font-mono);color:#c0d7ca}
.sc-inspect input{grid-column:1/-1;width:100%;accent-color:var(--gft-sage);min-height:44px}
.sc-fabric-layer{transition:clip-path 420ms var(--gft-ease-out)}
.sc-weave{transform-box:fill-box}
.sc-bars{padding-block:16px 4px;border-top:1px solid #ffffff2a}
.sc-bar-heading,.sc-bar-row>div:first-child{display:flex;justify-content:space-between;gap:14px;font-size:13px}
.sc-bar-heading{font:12px var(--gft-font-mono);color:#aec9b9;margin-bottom:12px}
.sc-bar-row+.sc-bar-row{margin-top:12px}
.sc-bar-row output{font:13px var(--gft-font-mono)}
.sc-track{height:12px;background:#ffffff15;margin-top:6px;overflow:hidden}
.sc-track span{display:block;height:100%;width:100%;background:repeating-linear-gradient(90deg,#b7cfbd 0 2px,#6bb68f 2px 6px);transform-origin:left}
.sc-track [data-sc-bar=digital]{background:repeating-linear-gradient(135deg,#b3c3ed 0 2px,#728dc2 2px 6px)}
.sc-saving-label{display:flex;justify-content:space-between;gap:16px;margin-top:16px;font:12px var(--gft-font-mono)}
.sc-saving-track{position:relative;height:10px;margin-top:10px;background:#ffffff15}
.sc-saving-track i{position:absolute;left:50%;height:18px;top:-4px;border-left:1px solid #e2ebe6}
.sc-saving-track>span{display:block;width:50%;height:100%;transform-origin:left;background:var(--gft-sage)}
.sc-saving-track>span[data-loss=true]{transform-origin:right;background:var(--gft-ochre)}
.sc-ledger{margin-top:clamp(36px,5vw,64px)}
.sc-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:1px solid #ffffff33}
.sc-metrics>div{display:grid;align-content:start;gap:8px;padding:18px 16px 18px 0;min-width:0}
.sc-metrics>div+div{border-left:1px solid #ffffff22;padding-left:16px}
.sc-metrics span{font-size:13px;color:#b8d0c1;line-height:1.35}
.sc-metrics output{font:600 clamp(15px,1.5vw,22px)/1.3 var(--gft-font-mono);overflow-wrap:anywhere;color:var(--gft-paper)}
.sc-clock{margin-top:16px;font-size:15px;color:#cbded0;max-width:none}
[data-sc-tool][data-valid=false] .sc-garment,[data-sc-tool][data-valid=false] .sc-bars,[data-sc-tool][data-valid=false] .sc-metrics,[data-sc-tool][data-valid=false] .sc-clock,[data-sc-tool][data-valid=false] .sc-rate{display:none}

/* ---- compare ledger ---- */
.sc-compare{background:var(--gft-sand);padding-block:clamp(56px,8vw,112px);position:relative}
.sc-compare__grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(28px,5vw,80px);align-items:start}
.sc-compare__side{position:sticky;top:24px}
.sc-compare__side .gft-eyebrow{margin-bottom:16px;color:var(--gft-forest)}
.sc-compare h3{font-size:clamp(2rem,3.6vw,3.6rem);margin-bottom:18px}
.sc-compare__side>p{font-size:17px;max-width:44ch}
.sc-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
.sc-actions button{min-height:52px;padding:12px 14px;border:1px solid var(--gft-forest);background:transparent;color:var(--gft-forest);font-size:14px;font-weight:650;text-align:left;transition:background-color 200ms,color 200ms}
.sc-actions button:hover:not(:disabled){background:#0e4d4a14}
.sc-actions [data-sc-save],.sc-actions [data-sc-share]{background:var(--gft-forest);color:#fff}
.sc-actions [data-sc-save]:hover:not(:disabled),.sc-actions [data-sc-share]:hover:not(:disabled){background:var(--gft-night)}
.sc-actions button:disabled{opacity:.45}
.sc-feedback{font:12px/1.8 var(--gft-font-mono);min-height:2em;margin-top:12px}
.sc-link{width:100%;padding:12px;font-size:13px;min-height:48px;margin-block:12px}
.sc-table-wrap{overflow-x:auto}
.sc-table-wrap table{border-collapse:collapse;width:100%;min-width:560px;font-size:15px}
.sc-table-wrap th,.sc-table-wrap td{border-bottom:1px solid #c7d3cb;padding:18px 14px;text-align:left;vertical-align:top}
.sc-table-wrap thead th{font:12px var(--gft-font-mono);text-transform:uppercase;letter-spacing:.08em;background:#0e4d4a12;color:var(--gft-forest)}
.sc-table-wrap tbody th{font-weight:700;font-size:16px;max-width:15ch}
.sc-table-wrap caption{text-align:left;font:12px/1.8 var(--gft-font-mono);margin-bottom:14px}
.sc-compare td b{display:block;font:650 clamp(.95rem,1.3vw,1.3rem)/1.25 var(--gft-font-mono);letter-spacing:-.03em;white-space:nowrap}
.sc-compare tr[data-lower] .sc-dbar__pos{background:var(--gft-ochre)}.sc-compare tr[data-lower] .sc-dbar__neg{background:var(--gft-leaf)}
.sc-dbar{display:block;position:relative;height:8px;margin-top:12px;background:#0000000f}
.sc-dbar::before{content:'';position:absolute;left:50%;top:-4px;bottom:-4px;border-left:1px solid #25302e88}
.sc-dbar i{position:absolute;top:0;bottom:0;width:50%;transition:transform 420ms var(--gft-ease-out)}
.sc-dbar__pos{left:50%;transform-origin:0 50%;background:var(--gft-leaf)}
.sc-dbar__neg{left:0;transform-origin:100% 50%;background:var(--gft-ochre)}

/* ---- the calculation: sticky multi-state ledger plate + steps ---- */
.sc-formula{position:relative;background:var(--gft-paper);padding-block:clamp(64px,9vw,136px)}
.sc-sechead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,4vw,64px);align-items:end;margin-bottom:clamp(32px,5vw,64px)}
.sc-sechead .gft-eyebrow{margin-bottom:18px;color:var(--gft-forest)}
.sc-sechead h2{font-size:clamp(2.3rem,4.8vw,4.8rem);max-width:15ch}
.sc-steps{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(24px,5vw,80px);align-items:start}
.sc-viz{position:sticky;top:24px;z-index:1;display:grid;grid-template-rows:auto 1fr auto;gap:22px;min-height:min(640px,calc(100svh - 48px));padding:clamp(18px,2.2vw,30px);background:var(--gft-night);color:var(--gft-paper);border:1px solid #6bb68f55;min-width:0}
.sc-viz__head{display:flex;justify-content:space-between;gap:16px;color:#b8d0c1;border-bottom:1px solid #ffffff22;padding-bottom:12px}
.sc-viz__step{color:var(--gft-sage)}
.sc-viz__stage{display:grid;align-content:center;min-width:0}
.sc-panel{display:grid;gap:18px;min-width:0}
.sc-steps[data-mw-ready] .sc-panel{grid-area:1/1;align-content:center;transition:opacity 320ms var(--gft-ease-out) 200ms}
.sc-steps[data-mw-ready] .sc-panel:not([data-shown]){opacity:0;visibility:hidden;transition:opacity 180ms var(--gft-ease-out),visibility 0s linear 180ms}
.sc-eq{font:600 clamp(.95rem,1.5vw,1.4rem)/1.7 var(--gft-font-mono);color:#e6f0ea;max-width:none}
.sc-t{display:inline-block;padding:0 .22em;border-bottom:2px solid #6bb68f77;transition:background-color 200ms,color 200ms,opacity 200ms}
.sc-vrow{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:14px;color:#c8dccf}
.sc-vrow output{font:650 clamp(1.3rem,2.4vw,2.2rem)/1.1 var(--gft-font-mono);color:var(--gft-paper);text-align:right}
.sc-vnote{font-size:14px;line-height:1.6;color:#c8dccf;max-width:none}
.sc-vnote b{font-family:var(--gft-font-mono);color:var(--gft-paper)}
.sc-rounds{display:flex;gap:5px;height:64px}
.sc-rounds i{flex:1 1 0;min-width:0;background:repeating-linear-gradient(90deg,#b7cfbd 0 2px,#6bb68f 2px 6px);transition:opacity 200ms,outline-color 200ms;outline:2px solid transparent}
.sc-stack,.sc-wf__track,.sc-be__track{position:relative;background:#ffffff12;overflow:hidden}
.sc-stack{height:64px}
.sc-i{position:absolute;inset:0 auto 0 0;width:100%;transform-origin:0 50%;transform:translateX(calc(var(--l,0)*100%)) scaleX(var(--w,0));transition:transform 520ms var(--gft-ease-out),opacity 200ms}
.sc-i--ret{background:repeating-linear-gradient(90deg,#b7cfbd 0 2px,#6bb68f 2px 6px)}
.sc-i--fee{background:repeating-linear-gradient(135deg,#b3c3ed 0 2px,#728dc2 2px 6px)}
.sc-i--ovh{background:var(--gft-ochre)}
.sc-i--sav{background:#9bd4b3}
.sc-i--phys{background:repeating-linear-gradient(90deg,#d6e4da 0 2px,#8fc9a9 2px 6px)}
.sc-i--ghost{background:#ffffff1f}
.sc-key{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:13px;color:#c8dccf}
.sc-key li{display:flex;align-items:center;gap:8px}.sc-key b{font-family:var(--gft-font-mono);color:var(--gft-paper)}
.sc-key i{width:14px;height:14px;display:block}.k-ret{background:#6bb68f}.k-fee{background:#728dc2}.k-ovh{background:var(--gft-ochre)}
.sc-wf{display:grid;gap:12px}
.sc-wf__row{display:grid;grid-template-columns:minmax(0,9.5rem) minmax(0,1fr) minmax(5.5rem,auto);gap:14px;align-items:center;font-size:13px;color:#c8dccf}
.sc-wf__row b{font:650 13px var(--gft-font-mono);color:var(--gft-paper);text-align:right}
.sc-wf__track{height:24px}
.sc-wf__row--total{font-weight:700;color:var(--gft-paper);border-top:1px solid #ffffff33;padding-top:12px}.sc-wf__row--total .sc-wf__track{height:30px}
.sc-be{position:relative;padding-top:24px}
.sc-be__track{height:30px}
.sc-mark{position:absolute;left:0;top:0;bottom:-8px;width:100%;border-right:3px solid var(--gft-ochre);transform:translateX(calc((var(--l,0) - 1)*100%));transition:transform 520ms var(--gft-ease-out);pointer-events:none}
.sc-mark em{position:absolute;right:10px;top:0;font:12px/1 var(--gft-font-mono);font-style:normal;color:var(--gft-ochre);white-space:nowrap}
.sc-terms{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.sc-term{display:grid;grid-template-columns:auto 1fr;grid-template-areas:'a v' 'n n';gap:2px 8px;align-items:baseline;min-height:56px;padding:8px 10px;text-align:left;background:#ffffff0f;border:1px solid #ffffff2e;color:var(--gft-paper);transition:background-color 200ms,color 200ms,border-color 200ms}
.sc-term b{grid-area:a;font:800 17px var(--gft-font-mono);color:var(--gft-sage)}
.sc-term output{grid-area:v;font:12px var(--gft-font-mono);text-align:right;overflow-wrap:anywhere}
.sc-term span{grid-area:n;font-size:12px;line-height:1.3;color:#b8d0c1}
.sc-term:focus-visible{outline:3px solid var(--gft-ochre);outline-offset:2px}
.sc-term[aria-pressed=true]{border-color:var(--gft-ochre)}
.sc-viz:not([data-hot=""]) .sc-t:not(.never){opacity:.45}
.sc-viz:not([data-hot=""]) :is(.sc-i,.sc-rounds i){opacity:.3}
.sc-viz[data-hot="S"] .sc-t[data-t="S"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="S"] [data-t~="S"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="S"] .sc-term[data-term="S"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="S"] .sc-term[data-term="S"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="N"] .sc-t[data-t="N"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="N"] [data-t~="N"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="N"] .sc-term[data-term="N"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="N"] .sc-term[data-term="N"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="R"] .sc-t[data-t="R"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="R"] [data-t~="R"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="R"] .sc-term[data-term="R"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="R"] .sc-term[data-term="R"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="K"] .sc-t[data-t="K"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="K"] [data-t~="K"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="K"] .sc-term[data-term="K"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="K"] .sc-term[data-term="K"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="C"] .sc-t[data-t="C"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="C"] [data-t~="C"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="C"] .sc-term[data-term="C"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="C"] .sc-term[data-term="C"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="D"] .sc-t[data-t="D"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="D"] [data-t~="D"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="D"] .sc-term[data-term="D"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="D"] .sc-term[data-term="D"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="H"] .sc-t[data-t="H"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="H"] [data-t~="H"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="H"] .sc-term[data-term="H"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="H"] .sc-term[data-term="H"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="L"] .sc-t[data-t="L"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="L"] [data-t~="L"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="L"] .sc-term[data-term="L"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="L"] .sc-term[data-term="L"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="T"] .sc-t[data-t="T"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="T"] [data-t~="T"]:is(.sc-i,.sc-rounds i){opacity:1;outline:2px solid var(--gft-ochre);outline-offset:-2px}
.sc-viz[data-hot="T"] .sc-term[data-term="T"]{background:var(--gft-ochre);color:var(--gft-night);border-color:var(--gft-ochre)}
.sc-viz[data-hot="T"] .sc-term[data-term="T"] :is(b,span){color:var(--gft-night)}
.sc-viz[data-hot="S"] .sc-t[data-t="S"]{opacity:1}
.sc-viz[data-hot="N"] .sc-t[data-t="N"]{opacity:1}
.sc-viz[data-hot="R"] .sc-t[data-t="R"]{opacity:1}
.sc-viz[data-hot="K"] .sc-t[data-t="K"]{opacity:1}
.sc-viz[data-hot="C"] .sc-t[data-t="C"]{opacity:1}
.sc-viz[data-hot="D"] .sc-t[data-t="D"]{opacity:1}
.sc-viz[data-hot="H"] .sc-t[data-t="H"]{opacity:1}
.sc-viz[data-hot="L"] .sc-t[data-t="L"]{opacity:1}
.sc-viz[data-hot="T"] .sc-t[data-t="T"]{opacity:1}
.sc-steps__track{min-width:0}
.sc-steps .mw-steps__track>*{min-width:0}
.sc-steps .mw-steps__track>*{min-height:64svh;padding:6svh 0 6svh 30px}
.sc-steps .mw-steps__track>*::before{background:#b8c8bd}
.sc-step .sc-kicker{color:var(--gft-forest)}
.sc-step h3{font-size:clamp(1.7rem,2.6vw,2.6rem);margin:8px 0 14px;max-width:18ch}
.sc-step p{font-size:17px;line-height:1.6;color:#1d2a27;max-width:52ch}
.sc-step .sc-kicker{font-size:12px;color:var(--gft-forest)}
.sc-step__live{margin-top:14px;font:13px/1.6 var(--gft-font-mono)!important;color:var(--gft-forest)!important}
.sc-step__live b{color:var(--gft-night)}
.sc-step output{font-family:var(--gft-font-mono);font-weight:600}

/* ---- the register: toggle, sensitivity read-out, tornado ---- */
.sc-assump{position:relative;background:var(--gft-mist);padding-block:clamp(64px,9vw,128px)}
.sc-assump__grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:clamp(28px,5vw,80px);align-items:start}
.sc-assump__side{position:sticky;top:24px;display:grid;gap:20px;min-width:0}
.sc-assump__side .gft-eyebrow{color:var(--gft-forest)}
.sc-assump__side h3{font-size:clamp(2rem,3.5vw,3.5rem);max-width:14ch}
.sc-assump__side>p{font-size:17px;max-width:46ch}
.sc-sense{background:var(--gft-night);color:var(--gft-paper);padding:22px 24px;min-height:190px}
.sc-sense .sc-kicker{color:var(--gft-sage)}
.sc-sense__name{font-size:16px;font-weight:700;margin-top:8px;color:var(--gft-paper)}
.sc-sense__fig{display:block;font:650 clamp(2rem,3.2vw,3.2rem)/1.15 var(--gft-font-mono);margin-block:6px;color:var(--gft-sage);overflow-wrap:anywhere}
.sc-sense__note{font-size:13px;line-height:1.55;color:#c8dccf}
.sc-assump .sc-table-wrap table{min-width:720px;font-size:14px}
.sc-assump .sc-table-wrap th,.sc-assump .sc-table-wrap td{padding:12px 12px;transition:background-color 260ms}
.sc-assump tbody tr:hover,.sc-assump tbody tr:focus-within{background:#ffffffb0}
.sc-rowbtn{display:grid;gap:2px;min-height:44px;align-content:center;text-align:left;background:none;border:0;padding:0;color:var(--gft-ink);font-size:15px;font-weight:700;line-height:1.3}
.sc-rowbtn small{font:12px var(--gft-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gft-leaf)}
.sc-rowbtn:hover small{text-decoration:underline}
.sc-assump td{font:13px/1.5 var(--gft-font-mono)}
.sc-assump td:last-child{font:13px/1.5 var(--gft-font-display);color:#33403d}
.sc-assump table[data-load=example] [data-col=example],.sc-assump table[data-load=cautious] [data-col=cautious]{background:#0e4d4a1c;font-weight:700;color:var(--gft-night)}
.sc-assump td[data-diff]{box-shadow:inset 3px 0 0 var(--gft-ochre)}
.sc-eff{min-width:200px}
.sc-torn{display:block;position:relative;height:10px;background:#0000000f;margin-bottom:8px}
.sc-torn::before{content:'';position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid #25302e88}
.sc-torn i{position:absolute;top:0;bottom:0;width:50%;transition:transform 420ms var(--gft-ease-out)}
.sc-torn__pos{left:50%;transform-origin:0 50%;background:var(--gft-leaf)}
.sc-torn__neg{left:0;transform-origin:100% 50%;background:var(--gft-ochre)}
.sc-eff b{font-weight:700}

/* ---- the boundary: dark full-bleed interlude, sticky four-state stage ---- */
.sc-bound{position:relative;isolation:isolate;background:#04201e;color:var(--gft-paper);padding-block:clamp(72px,10vw,150px) clamp(64px,8vw,120px)}
.sc-bound__fibre{position:absolute;inset:-40px;z-index:-1;pointer-events:none;opacity:.5;background:repeating-linear-gradient(60deg,transparent 0 26px,#6bb68f26 26px 27px),repeating-linear-gradient(-60deg,transparent 0 26px,#6bb68f1c 26px 27px)}
.sc-bound__head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(24px,4vw,64px);align-items:end}
.sc-bound__head .gft-eyebrow{color:var(--gft-sage);margin-bottom:18px}
.sc-bound h2{font-size:clamp(2.4rem,5.4vw,5.6rem);color:var(--gft-paper);max-width:15ch}
.sc-bound .gft-lede{color:#c8dccf}
.sc-bound__film{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(24px,5vw,80px);align-items:start;margin-top:clamp(36px,5vw,64px);--prog:.125}
.sc-bound__film[data-step="1"]{--prog:.375}.sc-bound__film[data-step="2"]{--prog:.625}.sc-bound__film[data-step="3"]{--prog:.875}
.sc-bound__stage{position:sticky;top:24px;z-index:1;display:grid;grid-template-rows:auto 1fr auto;gap:22px;min-height:min(660px,calc(100svh - 48px));padding:clamp(18px,2.2vw,30px);background:#031917;border:1px solid #6bb68f4d;min-width:0}
.sc-bound__stagehead{display:flex;justify-content:space-between;gap:16px;color:#b8d0c1;border-bottom:1px solid #ffffff22;padding-bottom:12px}
.sc-bound__stagehead span+span{color:var(--gft-sage)}
.sc-bound__line{position:relative;align-self:center}
.sc-bound__thread{position:absolute;left:4%;right:4%;top:95px;height:4px;overflow:hidden}
.sc-bound__thread-base,.sc-bound__thread-fill{position:absolute;inset:0}
.sc-bound__thread-base{background:#ffffff26}
.sc-bound__thread-fill{background:var(--gft-ochre);transform-origin:0 50%;transform:scaleX(var(--prog,.125));transition:transform 700ms var(--gft-ease-out)}
.sc-bound__thread::after{content:'';position:absolute;inset:0 auto 0 0;width:16%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:translateX(-110%);animation:none}
:root[data-m-go] .sc-bound__thread[data-m-on]::after{animation-name:sc-run;animation-duration:5.5s;animation-timing-function:linear;animation-iteration-count:infinite}
.sc-sts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;position:relative}
.sc-st{display:grid;justify-items:center;gap:4px;text-align:center;opacity:.34;filter:saturate(.15);transition:opacity 500ms var(--gft-ease-out),filter 500ms var(--gft-ease-out),translate 500ms var(--gft-ease-out)}
.sc-st svg{width:100%;height:190px}
.sc-st b{font-size:15px;margin-top:6px}
.sc-st span{font:12px var(--gft-font-mono);text-transform:uppercase;letter-spacing:.1em;color:#b8d0c1}
.sc-bound__film:not([data-step]) .sc-st:nth-child(1),
.sc-bound__film[data-step="0"] .sc-st:nth-child(-n+1),.sc-bound__film[data-step="1"] .sc-st:nth-child(-n+2),.sc-bound__film[data-step="2"] .sc-st:nth-child(-n+3),.sc-bound__film[data-step="3"] .sc-st{opacity:1;filter:none}
.sc-bound__film[data-step="0"] .sc-st:nth-child(1),.sc-bound__film[data-step="1"] .sc-st:nth-child(2),.sc-bound__film[data-step="2"] .sc-st:nth-child(3),.sc-bound__film[data-step="3"] .sc-st:nth-child(4){translate:0 -8px}
.sc-bound__film[data-step="0"] .sc-st:nth-child(1) b,.sc-bound__film[data-step="1"] .sc-st:nth-child(2) b,.sc-bound__film[data-step="2"] .sc-st:nth-child(3) b,.sc-bound__film[data-step="3"] .sc-st:nth-child(4) b{color:var(--gft-ochre)}
.sc-st__half{clip-path:inset(0 50% 0 0)}
.sc-bound__panels{display:grid;min-height:150px}
.sc-bound[data-m-in] .sc-bound__panels,.sc-bound__panels{min-width:0}
.sc-bound__film[data-mw-ready] .sc-bpanel{grid-area:1/1;transition:opacity 320ms var(--gft-ease-out) 200ms}
.sc-bound__film[data-mw-ready] .sc-bpanel:not([data-shown]){opacity:0;visibility:hidden;transition:opacity 180ms var(--gft-ease-out),visibility 0s linear 180ms}
.sc-bpanel{display:grid;gap:8px;align-content:start}
.sc-bpanel__t{font:850 clamp(1.7rem,2.9vw,2.9rem)/1.1 var(--gft-font-display);letter-spacing:-.04em;color:var(--gft-paper)}
.sc-bpanel p{font-size:18px;color:#c8dccf;max-width:none}
.sc-bpanel p.sc-bpanel__t{color:var(--gft-paper)}
.sc-bpanel__fig{font:650 clamp(2.2rem,4.2vw,4rem)/1.1 var(--gft-font-mono);color:var(--gft-sage)}
.sc-bound__track{min-width:0}
.sc-bound .mw-steps__track>*{min-height:68svh;padding:6svh 0 6svh 30px}
.sc-bound .mw-steps__track>*::before{background:#ffffff2e}
.sc-bstep .sc-kicker{color:var(--gft-sage)}
.sc-bstep h3{font-size:clamp(1.7rem,2.7vw,2.8rem);margin:8px 0 14px;color:var(--gft-paper);max-width:16ch}
.sc-bstep p{font-size:17px;line-height:1.6;color:#d3e3da;max-width:48ch}
.sc-bstep p.sc-kicker{font-size:12px}
.sc-bound__out{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,80px);margin-top:clamp(48px,7vw,96px);padding-top:36px;border-top:1px solid #ffffff2a}
.sc-bound__left .sc-kicker{color:var(--gft-sage);margin-bottom:16px}
.sc-bound__left ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.sc-bound__left li{border:1px solid #6bb68f77;padding:10px 16px;font:13px var(--gft-font-mono);color:#dbe8e0}
.sc-bound__pilot h3{font-size:clamp(1.5rem,2.3vw,2.3rem);color:var(--gft-paper);margin-bottom:14px}
.sc-bound__pilot p{font-size:16px;line-height:1.65;color:#c8dccf;max-width:56ch}

/* ---- sources and method ---- */
.sc-sources{position:relative;background:var(--gft-paper);padding-block:clamp(64px,9vw,128px)}
.sc-sources__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(24px,3vw,48px) clamp(20px,3vw,40px)}
.sc-sources__lead{grid-column:1/7;min-width:0}
.sc-sources__lead .gft-eyebrow{margin-bottom:18px;color:var(--gft-forest)}
.sc-sources__lead h3{font-size:clamp(2rem,3.8vw,3.8rem);margin-bottom:22px;max-width:15ch}
.sc-sources__lead p{font-size:17px;max-width:54ch}
.sc-sources__papers{grid-column:8/13;display:grid;gap:14px;align-content:start;min-width:0}
.sc-sources__papers>.sc-kicker{color:var(--gft-forest)}
.sc-paper{display:block;min-width:0}
.sc-paper:nth-of-type(2){margin-left:clamp(0px,3vw,40px)}
.sc-paper__in{display:grid;gap:6px;border:1px solid #b6c7bc;background:#fff;padding:22px 24px}
.sc-paper__id{font:12px var(--gft-font-mono);letter-spacing:.1em;color:var(--gft-leaf)}
.sc-paper h4{font-size:19px;letter-spacing:-.03em;margin:0}
.sc-paper p{font-size:14px;color:#33403d}
.sc-method{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:16px clamp(24px,5vw,80px);padding:36px 0 0;border-top:1px solid #b6c7bc}
.sc-method h3{grid-column:1;font-size:clamp(1.6rem,2.4vw,2.4rem)}
.sc-method p{grid-column:2;font-size:15px;max-width:72ch}
.sc-method .gft-note{font-size:12px}

/* ---- the closing gate ---- */
.sc-gate{position:relative;isolation:isolate;background:linear-gradient(160deg,#0e4d4a 0,#072d2b 70%);color:var(--gft-paper);padding-block:clamp(72px,10vw,150px) clamp(56px,7vw,96px)}
.sc-gate__fibre{position:absolute;inset:-40px;z-index:-1;pointer-events:none;opacity:.4;background:repeating-linear-gradient(60deg,transparent 0 26px,#6bb68f30 26px 27px),repeating-linear-gradient(-60deg,transparent 0 26px,#6bb68f20 26px 27px)}
.sc-gate__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,88px);align-items:center}
.sc-gate__copy .gft-eyebrow{color:var(--gft-sage);margin-bottom:18px}
.sc-gate h2{font-size:clamp(2.4rem,5.2vw,5.4rem);color:var(--gft-paper);max-width:14ch;margin-bottom:22px}
.sc-gate .gft-lede{color:#d3e3da;max-width:46ch}
.sc-checks{border:0;padding:0;margin:32px 0 14px}
.sc-checks legend{font:12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gft-sage);margin-bottom:12px;padding:0}
.sc-check{position:relative;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;min-height:66px;border-top:1px solid #ffffff2e;cursor:pointer;font-size:17px;line-height:1.4}
.sc-check:last-of-type{border-bottom:1px solid #ffffff2e}
.sc-check input{position:absolute;left:0;top:50%;translate:0 -50%;width:44px;height:44px;opacity:0;margin:0;cursor:pointer}
.sc-check__box{position:relative;width:32px;height:32px;border:2px solid var(--gft-sage);display:block;transition:background-color 260ms var(--gft-ease-out)}
.sc-check__box::after{content:'';position:absolute;left:9px;top:3px;width:8px;height:16px;border:solid var(--gft-night);border-width:0 3px 3px 0;rotate:40deg;opacity:0;transition:opacity 200ms}
.sc-check input:checked+.sc-check__box{background:var(--gft-sage)}
.sc-check input:checked+.sc-check__box::after{opacity:1}
.sc-check input:focus-visible+.sc-check__box{outline:3px solid var(--gft-ochre);outline-offset:3px}
.sc-gate .sc-small{color:#a9c6b6}
.sc-gate__card{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:clamp(16px,2.4vw,32px);align-items:center;padding:clamp(20px,2.6vw,36px);background:#031917;border:1px solid #c98a2b88;transition:border-color 500ms,box-shadow 500ms}
.sc-gate__card[data-state=locked]{border-color:var(--gft-sage);box-shadow:0 0 0 1px var(--gft-sage),0 0 60px #6bb68f33}
.sc-gate__shirt{width:100%;height:clamp(220px,24vw,320px)}
.sc-gate__wire{transition:clip-path 600ms var(--gft-ease-out)}
.sc-gate__lock{opacity:0;transform:scale(.5);transform-box:fill-box;transform-origin:center;transition:opacity 400ms,transform 500ms var(--m-snap,cubic-bezier(.34,1.56,.64,1))}
.sc-gate__card[data-state=locked] .sc-gate__lock{opacity:1;transform:scale(1)}
.sc-gate__read{min-width:0}
.sc-gate__read .sc-kicker{color:#b8d0c1}
.sc-gate__read .sc-kicker span{color:var(--gft-ochre)}
.sc-gate__card[data-state=locked] .sc-kicker span{color:var(--gft-sage)}
.sc-gate__fig{display:block;font:850 clamp(2.2rem,3.6vw,3.8rem)/1.1 var(--gft-font-display);letter-spacing:-.06em;margin-block:8px 6px;white-space:nowrap;color:#7e9689;text-decoration:line-through;text-decoration-color:#c98a2b;text-decoration-thickness:2px;transition:color 400ms}
.sc-gate[data-state=locked] .sc-gate__fig{color:var(--gft-sage);text-decoration:none}
.sc-gate__line{font-size:15px;color:#c8dccf}
.sc-gate__plan{margin-top:12px;font-size:15px;color:var(--gft-paper);padding-top:12px;border-top:1px solid #ffffff2a}
.sc-gate__plan b{font-family:var(--gft-font-mono)}
.sc-gate__card[data-state=locked] .sc-gate__plan{display:none}
.sc-gate__rounds{display:flex;justify-content:space-between;gap:12px;margin-top:12px;font:12px var(--gft-font-mono);color:#b8d0c1}
.sc-gate__rounds b{color:var(--gft-paper)}
.sc-gate__tail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:clamp(48px,6vw,88px)}
.sc-gate__callout{border-left:3px solid var(--gft-ochre);background:#ffffff12;padding:26px 32px}
.sc-gate__callout h3{font-size:clamp(1.3rem,1.9vw,1.8rem);margin-bottom:12px;color:var(--gft-paper)}
.sc-gate__callout p{font-size:15px;color:#d3e3da;max-width:62ch}
.sc-gate__next{display:grid;gap:6px;justify-items:start}
.sc-gate__next .gft-text-link{color:var(--gft-paper)}

/* ---- narrower screens ---- */
@media(max-width:1100px){
 .sc-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
 .sc-metrics>div:nth-child(4){border-left:0;padding-left:0}
 .sc-terms{grid-template-columns:repeat(3,minmax(0,1fr))}
 .sc-sources__lead{grid-column:1/-1}.sc-sources__papers{grid-column:1/-1}
}
@media(max-width:900px){
 .sc-bench__head,.sc-sechead,.sc-bound__head{grid-template-columns:minmax(0,1fr)}
 .sc-workbench{grid-template-columns:minmax(0,1fr)}
 .sc-mini{display:flex;position:sticky;top:0;z-index:6;align-items:baseline;justify-content:space-between;gap:12px;margin:0 -20px;padding:10px 20px;background:#051f1e;border-bottom:1px solid #6bb68f66;font:12px var(--gft-font-mono);color:#c8dccf}
 .sc-mini output{font:700 18px var(--gft-font-mono);color:var(--gft-sage)}
 .sc-dashboard{position:static;order:-1;margin-top:16px}
 .sc-compare__grid,.sc-assump__grid,.sc-gate__grid,.sc-gate__tail,.sc-bound__out{grid-template-columns:minmax(0,1fr)}
 .sc-compare__side,.sc-assump__side{position:static}
 .sc-steps,.sc-bound__film{grid-template-columns:minmax(0,1fr)}
 .sc-viz,.sc-bound__stage{top:0;min-height:0;gap:14px;padding:14px;background:var(--gft-night)}
 .sc-bound__stage{background:#031917}
 .sc-steps .mw-steps__track>*,.sc-bound .mw-steps__track>*{min-height:0;padding-block:2.4rem}
 .sc-method{grid-template-columns:minmax(0,1fr)}.sc-method h3,.sc-method p{grid-column:1}
}
@media(max-width:640px){
 .sc-banner{flex-direction:column;gap:12px}
 .sc-seg__opt{flex:1 1 100%}.sc-seg__opt span{border-left:0;border-top:1px solid #ffffff2a;justify-items:start;text-align:left}.sc-seg__opt:first-child span{border-top:0}
 .sc-seg--light .sc-seg__opt span{border-top-color:#c4d1c8}
 .sc-actions{grid-template-columns:1fr}
 .sc-field-controls input[type=number]{width:104px}
 .sc-field>label{flex-direction:column;gap:2px}.sc-field>label span{text-align:left}
 .sc-metrics{grid-template-columns:1fr 1fr}.sc-metrics>div:nth-child(odd){border-left:0;padding-left:0}.sc-metrics>div:nth-child(even){border-left:1px solid #ffffff22;padding-left:14px}
 .sc-table-wrap table{min-width:520px}
 .sc-compare .sc-table-wrap table{min-width:0;font-size:13px}.sc-compare .sc-table-wrap th,.sc-compare .sc-table-wrap td{padding:12px 6px}
 .sc-terms{grid-template-columns:repeat(3,minmax(0,1fr))}.sc-term span{display:none}.sc-term{min-height:48px}
 .sc-eq{font-size:.9rem}
 .sc-wf__row{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px}.sc-wf__row .sc-wf__track{grid-column:1/-1;order:3}
 .sc-viz{min-height:0}.sc-viz__stage{align-content:start}
 .sc-st svg{height:72px}.sc-st b{font-size:12px;margin-top:2px}.sc-st span{display:none}.sc-sts{gap:6px}
 .sc-bound__thread{top:36px}
 .sc-bound__panels{min-height:0}.sc-bpanel p:not(.sc-bpanel__t){display:none}.sc-bpanel__t{font-size:1.15rem}.sc-bpanel__fig{font-size:1.8rem}
 .sc-gate__card{grid-template-columns:1fr}.sc-gate__shirt{height:200px}
 .sc-sources__papers .sc-paper:nth-of-type(2){margin-left:0}
 [data-splash=sampling-cost] .gft-splash__structure{inset:auto 8px 80px 8px;height:310px;background-image:url('/tools/sampling-cost/splash-m.svg');background-size:contain}
 [data-splash=sampling-cost] .gft-splash__content{padding-bottom:350px}
 .sc-garment svg{height:200px}
}
@media(max-height:820px) and (min-width:901px){.sc-garment figcaption{display:none}.sc-interpretation{min-height:0}.sc-garment svg{height:176px}}

/* ---- Calm and reduced motion: state changes are immediate, nothing scroll-driven or looping runs ---- */
@media(prefers-reduced-motion:reduce){.sc-i,.sc-mark,.sc-dbar i,.sc-torn i,.sc-fabric-layer,.sc-gate__wire,.sc-gate__lock,.sc-st,.sc-bound__thread-fill,.sc-panel,.sc-bpanel,.sc-seg__opt span,.sc-check__box,.sc-gate__card,.sc-t{transition:none!important}}
:root[data-motion=calm] :is(.sc-bench,.sc-compare,.sc-formula,.sc-assump,.sc-bound,.sc-sources,.sc-gate) :is(*,*::before,*::after){transition:none!important}

.sc-assump__grid>*,.sc-compare__grid>*,.sc-gate__grid>*,.sc-bound__out>*,.sc-sources__grid>*{min-width:0}

/* =====================================================================
   Review round 3: seams, layered ledger, register tile, live formula band, closing display
   ===================================================================== */
.sc-compare,.sc-formula,.sc-assump,.sc-sources,.sc-bound,.sc-gate{overflow-x:clip}
.sc-compare,.sc-formula,.sc-assump{isolation:isolate}
.sc-weavebg{position:absolute;inset:0 -30px 0 0;z-index:-1;pointer-events:none;overflow-anchor:none;background:repeating-linear-gradient(90deg,#0e4d4a12 0 1px,transparent 1px 36px),repeating-linear-gradient(0deg,#0e4d4a0c 0 1px,transparent 1px 36px)}
@keyframes sc-drift{from{transform:translateY(0)}to{transform:translateY(92px)}}
:root[data-m-go] [data-m-live~=sc-drift][data-m-on]{animation-name:sc-drift;animation-duration:18s;animation-timing-function:linear;animation-iteration-count:infinite;animation-direction:normal}
[data-m-live~=sc-drift]{overflow-anchor:none}

/* seams: a diagonal cut with a warp thread running along it, so each colour change is a hand-over */
.sc-compare::before,.sc-formula::before{content:'';position:absolute;left:0;right:0;top:-1px;height:clamp(36px,4.5vw,64px);z-index:0;pointer-events:none}
.sc-compare::before{background:#0a3d3a;clip-path:polygon(0 0,100% 0,0 100%)}
.sc-formula::before{background:var(--gft-sand);clip-path:polygon(0 0,100% 0,100% 100%)}
.sc-compare::after,.sc-formula::after{content:'';position:absolute;left:0;right:0;top:-1px;height:clamp(36px,4.5vw,64px);z-index:0;pointer-events:none}
.sc-compare::after{background:linear-gradient(to bottom left,transparent calc(50% - 1px),var(--gft-ochre) calc(50% - 1px),var(--gft-ochre) calc(50% + 1px),transparent calc(50% + 1px))}
.sc-formula::after{background:linear-gradient(to bottom right,transparent calc(50% - 1px),var(--gft-leaf) calc(50% - 1px),var(--gft-leaf) calc(50% + 1px),transparent calc(50% + 1px))}

/* ---- the calculation: a wide plate on a dark band, step cards layered over its edge ---- */
@media(min-width:901px){
 .sc-steps{position:relative;isolation:isolate;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0}
 .sc-band{position:absolute;z-index:-1;top:-32px;bottom:-32px;left:calc(50% - 50vw);width:calc(50vw + 13%);overflow:clip;background:linear-gradient(90deg,#0c3f3b,#0e4d4a);pointer-events:none}
 .sc-band i{position:absolute;inset:0 -30px 0 0;overflow-anchor:none;background:repeating-linear-gradient(90deg,#6bb68f26 0 1px,transparent 1px 36px),repeating-linear-gradient(0deg,#6bb68f1a 0 1px,transparent 1px 36px)}
 .sc-viz{box-shadow:0 30px 80px -30px #000a}
 .sc-step{position:relative;z-index:2;margin-left:-32px;min-width:0}
 .sc-step__card{position:relative;min-width:0;overflow:clip;background:var(--gft-paper);border:1px solid #b6c7bc;box-shadow:0 26px 60px -30px #072d2b99;padding:clamp(24px,2.6vw,40px) clamp(24px,2.6vw,40px) clamp(24px,2.6vw,40px) clamp(44px,4.2vw,64px)}
}
.sc-band{display:none}
@media(min-width:901px){.sc-band{display:block}}
.sc-step__ghost{display:block;max-width:100%;font:800 clamp(1.2rem,1.7vw,1.9rem)/1 var(--gft-font-mono);letter-spacing:-.06em;color:#3f8f6b33;margin-bottom:18px;white-space:nowrap;overflow:clip;user-select:none}
.sc-step__card .sc-kicker{position:relative}
.sc-step p{font-size:17px}
.sc-term span{font-size:12px}
.sc-term output{font-size:13px}
.sc-vnote{font-size:15px}.sc-vrow{font-size:15px}.sc-key{font-size:14px}.sc-wf__row{font-size:14px}.sc-wf__row b{font-size:14px}
.sc-mark em{font-size:12px}
/* the active step lights its own terms on the chips, without waiting for a hover */
.sc-viz:not([data-hot=""]) .sc-term{opacity:.7}
.sc-viz[data-step="0"] .sc-term:is([data-term=S],[data-term=N],[data-term=R],[data-term=C]),
.sc-viz[data-step="1"] .sc-term:is([data-term=S],[data-term=N],[data-term=K],[data-term=C],[data-term=D],[data-term=H]),
.sc-viz[data-step="2"] .sc-term:is([data-term=S],[data-term=N],[data-term=R],[data-term=K],[data-term=C],[data-term=D],[data-term=H]),
.sc-viz[data-step="3"] .sc-term:is([data-term=R],[data-term=L],[data-term=T],[data-term=K]),
.sc-viz[data-step="4"] .sc-term:is([data-term=H],[data-term=N],[data-term=R],[data-term=K],[data-term=C],[data-term=D]){border-color:var(--gft-sage);background:#6bb68f2b;box-shadow:inset 0 -3px 0 var(--gft-sage);opacity:1}
.sc-viz[data-step] .sc-term{transition:background-color 300ms var(--gft-ease-out),border-color 300ms,box-shadow 300ms,opacity 300ms}

/* ---- the register: filled pills, a dark result tile, a lifted active row ---- */
.sc-seg--light{gap:4px;padding:4px;border-radius:999px;background:#ffffffb8}
.sc-seg--light .sc-seg__opt span{border-left:0;border-radius:999px;min-height:48px}
.sc-seg--light .sc-seg__opt input:checked+span{background:var(--gft-forest);color:#fff;box-shadow:0 6px 16px -8px #072d2bcc}
.sc-sense{position:relative;overflow:clip;background:#072d2b;color:#fff;padding:24px 26px 22px;min-height:230px;border-left:4px solid var(--gft-sage)}
.sc-sense .sc-kicker{display:flex;align-items:center;gap:10px;color:#9fd6b8}
.sc-sense__dot{display:block;width:10px;height:10px;border-radius:50%;background:var(--gft-sage)}
.sc-sense__name{font-size:17px;font-weight:700;margin-top:10px;color:#fff}
.sc-sense__fig{display:block;font:700 clamp(2.4rem,3.6vw,3.6rem)/1.1 var(--gft-font-mono);margin-block:8px 10px;color:#fff;overflow-wrap:anywhere}
.sc-sense__bar{display:block;position:relative;height:10px;background:#ffffff1f;margin-bottom:12px}
.sc-sense__bar::before{content:'';position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid #ffffffaa}
.sc-sense__bar i{position:absolute;top:0;bottom:0;width:50%;transition:transform 420ms var(--gft-ease-out)}
.sc-sense__pos{left:50%;transform-origin:0 50%;background:var(--gft-sage)}
.sc-sense__neg{left:0;transform-origin:100% 50%;background:var(--gft-ochre)}
.sc-sense__note{font-size:14px;line-height:1.55;color:#d9e8df}
.sc-assump tbody tr{transition:background-color 260ms,box-shadow 260ms}
.sc-assump tbody tr:hover,.sc-assump tbody tr:focus-within,.sc-assump tbody tr[data-active]{background:#fff;box-shadow:0 14px 28px -16px #072d2b88,inset 4px 0 0 var(--gft-ochre)}
.sc-assump td:last-child{color:#1d2a27}
.sc-assump .sc-table-wrap thead th{font-size:12px;color:#0a3a37}
.sc-rowbtn small{font-size:12px;color:#2a6b4e}
.sc-eff b{font-size:14px}

/* ---- the boundary: ambient motes and 12px labels ---- */
.sc-bound__stage{overflow:clip}
.sc-bound__stage>:not(.sc-bound__motes){position:relative;z-index:1}
.sc-bound__motes{position:absolute;left:0;right:0;top:-92px;bottom:0;z-index:0;pointer-events:none;opacity:.55;background:radial-gradient(circle,#6bb68f88 1.6px,transparent 2.2px) 0 0/46px 46px,radial-gradient(circle,#c98a2b88 1.8px,transparent 2.4px) 23px 23px/92px 92px}
.sc-st span{font-size:12px}
.sc-bpanel__t{color:#fff}

/* ---- sources: a live formula band over a tinted ground ---- */
.sc-sources{background:#dcebe3;padding-block:0 clamp(64px,9vw,128px)}
.sc-fband{position:relative;isolation:isolate;overflow:clip;background:linear-gradient(160deg,#0a3d3a 0,#072d2b 80%);color:var(--gft-paper);padding-block:clamp(72px,9vw,128px) clamp(120px,13vw,200px)}
.sc-fband__weave{position:absolute;inset:0 -30px 0 0;z-index:-1;overflow-anchor:none;pointer-events:none;background:repeating-linear-gradient(90deg,#6bb68f22 0 1px,transparent 1px 36px),repeating-linear-gradient(0deg,#6bb68f18 0 1px,transparent 1px 36px)}
.sc-fband .gft-eyebrow{color:var(--gft-sage);margin-bottom:18px}
.sc-fband h3{font-size:clamp(2rem,4.2vw,4.2rem);color:var(--gft-paper);max-width:20ch;margin-bottom:clamp(24px,4vw,48px)}
.sc-fband__eq{font:700 clamp(1.5rem,4.4vw,4.6rem)/1.35 var(--gft-font-mono);letter-spacing:-.04em;color:#e6f0ea;max-width:none}
.sc-fband .sc-t{padding:0 .12em;border-bottom:3px solid #6bb68f66;transition:background-color 220ms,color 220ms,border-color 220ms,opacity 220ms}
.sc-fband:not([data-hot=""]) .sc-t{opacity:.4}
.sc-fband__thread{position:relative;height:4px;margin-top:clamp(20px,3vw,36px);background:#ffffff26;overflow:clip}
.sc-fband__fill{position:absolute;inset:0;background:var(--gft-ochre);transform-origin:0 50%;transform:scaleX(1)}
@supports(animation-timeline:view()){
 :root[data-m-go] .sc-fband__fill{transform:scaleX(0);animation-name:sc-rail-x;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:--sc-sec;animation-range-start:entry 20%;animation-range-end:contain 20%}
 @keyframes sc-rail-x{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}
.sc-fband__hint{margin-top:18px;font:13px/1.7 var(--gft-font-mono);color:#c8dccf;max-width:70ch}
.sc-fband[data-hot~=S] .sc-t[data-t=S],.sc-fband[data-hot~=N] .sc-t[data-t=N],.sc-fband[data-hot~=R] .sc-t[data-t=R],.sc-fband[data-hot~=K] .sc-t[data-t=K],.sc-fband[data-hot~=C] .sc-t[data-t=C],.sc-fband[data-hot~=D] .sc-t[data-t=D],.sc-fband[data-hot~=H] .sc-t[data-t=H],.sc-fband[data-hot~=L] .sc-t[data-t=L],.sc-fband[data-hot~=T] .sc-t[data-t=T]{opacity:1;background:var(--gft-ochre);color:var(--gft-night);border-bottom-color:var(--gft-ochre)}
.sc-sources__grid{display:block}
.sc-srcs{list-style:none;margin:calc(-1*clamp(72px,8vw,130px)) 0 0;padding:0;position:relative;z-index:2;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,2vw,24px)}
.sc-src{grid-column:span 6;min-width:0;background:#fff;border:1px solid #9fb8a9;box-shadow:0 26px 50px -30px #072d2baa;padding:clamp(20px,2.2vw,30px);transition:transform 320ms var(--gft-ease-out),border-color 260ms,box-shadow 260ms}
.sc-src:nth-child(1){grid-column:1/8}.sc-src:nth-child(2){grid-column:8/13}.sc-src:nth-child(3){grid-column:1/6}.sc-src:nth-child(4){grid-column:6/13}
.sc-src[data-lit]{border-color:var(--gft-ochre);box-shadow:0 0 0 2px var(--gft-ochre),0 30px 60px -30px #072d2bcc;transform:translateY(-6px)}
.sc-src__btn{display:grid;gap:6px;width:100%;min-height:44px;text-align:left;background:none;border:0;padding:0;color:var(--gft-ink);cursor:pointer}
.sc-src__btn:focus-visible{outline:3px solid var(--gft-ochre);outline-offset:6px}
.sc-src__id{font:12px var(--gft-font-mono);letter-spacing:.1em;text-transform:uppercase;color:#2a6b4e}
.sc-src__title{font-size:clamp(1.2rem,1.8vw,1.7rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}
.sc-src__terms{font:12px/1.7 var(--gft-font-mono);color:#33403d}
.sc-src__terms b{display:inline-block;margin:0 2px;padding:0 7px;background:#0e4d4a;color:#fff;font-weight:700}
.sc-src[data-lit] .sc-src__terms b,.sc-src__btn[aria-pressed=true] .sc-src__terms b{background:var(--gft-ochre);color:var(--gft-night)}
.sc-src__names{color:#4a5d52}
.sc-src__line{margin-top:12px;font-size:15px;line-height:1.6;color:#26332f;max-width:60ch}
.sc-method{margin-top:clamp(40px,5vw,72px);border-top:1px solid #9fb8a9}
.sc-method h3{font-size:clamp(1.6rem,2.6vw,2.6rem)}
.sc-method .gft-note{font-size:13px;color:#33403d}

/* ---- the closing: display figure, enlarged actions, a thread that runs into the footer ---- */
.sc-gate__display{position:relative;margin-top:clamp(40px,6vw,88px);text-align:center}
.sc-gate__display .sc-kicker{color:#c8dccf}
.sc-gate__display .sc-gate__fig{display:block;margin:10px auto 0;font:850 clamp(3rem,12vw,12rem)/1.02 var(--gft-font-display);letter-spacing:-.07em;white-space:normal;overflow-wrap:anywhere;color:#9fb3a8;text-decoration:line-through;text-decoration-color:var(--gft-ochre);text-decoration-thickness:4px}
.sc-gate[data-state=locked] .sc-gate__display .sc-gate__fig{color:var(--gft-sage);text-decoration:none}
.sc-gate__thread{position:relative;height:4px;margin-top:clamp(14px,2vw,26px);background:#ffffff26;overflow:clip}
.sc-gate__thread i{position:absolute;inset:0 auto 0 0;width:16%;background:linear-gradient(90deg,transparent,var(--gft-ochre),transparent);overflow-anchor:none}
.sc-gate[data-state=locked] .sc-gate__thread i{background:linear-gradient(90deg,transparent,var(--gft-sage),transparent)}
.sc-gate__next{display:flex;flex-wrap:wrap;gap:14px;align-items:stretch}
.sc-gate__next .gft-button{min-height:64px;padding-inline:32px;font-size:18px}
.sc-gate__next .gft-text-link{display:inline-flex;align-items:center;min-height:56px;padding-inline:22px;border:1px solid #6bb68f88;font-size:16px;text-decoration:none}
.sc-gate__next .gft-text-link:hover{border-color:var(--gft-ochre)}
.sc-gate::after{content:'';position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--gft-ochre),var(--gft-sage) 55%,transparent);pointer-events:none}
.sc-gate .sc-check{font-size:18px}
.sc-gate__fig{white-space:normal}

@media(max-width:900px){
 .sc-srcs{margin-top:-72px}
 .sc-src,.sc-src:nth-child(n){grid-column:1/-1}
 .sc-step{margin-left:0}
 .sc-step__card{padding-left:0;background:none;border:0;box-shadow:none}
 .sc-step__ghost{font-size:1.5rem}
}
@media(max-width:640px){
 .sc-seg--light{border-radius:28px}
 .sc-fband__eq{font-size:1.5rem}
 .sc-sense{min-height:0}
}
@media(prefers-reduced-motion:reduce){.sc-src,.sc-sense__bar i,.sc-term,.sc-assump tbody tr{transition:none!important}.sc-fband__fill{transform:none!important;animation:none!important}}
:root[data-motion=calm] :is(.sc-src,.sc-fband,.sc-assump,.sc-viz) :is(*,*::before,*::after){transition:none!important}

/* =====================================================================
   Review round 4: legible type, no strikethrough on the saved round, one-line formula,
   source ledger chips, boundary micro-visuals
   ===================================================================== */
/* closing display: the figure is whole, the rule sits under the numerals, the state is a word */
.sc-gate__display .sc-gate__fig{font-size:clamp(3rem,11vw,10rem);line-height:1.05;white-space:nowrap;overflow-wrap:normal;color:#e8f3ee;text-decoration:none;padding-bottom:.04em}
.sc-gate[data-state=locked] .sc-gate__display .sc-gate__fig{color:#9fe0bc}
.sc-gate__display .sc-gate__thread{margin-top:clamp(8px,1.2vw,16px)}
.sc-gate__figlabel{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;margin-top:14px;font:13px/1.6 var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:#d3e3da}
.sc-gate__tag{font-weight:700}
.sc-gate__tag--pending{color:#f0b867}
.sc-gate__tag--locked{display:none;color:#9fe0bc}
.sc-gate[data-state=locked] .sc-gate__tag--pending{display:none}
.sc-gate[data-state=locked] .sc-gate__tag--locked{display:inline}
.sc-gate__card .sc-kicker,.sc-gate__rounds{font-size:12px}

/* formula band: one line from tablet up, whole terms never split */
.sc-fband__eq{font-size:clamp(1.2rem,3.2vw,3.3rem);text-wrap:balance}
.sc-fband .sc-t{white-space:nowrap}
@media(min-width:641px){.sc-fband__eq{white-space:nowrap}}
@media(max-width:640px){.sc-fband__eq{font-size:1.35rem}}
.sc-fband__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.sc-chip{min-height:44px;padding:8px 18px;font:13px/1.2 var(--gft-font-mono);letter-spacing:.04em;color:#e6f0ea;background:#ffffff10;border:1px solid #6bb68f99;cursor:pointer;transition:background-color 220ms,color 220ms,border-color 220ms}
.sc-chip:hover{border-color:var(--gft-ochre)}
.sc-chip:focus-visible{outline:3px solid var(--gft-ochre);outline-offset:3px}
.sc-chip[aria-pressed=true]{background:var(--gft-sage);color:var(--gft-night);border-color:var(--gft-sage);font-weight:700}
.sc-fband__hint{font-size:14px;min-height:3.4em}
.sc-src{transition:transform 320ms var(--gft-ease-out),border-color 260ms,box-shadow 260ms,opacity 300ms}
.sc-src[data-dim]{opacity:.5}
@media(prefers-reduced-motion:reduce){.sc-chip,.sc-src{transition:none!important}}

/* term tiles and register text: 13px floor */
.sc-term span,.sc-term output{font-size:13px}
.sc-assump td,.sc-assump td:last-child{font-size:13px}
.sc-assump .sc-table-wrap th,.sc-assump .sc-table-wrap td{font-size:13px}
.sc-assump .sc-table-wrap thead th{font-size:12px}

/* boundary: a micro-visual under each step copy */
.sc-bviz{margin-top:22px;max-width:48ch;font-family:var(--gft-font-mono);color:#d3e3da;border:0;padding:0;min-width:0}
.sc-bviz b{font-weight:700;color:var(--gft-paper)}
.sc-bviz em{font-style:normal;font-size:13px;color:#b8d0c1}
.sc-bviz--pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}
.sc-bviz__tile{display:grid;gap:4px;padding:16px 14px;border:1px dashed #99b7e0;background:#ffffff0d;font-size:14px;min-width:0}
.sc-bviz__tile--ok{border:1px solid var(--gft-sage);border-style:solid;background:#6bb68f1f}
.sc-bviz__ne{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gft-ochre)}
.sc-bviz--events legend{padding:0;margin-bottom:12px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#b8d0c1}
.sc-bviz__chips{display:flex;flex-wrap:wrap;gap:8px}
.sc-ev{position:relative;display:grid;gap:2px;min-width:112px;min-height:56px;padding:10px 12px;border:1px solid #6bb68f88;cursor:pointer;font-size:13px;transition:background-color 220ms,border-color 220ms}
.sc-ev input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.sc-ev__lab{font-weight:700;color:var(--gft-paper)}
.sc-ev__on,.sc-ev__off{font-size:12px}
.sc-ev__off{display:none;color:#99b7e0}
.sc-ev__on{color:var(--gft-ochre)}
.sc-ev:has(input:checked){background:#c98a2b22;border-color:var(--gft-ochre)}
.sc-ev:has(input:not(:checked)) .sc-ev__on{display:none}
.sc-ev:has(input:not(:checked)) .sc-ev__off{display:inline}
.sc-ev:has(input:focus-visible){outline:3px solid var(--gft-ochre);outline-offset:2px}
.sc-bviz__count{margin-top:12px;font-size:13px;line-height:1.6;color:#c8dccf;max-width:none}
.sc-bviz__bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.sc-bviz__seg{display:block;padding:14px 8px;background:#728dc2;color:var(--gft-night);font-size:13px;text-align:center;min-width:0;overflow-wrap:anywhere}
.sc-bviz__seg:nth-child(odd){background:#99b7e0}
.sc-bviz__seg b{color:var(--gft-night)}
.sc-bviz--count{display:grid;gap:8px}
.sc-bviz--count p{display:grid;gap:2px;margin:0;padding:12px 14px;border-left:3px solid;font-size:14px;background:#ffffff0d;max-width:none}
.sc-bviz__yes{border-color:var(--gft-sage)}.sc-bviz__no{border-color:#99b7e0}.sc-bviz__oh{border-color:var(--gft-ochre)}
.sc-bstep .sc-bviz p{font-size:14px;color:#d3e3da}
@media(max-width:640px){.sc-bviz--pair{grid-template-columns:1fr}.sc-bviz__ne{text-align:center}.sc-ev{flex:1 1 40%}}
.sc-gate__display>p{max-width:none}

/* ---- round 4: warp rail through compare, delta strip, live model strip, gate echo, gradient into the boundary ---- */
.sc-compare{view-timeline-name:--sc-sec;view-timeline-axis:block}
.sc-rail--gold{background:var(--gft-ochre);opacity:.85}
.sc-delta{position:relative;display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:2px 24px;align-items:center;background:#072d2b;color:#fff;border-left:4px solid var(--gft-ochre);padding:10px 20px;margin-bottom:18px;box-shadow:0 14px 30px -18px #072d2bcc}
.sc-delta .sc-kicker{grid-column:1;color:#9fd6b8;font-size:12px}
.sc-delta__fig{grid-column:1;font:700 clamp(1.5rem,2.4vw,2.2rem)/1.1 var(--gft-font-mono);color:#fff;white-space:nowrap}
.sc-delta__bar{display:block;position:relative;grid-column:2;grid-row:1;height:10px;background:#ffffff1f;align-self:center}
.sc-delta__bar::before{content:'';position:absolute;left:50%;top:-3px;bottom:-3px;border-left:1px solid #ffffffaa}
.sc-delta__bar i{position:absolute;top:0;bottom:0;width:50%;transition:transform 420ms var(--gft-ease-out)}
.sc-delta__pos{left:50%;transform:scaleX(0);transform-origin:0 50%;background:var(--gft-sage)}
.sc-delta__neg{left:0;transform:scaleX(0);transform-origin:100% 50%;background:var(--gft-ochre)}
.sc-delta__note{grid-column:2;grid-row:2;font-size:13px;line-height:1.4;color:#c8dccf;max-width:none;margin:0}
.sc-assump::after{content:'';position:absolute;left:0;right:0;bottom:0;height:clamp(64px,9vw,128px);background:linear-gradient(to bottom,transparent,#04201e);pointer-events:none;z-index:0}
.sc-assump__grid{position:relative;z-index:1}
.sc-mlive{grid-column:2;display:grid;gap:10px;margin-bottom:6px}
.sc-mlive .sc-kicker{color:var(--gft-forest);font-size:12px}
.sc-mlive__row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sc-mlive__row li{display:grid;gap:4px;padding:12px 12px;background:#072d2b;color:#fff;border-bottom:3px solid var(--gft-sage)}
.sc-mlive__row li span{font:12px/1.35 var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:#c8dccf}
.sc-mlive__row li b{font:700 clamp(.85rem,1.15vw,1.05rem)/1.2 var(--gft-font-mono);white-space:nowrap}
.sc-mlive__sum{border-bottom-color:var(--gft-ochre)!important}
@supports(animation-timeline:view()){
 :root[data-m-go]:not([data-motion=calm]) .sc-mlive__row li{animation-name:sc-mlive;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range-end:entry 70%}
 :root[data-m-go]:not([data-motion=calm]) .sc-mlive__row li:nth-child(1){animation-range-start:entry 0%}
 :root[data-m-go]:not([data-motion=calm]) .sc-mlive__row li:nth-child(2){animation-range-start:entry 12%}
 :root[data-m-go]:not([data-motion=calm]) .sc-mlive__row li:nth-child(3){animation-range-start:entry 24%}
 :root[data-m-go]:not([data-motion=calm]) .sc-mlive__row li:nth-child(4){animation-range-start:entry 36%}
 @keyframes sc-mlive{from{opacity:.4;transform:translateY(14px)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){.sc-mlive__row li{animation:none!important}.sc-delta__bar i{transition:none!important}}
.sc-gate__right{display:grid;gap:18px;min-width:0}
.sc-gate__echo{background:#ffffff12;border-left:3px solid var(--gft-sage);padding:16px 22px;display:grid;gap:6px}
.sc-gate__echo .sc-kicker{color:#9fd6b8;font-size:12px}
.sc-gate__echoline{margin:0;font:700 clamp(1.4rem,2.2vw,2rem)/1.15 var(--gft-font-mono);color:#fff}
.sc-gate__echoline span{font:600 14px var(--gft-font-mono);color:#d3e3da;margin-left:.6em}
.sc-gate__echobar{display:block;height:4px;background:#ffffff26;overflow:clip}
.sc-gate__echobar i{display:block;height:100%;background:linear-gradient(90deg,var(--gft-ochre),var(--gft-sage));transform-origin:0 50%;transition:transform 420ms var(--gft-ease-out)}
.sc-gate__echoplan{margin:0;font-size:14px;color:#d3e3da}
@media(prefers-reduced-motion:reduce){.sc-gate__echobar i{transition:none!important}}
@media(max-width:900px){.sc-delta{grid-template-columns:minmax(0,1fr)}.sc-delta .sc-kicker,.sc-delta__fig,.sc-delta__bar,.sc-delta__note{grid-column:1;grid-row:auto}.sc-mlive{grid-column:1}.sc-mlive__row{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sc-method .sc-mlive .sc-kicker{grid-column:1}
