@font-face{font-family:Archivo;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/archivo-400-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/archivo-400-600-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--font-ui:"Archivo", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--font-display:var(--font-ui);--r-sm:0;--r-md:0;--r-lg:0;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-14:56px;--sp-16:64px;--density-control-height:32px;--density-row-height:30px;--panel-padding-compact:16px;--panel-padding-comfortable:20px;--shadow-soft:none}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#080c0b;--surface:#0b100f;--surface-2:#0f1413;--surface-3:#121918;--surface-raised:#1b2422;--surface-hover:#151b1a;--border:#232c2a;--border-strong:#3a4644;--border-hairline:#161d1c;--border-row:#1d2624;--border-mid:#2e3937;--ink:#edf2ef;--ink-2:#a9b5b0;--ink-3:#8a948f;--action:#e0a63c;--action-hover:#f0b94f;--action-tint:#e0a63c29;--action-border:#e0a63c66;--action-ink:#0b100f;--positive:#46b888;--positive-text:#6fd3a6;--negative:#e0705e;--negative-text:#f09383;--data-neutral:#8a948f;--connector:#4a5654;--success-tint:#46b8881f;--success-border:#46b88873;--warning:#d9a13a;--warning-tint:#d9a13a1f;--warning-border:#d9a13a73;--danger-tint:#e0705e1f;--danger-border:#e0705e73;--focus-ring:#e0a63c;--ink-disabled:#68726e;--accent-wash:#101716;--dark-bg:#0f1413;--dark-text:#edf2ef;--dark-muted:#a9b5b0;--dark-label:#8a948f}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f1efe8;--surface:#fbfaf6;--surface-2:#e8e5db;--surface-3:#fff;--surface-raised:#e0dcce;--surface-hover:#f2f0e7;--border:#c9c6ba;--border-strong:#a9a69a;--border-hairline:#efebde;--border-row:#dedacb;--border-mid:#b8b5a8;--ink:#14181a;--ink-2:#454e4b;--ink-3:#4e5854;--action:#8a5a0e;--action-hover:#6e470a;--action-tint:#8a5a0e1f;--action-border:#8a5a0e73;--action-ink:#fbfaf6;--positive:#1f6b4a;--positive-text:#1f6b4a;--negative:#a6392c;--negative-text:#a6392c;--data-neutral:#4e5854;--connector:#9a968a;--success-tint:#1f6b4a1a;--success-border:#1f6b4a73;--warning:#8c5c14;--warning-tint:#8c5c141a;--warning-border:#8c5c1473;--danger-tint:#a6392c1a;--danger-border:#a6392c73;--focus-ring:#8a5a0e;--ink-disabled:#727977;--accent-wash:#f5f3ec;--dark-bg:#14181a;--dark-text:#fbfaf6;--dark-muted:#a9b4b0;--dark-label:#7e8b86}:root{--accent:var(--action);--accent-tint:var(--action-tint);--accent-border:var(--action-border);--success:var(--positive);--danger:var(--negative);--ink-4:var(--data-neutral);--ink-body:var(--ink-2)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink-2);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:13px;line-height:1.6}h1,h2,h3,h4{color:var(--ink);font-family:var(--font-display);margin:0;font-weight:600}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{color:var(--action-hover);text-underline-offset:3px;text-decoration:underline}:is(.article-body,.side-tool,.pack-tool-list) :is(p,li,td,blockquote,figcaption) a:not(.btn):not(.dark-btn):not(.next-read){text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}:where(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.micro{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500;line-height:1.4}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.absent{color:var(--data-neutral)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.positive{color:var(--positive-text)}.negative{color:var(--negative-text)}.btn{justify-content:center;align-items:center;gap:var(--sp-2);border-radius:var(--r-md);min-height:var(--density-control-height);font-family:var(--font-ui);cursor:pointer;border:1px solid #0000;padding:0 14px;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn-primary{background:var(--action);color:var(--action-ink)}.btn-primary:hover:not(:disabled){background:var(--action-hover);color:var(--action-ink);text-decoration:none}.btn-primary:disabled{background:var(--surface-2);border-color:var(--border);color:var(--ink-disabled);cursor:not-allowed}.btn-secondary{background:var(--surface-hover);border-color:var(--border-strong);color:var(--ink)}.btn-secondary:hover:not(:disabled){background:var(--surface-raised);border-color:var(--border-mid);color:var(--ink);text-decoration:none}.btn-secondary:disabled{background:var(--surface-2);border-color:var(--border);color:var(--ink-disabled);cursor:not-allowed}.btn-quiet{font-family:var(--font-ui);color:var(--action);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600}.btn-quiet:hover:not(:disabled){color:var(--action-hover);text-underline-offset:3px;text-decoration:underline}.btn-quiet:disabled{color:var(--ink-disabled);cursor:not-allowed;text-decoration:none}.control{appearance:none;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);min-height:var(--density-control-height);font-family:var(--font-ui);color:var(--ink);width:100%;padding:6px 10px;font-size:13px;line-height:1.4}select.control{background-image:linear-gradient(45deg, transparent 50%, var(--ink-3) 50%), linear-gradient(135deg, var(--ink-3) 50%, transparent 50%);cursor:pointer;background-position:right 14px center,right 9px center;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.control:focus,.control:focus-visible{border-color:var(--action);outline:2px solid var(--focus-ring);outline-offset:2px}.control-unset{background-color:var(--surface-2);color:var(--ink-2);border-style:dashed}.control-warning{border-color:var(--warning)}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500}.field-note{color:var(--ink-2);font-size:12px;line-height:1.45}.field-note-ok{color:var(--positive-text)}.field-note-warning{color:var(--warning)}.badge{border-radius:var(--r-sm);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;border:1px solid;align-items:center;gap:6px;padding:4px 8px;font-size:10px;font-weight:500;line-height:1.2;display:inline-flex}.badge-ok{background:var(--success-tint);border-color:var(--success-border);color:var(--positive-text)}.badge-warning{background:var(--warning-tint);border-color:var(--warning-border);color:var(--warning)}.badge-gap{background:var(--danger-tint);border-color:var(--danger-border);color:var(--negative-text)}.badge-neutral{background:var(--surface-raised);border-color:var(--border-strong);color:var(--ink-2)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--panel-padding-comfortable) var(--sp-6)}.card-title{letter-spacing:-.02em;color:var(--ink);font-size:17px;font-weight:600;line-height:1.3}.note{border:1px solid var(--border);border-left:3px solid var(--ink-3);border-radius:var(--r-md);background:var(--surface);color:var(--ink-2);padding:12px 16px;font-size:13px;line-height:1.6}.note-warning{background:var(--warning-tint);border-color:var(--warning-border);border-left-color:var(--warning);color:var(--ink-body)}.note-negative{background:var(--danger-tint);border-color:var(--danger-border);border-left-color:var(--negative);color:var(--ink-body)}.note strong{color:var(--ink);font-weight:600}.brand{color:var(--ink);letter-spacing:-.01em;align-items:center;gap:9px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink);text-decoration:none}.brand-mark{align-items:flex-end;gap:2px;height:16px;display:inline-flex}.brand-mark i{background:var(--ink);width:3px;display:block}.brand-mark i:first-child{height:9px}.brand-mark i:nth-child(2){background:var(--action);height:16px}.brand-mark i:nth-child(3){height:12px}.brand-wordmark{flex-direction:column;justify-content:center;line-height:1.1;display:inline-flex}.site-header{align-items:center;gap:var(--sp-4);min-height:48px;padding:var(--sp-2) var(--sp-5);background:var(--surface-2);border-bottom:1px solid var(--border);display:flex}.site-header-rule{background:var(--border);flex:none;width:1px;height:20px}.site-header-spacer{flex:1}.witness{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--positive-text);white-space:nowrap;align-items:center;gap:6px;font-size:10px;font-weight:500;display:inline-flex}.witness:before{content:"";background:var(--positive);flex:none;width:6px;height:6px}.header-link{color:var(--ink-2);font-size:12px}.header-link:hover{color:var(--ink)}.steps{align-items:center;gap:var(--sp-3);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500;display:flex}.steps-sep{color:var(--border-mid)}.step-done{color:var(--ink-3)}.step-current{color:var(--action)}.step-back{font:inherit;letter-spacing:inherit;color:var(--action);cursor:pointer;background:0 0;border:0;padding:0}.step-back:hover{color:var(--action-hover);text-underline-offset:3px;text-decoration:underline}.dark-band{background:var(--dark-bg);color:var(--dark-text);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:52px var(--sp-14)}.dark-band a{color:var(--dark-text);text-underline-offset:3px;text-decoration:underline}.dark-band a:hover{color:var(--action)}.dark-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dark-label);font-size:10px;font-weight:500}.dark-muted{color:var(--dark-muted)}.dark-grid{gap:var(--sp-10);grid-template-columns:repeat(3,1fr);max-width:1328px;margin:0 auto;display:grid}.dark-band h2{color:var(--dark-text);letter-spacing:-.025em;font-size:24px;line-height:1.15}.dark-btn{align-items:center;gap:var(--sp-2);background:var(--action);color:var(--action-ink);border-radius:var(--r-md);min-height:var(--density-control-height);border:0;padding:0 14px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.dark-btn:hover{background:var(--action-hover);color:var(--action-ink);text-decoration:none}.site-footer{border-top:1px solid var(--border);padding:var(--sp-10) var(--sp-14) var(--sp-14);background:var(--paper)}.site-footer-inner{gap:var(--sp-10);grid-template-columns:1.4fr 1fr 1fr 1fr;max-width:1328px;margin:0 auto;display:grid}.footer-col{gap:var(--sp-2);flex-direction:column;align-items:flex-start;display:flex}.footer-col a{color:var(--ink-2);font-size:12px}.footer-col a:hover{color:var(--ink)}.footer-tagline{color:var(--ink-3);max-width:260px;font-size:12px;line-height:1.6}@media (width<=1100px){.site-header{padding:var(--sp-2) var(--sp-4)}.dark-band{padding:40px var(--sp-8)}.site-footer{padding:var(--sp-8) var(--sp-8) var(--sp-10)}}@media (width<=900px){.dark-grid{gap:var(--sp-6);grid-template-columns:1fr}.site-footer-inner{gap:var(--sp-6);grid-template-columns:1fr 1fr}}@media (width<=600px){.site-header{min-height:56px;padding:10px var(--sp-4);gap:var(--sp-3);flex-wrap:wrap}.site-header-spacer,.site-header-rule{display:none}.dark-band{padding:var(--sp-8) var(--sp-4)}.site-footer{padding:var(--sp-6) var(--sp-4) var(--sp-8)}.site-footer-inner{grid-template-columns:1fr}.btn,.dark-btn,.control{min-height:44px}.header-link,.footer-col a,.step-back,.brand{align-items:center;min-height:44px;display:inline-flex}.btn-quiet{min-height:44px}.brand{flex-shrink:0}.brand-wordmark{white-space:nowrap}}.article-layout{--figure-bleed:0px;justify-content:center;gap:var(--sp-16);max-width:1440px;padding:var(--sp-14) var(--sp-14) var(--sp-16);grid-template-columns:380px minmax(0,720px);align-items:start;margin:0 auto;display:grid}.article-layout>.article-side{grid-area:1/1}.article-layout>.article-body{grid-area:1/2}@media (width>=1440px){.article-layout{--figure-bleed:164px;justify-content:start}}.article-side{gap:var(--sp-4);flex-direction:column;display:flex;position:sticky;top:24px}.toc-title{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500}.toc{margin:var(--sp-3) 0 0;flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.toc a{color:var(--ink-2);border-left:2px solid var(--border);padding:5px 0 5px 12px;font-size:13px;line-height:1.45;display:block}.toc a:hover{color:var(--ink);border-left-color:var(--accent);text-decoration:none}.side-tool{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5)}.side-tool p{color:var(--ink-2);margin-top:8px;font-size:13px;line-height:1.6}.side-tool .btn{margin-top:var(--sp-4);width:100%}.cluster-links{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cluster-links a{color:var(--ink-2);font-size:13px}.cluster-links a:hover{color:var(--ink)}.article-body{min-width:0}.article-kicker{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500}.article-body p.article-meta{margin-top:var(--sp-3);color:var(--ink-3);font-size:13px;line-height:1.5}.article-body h1{margin-top:var(--sp-4);letter-spacing:-.032em;text-wrap:balance;font-size:48px;line-height:1.06}.article-lede{margin-top:var(--sp-5);color:var(--ink-2);font-size:20px;line-height:1.6}.article-body h2{margin-top:var(--sp-14);letter-spacing:-.024em;scroll-margin-top:var(--sp-6);font-size:30px;line-height:1.15}.article-body h3{margin-top:var(--sp-8);letter-spacing:-.01em;font-size:17px;line-height:1.3}.article-body p{margin-top:var(--sp-5);color:var(--ink-body);font-size:18px;line-height:1.75}.article-body ul,.article-body ol{margin-top:var(--sp-5);color:var(--ink-body);padding-left:22px;font-size:18px;line-height:1.75}.article-body li{margin-top:10px}.article-body li strong,.article-body p strong{color:var(--ink);font-weight:600}.article-body blockquote{margin:var(--sp-6) 0 0;padding-left:var(--sp-5);border-left:3px solid var(--accent-border);color:var(--ink-2);font-size:18px;font-style:italic;line-height:1.7}.article-body .num,.article-body code{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.92em}.figure-full{margin:var(--sp-10) 0 0;width:calc(100% + var(--figure-bleed));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-4) var(--sp-3)}.figure-head{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:0 var(--sp-2) var(--sp-4);border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;display:flex}.figure-amounts{align-items:baseline;gap:var(--sp-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums;display:flex}.figure-from{color:var(--ink-3);font-size:15px}.figure-to{color:var(--ink);font-size:22px;font-weight:500}.figure-delta{color:var(--positive);font-size:13px}.figure-full svg{width:100%;height:auto;display:block}.figure-full figcaption{padding:var(--sp-3) var(--sp-2) 0;color:var(--ink-3);font-size:13px;line-height:1.6}.article-table{width:calc(100% + var(--figure-bleed));margin-top:var(--sp-8);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.article-table table{border-collapse:collapse;width:100%;font-size:14px}.article-table th{background:var(--surface-2);border-bottom:1px solid var(--border);text-align:left;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:10px 14px;font-size:10px;font-weight:500}.article-table td{border-bottom:1px solid var(--border-hairline);color:var(--ink-body);padding:10px 14px}.article-table tr:last-child td{border-bottom:0}.article-table td.num,.article-table th.num{text-align:right;white-space:nowrap}.tool-band{width:calc(100% + var(--figure-bleed));margin-top:var(--sp-14);background:var(--dark-bg);color:var(--dark-text);border-radius:var(--r-lg);padding:var(--sp-8) var(--sp-10)}.tool-band-title{color:var(--dark-text);letter-spacing:-.022em;margin-top:12px;font-size:26px;font-weight:600;line-height:1.2}.tool-band p{color:var(--dark-muted);margin-top:12px;font-size:15px;line-height:1.7}.tool-band a{color:var(--dark-text)}.tool-band .dark-btn{margin-top:var(--sp-5)}.next-reads{background:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);width:calc(100% + var(--figure-bleed));margin-top:var(--sp-14);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.next-read{background:var(--surface);padding:var(--sp-5);text-decoration:none;display:block}.next-read:hover{background:var(--surface-3);text-decoration:none}.next-read strong{color:var(--ink);margin-top:8px;font-size:15px;display:block}.next-read span.next-note{color:var(--ink-2);margin-top:4px;font-size:13px;line-height:1.55;display:block}.notfound{max-width:640px;padding:120px var(--sp-14) var(--sp-16);text-align:center;margin:0 auto}.notfound-mark{height:96px;margin-bottom:var(--sp-8);justify-content:center;align-items:flex-end;gap:10px;display:flex}.notfound-mark i{border-radius:var(--r-sm);width:34px;display:block}.notfound-mark i:first-child{background:var(--ink);height:96px}.notfound-mark i:nth-child(2){background:var(--positive);height:44px}.notfound-mark i:nth-child(3){background:var(--negative);height:28px}.notfound-mark i:nth-child(4){background:var(--positive);height:52px}.notfound-mark i:nth-child(5){background:var(--border-strong);height:20px}.notfound h1{letter-spacing:-.03em;font-size:40px;line-height:1.08}.notfound p{margin-top:var(--sp-5);color:var(--ink-2);font-size:17px;line-height:1.7}.notfound-actions{gap:var(--sp-3);margin-top:var(--sp-8);flex-wrap:wrap;justify-content:center;display:flex}@media (width<=1100px){.article-layout{justify-content:center;gap:var(--sp-8);padding:var(--sp-8) var(--sp-8) var(--sp-14);grid-template-columns:minmax(0,720px)}.article-layout>.article-side,.article-layout>.article-body{grid-area:auto}.article-side{position:static;top:auto}.article-body h1{font-size:40px}}@media (width<=600px){.article-layout{padding:var(--sp-6) var(--sp-4) var(--sp-10)}.next-reads{grid-template-columns:1fr}.toc a{padding-top:12px;padding-bottom:12px}.cluster-links a{align-items:center;min-height:44px;display:inline-flex}.next-read{padding:var(--sp-4) var(--sp-5)}.article-body h1{letter-spacing:-.028em;font-size:32px}.article-lede{font-size:17px}.article-body h2{margin-top:var(--sp-10);font-size:24px}.article-body p,.article-body ul,.article-body ol{font-size:17px}.tool-band{padding:var(--sp-6)}.notfound{padding:var(--sp-14) var(--sp-4) var(--sp-10)}.notfound h1{font-size:28px}.notfound-mark i{width:24px}.article-table{overflow-x:auto}}
