/* /tools/unit-economics/ : one film, nine sections. Prefix ue-. Motion: transform, translate, scale, opacity, clip-path only. */
.ue-sec{--ue-night:#072d2b;--ue-deep:#0a3d3a;--ue-forest:#0e4d4a;--ue-sage:#6bb68f;--ue-ochre:#c98a2b;--ue-ink:#25302e;--ue-muted:#455f54;
 --header:0px;--ground:#f6f4ef;--rule:#b9c9be;--ink:#25302e;--muted:#455f54;--gutter:28px;
 position:relative;isolation:isolate;overflow-x:clip;padding-block:clamp(64px,8vw,120px);font-variant-numeric:tabular-nums;min-width:0;background:var(--gft-paper);color:var(--ue-ink)}
.ue-sec [hidden]{display:none!important}
.ue-dark,.ue-instr{background:var(--ue-night);color:#e6f0ea;--ground:#072d2b;--rule:#ffffff30;--ink:#e6f0ea;--muted:#a9c6b8;--ue-muted:#a9c6b8}
.ue-wrap{width:min(1360px,calc(100% - 96px));margin-inline:auto;position:relative;min-width:0}
@media(max-width:1000px){.ue-wrap{width:calc(100% - 56px)}}
@media(max-width:640px){.ue-wrap{width:calc(100% - 40px)}}
.ue-sec h2{font-size:clamp(2.1rem,4.2vw,4rem);line-height:1.02;letter-spacing:-.055em;max-width:16ch;margin:14px 0 0;text-wrap:balance}
.ue-sec h3{font-size:clamp(1.3rem,1.9vw,1.85rem);line-height:1.12;letter-spacing:-.04em;margin:0}
.ue-sec p{font-size:16px;line-height:1.65;margin:0}
.ue-kicker,.ue-tag{font:600 12px/1.5 var(--gft-font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ue-muted)}
.ue-dark .ue-kicker,.ue-instr .ue-kicker{color:#94d6ae}
.ue-note{font-size:14px!important;line-height:1.65!important;color:var(--ue-muted)}
.ue-sec :is(input,button,summary,a,[tabindex]):focus-visible{outline:3px solid #e0a64f;outline-offset:3px}
.ue-sec button,.ue-linkbtn{min-height:48px;padding:10px 18px;border:1px solid currentColor;background:transparent;color:inherit;font:650 14px var(--gft-font-display);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.ue-sec button:disabled{opacity:.45;cursor:default}
.ue-empty,.ue-error{background:#f6ebdd;padding:20px 22px;border:1px solid #a26e21;color:#61400f;margin-top:20px;font-size:15px}
.ue-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.ue-pending{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;font:12px var(--gft-font-mono);color:#d7e6dd;background:#ffffff1c;margin-top:18px}

/* The motif: the breakeven line as a thread, transformed from section to section */
.ue-thread{position:absolute;z-index:-1;pointer-events:none;width:68%;height:300px;overflow:visible;color:#fff;opacity:.2}
.ue-thread g{transform-box:fill-box}
.ue-thread--hand{right:-4%;top:-150px;opacity:.28;transform:rotate(-4deg)}
.ue-thread--flat{left:0;width:100%;bottom:6%;height:150px;color:#0e4d4a;opacity:.16}
.ue-thread--rise{right:0;top:12%;height:420px;color:#6bb68f;opacity:.22;transform:scaleX(-1)}
.ue-thread--tilt{right:-8%;top:3%;width:46%;height:520px;color:#0e4d4a;opacity:.12;transform:rotate(90deg) scaleX(-1)}
.ue-thread--fall{left:-6%;bottom:4%;height:360px;color:#e8b86a;opacity:.14;transform:rotate(180deg)}
.ue-thread--close{left:0;width:100%;top:-8%;height:420px;color:#6bb68f;opacity:.2;transform:scaleY(-1)}

/* Segmented controls: the active state is a sliding block, driven by :has() so it works without script */
.ue-seg{--i:0;display:grid;grid-template-columns:repeat(var(--n),1fr);position:relative;isolation:isolate;border:1px solid #ffffff50;margin:0}
.ue-seg::before{content:'';position:absolute;inset:0 auto 0 0;width:calc(100% / var(--n));background:#6bb68f;transform:translateX(calc(var(--i) * 100%));transition:transform 480ms var(--m-snap);z-index:-1}
.ue-seg>label{position:relative;display:block;min-width:0}
.ue-seg input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.ue-seg span{display:grid;place-items:center;min-height:48px;padding:0 12px;font:650 14px/1.2 var(--gft-font-display);text-align:center;color:#e6f0ea;transition:color 240ms}
.ue-seg input:checked+span{color:#072d2b}
.ue-seg input:focus-visible+span{outline:3px solid #e0a64f;outline-offset:-4px}
.ue-seg:has(label:nth-of-type(2) input:checked){--i:1}.ue-seg:has(label:nth-of-type(3) input:checked){--i:2}.ue-seg:has(label:nth-of-type(4) input:checked){--i:3}
.ue-seg--light{border-color:#8fa89a}.ue-seg--light::before{background:#0e4d4a}.ue-seg--light span{color:#0e4d4a}.ue-seg--light input:checked+span{color:#fff}

/* Sliders with a filled track (--p set by script) */
.ue-sec input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:44px;background:transparent;margin:0;cursor:ew-resize}
.ue-sec input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--ue-fill,#6bb68f) var(--p,50%),var(--ue-track,#ffffff30) 0)}
.ue-sec input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:4px solid var(--ue-fill,#6bb68f);margin-top:-10px;box-shadow:0 2px 8px #0006}
.ue-sec input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--ue-track,#ffffff30)}
.ue-sec input[type=range]::-moz-range-progress{height:6px;border-radius:3px;background:var(--ue-fill,#6bb68f)}
.ue-sec input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:4px solid var(--ue-fill,#6bb68f)}

/* 01 Instrument: dark console directly under the splash */
.ue-instr{padding-top:clamp(36px,4vw,60px);padding-bottom:clamp(56px,6vw,96px)}
.ue-instr__head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px 40px;flex-wrap:wrap}
.ue-instr h2{font-size:clamp(1.9rem,3.2vw,3.1rem);max-width:19ch}
.ue-presets{display:grid;grid-template-columns:repeat(var(--n),1fr);position:relative;isolation:isolate;border:1px solid #ffffff50;min-width:min(100%,520px)}
.ue-presets::before{content:'';position:absolute;inset:0 auto 0 0;width:calc(100% / var(--n));background:#6bb68f;transform:translateX(calc(var(--i) * 100%));transition:transform 520ms var(--m-snap),opacity 300ms;z-index:-1}
.ue-presets[data-custom=true]::before{opacity:0}
.ue-presets button{border:0;min-height:52px;color:#e6f0ea;font-size:14px;position:relative}
.ue-presets button[aria-pressed=true]{color:#072d2b}
.ue-presets button:hover:not([aria-pressed=true]){background:#ffffff14}
.ue-kpi{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;margin-top:28px;border-block:1px solid #ffffff30;background:linear-gradient(90deg,#0a3d3a,#072d2b)}
.ue-kpi>div{display:grid;align-content:start;gap:10px;padding:24px 28px;min-width:0;border-left:1px solid #ffffff1f}
.ue-kpi>div:first-child{border-left:0}
.ue-kpi span{font:12px/1.5 var(--gft-font-mono);color:#b7d2c4;letter-spacing:.04em}
.ue-kpi output{font:600 clamp(1.35rem,2vw,2.1rem)/1.2 var(--gft-font-mono);letter-spacing:-.04em;overflow-wrap:anywhere;display:block}
.ue-kpi__main output{color:#94d6ae;font-size:clamp(1.9rem,3.2vw,3.2rem)}
.ue-gauge{margin-top:20px}
.ue-gauge__track{position:relative;height:16px;background:#ffffff1c;container-type:inline-size;margin-bottom:12px}
.ue-gauge__loss{position:absolute;inset:0;background:#b87932;transform-origin:0 50%;transform:scaleX(var(--b));transition:transform 600ms var(--m-out)}
.ue-gauge__mk{position:absolute;top:-6px;bottom:-6px;left:0;width:3px;background:#fff;translate:calc(var(--k) * 100cqw) 0;transition:translate 600ms var(--m-out)}
.ue-gauge__mk--b{--k:var(--b)}.ue-gauge__mk--u{--k:var(--u);width:12px;margin-left:-6px;background:#94d6ae;border-radius:50%;top:-4px;bottom:-4px}
.ue-gauge__mk b{position:absolute;top:26px;left:0;white-space:nowrap;font:600 12px var(--gft-font-mono);color:#fff;translate:-50% 0}
.ue-gauge__mk--u b{color:#94d6ae;top:-26px;left:6px}
.ue-gauge__scale{display:flex;justify-content:space-between;font:12px var(--gft-font-mono);color:#a9c6b8;letter-spacing:.08em;padding-top:26px}
.ue-interpretation{padding:22px 0 8px;max-width:78ch;color:#d6e6dd;font-size:17px!important}
.ue-workspace{display:grid;grid-template-columns:minmax(320px,440px) minmax(0,1fr);gap:clamp(28px,3.4vw,56px);margin-top:28px;align-items:start}
.ue-controls{min-width:0}.ue-controls fieldset{border:0;padding:0;margin:0;min-width:0}
.ue-controls legend{font-size:22px;font-weight:800;letter-spacing:-.04em;margin-bottom:6px;padding:0}
.ue-field{display:grid;grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:0 14px;padding:12px 0 2px;border-bottom:1px solid #ffffff24}
.ue-field label{font-size:15px;font-weight:650;line-height:1.35;color:#f2f8f4}
.ue-field small{display:block;font:12px/1.5 var(--gft-font-mono);color:#a9c6b8;margin-top:2px}
.ue-field input[type=number]{min-height:46px;width:100%;background:#ffffff12;border:1px solid #ffffff44;font:600 16px var(--gft-font-mono);text-align:right;padding:8px 10px;color:#fff;border-radius:0}
.ue-field input[type=range]{grid-column:1/-1}
.ue-price-choice{margin-top:26px!important}.ue-price-choice output{display:block;font:600 16px var(--gft-font-mono);margin-top:14px;color:#94d6ae}
.ue-assumption-controls{margin-top:22px;border-block:1px solid #ffffff30}.ue-assumption-controls summary{min-height:56px;display:flex;align-items:center;font-size:15px;font-weight:650;cursor:pointer}
.ue-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.ue-actions button,.ue-actions .ue-linkbtn{flex:1;min-width:150px;border-color:#ffffff66;color:#fff}
.ue-actions .ue-linkbtn{background:#6bb68f;border-color:#6bb68f;color:#072d2b}
.ue-actions+p{min-height:20px;margin-top:12px;color:#b7d2c4}
.ue-map{margin:0;background:#0a3d3a;padding:clamp(18px,2.2vw,32px);border:1px solid #ffffff22;min-width:0}
.ue-map figcaption h3{font-size:clamp(1.3rem,1.9vw,1.8rem);margin:10px 0}.ue-map figcaption p{font-size:15px;color:#c7ddd1}
.ue-map__svg{margin-top:12px}
.ue-surface,.ue-mini{display:block;width:100%;height:auto;overflow:visible;color:#cbe0d3;font-family:var(--gft-font-mono)}
.ue-surface text{fill:currentColor;font-size:18px}
.ue-surface .ue-ax,.ue-tag-svg{font:600 16px var(--gft-font-mono);fill:#e6f0ea;letter-spacing:.05em}
.ue-tag-svg.ue-ochre{fill:#e8b86a}.ue-tag-svg.ue-sage{fill:#94d6ae}.ue-tag-svg.ue-dim{fill:#a9c6b8}
.ue-map-legend{display:flex;gap:8px 20px;flex-wrap:wrap;font:12px/1.8 var(--gft-font-mono);color:#d4e5db;margin-top:10px}
.ue-map-legend span{display:flex;align-items:center;gap:8px}.ue-map-legend i{width:14px;height:14px;display:inline-block}
.ue-loss-key{background:#b87932}.ue-gain-key{background:#62ae88}.ue-line-key{background:#fff;height:3px!important}
.ue-map-cursor{font:14px/1.7 var(--gft-font-mono)!important;padding-top:14px;border-top:1px solid #ffffff2a;margin-top:14px;color:#fff}
.ue-map .ue-note{margin-top:10px;color:#b7d2c4}
.ue-surface{cursor:crosshair;touch-action:manipulation}

/* Live motion on the maps: a signal sweeps along the breakeven line, the operating point pings */
.ue-ping{transform-box:fill-box;transform-origin:center}
:root[data-m-go] [data-m-live~=ue-line][data-m-on] .ue-band{animation-name:ue-sweep;animation-duration:6s;animation-timing-function:var(--m-tide);animation-iteration-count:infinite;animation-direction:normal}
:root[data-m-go] [data-m-live~=ue-line][data-m-on] .ue-ping{animation-name:ue-ping;animation-duration:2.6s;animation-timing-function:ease-out;animation-iteration-count:infinite;animation-direction:normal}
:root[data-m-go] [data-m-live~=ue-line][data-m-on] .ue-covline{animation-name:ue-breathe;animation-duration:3.4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
@keyframes ue-sweep{from{transform:translateX(0)}to{transform:translateX(var(--ue-run,600px))}}
@keyframes ue-ping{from{transform:scale(.55);opacity:.9}to{transform:scale(1.9);opacity:0}}
@keyframes ue-breathe{from{opacity:.45}to{opacity:1}}
@keyframes ue-glow{from{opacity:.78}to{opacity:1}}
@keyframes ue-up{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ue-axis{from{clip-path:inset(0 50% 0 50%)}to{clip-path:inset(0 0 0 0)}}
@keyframes ue-down{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ue-scanx{0%{clip-path:inset(0 100% 0 0)}50%{clip-path:inset(0 40% 0 40%)}100%{clip-path:inset(0 0 0 100%)}}
@keyframes ue-flash{from{opacity:.18;transform:translateY(.4em)}to{opacity:1;transform:none}}

/* Chart entrances keyed to the section's own entrance. Every chart part has its own pre-state under the root guard and its own once-only run.
   Parts redrawn after the first edit carry data-ue-done on the section wrapper, so a slider drag never replays an entrance. */
:root[data-m-go] .ue-wrap:not([data-m-in]) .ue-reveal--down{clip-path:inset(0 0 100% 0)}
:root[data-m-go] .ue-wrap[data-m-in] .ue-reveal--down{animation-name:ue-down;animation-duration:900ms;animation-delay:420ms;animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-wrap:not([data-m-in]) .ue-bar__r{transform:scaleY(0)}
:root[data-m-go] .ue-wrap:not([data-m-in]) :is(.ue-bar__v,.ue-bar__n,.ue-bar__p){opacity:0}
:root[data-m-go] .ue-wrap[data-m-in]:not([data-ue-done]) .ue-bar__r{animation-name:ue-bar-grow;animation-duration:520ms;animation-delay:calc(180ms + var(--bd,0) * 55ms);animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-wrap[data-m-in]:not([data-ue-done]) :is(.ue-bar__v,.ue-bar__n,.ue-bar__p){animation-name:ue-flash;animation-duration:420ms;animation-delay:calc(420ms + var(--bd,0) * 55ms);animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-wrap:not([data-m-in]) :is(.ue-t__lo,.ue-t__hi){transform:scaleX(0)}
:root[data-m-go] .ue-wrap:not([data-m-in]) :is(.ue-t__l,.ue-t__n,.ue-t__ax){opacity:0}
:root[data-m-go] .ue-wrap[data-m-in]:not([data-ue-done]) :is(.ue-t__lo,.ue-t__hi){animation-name:ue-bar-growx;animation-duration:520ms;animation-delay:calc(200ms + var(--bd,0) * 30ms);animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-wrap[data-m-in]:not([data-ue-done]) :is(.ue-t__l,.ue-t__n,.ue-t__ax){animation-name:ue-flash;animation-duration:420ms;animation-delay:calc(360ms + var(--bd,0) * 30ms);animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
@keyframes ue-bar-grow{from{transform:scaleY(0)}}
@keyframes ue-bar-growx{from{transform:scaleX(0)}}
@keyframes ue-from-l{from{opacity:0;translate:-72px 0}}
@keyframes ue-from-r{from{opacity:0;translate:72px 0}}
@keyframes ue-wipe-x{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ue-fill{from{transform:scaleX(0)}}
@keyframes ue-slide{from{opacity:0;translate:64px 0}}
@keyframes ue-lock{from{opacity:0;transform:translateY(-36px)}}
@keyframes ue-sweepc{from{translate:0 -50%}}

/* 02 Bridge: a tinted ground, the chart bleeding to the right edge, a running total under it */
.ue-bridge{background:linear-gradient(180deg,#cde0d4,#dfeae3 70%,#d6e5dc);padding-block:clamp(48px,6vw,88px)}
.ue-bridge__grid{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,2fr);gap:clamp(28px,4vw,64px);align-items:center}
@media(min-width:1101px){.ue-bridge__chart{margin-right:calc(-1 * max(48px,(100vw - 1360px) / 2))}}
.ue-bridge__copy{display:grid;gap:20px;align-content:center}.ue-bridge__copy h2{font-size:clamp(2.2rem,3.6vw,3.6rem)}
.ue-bridge__chart{margin:0;min-width:0;position:relative;overflow:hidden;background:#ffffff80;border-block:2px solid #0e4d4a;padding:clamp(14px,2vw,28px) clamp(14px,2vw,28px) 0}
.ue-bridge svg,.ue-sens svg{display:block;width:100%;height:auto;overflow:visible}
.ue-bridge__chart::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,#0e4d4a24 50%,transparent);opacity:0}
:root[data-m-go] .ue-bridge__chart[data-m-live~=ue-scan][data-m-on]::after{opacity:1;animation-name:ue-scanx;animation-duration:9s;animation-timing-function:var(--m-tide);animation-iteration-count:infinite;animation-direction:normal}
.ue-run__cap{font:600 12px/1.5 var(--gft-font-mono);letter-spacing:.09em;color:#2f4d41;padding:6px 0 10px}
.ue-run{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0 calc(-1 * clamp(14px,2vw,28px));padding:0;border-top:1px solid #8fa89a}
.ue-run li{display:grid;gap:4px;padding:14px clamp(10px,1.4vw,18px) 16px;min-width:0;border-left:1px solid #8fa89a;color:#3d5a4d;transition:background 360ms var(--m-out),color 360ms}
.ue-run li:first-child{border-left:0}
.ue-run li[data-on=true]{background:#0e4d4a;color:#fff}
.ue-run span{font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.05em;text-transform:uppercase}
.ue-run output{font:700 clamp(1rem,1.7vw,1.6rem)/1.2 var(--gft-font-mono);letter-spacing:-.04em;overflow-wrap:anywhere}
.ue-bar{cursor:pointer;outline:none;transition:opacity 240ms}
.ue-bar__r{transition:filter 240ms;transform-box:fill-box;transform-origin:50% 100%}
.ue-bar[data-sel=true] .ue-bar__r{stroke:#c98a2b;stroke-width:4}
.ue-bridge__chart:has(.ue-bar[data-sel=true]) .ue-bar:not([data-sel=true]) .ue-bar__r{opacity:.8}
.ue-bridge__bar{display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;padding-bottom:14px;margin-bottom:4px;border-bottom:1px solid #8fa89a}.ue-bridge__bar .ue-seg{min-width:min(100%,340px)}
.ue-bar:hover,.ue-bar:focus-visible{opacity:1!important}.ue-bar:hover .ue-bar__r{filter:brightness(1.18)}
.ue-bar:focus-visible .ue-bar__r{outline:3px solid #e0a64f}
.ue-bar__v{font:700 22px var(--gft-font-mono);fill:#0e4d4a}.ue-bar__n{font:650 18px var(--gft-font-display);fill:#253b32}.ue-bar__p{font:650 16px var(--gft-font-mono);fill:#6e430e;letter-spacing:.06em}
:root[data-m-go] [data-m-live~=ue-bars][data-m-on] :is(.ue-bar,.ue-t)[data-sel=true]{animation-name:ue-glow;animation-duration:2.6s;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}
.ue-readout{display:grid;gap:8px;padding:22px 24px;background:#0e4d4a;color:#fff;border-left:6px solid #c98a2b}
.ue-readout .ue-kicker{color:#94d6ae}.ue-readout output{font:600 clamp(1.4rem,2.2vw,2.1rem)/1.2 var(--gft-font-mono);letter-spacing:-.04em;display:block}.ue-readout p{font-size:15px;color:#d6e6dd}
.ue-readout--dark{background:#0a3d3a;border:1px solid #ffffff2a;border-left:6px solid #6bb68f}
.ue-fold{border-block:1px solid var(--rule);margin-top:6px}.ue-fold summary{min-height:52px;display:flex;align-items:center;font-weight:650;font-size:15px;cursor:pointer}.ue-fold p{font-size:15px;padding-bottom:14px;max-width:84ch}
.ue-fold--dark{margin-top:56px}.ue-fold--light{margin-top:40px}

/* 03 Sensitivity: dark full-bleed interlude. On wide screens the tornado stays pinned beside the long table. */
.ue-sens{background:linear-gradient(180deg,#072d2b,#0a3d3a 60%,#072d2b);padding-bottom:clamp(28px,3vw,48px)}
.ue-sens__head,.ue-reg__head,.ue-asm__head,.ue-rel__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 64px;flex-wrap:wrap}
.ue-sens__head>p,.ue-reg__head>p,.ue-asm__head>p,.ue-rel__head>p{max-width:46ch;color:var(--ue-muted)}
.ue-sens__tools{display:flex;gap:20px 48px;flex-wrap:wrap;align-items:center;margin-top:40px}
.ue-sens__tools .ue-seg{min-width:min(100%,460px)}
.ue-swing{display:flex;align-items:center;gap:14px;flex:1;min-width:260px;font:650 15px var(--gft-font-display)}.ue-swing b{font:600 18px var(--gft-font-mono);color:#94d6ae;min-width:4.5ch}.ue-swing input{flex:1}
.ue-sens__grid{display:grid;grid-template-columns:1fr;gap:clamp(24px,3vw,48px);margin-top:20px;align-items:start}
@media(min-width:1300px){.ue-sens__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.ue-sens__chart{position:sticky;top:max(20px,5svh)}}
.ue-sens__chart{margin:0;min-width:0;align-self:start}.ue-sens__side{display:grid;gap:20px;min-width:0}
.ue-t{cursor:pointer;outline:none}.ue-t__bg{fill:transparent;transition:fill 200ms}.ue-t:hover .ue-t__bg{fill:#ffffff0f}.ue-t[data-sel=true] .ue-t__bg{fill:#ffffff1c}
.ue-t:focus-visible .ue-t__bg{stroke:#e0a64f;stroke-width:2}
.ue-t__lo{fill:#8ea2e6;transform-box:fill-box;transform-origin:100% 50%}.ue-t__hi{fill:#6bb68f;transform-box:fill-box;transform-origin:0 50%}
.ue-t__l{font:650 21px var(--gft-font-display);fill:#e6f0ea}.ue-t__n{font:600 17px var(--gft-font-mono);fill:#cfe2d8}.ue-t__ax{font:600 17px var(--gft-font-mono);fill:#a9c6b8;letter-spacing:.06em}
.ue-table-wrap{overflow-x:auto;max-width:100%;min-width:0}
.ue-table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.5;text-align:left}
.ue-table :is(td,th){padding:12px 12px;border-bottom:1px solid #ffffff26;vertical-align:top}.ue-table th{font-weight:650}
.ue-table td{font-family:var(--gft-font-mono);white-space:nowrap;font-size:14px}
.ue-table thead{background:#ffffff14}.ue-table caption{text-align:left;font:12px/1.6 var(--gft-font-mono);padding-bottom:12px;color:#b7d2c4}
.ue-table tbody tr{transition:background 200ms}.ue-table tbody tr[data-sel=true]{background:#6bb68f30;box-shadow:inset 4px 0 0 #6bb68f}.ue-table tbody tr:hover{background:#ffffff12}

/* 04 Register: the dark ground of the sensitivity section continues, and the two cards rise out of it onto paper */
.ue-reg{background:var(--gft-paper);padding-top:0}
.ue-reg__top{padding-block:clamp(56px,6vw,96px) clamp(150px,13vw,200px)}
.ue-reg__head>p{max-width:44ch;color:#cbe0d3;font-size:16px}
.ue-reg__intro{display:grid;gap:14px;max-width:46ch}
.ue-reg__body{margin-top:calc(-1 * clamp(104px,9.5vw,150px));position:relative;z-index:2}
.ue-reg__stage{position:relative;padding:clamp(14px,1.8vw,24px);background:linear-gradient(180deg,#0a3d3a 0%,#0a3d3a 42%,#e5ede8 42%,#f6f4ef 100%);border:1px solid #8fa89a;box-shadow:0 26px 60px #072d2b24;margin-bottom:-44px;padding-bottom:58px}
.ue-reg__stage-head{display:flex;justify-content:space-between;align-items:center;gap:10px 24px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #ffffff2e;font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.08em;color:#94d6ae;position:relative;z-index:2}
.ue-reg__stage-head span:last-child{color:#e8b86a;font-weight:700}
.ue-reg__stage-svg svg{display:block;width:100%;height:164px;overflow:visible}
.ue-ab{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,196px) minmax(0,1fr);align-items:stretch}
.ue-card{padding:clamp(22px,2.6vw,40px);min-width:0;display:grid;align-content:start;box-shadow:0 22px 50px #072d2b2e}
.ue-card--a{border:2px dashed #7f988a;background:#fff;color:#25302e}.ue-card--a[data-filled=true]{border:2px solid #0e4d4a;background:#fff}
.ue-card--b{background:#0e4d4a;color:#fff;border:2px solid #0e4d4a}
@media(min-width:901px){.ue-card--a{margin-bottom:24px}.ue-card--b{margin-top:24px}}
:root[data-m-go] .ue-reg__body:not([data-m-in]) .ue-card--a{opacity:0;translate:-72px 0}
:root[data-m-go] .ue-reg__body:not([data-m-in]) .ue-card--b{opacity:0;translate:72px 0}
:root[data-m-go] .ue-reg__body:not([data-m-in]) .ue-diff{clip-path:inset(0 50% 0 50%)}
:root[data-m-go] .ue-reg__body[data-m-in]:not([data-ue-done]) .ue-card--a{animation-name:ue-from-l;animation-duration:820ms;animation-delay:80ms;animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-reg__body[data-m-in]:not([data-ue-done]) .ue-card--b{animation-name:ue-from-r;animation-duration:820ms;animation-delay:80ms;animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
:root[data-m-go] .ue-reg__body[data-m-in]:not([data-ue-done]) .ue-diff{animation-name:ue-axis;animation-duration:700ms;animation-delay:520ms;animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-card__tag{display:flex;align-items:center;gap:12px;font:600 13px var(--gft-font-mono);letter-spacing:.05em;margin-bottom:10px}.ue-card__tag b{font:800 34px var(--gft-font-display);letter-spacing:-.05em}
.ue-m{display:grid;grid-template-columns:1fr auto;gap:2px 14px;padding:14px 10px;margin-inline:-10px;border-top:1px solid #7f988a55;cursor:pointer;transition:background 200ms,box-shadow 200ms}
.ue-card--b .ue-m{border-color:#ffffff30}
.ue-card--a .ue-m:is(:hover,:focus-visible,[data-m-sel=true]){background:#e7efe9;box-shadow:inset 4px 0 0 #0e4d4a}
.ue-card--b .ue-m:is(:hover,:focus-visible,[data-m-sel=true]){background:#ffffff17;box-shadow:inset 4px 0 0 #94d6ae}
.ue-m span{font:12px/1.5 var(--gft-font-mono);letter-spacing:.04em;text-transform:uppercase;opacity:.9}
.ue-m output{font:600 clamp(1.05rem,1.5vw,1.45rem) var(--gft-font-mono);letter-spacing:-.03em;text-align:right}
.ue-m__bar{grid-column:1/-1;height:5px;background:#0e4d4a;transform:scaleX(var(--w));transform-origin:0 50%;transition:transform 600ms var(--m-out)}
.ue-card--b .ue-m__bar{background:#94d6ae}
.ue-card__act{display:grid;gap:10px;margin-top:20px}
.ue-sec .ue-big{min-height:60px;font-size:16px;background:#0e4d4a;color:#fff;border-color:#0e4d4a}
.ue-sec .ue-big--b{background:#fff;color:#0e4d4a;border-color:#fff}
.ue-card__act button:not(.ue-big){border-color:currentColor}
.ue-diff{display:grid;align-content:center;justify-items:center;text-align:center;gap:6px;padding:16px 12px;margin:auto 8px;background:#fff;border:2px solid #0e4d4a;box-shadow:0 14px 32px #072d2b26;position:relative;z-index:2}
.ue-diff[data-neg=true]{border-color:#a26e21;background:#fdf6eb}
.ue-diff .ue-kicker{color:#0e4d4a}
.ue-diff[data-neg=true] .ue-kicker{color:#8a4a0c}
.ue-diff output{font:700 clamp(1.1rem,1.6vw,1.5rem) var(--gft-font-mono);letter-spacing:-.04em;color:#0e4d4a;overflow-wrap:anywhere}
.ue-diff[data-neg=true] output{color:#8a4a0c}
.ue-diff span:last-of-type{font-size:13px;color:var(--ue-muted)}
.ue-diff__ribbon{position:absolute;left:-14px;right:-14px;top:50%;height:3px;background:linear-gradient(90deg,#0e4d4a,#c98a2b);z-index:-1}
.ue-reg__readout{margin-top:22px;padding:18px 24px;background:#0a3d3a;color:#e6f0ea;border-left:6px solid #6bb68f;display:grid;gap:6px;position:relative;z-index:2}
.ue-reg__readout-main{display:flex;justify-content:space-between;align-items:baseline;gap:8px 20px;flex-wrap:wrap}
.ue-reg__readout .ue-kicker{color:#94d6ae}
.ue-reg__readout output{font:700 15px/1.35 var(--gft-font-mono);color:#fff}
.ue-reg__readout p{font-size:15px;color:#cbe0d3}
.ue-changed{margin-top:16px;font-size:15px;color:var(--ue-muted)}
.ue-link{width:100%;min-height:46px;font:13px var(--gft-font-mono);border:1px solid #0e4d4a;padding:10px;margin-top:12px;background:#fff}

/* 05 Method: a sticky stage that is a different picture on every step. Panes fade out first, then the next fades in. */
.ue-method{background:#d3e3d9;padding-bottom:0}
.ue-method__head{display:grid;gap:4px}.ue-limits__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,460px);gap:24px 48px;align-items:end}
.ue-limits__lede{font-size:17px!important;line-height:1.65!important;color:#d6e6dd;max-width:52ch;margin-top:14px!important}
.ue-limits__peek{margin:0;padding:16px 18px;background:#0a3d3a;border:1px solid #ffffff2a;border-left:5px solid #e0a64f;display:grid;gap:10px}
.ue-limits__peek-bar{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;font:600 12px/1.3 var(--gft-font-mono);color:#e8b86a}
.ue-limits__peek svg{display:block;width:100%;height:auto;overflow:visible;font-family:var(--gft-font-mono)}
.ue-limits__peek svg .ue-tag-svg{font-size:13px}
.ue-steps{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:clamp(28px,5vw,88px);align-items:start;margin-top:48px}
.ue-steps .ue-stage{position:sticky;top:max(20px,5svh);align-self:start;display:block;min-height:0;background:#0a3d3a;color:#e6f0ea;padding:clamp(20px,2.4vw,34px);overflow:hidden}
.ue-stage::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,#6bb68f1c 50%,transparent);opacity:0}
:root[data-m-go] .ue-stage[data-m-live~=ue-scan][data-m-on]::after,:root[data-m-go] .ue-stage[data-m-live~=ue-line][data-m-on]::after{opacity:1;animation-name:ue-scanx;animation-duration:8s;animation-timing-function:var(--m-tide);animation-iteration-count:infinite;animation-direction:normal}
.ue-stage__bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 16px;font:600 12px var(--gft-font-mono);letter-spacing:.09em;color:#94d6ae;margin-bottom:16px}
.ue-cnt{display:grid;color:#fff}.ue-cnt i{grid-area:1/1;font-style:normal;visibility:hidden}
.ue-steps:is(:not([data-step]),[data-step="0"]) .ue-cnt i:nth-child(1),.ue-steps[data-step="1"] .ue-cnt i:nth-child(2),.ue-steps[data-step="2"] .ue-cnt i:nth-child(3),.ue-steps[data-step="3"] .ue-cnt i:nth-child(4){visibility:visible}
.ue-dots{display:flex;gap:6px;list-style:none;margin:0;padding:0}.ue-dots li{width:22px;height:4px;background:#ffffff30;transition:background 300ms}
.mw-steps[data-step="0"] .ue-dots li:nth-child(-n+1),.mw-steps[data-step="1"] .ue-dots li:nth-child(-n+2),.mw-steps[data-step="2"] .ue-dots li:nth-child(-n+3),.mw-steps[data-step="3"] .ue-dots li{background:#6bb68f}
.ue-panes{display:grid}
.ue-pane{grid-area:1/1;display:grid;align-content:start;opacity:0;visibility:hidden;translate:0 14px;transition:opacity 140ms linear,translate 140ms var(--m-out),visibility 0s linear 140ms}
.ue-steps:is(:not([data-step]),[data-step="0"]) .ue-pane[data-p="0"],.ue-steps[data-step="1"] .ue-pane[data-p="1"],.ue-steps[data-step="2"] .ue-pane[data-p="2"],.ue-steps[data-step="3"] .ue-pane[data-p="3"]{opacity:1;visibility:visible;translate:0 0;transition:opacity 300ms linear 160ms,translate 480ms var(--m-out) 160ms,visibility 0s}
.ue-lad{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 16px;padding:12px 0 11px 14px;border-top:1px solid #ffffff22;border-left:3px solid #e0a64f;background:#ffffff0d}
.ue-lad__l{font-size:15px;line-height:1.35;color:#e1eee7}.ue-lad__l u{text-decoration:none;color:#94d6ae;font-family:var(--gft-font-mono)}
.ue-lad b{font:600 clamp(1.1rem,1.6vw,1.5rem) var(--gft-font-mono);letter-spacing:-.03em;text-align:right}
.ue-lad em{grid-column:1/-1;font:normal 12px var(--gft-font-mono);color:#b7d2c4;order:3;text-align:right}.ue-lad em u{text-decoration:none;color:#e6f0ea}
.ue-lad__b{grid-column:1/-1;height:6px;background:#6bb68f;transform:scaleX(var(--w));transform-origin:0 50%;transition:transform 700ms var(--m-out);order:2}
.ue-lad__b--gain{background:#94d6ae}.ue-lad__b--cost{background:#e0a64f}.ue-lad__b--line{background:#fff}
.ue-lad--key b{color:#94d6ae}
.ue-split{padding:14px 0 14px 14px;border-left:3px solid #e0a64f;background:#ffffff0d;border-top:1px solid #ffffff22}
.ue-split__track{height:18px;background:#94d6ae;position:relative;overflow:hidden}
.ue-split__v{position:absolute;inset:0;background:#e0a64f;transform:scaleX(var(--w));transform-origin:0 50%;transition:transform 700ms var(--m-out)}
.ue-split p{display:flex;justify-content:space-between;gap:8px 16px;flex-wrap:wrap;margin-top:10px;font:13px/1.5 var(--gft-font-mono);color:#e1eee7;padding-right:2px}
.ue-split p b{color:#fff;margin-left:6px}.ue-split__k{display:inline-block;width:12px;height:12px;background:#94d6ae;margin-right:8px;vertical-align:-1px}.ue-split__k--v{background:#e0a64f}
.ue-be{padding:8px 14px 14px;border-left:3px solid #e0a64f;background:#ffffff0d}
.ue-be__track{position:relative;height:16px;background:#ffffff1c;container-type:inline-size;margin:44px 0 52px}
.ue-be__loss{position:absolute;inset:0;background:#b87932;transform-origin:0 50%;transform:scaleX(var(--b));transition:transform 600ms var(--m-out)}
.ue-be__mk{position:absolute;top:-8px;bottom:-8px;left:0;width:3px;background:#fff;translate:calc(var(--k) * 100cqw) 0;transition:translate 600ms var(--m-out)}
.ue-be__mk--b{--k:var(--b)}.ue-be__mk--u{--k:var(--u);width:12px;margin-left:-6px;background:#94d6ae;border-radius:50%;top:-4px;bottom:-4px}
.ue-be__mk b{position:absolute;top:34px;left:0;white-space:nowrap;font:600 13px var(--gft-font-mono);color:#fff;translate:calc(var(--k) * -100%) 0}
.ue-be__mk--u b{color:#94d6ae;top:-36px;left:6px}
.ue-be p{font:12px var(--gft-font-mono)!important;letter-spacing:.08em;color:#b7d2c4;margin-top:0}
/* each pane draws itself when it becomes the active one, after the previous pane has faded */
.ue-wrap[data-m-in] .ue-steps:is(:not([data-step]),[data-step="0"]) .ue-pane[data-p="0"] :is(.ue-lad__b,.ue-split__v),
.ue-wrap[data-m-in] .ue-steps[data-step="1"] .ue-pane[data-p="1"] :is(.ue-lad__b,.ue-split__v),
.ue-wrap[data-m-in] .ue-steps[data-step="2"] .ue-pane[data-p="2"] :is(.ue-lad__b,.ue-split__v),
.ue-wrap[data-m-in] .ue-steps[data-step="3"] .ue-pane[data-p="3"] :is(.ue-lad__b,.ue-split__v){animation-name:ue-fill;animation-duration:800ms;animation-delay:420ms;animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-wrap[data-m-in] .ue-steps[data-step="2"] .ue-pane[data-p="2"] .ue-lad--slide{animation-name:ue-slide;animation-duration:800ms;animation-delay:520ms;animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-wrap[data-m-in] .ue-steps[data-step="3"] .ue-pane[data-p="3"] .ue-be__mk{animation-name:ue-lock;animation-duration:700ms;animation-delay:700ms;animation-timing-function:var(--m-snap);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-steps__track>li{list-style:none;padding-inline-start:28px}
.ue-steps__track{margin:0;padding:0}
.ue-steps__track h3{font-size:clamp(1.6rem,2.4vw,2.4rem);margin-bottom:14px}
.ue-steps__track p{font-size:18px;max-width:38ch}
.ue-steps__track code{display:block;margin-top:12px;padding:12px 14px;background:#eef4f0;color:#072d2b;font:14px/1.6 var(--gft-font-mono);overflow-wrap:anywhere}
.ue-steps--dark .ue-steps__track code{background:#ffffff1a;color:#f0f6f2}
.ue-steps__track>li{color:#44594f;transition:color 500ms,background 360ms,border-color 360ms,box-shadow 360ms}.ue-steps__track>[data-active]{color:#072d2b}
.ue-steps--dark .ue-steps__track>li{color:#b6cec2}.ue-steps--dark .ue-steps__track>[data-active]{color:#fff}
.mw-steps__track>*::after{background:var(--ue-sage)}
.ue-method .ue-steps__track>li{min-height:42svh;padding:24px 22px 24px 28px;margin-bottom:18px;background:#e7f0ea99;border:1px solid #9db3a6;position:relative;display:grid;align-content:center;gap:8px}
.ue-method .ue-steps__track>[data-active]{background:#fff;border-color:#0e4d4a;box-shadow:0 18px 40px #072d2b1f;color:#072d2b}
.ue-method .ue-steps__track h3{font-size:clamp(1.95rem,2.8vw,2.75rem);line-height:1.06;letter-spacing:-.045em;margin:4px 0 6px}
.ue-step__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ue-step__num{font:800 13px/1 var(--gft-font-mono);padding:6px 10px;background:#0e4d4a;color:#fff;letter-spacing:.08em}
.ue-steps--dark .ue-step__num{background:#6bb68f;color:#072d2b}
.ue-step__tag{font:600 12px/1.3 var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase;color:#2f4d41}
.ue-steps--dark .ue-step__tag{color:#94d6ae}
.ue-step__live{margin-top:6px;padding:12px 14px;background:#0a3d3a;color:#e6f0ea;border-left:4px solid #6bb68f;display:flex;justify-content:space-between;align-items:baseline;gap:6px 14px;flex-wrap:wrap}
.ue-step__live span{font:600 12px/1.4 var(--gft-font-mono);letter-spacing:.06em;text-transform:uppercase;color:#94d6ae}
.ue-step__live b{font:700 clamp(1.1rem,1.5vw,1.4rem)/1.2 var(--gft-font-mono);color:#fff}
.ue-step__live em{font:normal 12px/1.4 var(--gft-font-mono);color:#cbe0d3;width:100%}
.ue-step__live u{text-decoration:none;color:#94d6ae}
.ue-step__conn{display:none}
@media(min-width:1181px){
 .ue-method .ue-step__conn{display:block;position:absolute;left:calc(-1 * clamp(28px,4vw,72px));top:50%;width:clamp(28px,4vw,72px);height:2px;background:linear-gradient(90deg,#6bb68f,#0e4d4a);transform-origin:100% 50%;transform:scaleX(.25);opacity:.3;transition:transform 420ms var(--m-out),opacity 320ms}
 .ue-method .ue-steps__track>[data-active] .ue-step__conn{transform:scaleX(1);opacity:1}
 .ue-method .ue-steps__track>[data-active] .ue-step__conn::before{content:'';position:absolute;left:-5px;top:-4px;width:10px;height:10px;border-radius:50%;background:#6bb68f;box-shadow:0 0 0 4px #6bb68f33}
}
.ue-method__handoff{margin-top:clamp(32px,4vw,56px);padding-top:clamp(28px,3.5vw,44px);background:#072d2b;color:#e6f0ea;border-top:2px solid #0e4d4a}
.ue-method__handoff-bar{display:flex;justify-content:space-between;align-items:center;gap:18px 36px;flex-wrap:wrap;padding:22px 26px;background:#0a3d3a;border:1px solid #ffffff26;border-left:6px solid #6bb68f;box-shadow:0 20px 44px #072d2b2e}
.ue-method__handoff-bar>div{display:grid;gap:6px;max-width:66ch}
.ue-method__handoff-bar .ue-kicker{color:#94d6ae}
.ue-method__handoff-bar p{color:#d6e6dd;font-size:16px}
.ue-method__handoff-bar p span{font-family:var(--gft-font-mono);color:#94d6ae;font-weight:700}
.ue-method__handoff-bar .ue-linkbtn{background:#6bb68f;color:#072d2b;border-color:#6bb68f}

/* 06 Assumptions: a pinned stage reads whichever row you point at; every row is also a control */
.ue-asmsec{background:var(--gft-paper);padding-bottom:0}
.ue-asm__bar{display:flex;justify-content:space-between;align-items:center;gap:16px 32px;flex-wrap:wrap;margin-top:36px}.ue-asm__bar .ue-seg{min-width:min(100%,520px)}
.ue-asm__layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.75fr);gap:clamp(24px,3vw,48px);margin-top:20px;align-items:start}
.ue-asm__stage{position:sticky;top:max(20px,5svh);display:grid;gap:12px;background:#0a3d3a;color:#e6f0ea;padding:clamp(18px,2vw,28px);border-left:6px solid #6bb68f;min-width:0}
.ue-asm__stage .ue-kicker{color:#94d6ae}
.ue-asm__stage h3{color:#fff;font-size:clamp(1.3rem,1.8vw,1.7rem)}
.ue-asm__wedge{min-width:0;background:#072d2b}.ue-asm__wedge .ue-surface text{font-size:17px}.ue-asm__wedge .ue-surface .ue-ax{font-size:17px}
.ue-asm__effect{font-size:15px!important;line-height:1.6!important;color:#e1eee7;min-height:4.8em}
.ue-prov{display:grid;gap:10px;padding-top:12px;border-top:1px solid #ffffff2a}
.ue-prov__bar{display:flex;gap:3px;min-height:44px}
.ue-sec .ue-prov__bar button{min-height:44px;min-width:44px;padding:0;border:0;flex:1 1 0;transition:opacity 240ms}
.ue-prov__bar button:nth-child(1){flex-grow:var(--a);background:#6bb68f}.ue-prov__bar button:nth-child(2){flex-grow:var(--b);background:#8ea2e6}.ue-prov__bar button:nth-child(3){flex-grow:var(--c);background:#e8b86a}
.ue-prov__bar[data-filter=sourced] button:not(:nth-child(1)),.ue-prov__bar[data-filter=estimate] button:not(:nth-child(2)),.ue-prov__bar[data-filter=illustrative] button:not(:nth-child(3)){opacity:.35}
.ue-prov__legend{display:flex;gap:6px 18px;flex-wrap:wrap;font:12px/1.5 var(--gft-font-mono)!important;color:#e1eee7}
.ue-prov__legend i{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-1px;background:#6bb68f}.ue-prov__legend i[data-kind=estimate]{background:#8ea2e6}.ue-prov__legend i[data-kind=illustrative]{background:#e8b86a}
.ue-asm{list-style:none;margin:0;padding:0;min-width:0}
.ue-asm__hdr{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding:12px 20px;background:#e4ede7;border-block:2px solid #0e4d4a;color:#072d2b;box-shadow:0 6px 16px #072d2b12}
.ue-asm__hdr[data-hdr=estimate]{border-color:#2c3e7a;background:#e6eaf4}
.ue-asm__hdr[data-hdr=illustrative]{border-color:#a26e21;background:#f5ecdd}
.ue-asm__hdr span:first-child{font:700 12px/1.3 var(--gft-font-mono);letter-spacing:.08em;text-transform:uppercase;color:#0e4d4a}
.ue-asm__hdr[data-hdr=estimate] span:first-child{color:#2c3e7a}
.ue-asm__hdr[data-hdr=illustrative] span:first-child{color:#7a4a0c}
.ue-asm__hdr span:last-child{font:600 13px/1.3 var(--gft-font-mono);color:#25302e}
.ue-asm[data-filter=sourced] .ue-asm__hdr:not([data-hdr=sourced]),.ue-asm[data-filter=estimate] .ue-asm__hdr:not([data-hdr=estimate]),.ue-asm[data-filter=illustrative] .ue-asm__hdr:not([data-hdr=illustrative]){display:none}
.ue-asm__row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr);grid-template-areas:"name def range" "basis basis basis";gap:12px 28px;align-items:center;padding:22px 20px;border-top:1px solid #9db3a6;transition:background 240ms,box-shadow 240ms;min-width:0}
.ue-asm__row[data-read=true],.ue-asm__row:hover,.ue-asm__row:focus-visible,.ue-asm__row:focus-within{background:#fff;box-shadow:inset 5px 0 0 #6bb68f}
.ue-asm__row[data-chain-hit=true]{background:#eef6f1;box-shadow:inset 6px 0 0 #c98a2b}
.ue-asm[data-filter=sourced] .ue-asm__row:not([data-kind=sourced]),.ue-asm[data-filter=estimate] .ue-asm__row:not([data-kind=estimate]),.ue-asm[data-filter=illustrative] .ue-asm__row:not([data-kind=illustrative]){display:none}
.ue-asm__name{grid-area:name;display:grid;gap:8px}.ue-asm__name b{font-size:18px;line-height:1.25}
.ue-chip{justify-self:start;padding:4px 10px;font:600 12px var(--gft-font-mono);letter-spacing:.04em;background:#0e4d4a;color:#fff}.ue-chip[data-kind=estimate]{background:#2c3e7a}.ue-chip[data-kind=illustrative]{background:#fff;color:#0e4d4a;border:1px solid #0e4d4a}
.ue-asm__def{grid-area:def;display:grid;gap:2px}.ue-asm__def span{font:600 13px var(--gft-font-mono);color:#3d5a4d}.ue-asm__def b{font:700 17px var(--gft-font-mono);overflow-wrap:anywhere;color:#072d2b}
.ue-range{grid-area:range;position:relative;height:44px;container-type:inline-size}
.ue-range::before{content:'';position:absolute;left:0;right:0;top:50%;height:4px;background:#b3c6ba;translate:0 -50%}
.ue-range i{position:absolute;top:50%;left:0}
.ue-range__d{width:4px;height:30px;background:#0e4d4a;translate:calc(var(--p) * 100cqw) -50%}
.ue-range__c{width:18px;height:18px;margin-left:-9px;translate:calc(var(--p) * 100cqw) -50%;transition:translate 500ms var(--m-out)}
.ue-range__c u{display:block;width:100%;height:100%;border-radius:50%;background:#c98a2b;border:3px solid #fff}
:root[data-m-go] .ue-wrap:not([data-m-in]) .ue-range__c{translate:0 -50%}
:root[data-m-go] .ue-wrap[data-m-in]:not([data-ue-done]) .ue-range__c{animation-name:ue-sweepc;animation-duration:900ms;animation-delay:360ms;animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-asm__basis{grid-area:basis;font-size:15.5px!important;line-height:1.6!important;color:#25302e}
.ue-asm__row[data-off=true]{grid-template-areas:"name def range" "basis basis try"}.ue-asm__row:not([data-off=true]) .ue-asm__try{display:none}.ue-asm__try{grid-area:try;display:grid;gap:8px}.ue-asm__try button{border-color:#0e4d4a;color:#0e4d4a;min-height:44px;font-size:13px}.ue-asm__try button:hover{background:#0e4d4a;color:#fff}.ue-asm__try p{font:600 13px/1.5 var(--gft-font-mono)!important;color:#0e4d4a}
.ue-asm__row[data-off=true] .ue-asm__try p{color:#7a4a0c}
.ue-asm__count{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 16px;padding-top:14px;border-top:1px solid #ffffff2a}
.ue-asm__n{font:700 clamp(2.6rem,4vw,3.8rem)/1 var(--gft-font-mono);letter-spacing:-.06em;color:#94d6ae}
.ue-asm__count p{font-size:15px!important;line-height:1.35!important;color:#e6f0ea}
.ue-pips{grid-column:1/-1;display:flex;gap:4px;list-style:none;margin:6px 0 0;padding:0}.ue-pips li{flex:1;height:8px;background:#ffffff30;transition:background 300ms}.ue-pips li[data-on=true]{background:#e0a64f}
.ue-sec .ue-asm__count button{grid-column:1/-1;border-color:#ffffff88;color:#fff;min-height:44px;font-size:14px;margin-top:6px}.ue-sec .ue-asm__count button:not(:disabled):hover{background:#e0a64f;color:#072d2b;border-color:#e0a64f}
.ue-asm__key{display:flex;align-items:center;gap:8px;font:13px/1.5 var(--gft-font-mono)!important;color:var(--ue-muted)}
.ue-asm__key i{display:inline-block}.ue-asm__k1{width:3px;height:18px;background:#0e4d4a}.ue-asm__k2{width:14px;height:14px;border-radius:50%;background:#c98a2b;border:2px solid #fff;box-shadow:0 0 0 1px #7f988a;margin-left:12px}

/* The model chain: seven live links from wage to breakeven, a read-out under them */
.ue-chain{margin-top:clamp(40px,5vw,72px);padding:clamp(24px,3vw,44px) 0 0;border-top:1px solid #7f988a}
.ue-chain__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px 48px}
.ue-chain__ctrl{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ue-sec .ue-chain__ctrl button{min-height:44px;padding:8px 16px;background:#0e4d4a;color:#fff;border-color:#0e4d4a;font:650 13px var(--gft-font-mono);letter-spacing:.03em}
.ue-sec .ue-chain__ctrl button:hover{background:#072d2b}
.ue-chain__pos{font:700 13px/1 var(--gft-font-mono);letter-spacing:.08em;padding:12px 14px;background:#e4ede7;border:1px solid #7f988a;color:#072d2b}
.ue-chain h3{margin-top:8px}
.ue-chain__links{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));position:relative}
.ue-chain__links::before{content:'';position:absolute;left:0;right:0;top:44%;height:2px;background:linear-gradient(90deg,#0e4d4a,#c98a2b);opacity:.5;z-index:0}
.ue-chain__links li{position:relative;z-index:1;padding-inline:6px;min-width:0}
.ue-chain__links li:not(:last-child)::after{content:'';position:absolute;right:-5px;top:44%;width:10px;height:10px;border-top:2px solid #0e4d4a;border-right:2px solid #0e4d4a;rotate:45deg;translate:0 -50%;z-index:2}
.ue-chain__op{display:block;margin-top:8px;padding:4px 8px;font:700 12px/1.3 var(--gft-font-mono);color:#072d2b;background:#e4ede7;border-left:3px solid #c98a2b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ue-chain__op u{text-decoration:none}
.ue-sec .ue-chain__links button{display:grid;align-content:start;gap:4px;width:100%;min-height:118px;padding:14px 12px;border:1px solid #7f988a;background:#fff;color:#0e4d4a;text-align:left;font:inherit;transition:background 260ms,color 260ms,translate 400ms var(--m-out),box-shadow 260ms}
.ue-chain__n{font:650 15px/1.25 var(--gft-font-display)}
.ue-chain__links button b{font:700 clamp(1rem,1.5vw,1.35rem)/1.2 var(--gft-font-mono);letter-spacing:-.04em;overflow-wrap:anywhere}
.ue-chain__links button i{font:normal 12px/1.4 var(--gft-font-mono);color:#3d5a4d;letter-spacing:.02em}
.ue-chain__links button[aria-pressed=true]{background:#0e4d4a;color:#fff;translate:0 -10px;box-shadow:0 16px 30px #072d2b33}.ue-chain__links button[aria-pressed=true] i{color:#c7ddd1}
.ue-chain__links button[data-kind=sourced]{border-bottom:5px solid #0e4d4a}.ue-chain__links button[data-kind=estimate]{border-bottom:5px solid #2c3e7a}.ue-chain__links button[data-kind=illustrative]{border-bottom:5px solid #c98a2b}
.ue-chain__read{margin-top:26px;padding:22px 26px;background:#072d2b;color:#e6f0ea;border-left:6px solid #e0a64f;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.85fr);gap:18px 36px;align-items:center;min-height:108px}
.ue-chain__read-main{display:grid;gap:6px}
.ue-chain__read .ue-kicker{color:#94d6ae}.ue-chain__read p{font-size:17px;max-width:92ch}
.ue-chain__impact{padding:14px 18px;background:#0a3d3a;border:1px solid #ffffff26;display:grid;gap:6px}
.ue-chain__impact p{font:600 14px/1.5 var(--gft-font-mono)!important;color:#fff}
.ue-source{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,36px);padding-top:36px;margin-top:36px;border-top:1px solid #7f988a}
.ue-source__card{padding:clamp(22px,2.6vw,34px);background:#fff;border:1px solid #8fa89a;border-top:5px solid #0e4d4a;box-shadow:0 16px 36px #072d2b12;display:grid;align-content:start;gap:14px}
.ue-source__card--dark{border-top-color:#c98a2b}
.ue-source__card h4{font-size:clamp(1.3rem,1.8vw,1.65rem);line-height:1.15;letter-spacing:-.035em;margin:0;color:#072d2b}
.ue-source__card p{font-size:16px;line-height:1.65;color:#25302e}
.ue-prov--light{border-top:1px solid #b9c9be;padding-top:14px}
.ue-prov--light .ue-prov__legend{color:#25302e;font-size:13px!important}
.ue-prov-drawer{border-top:1px solid #b9c9be;margin-top:4px}
.ue-prov-drawer summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;font:650 15px var(--gft-font-display);color:#0e4d4a;cursor:pointer}
@media(max-width:1100px){.ue-chain__links{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 0}.ue-chain__links::before,.ue-chain__links li::after{display:none}.ue-source,.ue-chain__read,.ue-limits__head{grid-template-columns:1fr}}

/* 07 Limits: dark interlude, one sticky chart in four exclusive states (fade out, then fade in) */
.ue-limits{background:var(--ue-night);padding-bottom:0}
.ue-limits .ue-steps{grid-template-columns:minmax(0,.75fr) minmax(0,1.45fr)}
.ue-limits .ue-steps__track>li{min-height:42svh;padding:24px 20px 24px 26px;margin-bottom:18px;background:#0a3d3a99;border:1px solid #ffffff22;display:grid;align-content:center;gap:8px}
.ue-limits .ue-steps__track>[data-active]{background:#0a3d3a;border-color:#6bb68f;box-shadow:0 16px 36px #00000040}
.ue-limits .ue-stage{order:2;background:#0a3d3a;border:1px solid #ffffff22}
.ue-stage--dark svg{display:block;width:100%;height:auto;overflow:visible;color:#cbe0d3;font-family:var(--gft-font-mono)}
.ue-stage--dark svg text{fill:currentColor;font-size:19px}
.ue-stage--dark .ue-tag-svg{font-size:18px}
.ue-stage--dark svg text.ue-fig-svg{font:700 22px var(--gft-font-mono);fill:#fff;letter-spacing:-.02em}
.ue-stage--dark svg text.ue-rank-l{font:650 21px var(--gft-font-display);fill:#e6f0ea}
.ue-stage--dark svg text.ue-t__n{font:600 17px var(--gft-font-mono);fill:#cfe2d8}
.ue-stage--dark svg text.ue-t__ax{font:600 16px var(--gft-font-mono);fill:#a9c6b8}
.ue-steps--lim:not([data-mw-ready]) [data-mw-show]:not([data-mw-show="0"]):not([data-mw-show="0,1,2"]){display:none}
:root[data-m-go] .mw-steps.ue-steps--lim[data-mw-ready] [data-mw-show]:not([data-shown]){translate:none;transition:opacity 140ms linear,visibility 0s linear 140ms}
:root[data-m-go] .mw-steps.ue-steps--lim[data-mw-ready] [data-mw-show][data-shown]{translate:none;transition:opacity 320ms linear 160ms,visibility 0s}
:root[data-m-go] .ue-wrap:not([data-m-in]) .ue-steps--lim .ue-stage{clip-path:inset(0 100% 0 0)}
:root[data-m-go] .ue-wrap[data-m-in] .ue-steps--lim .ue-stage{animation-name:ue-wipe-x;animation-duration:900ms;animation-delay:200ms;animation-timing-function:var(--m-freight);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
.ue-limits .ue-fold{border-color:#ffffff30}.ue-limits .ue-fold p{color:#d6e6dd}
.ue-limits .mw-steps__track>*::after{background:#e0a64f}

/* 08 Related: a map. This page's breakeven field is the node; three threads lead to the papers that carry the measurement on. */
.ue-rel{background:var(--gft-paper);padding-bottom:0}
.ue-rel__head{position:relative;z-index:3}
.ue-rel__grid{--th:#0e4d4a;display:grid;grid-template-columns:minmax(0,1.05fr) clamp(72px,9vw,150px) minmax(320px,1fr);grid-template-rows:repeat(3,1fr);margin-top:56px;position:relative;align-items:stretch}
.ue-rel__node{grid-column:1;grid-row:1/4;margin:0;background:#0e4d4a;color:#fff;padding:clamp(20px,2.4vw,36px);display:grid;align-content:space-between;gap:18px;min-width:0;position:relative;z-index:1}
.ue-rel__node .ue-kicker{color:#94d6ae}
.ue-rc__mini{min-width:0}.ue-rc__mini svg{display:block;width:100%;height:auto}
.ue-rel__keys{list-style:none;margin:0;padding:0;display:grid;gap:0}
.ue-rel__keys li{padding:12px 0 12px 14px;border-left:3px solid #ffffff33;font-size:15px;line-height:1.5;color:#c7ddd1;transition:border-color 300ms,color 300ms,background 300ms}
.ue-rel__keys b{font-family:var(--gft-font-mono);color:#94d6ae;margin-right:6px}
.ue-rel__node figcaption{font:12px/1.5 var(--gft-font-mono);color:#b7d2c4;letter-spacing:.04em}
.ue-rel__threads{grid-column:2;grid-row:1/4;width:100%;height:100%;color:var(--th);overflow:visible;pointer-events:none;align-self:stretch}
.ue-th{stroke-width:1.5;stroke-opacity:.3;transition:stroke-opacity 300ms,stroke-width 300ms}.ue-th__n{opacity:.6}
.ue-rc{grid-column:3;display:grid;align-content:center;gap:10px;padding:clamp(20px,2.4vw,32px);min-width:0;color:#25302e;text-decoration:none;border:1px solid #9db3a6;background:#fff;position:relative;transition:box-shadow 300ms,border-color 300ms,background 300ms,translate 400ms var(--m-out)}
.ue-rc--a{grid-row:1;z-index:2}.ue-rc--b{grid-row:2;z-index:2}.ue-rc--c{grid-row:3;background:#d3e3d9;border-style:dashed;z-index:2}
.ue-rc .ue-kicker{color:var(--ue-muted)}.ue-rc h3{font-size:clamp(1.25rem,1.7vw,1.6rem);max-width:24ch}.ue-rc p{font-size:15px;line-height:1.55}
.ue-rc__read{font:14px/1.6 var(--gft-font-mono)!important;padding-top:10px;border-top:1px solid #9db3a6}.ue-rc__read output{color:#0e4d4a;font-weight:700}
.ue-rc__go{font:650 14px var(--gft-font-display);border-bottom:2px solid currentColor;justify-self:start;padding-bottom:2px}
.ue-rc--c .ue-pending{background:#0e4d4a;color:#fff;justify-self:start;margin-top:4px}
/* lit state: WP15 by default, otherwise the card pointed at */
.ue-rel__grid:not(:has(.ue-rc--b:is(:hover,:focus-within),.ue-rc--c:hover)) :is(.ue-th--a){stroke-opacity:1;stroke-width:3}
.ue-rel__grid:has(.ue-rc--b:is(:hover,:focus-within)) .ue-th--b,.ue-rel__grid:has(.ue-rc--c:hover) .ue-th--c{stroke-opacity:1;stroke-width:3}
.ue-rel__grid:not(:has(.ue-rc--b:is(:hover,:focus-within),.ue-rc--c:hover)) .ue-rc--a,.ue-rc--b:is(:hover,:focus-within),.ue-rc--c:hover{border-color:#0e4d4a;box-shadow:0 18px 44px #072d2b30;translate:-14px 0}
.ue-rel__grid:not(:has(.ue-rc--b:is(:hover,:focus-within),.ue-rc--c:hover)) .ue-rel__k--a,.ue-rel__grid:has(.ue-rc--b:is(:hover,:focus-within)) .ue-rel__k--b,.ue-rel__grid:has(.ue-rc--c:hover) .ue-rel__k--c{border-left-color:#e0a64f;color:#fff;background:#ffffff14}
.ue-rel__grid:has(.ue-rc--a:hover) .ue-th--a{stroke-opacity:1;stroke-width:3}

/* 09 Closing: a final instrument in the page's own idiom */
.ue-close{padding-block:clamp(72px,9vw,140px) 0;background:radial-gradient(ellipse at 80% 40%,#0e4d4a,#072d2b 70%)}
.ue-foot{margin-top:clamp(28px,3.6vw,52px);height:clamp(108px,11vw,148px);color:#6bb68f;position:relative;width:100%}
.ue-foot>div{height:100%}.ue-foot__svg{display:block;width:100%;height:100%;overflow:visible}
.ue-close__shell{display:grid;gap:clamp(28px,3.6vw,44px)}
.ue-close__sentence{display:grid;gap:8px;padding:18px 24px;background:#0a3d3a;border:1px solid #ffffff26;border-left:5px solid #6bb68f}
.ue-close__sentence .ue-kicker{color:#94d6ae}
.ue-close__rewrite{font:650 clamp(1.15rem,1.8vw,1.55rem)/1.35 var(--gft-font-display)!important;color:#fff;max-width:74ch}
.ue-close__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,88px);align-items:start}
.ue-close h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.05;letter-spacing:-.05em;max-width:14ch}
.ue-close__copy{display:grid;gap:20px;align-content:start}
.ue-close__lede{font-size:17px!important;color:#d6e6dd;max-width:48ch}
.ue-cover{display:grid;gap:10px;padding:18px 20px;background:#0a3d3a;border:1px solid #ffffff26}
.ue-cover__top{display:flex;justify-content:space-between;align-items:flex-end;gap:10px 18px;flex-wrap:wrap}
.ue-cover label{display:grid;gap:2px;font:700 18px var(--gft-font-display)}.ue-cover small{font:12px var(--gft-font-mono);color:#a9c6b8;display:block}
.ue-cover__chips{display:flex;gap:6px;flex-wrap:wrap}
.ue-sec .ue-cover__chips button{min-height:38px;padding:6px 12px;font:600 12px var(--gft-font-mono);border-color:#ffffff44;color:#d6e6dd;background:#ffffff0d}
.ue-sec .ue-cover__chips button[aria-pressed=true],.ue-sec .ue-cover__chips button:hover{background:#6bb68f;color:#072d2b;border-color:#6bb68f}
.ue-cover__row{display:grid;grid-template-columns:minmax(0,1fr) 5.5ch;gap:16px;align-items:center}.ue-cover__row output{font:700 26px var(--gft-font-mono);color:#94d6ae;text-align:right}
.ue-cover input[type=range]{--ue-fill:#94d6ae}
.ue-cover__ticks{position:relative;height:40px;container-type:inline-size;font:12px var(--gft-font-mono);color:#a9c6b8;display:flex;justify-content:space-between;padding-inline:0}
.ue-cover__be{position:absolute;left:0;top:4px;translate:calc(var(--p) * 100cqw) 0;color:#e8b86a;white-space:nowrap;transition:translate 500ms var(--m-out);transform:translateX(-50%)}
.ue-cover__be::before{content:'';display:block;width:2px;height:12px;background:#e8b86a;margin:0 auto 3px}
.ue-verdict{display:grid;gap:6px;padding:20px 24px;background:#ffffff10;border-left:6px solid #6bb68f}
.ue-verdict output{font:700 clamp(1.5rem,2.6vw,2.4rem) var(--gft-font-mono);letter-spacing:-.04em}
.ue-verdict p{font-size:15px;color:#d6e6dd}
.ue-verdict[data-v=below]{border-left-color:#d89a45}.ue-verdict[data-v=below] output{color:#e8b86a}.ue-verdict[data-v=covers] output{color:#94d6ae}
.ue-callout{padding:18px 22px;border-left:3px solid #e0a64f;background:#ffffff0d}.ue-callout h3{font-size:1.2rem;margin-bottom:8px}.ue-callout p{font-size:15px;color:#d6e6dd}
.ue-close__links{display:flex;gap:12px 28px;flex-wrap:wrap}.ue-close__links a{color:#fff;font-weight:650;font-size:15px;min-height:44px;display:inline-flex;align-items:center;border-bottom:1px solid #ffffff80}
.ue-close__map{margin:0;background:#0a3d3a;padding:clamp(16px,2.2vw,30px);border:1px solid #ffffff26;position:sticky;top:max(20px,5svh)}
.ue-close__map-head{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid #ffffff26}
.ue-close__map-head .ue-kicker{color:#94d6ae}
.ue-close__map-head span:last-child{font:700 13px var(--gft-font-mono);color:#e8b86a;letter-spacing:.05em}
.ue-close__map figcaption{font-size:14px;line-height:1.6;color:#c7ddd1;margin-top:14px}
.ue-close__bar{position:relative;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px 32px;padding:20px 26px;background:#072d2b;border:1px solid #6bb68f;border-left:6px solid #e0a64f;box-shadow:0 20px 44px #00000050}
.ue-close__bar-state{display:flex;align-items:center;gap:16px;min-width:0}
.ue-close__bar-dot{width:12px;height:12px;border-radius:50%;background:#6bb68f;box-shadow:0 0 0 4px #6bb68f33;flex-shrink:0}
.ue-close__bar[data-v=below] .ue-close__bar-dot{background:#e8b86a;box-shadow:0 0 0 4px #e8b86a33}
.ue-close__bar-state>div{display:grid;gap:4px;min-width:0}
.ue-close__bar-state .ue-kicker{color:#94d6ae}
.ue-close__bar-state strong{font:700 clamp(1.05rem,1.45vw,1.35rem)/1.3 var(--gft-font-mono);color:#fff;overflow-wrap:anywhere}

/* Splash small print on this route: nothing under 12 px */
[data-splash=unit-economics] :is(.gft-splash__data span,.gft-splash__signal,.gft-splash__position,.gft-splash__caption,.gft-splash__cue,.gft-eyebrow){font-size:12px!important;letter-spacing:.06em;color:#e6f0ea}
/* Splash structure: the contribution field, operable from the first screen */
[data-splash=unit-economics] .gft-splash__structure{inset:0!important;height:auto!important;overflow:clip}
[data-splash=unit-economics] .gft-splash__structure::after{display:none}
.ue-hero__loom{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.9}
.ue-hero{position:absolute;right:clamp(24px,4vw,64px);top:clamp(28px,6svh,72px);bottom:100px;width:min(45vw,780px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;pointer-events:auto;color:#cbe0d3;z-index:2}
.ue-hero__label{display:grid;gap:8px;font:600 12px var(--gft-font-mono);letter-spacing:.08em}
.ue-hero__label strong{font:600 clamp(1.6rem,2.4vw,2.2rem) var(--gft-font-mono);color:#94d6ae;letter-spacing:-.03em}
.ue-hero__label small{font:12px var(--gft-font-mono);color:#cbe0d3;margin-left:8px;letter-spacing:.04em}
.ue-hero__map{min-height:0;display:flex;align-items:center}
.ue-hero .ue-surface{width:100%;height:100%;max-height:100%}
.ue-hero__read{font:14px/1.5 var(--gft-font-mono)!important;color:#fff;min-height:4.6em;overflow-wrap:anywhere}
.ue-hero .ue-cells{will-change:auto}
@media(max-width:1000px){
 .ue-hero{inset:auto 28px 96px 28px;width:auto;height:380px}
 [data-splash=unit-economics] .gft-splash__content{padding-bottom:470px}
}
@media(max-width:700px){
 .ue-hero{inset:auto 20px 88px 20px;height:330px;gap:8px}
 [data-splash=unit-economics] .gft-splash__content{padding-bottom:380px}
 .ue-hero__label small{display:inline}
}

/* Tablet and phone */
@media(max-width:1180px){
 .ue-steps,.ue-limits .ue-steps{grid-template-columns:1fr;margin-top:32px}
 .ue-steps .ue-stage,.ue-limits .ue-stage{top:0;z-index:3;order:0;padding:14px 16px;max-height:62svh;overflow:auto}
 .ue-steps__track>li,.ue-method .ue-steps__track>li,.ue-limits .ue-steps__track>li{min-height:0;padding-block:24px}.ue-steps__track p{font-size:17px}
 .ue-stage__bar{margin-bottom:10px}
 .ue-lad{padding:8px 0 8px 10px;gap:0 10px}.ue-lad__l{font-size:14px}.ue-lad b{font-size:16px}
 .ue-asm__band{margin-right:-28px}
}
@media(max-width:1280px){
 .ue-asm__layout{grid-template-columns:1fr}.ue-asm__stage{position:static}.ue-asm__wedge{max-width:560px}
}
@media(max-width:1100px){
 .ue-workspace{grid-template-columns:1fr}
 .ue-kpi{grid-template-columns:1fr 1fr 1fr}.ue-kpi__main{grid-column:1/-1;border-bottom:1px solid #ffffff1f}.ue-kpi>div:nth-child(2){border-left:0}
 .ue-bridge__grid,.ue-close__grid{grid-template-columns:1fr}
 .ue-close__map{position:static}
 .ue-asm__row{grid-template-columns:1fr 1fr;grid-template-areas:"name def" "range range" "basis basis" "try try";gap:12px 24px}
 .ue-rel__grid{grid-template-columns:1fr;grid-template-rows:none;gap:16px}.ue-rel__threads{display:none}.ue-rel__node,.ue-rc,.ue-rc--a,.ue-rc--b,.ue-rc--c{grid-column:1;grid-row:auto}
}
@media(max-width:900px){
 .ue-stage--dark svg{width:640px;max-width:none}.ue-stage--dark svg text{font-size:19px}.ue-stage--dark .ue-tag-svg{font-size:18px}
 .ue-ab{grid-template-columns:1fr}.ue-diff{padding:16px 12px;margin:12px 0}.ue-diff__ribbon{display:none}
 .ue-reg__body{margin-top:calc(-1 * clamp(80px,12vw,110px))}
 .ue-reg__stage{margin-bottom:16px;padding-bottom:18px}
}
@media(max-width:700px){
 .ue-kpi{grid-template-columns:1fr 1fr}.ue-kpi>div{padding:18px 16px}.ue-kpi>div:nth-child(2){border-left:0}.ue-kpi>div:nth-child(4){border-left:0}
 .ue-presets{min-width:100%;grid-template-columns:1fr}.ue-presets::before{inset:0 auto auto 0;width:100%;height:calc(100% / var(--n));transform:translateY(calc(var(--i) * 100%))}
 .ue-surface text{font-size:25px}.ue-surface .ue-ax,.ue-tag-svg{font-size:24px}.ue-asm__wedge .ue-surface text{font-size:17px}.ue-asm__wedge .ue-surface .ue-ax{font-size:17px}
 .ue-map{padding:12px}
 .ue-reveal{overflow-x:auto}.ue-bridge svg{min-width:640px}.ue-sens svg{min-width:720px}
 .ue-bar__v{font-size:26px}.ue-bar__n{font-size:22px}.ue-bar__p{font-size:19px}.ue-t__l{font-size:24px}.ue-t__n{font-size:20px}.ue-t__ax{font-size:19px}
 .ue-run{grid-template-columns:1fr 1fr}.ue-run li{border-top:1px solid #8fa89a}
 .ue-source{grid-template-columns:1fr}.ue-asm__row{grid-template-columns:1fr;grid-template-areas:"name" "def" "range" "basis" "try";padding:20px 8px}
 .ue-asm__band{margin-right:-20px;grid-template-columns:1fr}
 .ue-sens__tools .ue-seg,.ue-asm__bar .ue-seg{min-width:100%}
 .ue-seg span{font-size:13px;padding:0 6px}
 .ue-map-legend{font-size:12px}
 .ue-card__tag b{font-size:28px}
 .ue-stage--dark svg text.ue-t__n{font-size:19px}.ue-stage--dark svg text.ue-t__ax{font-size:19px}.ue-stage--dark svg text.ue-fig-svg{font-size:25px}.ue-stage--dark svg text.ue-rank-l{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.ue-sec *{scroll-behavior:auto}}

/* Method, redone: a full-height sticky stage that bleeds to the left edge. Each step adds a column to a waterfall under the live figures. */
.ue-method{background:linear-gradient(180deg,#cfe0d5,#d3e3d9 18%,#d3e3d9)}
@media(min-width:1181px){
 .ue-method .ue-steps{grid-template-columns:minmax(0,1.55fr) minmax(0,.8fr);gap:clamp(28px,4vw,72px)}
 .ue-method .ue-steps .ue-stage{margin-left:calc(-1 * max(48px,(100vw - 1360px) / 2));padding-left:calc(max(48px,(100vw - 1360px) / 2) + clamp(20px,2.4vw,34px));min-height:min(80svh,720px);top:max(16px,4svh)}
}
.ue-method .ue-stage{display:flex;flex-direction:column;background-color:#0a3d3a;background-image:repeating-linear-gradient(90deg,#ffffff0b 0 1px,transparent 1px 34px),repeating-linear-gradient(0deg,#ffffff07 0 1px,transparent 1px 34px)}
.ue-method .ue-panes{flex:0 0 auto}
.ue-wf{flex:1 1 auto;display:flex;flex-direction:column;margin-top:22px;padding-top:16px;border-top:1px solid #ffffff2a;min-height:210px}
.ue-wf__cap{font:600 12px/1.5 var(--gft-font-mono)!important;letter-spacing:.09em;color:#94d6ae}
.ue-wf__plot{flex:1 1 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1.6vw,22px);margin-top:34px;margin-bottom:46px;min-height:130px;position:relative}
.ue-wf__plot::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:#ffffff66}
.ue-wf__col{position:relative}
/* Pending bars stay subdued; their labels remain readable at every reading step. */
.ue-wf__col i{position:absolute;left:0;right:0;bottom:calc(var(--b,0) * 100%);height:calc(var(--h,0) * 100%);min-height:2px;transform-origin:50% 100%;background:var(--c,#6bb68f);opacity:.22;transition:opacity 400ms linear 120ms}
.ue-wf__col b{position:absolute;left:-4px;right:-4px;bottom:calc((var(--b,0) + var(--h,0)) * 100%);padding-bottom:6px;text-align:center;font:700 clamp(12px,1.2vw,15px)/1.2 var(--gft-font-mono);color:#fff;white-space:nowrap}
.ue-wf__col span{position:absolute;left:-6px;right:-6px;top:calc(100% + 10px);text-align:center;font:12px/1.35 var(--gft-font-mono);color:#d4e5db}
.ue-wf__col[data-c=rev]{--b:0;--h:var(--hr);--c:#6bb68f}
.ue-wf__col[data-c=var]{--b:calc(1 - var(--hv));--h:var(--hv);--c:#b87932}
.ue-wf__col[data-c=pool]{--b:0;--h:var(--hp);--c:#94d6ae}
.ue-wf__col[data-c=fix]{--b:var(--bf);--h:var(--hf);--c:#e0a64f}
.ue-wf__col[data-c=res]{--b:0;--h:var(--hz);--c:#94d6ae}
.ue-wf[data-neg=true] .ue-wf__col[data-c=res]{--c:#d89a45}
.ue-wf__col[data-c=res] b{bottom:calc(var(--hz) * 100%)}
.ue-steps:is([data-step="1"],[data-step="2"],[data-step="3"]) .ue-wf__col:nth-child(-n+3) i,
.ue-steps:is([data-step="2"],[data-step="3"]) .ue-wf__col:nth-child(4) i,
.ue-steps[data-step="3"] .ue-wf__col:nth-child(5) i{opacity:1;transition:opacity 300ms linear 160ms}
.ue-wrap[data-m-in] .ue-steps:is([data-step="1"],[data-step="2"],[data-step="3"]) .ue-wf__col:nth-child(-n+3) i,
.ue-wrap[data-m-in] .ue-steps:is([data-step="2"],[data-step="3"]) .ue-wf__col:nth-child(4) i,
.ue-wrap[data-m-in] .ue-steps[data-step="3"] .ue-wf__col:nth-child(5) i{animation-name:ue-bar-grow;animation-duration:700ms;animation-delay:420ms;animation-timing-function:var(--m-out);animation-fill-mode:backwards;animation-iteration-count:1;animation-direction:normal}
@media(max-width:1180px){
 .ue-method .ue-steps .ue-stage{max-height:none;overflow:clip}
 .ue-wf{min-height:150px;margin-top:12px;padding-top:10px}.ue-wf__plot{min-height:84px;margin-top:26px;margin-bottom:40px}
}
@media(max-width:700px){.ue-wf__col span{font-size:0;line-height:1.25}.ue-wf__col span::before{content:attr(data-s);font-size:12px}.ue-wf__plot{gap:6px}.ue-wf__col b{font-size:12px;left:-6px;right:-6px}}

/* Seams: full-bleed scroll-linked warp-and-breakeven curtains replace generic dotted seams */
.ue-curtain{position:relative;width:100%;height:clamp(100px,10.5vw,144px);margin-top:clamp(48px,6vw,88px);overflow:hidden}
.ue-curtain--to-dark{background:linear-gradient(180deg,var(--gft-paper) 0%,#cfdcd3 36%,#0e4d4a 74%,#072d2b 100%)}
.ue-curtain--to-light{background:linear-gradient(180deg,#072d2b 0%,#0e4d4a 36%,#cfdcd3 74%,var(--gft-paper) 100%)}
.ue-curtain__warp{display:block;width:100%;height:100%}
.ue-curtain__carry{position:absolute;right:max(20px,calc((100vw - 1360px) / 2 + 48px));bottom:14px;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:8px 16px;background:#072d2b;border:1px solid #6bb68f88;color:#e6f0ea;font:600 12px/1.3 var(--gft-font-mono);letter-spacing:.06em;box-shadow:0 10px 24px #00000038}
.ue-curtain--to-light .ue-curtain__carry{background:#fff;border-color:#0e4d4a;color:#072d2b}
.ue-curtain__be{color:#e8b86a}
.ue-curtain--to-light .ue-curtain__be{color:#8a4a0c}
.ue-curtain__dot{color:#94d6ae}
.ue-curtain--to-light .ue-curtain__dot{color:#0e4d4a}
@media(max-width:700px){.ue-curtain__carry{left:20px;right:20px;justify-content:space-between}}

/* Closing: the order-book end state runs into the sign-off line */
.ue-foot{margin-top:clamp(24px,3.2vw,48px);height:clamp(108px,11vw,148px)}
.ue-foot__svg{transform-origin:50% 100%;transform:scaleY(calc(.45 + var(--cv,1) * .55));transition:transform 700ms var(--m-out)}
.ue-foot{color:#6bb68f}
.ue-close{--cv:1}
