article.art-body{--good: var(--accent);--watch: #ffaa44;--warn: #ffaa44;--alert: var(--accent-3)}.nav-links a.current{color:var(--ink)}.nav-links a.current:after{content:" ●";color:var(--accent)}.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:100;background:transparent;pointer-events:none}.progress .fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-2));width:0%;transition:width .08s linear;box-shadow:0 0 8px var(--accent)}.art-head{padding:4rem 1.5rem 3rem;border-bottom:1px solid var(--rule);background:radial-gradient(circle at 10% 0%,rgba(198,255,61,.07),transparent 50%),radial-gradient(circle at 90% 100%,rgba(91,140,255,.05),transparent 50%)}.art-crumb{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-dim);text-transform:uppercase;letter-spacing:.1em;margin-bottom:2.5rem;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.art-crumb a{color:var(--ink-dim);transition:color .15s}.art-crumb a:hover{color:var(--ink)}.art-crumb .sep{color:var(--ink-mute)}.art-crumb .here{color:var(--accent-3)}.art-crumb .here:before{content:"● "}.meta-row{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2rem}.meta-row .tx{color:var(--accent-3)}.meta-row .cat{padding:.2rem .55rem;background:var(--bg-2);border:1px solid var(--rule);color:var(--accent)}.art-title{font-family:var(--font-display);font-weight:800;font-size:clamp(2.1rem,5.2vw,4rem);letter-spacing:-.04em;line-height:1.02;color:var(--ink);margin-bottom:1.5rem;max-width:22ch}.art-title .ax{color:var(--accent);font-style:italic;font-weight:700}.art-title .ax2{color:var(--accent-2);font-style:italic;font-weight:700}.art-title .ax3{color:var(--accent-3);font-style:italic;font-weight:700}.standfirst{font-family:var(--font-body);font-size:clamp(1rem,1.4vw,1.15rem);color:var(--ink-dim);max-width:62ch;line-height:1.6;margin-bottom:2.5rem}.byline{display:flex;align-items:center;gap:.85rem;font-family:var(--font-mono);font-size:11px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.06em}.byline .av{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#000;font-weight:700;font-size:11px;letter-spacing:0;text-transform:none}.byline .av.b{background:var(--accent-2);color:#fff}.byline .av.c{background:var(--accent-3);color:#000}.byline .who{color:var(--ink);font-size:11.5px}.byline .what{color:var(--ink-mute)}.art-wrap{max-width:1280px;margin:0 auto;padding:4rem 1.5rem 5rem;display:grid;grid-template-columns:200px minmax(0,1fr) 280px;gap:3.5rem;align-items:start}aside.toc{position:sticky;top:5rem;align-self:start;font-family:var(--font-mono);font-size:11px;color:var(--ink-dim)}.toc-label{color:var(--ink-mute);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;font-size:10.5px}aside.toc ol{list-style:none;padding:0;margin:0;counter-reset:toc}aside.toc li{counter-increment:toc;margin-bottom:.55rem}aside.toc li:before{content:counter(toc,decimal-leading-zero) " · ";color:var(--ink-mute)}aside.toc a{color:var(--ink-dim);transition:color .15s;text-decoration:none;line-height:1.4;font-size:11px}aside.toc a:hover{color:var(--ink)}aside.toc a.active{color:var(--accent)}aside.toc a.active:after{content:" ←"}article.art-body{min-width:0}.lead{font-family:var(--font-body);font-size:clamp(1.05rem,1.3vw,1.18rem);color:var(--ink);line-height:1.65;margin-bottom:2rem}article.art-body p{font-family:var(--font-body);font-size:16.5px;color:var(--ink-dim);line-height:1.75;margin-bottom:1.4rem;max-width:70ch}article.art-body p strong{color:var(--ink);font-weight:600}article.art-body p em{color:var(--ink);font-style:italic}article.art-body p a{color:var(--accent-2);text-decoration:underline;text-decoration-color:#5b8cff66;text-underline-offset:3px}article.art-body p a:hover{text-decoration-color:var(--accent-2)}article.art-body code{font-family:var(--font-mono);font-size:13px;background:var(--bg-2);border:1px solid var(--rule);padding:.1rem .4rem;color:var(--accent)}article.art-body h2{font-family:var(--font-display);font-weight:800;font-size:clamp(1.4rem,2.3vw,1.9rem);letter-spacing:-.035em;line-height:1.15;color:var(--ink);margin:3.5rem 0 1.25rem;scroll-margin-top:5rem;border-top:1px solid var(--rule);padding-top:2.5rem}article.art-body h2:first-of-type{border-top:0;padding-top:0;margin-top:0}.callout{margin:2rem 0;padding:1.4rem 1.5rem;background:var(--bg-2);border:1px solid var(--rule);border-left:3px solid var(--accent);font-family:var(--font-body);font-size:14.5px;color:var(--ink-dim);line-height:1.65}.callout strong{color:var(--ink);font-weight:600}.callout-tag{display:block;font-family:var(--font-mono);font-size:10.5px;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:.55rem}.pull{margin:2.5rem 0;padding:1.75rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-family:var(--font-display);font-weight:600;font-size:clamp(1.15rem,1.6vw,1.4rem);color:var(--ink);line-height:1.35;letter-spacing:-.02em;max-width:38ch}.pull .ax{color:var(--accent);font-style:italic}.pull .ax2{color:var(--accent-2);font-style:italic}.pull .ax3{color:var(--accent-3);font-style:italic}.ledger-summary{margin:2.25rem 0;border:1px solid var(--rule-strong);background:var(--bg-2)}.ls-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);background:var(--bg-3);font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid var(--rule)}.ls-head>div{padding:.6rem 1rem;border-right:1px solid var(--rule)}.ls-head>div:last-child{border-right:0}.ls-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);border-bottom:1px solid var(--rule)}.ls-row:last-child{border-bottom:0}.ls-cell{padding:.9rem 1rem;border-right:1px solid var(--rule);font-family:var(--font-mono)}.ls-cell:last-child{border-right:0}.ls-cat{font-size:13px;color:var(--ink);letter-spacing:.02em;margin-bottom:.2rem}.ls-pct{font-family:var(--font-display);font-weight:800;font-size:1.5rem;line-height:1;margin-bottom:.2rem}.ls-pct.normal{color:var(--ink-dim);font-size:1.2rem}.ls-pct.watch{color:var(--watch)}.ls-pct.alert{color:var(--alert)}.ls-sub{font-size:10.5px;color:var(--ink-mute);letter-spacing:.04em}.trace-block{margin:2rem 0;border:1px solid var(--rule);background:#0a0d08;overflow:hidden}.tb-bar{padding:.55rem 1rem;background:#11150c;display:flex;align-items:center;gap:.4rem;border-bottom:1px solid #1a2010}.tb-dot{width:9px;height:9px;border-radius:50%}.tb-dot.r{background:#e05a5a}.tb-dot.a{background:#e0a85a}.tb-dot.g{background:#5ec47a}.tb-fname{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;color:#4a6038;letter-spacing:.06em}.trace-block pre{padding:1.25rem;overflow-x:auto;font-family:var(--font-mono);font-size:12.5px;line-height:1.7;color:#8a9880;margin:0}.trace-block .ck{color:#8c8}.trace-block .cf{color:#ada}.trace-block .cs{color:#8a6}.trace-block .cc{color:#506b40;font-style:italic}.trace-block .cn1{color:#cd8}.trace-block .cy{color:#aca}.waterfall{margin:2rem 0;border:1px solid var(--rule);background:var(--bg-2)}.wf-header{padding:.75rem 1.25rem;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.wf-title,.wf-note{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.1em}.wf-body{padding:1.5rem 1.25rem}.wf-body svg{display:block;width:100%;height:auto}.cost-table-wrap{margin:2rem 0;overflow-x:auto}.cost-table{width:100%;min-width:600px;border-collapse:collapse;font-family:var(--font-mono);font-size:12px;background:var(--bg-2);border:1px solid var(--rule)}.cost-table thead th{padding:.55rem .85rem;text-align:right;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);font-weight:500;border-bottom:1px solid var(--rule-strong);background:var(--bg-3)}.cost-table thead th:first-child{text-align:left}.cost-table td{padding:.7rem .85rem;border-bottom:1px solid var(--rule);text-align:right;color:var(--ink-dim);line-height:1.4}.cost-table td:first-child{text-align:left;color:var(--ink)}.cost-table tr:last-child td{border-bottom:0}.cost-table tr.outlier-row td{background:#ff5bb10f}.cost-table tr.outlier-row td:first-child{color:var(--alert)}.pct-bar-wrap{display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.pct-bar-wrap.alert{color:var(--alert)}.pct-bar-wrap.watch{color:var(--watch)}.pct-bar-wrap.good{color:var(--accent)}.pct-bar{width:60px;height:6px;background:var(--rule);overflow:hidden;display:inline-block}.pct-fill{display:block;height:100%;background:var(--ink-dim)}.pct-fill.alert{background:var(--alert)}.pct-fill.watch{background:var(--watch)}.pct-fill.good{background:var(--accent)}.impact-strip{margin:2rem 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--rule);background:var(--bg-2)}.is-cell{padding:1.4rem 1.25rem;border-right:1px solid var(--rule)}.is-cell:last-child{border-right:0}.is-val{font-family:var(--font-display);font-weight:800;font-size:clamp(1.8rem,2.8vw,2.4rem);color:var(--ink);line-height:1;letter-spacing:-.03em;margin-bottom:.4rem}.is-val.alert{color:var(--alert)}.is-val.good{color:var(--accent)}.is-val.watch{color:var(--watch)}.is-label{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.08em;line-height:1.45}.opt-stack{margin:2rem 0;border:1px solid var(--rule);background:var(--bg-2)}.opt-row{padding:1.2rem 1.5rem;display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:1rem;align-items:start;border-bottom:1px solid var(--rule)}.opt-row:last-child{border-bottom:0}.opt-n{font-family:var(--font-display);font-weight:800;font-size:1.4rem;color:var(--accent);line-height:1;font-style:italic;padding-top:.15rem}.opt-content{min-width:0}.opt-title{font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:-.01em;color:var(--ink);margin-bottom:.4rem}.opt-body{font-family:var(--font-body);font-size:14px;color:var(--ink-dim);line-height:1.65}.opt-body code{font-family:var(--font-mono);font-size:12.5px;background:var(--bg-3);border:1px solid var(--rule);padding:.1rem .4rem;color:var(--accent)}.opt-saving{font-family:var(--font-mono);font-size:12px;color:var(--accent);white-space:nowrap;padding-top:.25rem;font-weight:600}.dash-mock{margin:2rem 0;border:1px solid var(--rule);background:#0a0d08;overflow:hidden;font-family:var(--font-mono)}.dm-bar{padding:.6rem 1rem;background:#11150c;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1a2010;font-size:10.5px;color:#4a6038;letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:.5rem}.dm-row{display:grid;grid-template-columns:200px minmax(0,1fr) 90px 80px 90px;border-bottom:1px solid #11150c;align-items:center;min-height:38px}.dm-row:last-child{border-bottom:0}.dm-row.head{background:#11150c;border-bottom:1px solid #1a2010}.dm-row.head .dm-cell{color:#4a6038;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}.dm-row.outlier{background:#ff5bb10f}.dm-cell{padding:.45rem .75rem;font-size:11.5px;letter-spacing:.02em;border-right:1px solid #161c10;overflow:hidden}.dm-cell:last-child{border-right:0}.dm-cell.dim{color:#6a8060}.dm-cell.good{color:#c6ff3d}.dm-cell.watch{color:#fa4}.dm-cell.alert{color:#ff5bb1;font-weight:600}.tok-bar{height:7px;background:#1a2010;overflow:hidden;margin-bottom:3px}.tok-fill{display:block;height:100%;background:#2a3a20}.tok-fill.good{background:#c6ff3d66}.tok-fill.watch{background:#ffaa4480}.tok-fill.alert{background:#ff5bb18c}.tok-text{font-size:10.5px}.tok-text.good{color:#7a9450}.tok-text.watch{color:#c08840}.tok-text.alert{color:#c4528a}.endmark{margin:3rem 0 1.5rem;text-align:center;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.18em}.author-block{margin-top:2rem;padding:1.5rem;background:var(--bg-2);border:1px solid var(--rule);display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;align-items:start}.av-lg{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#000;font-weight:700;font-size:16px;font-family:var(--font-body)}.av-lg.b{background:var(--accent-2);color:#fff}.av-lg.c{background:var(--accent-3);color:#000}.author-block .who{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--ink);margin-bottom:.35rem}.author-block .bio{font-family:var(--font-body);font-size:14px;color:var(--ink-dim);line-height:1.6;margin-bottom:.5rem}.author-block .bio a{color:var(--accent-2);text-decoration:underline;text-underline-offset:3px}.author-block .bio a:hover{color:var(--accent)}.author-block .what{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.06em}aside.side{display:flex;flex-direction:column;gap:1rem;position:sticky;top:5rem;align-self:start}.side-card{border:1px solid var(--rule);background:var(--bg-2)}.side-card-hd{padding:.65rem .85rem;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--rule);background:var(--bg-3)}.side-card-body{padding:.75rem .85rem}.stat{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:11px;padding:.35rem 0;color:var(--ink-dim);border-bottom:1px dashed var(--rule)}.stat:last-child{border-bottom:0}.stat .k{color:var(--ink-mute)}.stat .v{color:var(--ink)}.stat .v.ax{color:var(--accent)}.stat .v.ax2{color:var(--accent-2)}.stat .v.ax3{color:var(--accent-3)}.pills{display:flex;flex-wrap:wrap;gap:.3rem}.pill{padding:.2rem .5rem;font-family:var(--font-mono);font-size:10px;color:var(--ink-dim);background:var(--bg-3);border:1px solid var(--rule);text-transform:lowercase}.side-share{display:flex;gap:.75rem;font-family:var(--font-mono);font-size:11px}.side-share a{color:var(--accent);text-decoration:none}.side-share a:hover{color:var(--accent-2)}.related{max-width:1280px;margin:0 auto;padding:4rem 1.5rem;border-top:1px solid var(--rule)}.related-head{display:grid;grid-template-columns:1fr auto;align-items:end;gap:1rem;margin-bottom:2rem}.related-tag{font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.1em}.related-title{font-family:var(--font-display);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.035em;line-height:1.1;color:var(--ink)}.related-title .ax{color:var(--accent);font-style:italic;font-weight:700}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.rel-card{padding:1.25rem;background:var(--bg-2);border:1px solid var(--rule);display:flex;flex-direction:column;gap:.75rem;text-decoration:none;transition:border-color .15s,transform .15s}.rel-card:hover{border-color:var(--rule-strong);transform:translateY(-2px)}.rel-hd{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.08em}.rel-hd .idx{color:var(--accent-3)}.rel-hd .cat{color:var(--accent)}.rel-title{font-family:var(--font-display);font-weight:700;font-size:15px;line-height:1.3;letter-spacing:-.015em;color:var(--ink)}.rel-foot{margin-top:auto;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--ink-mute);letter-spacing:.08em}.sub{max-width:1280px;margin:0 auto;padding:4rem 1.5rem;border-top:1px solid var(--rule);background:radial-gradient(circle at 100% 0%,rgba(198,255,61,.04),transparent 50%)}.sub-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3rem;align-items:center}.sub h3{font-family:var(--font-display);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.2rem);letter-spacing:-.035em;line-height:1.05;margin-bottom:1rem;max-width:16ch}.sub h3 .ax{color:var(--accent);font-style:italic;font-weight:700}.sub p{color:var(--ink-dim);font-size:.95rem;line-height:1.55}.sub form{display:flex;border:1px solid var(--rule-strong);background:var(--bg-2)}.sub input{flex:1;background:transparent;border:0;outline:0;padding:.95rem 1.25rem;color:var(--ink);font-family:var(--font-body);font-size:14px;min-width:0}.sub input::placeholder{color:var(--ink-mute)}.sub button{background:var(--accent);color:#000;border:0;padding:0 1.5rem;font-family:var(--font-body);font-weight:600;font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:background .15s}.sub button:hover{background:var(--accent-2)}.foot-bar{padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem 1.5rem;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-mute);text-transform:uppercase;letter-spacing:.06em;border-top:1px solid var(--rule)}.foot-bar a{color:var(--ink-dim);transition:color .15s}.foot-bar a:hover{color:var(--ink)}@media(max-width:1100px){.art-wrap{grid-template-columns:minmax(0,1fr) 240px}aside.toc{display:none}article.art-body{grid-column:1}aside.side{grid-column:2}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dm-row{grid-template-columns:160px minmax(0,1fr) 80px 70px 80px}}@media(max-width:800px){.art-wrap{grid-template-columns:minmax(0,1fr);gap:2rem}aside.side{grid-column:1;position:static;flex-direction:row;flex-wrap:wrap}aside.side .side-card{flex:1;min-width:240px}article.art-body{grid-column:1}.related-grid,.related-head{grid-template-columns:minmax(0,1fr)}.sub-grid{grid-template-columns:minmax(0,1fr);gap:1.5rem}.opt-row{grid-template-columns:24px minmax(0,1fr)}.opt-saving{grid-column:1 / -1;padding-left:40px;padding-top:0}}@media(max-width:640px){.art-head{padding:2.5rem 1.25rem 2rem}.art-wrap{padding:2.5rem 1.25rem 3rem}.related,.sub{padding:2.5rem 1.25rem}.foot-bar{padding:1rem 1.5rem 1.25rem;flex-direction:column;align-items:flex-start}.ls-head,.ls-row{grid-template-columns:1fr 1fr}.ls-row>*:nth-child(3),.ls-head>*:nth-child(3){display:none}.impact-strip{grid-template-columns:minmax(0,1fr)}.is-cell{border-right:0;border-bottom:1px solid var(--rule)}.is-cell:last-child{border-bottom:0}.dm-row{grid-template-columns:1fr 1fr 80px}.dm-cell:nth-child(2),.dm-cell:nth-child(4){display:none}.trace-block pre{font-size:11px}}
