:root,[data-theme=light]{--surface:#F6F7F5;--surface-raised:#FFFFFF;--surface-sunken:#ECEFEC;--surface-inverse:#0B1214;--line:#D9DEDB;--line-strong:#7D8A86;--ink:#0B1214;--ink-muted:#4A5653;--ink-inverse:#F2F6F5;--brand:#0A7F46;--brand-strong:#066535;--brand-soft:#DDF2E6;--brand-text:#08713E;--on-brand:#FFFFFF;--azure:#1F6AE0;--azure-strong:#1757BF;--azure-soft:#E1EBFC;--azure-text:#1A5FD0;--on-azure:#FFFFFF;--volt:#FFD400;--volt-soft:#FFF4B8;--on-volt:#1A1600;--info:#06709C;--info-soft:#DDF1FA;--success:#0E766E;--success-soft:#D6F2EE;--warning:#9A5200;--warning-soft:#FDEBD2;--danger:#C8242F;--danger-soft:#FBE2E3;--on-danger:#FFFFFF;--focus-ring:#08713E;--link:var(--azure-text);--selection:#BFE8D0;--pop:#0B1214;--chart-1:#0A8A4C;--chart-2:#1F6AE0;--chart-3:#D96A00;--chart-4:#7A4DE0;--chart-5:#A07C00;--chart-6:#C93D82;--shadow-none:none;--shadow-pop:4px 4px 0 0 #0B1214;--shadow-pop-sm:2px 2px 0 0 #0B1214;--shadow-overlay:0 0 0 1px #D9DEDB, 6px 6px 0 0 #0B121414}[data-theme=dark]{--surface:#0A0F10;--surface-raised:#121A1B;--surface-sunken:#060909;--surface-inverse:#EAF2F1;--line:#243032;--line-strong:#5F706E;--ink:#EAF2F1;--ink-muted:#9AA9A7;--ink-inverse:#0B1214;--brand:#34C77B;--brand-strong:#5BD993;--brand-soft:#0C2A1B;--brand-text:#4FD68E;--on-brand:#03170C;--azure:#5B9BFF;--azure-strong:#8CB9FF;--azure-soft:#122542;--azure-text:#7FB0FF;--on-azure:#041026;--volt:#FFE14D;--volt-soft:#3A3205;--on-volt:#1A1600;--info:#5CCBF5;--info-soft:#0B2633;--success:#3DD6C3;--success-soft:#0B2A27;--warning:#FFB547;--warning-soft:#33230A;--danger:#FF6B6B;--danger-soft:#3A1215;--on-danger:#1A0405;--focus-ring:#4FD68E;--link:var(--azure-text);--selection:#134A2E;--pop:#34C77B;--chart-1:#34C77B;--chart-2:#5B9BFF;--chart-3:#FFA24D;--chart-4:#B79CFF;--chart-5:#FFE14D;--chart-6:#FF85BE;--shadow-none:none;--shadow-pop:4px 4px 0 0 #34C77B;--shadow-pop-sm:2px 2px 0 0 #34C77B;--shadow-overlay:0 0 0 1px #243032, 6px 6px 0 0 #00000066}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--surface:#0A0F10;--surface-raised:#121A1B;--surface-sunken:#060909;--surface-inverse:#EAF2F1;--line:#243032;--line-strong:#5F706E;--ink:#EAF2F1;--ink-muted:#9AA9A7;--ink-inverse:#0B1214;--brand:#34C77B;--brand-strong:#5BD993;--brand-soft:#0C2A1B;--brand-text:#4FD68E;--on-brand:#03170C;--azure:#5B9BFF;--azure-strong:#8CB9FF;--azure-soft:#122542;--azure-text:#7FB0FF;--on-azure:#041026;--volt:#FFE14D;--volt-soft:#3A3205;--on-volt:#1A1600;--info:#5CCBF5;--info-soft:#0B2633;--success:#3DD6C3;--success-soft:#0B2A27;--warning:#FFB547;--warning-soft:#33230A;--danger:#FF6B6B;--danger-soft:#3A1215;--on-danger:#1A0405;--focus-ring:#4FD68E;--link:var(--azure-text);--selection:#134A2E;--pop:#34C77B;--chart-1:#34C77B;--chart-2:#5B9BFF;--chart-3:#FFA24D;--chart-4:#B79CFF;--chart-5:#FFE14D;--chart-6:#FF85BE;--shadow-none:none;--shadow-pop:4px 4px 0 0 #34C77B;--shadow-pop-sm:2px 2px 0 0 #34C77B;--shadow-overlay:0 0 0 1px #243032, 6px 6px 0 0 #00000066}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--control-sm:32px;--control-md:40px;--control-lg:48px;--touch-min:44px;--icon-sm:16px;--icon-md:20px;--icon-lg:24px;--sidebar-width:248px;--content-max:1280px;--border-hair:1px;--border-control:1.5px;--border-bold:2px;--z-sticky:100;--z-overlay:400;--z-toast:600;--z-tooltip:700;--font-display:Archivo, "Arial Black", system-ui, sans-serif;--font-sans:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}@font-face{font-family:archivo;src:url(/fonts/Archivo-Variable.woff2)format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:instrument sans;src:url(/fonts/InstrumentSans-Variable.woff2)format('woff2');font-weight:400 700;font-display:swap}@font-face{font-family:jetbrains mono;src:url(/fonts/JetBrainsMono-Variable.woff2)format('woff2');font-weight:100 800;font-display:swap}.display-xl{font-family:var(--font-display);font-size:64px;line-height:64px;font-weight:820;letter-spacing:-.025em;font-variation-settings:"wdth" 112}.display{font-family:var(--font-display);font-size:44px;line-height:48px;font-weight:800;letter-spacing:-.02em;font-variation-settings:"wdth" 112}.h1{font-family:var(--font-display);font-size:32px;line-height:38px;font-weight:780;letter-spacing:-.015em;font-variation-settings:"wdth" 112}.h2{font-family:var(--font-display);font-size:24px;line-height:30px;font-weight:740;letter-spacing:-.01em;font-variation-settings:"wdth" 112}.h3{font-family:var(--font-display);font-size:19px;line-height:26px;font-weight:700;font-variation-settings:"wdth" 112}.metric{font-family:var(--font-display);font-size:36px;line-height:40px;font-weight:760;letter-spacing:-.02em;font-variation-settings:"wdth" 112}.title{font-family:var(--font-sans);font-size:17px;line-height:24px;font-weight:600}.body-lg{font-family:var(--font-sans);font-size:17px;line-height:26px;font-weight:400}.body{font-family:var(--font-sans);font-size:15px;line-height:22px;font-weight:400}.body-sm{font-family:var(--font-sans);font-size:13px;line-height:18px;font-weight:400}.label{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:600}.caption{font-family:var(--font-sans);font-size:12px;line-height:16px;font-weight:500}.overline{font-family:var(--font-mono);font-size:11px;line-height:16px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.code{font-family:var(--font-mono);font-size:13px;line-height:20px;font-weight:450}.data{font-family:var(--font-mono);font-size:14px;line-height:20px;font-weight:500}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--surface);color:var(--ink);font:17px/1.6 var(--font-sans)}::selection{background:var(--selection)}img{max-width:100%;height:auto}a{color:var(--link);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}h1,h2,h3{font-family:var(--font-display);font-variation-settings:"wdth" 112;line-height:1.15;letter-spacing:-.01em}h1{font-weight:780}h2{font-weight:740}h3{font-weight:700}.wrap{max-width:68rem;margin:0 auto;padding-inline:var(--space-4)}@media(min-width:48rem){.wrap{padding-inline:var(--space-8)}}.skip{position:absolute;left:-999px;top:var(--space-2)}.skip:focus{left:var(--space-4);z-index:var(--z-overlay);background:var(--surface-raised);padding:var(--space-2)var(--space-4)}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4)var(--space-8);padding-block:var(--space-6);border-bottom:1px solid var(--line)}.logo{display:inline-flex}.logo img{display:block;height:40px;width:auto}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}.logo .logo-dark,.theme-toggle .icon-sun{display:none}:root[data-theme=dark] .logo .logo-light,:root[data-theme=dark] .theme-toggle .icon-moon{display:none}:root[data-theme=dark] .logo .logo-dark,:root[data-theme=dark] .theme-toggle .icon-sun{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo .logo-light,:root:not([data-theme=light]) .theme-toggle .icon-moon{display:none}:root:not([data-theme=light]) .logo .logo-dark,:root:not([data-theme=light]) .theme-toggle .icon-sun{display:block}}.theme-toggle{order:1;display:inline-flex;align-items:center;justify-content:center;width:var(--touch-min);height:var(--touch-min);padding:0;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface-raised);color:var(--ink);cursor:pointer}.theme-toggle[hidden]{display:none}.theme-toggle:hover{color:var(--brand-text);border-color:var(--brand)}.theme-toggle svg{width:20px;height:20px}.site-header nav{order:2;flex-basis:100%}@media(min-width:48rem){.site-header nav{order:0;flex-basis:auto;margin-left:auto}}.site-header ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 var(--space-5)}.site-header nav a{display:inline-flex;align-items:center;min-height:var(--touch-min);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--brand-text);text-decoration:underline;text-decoration-thickness:2px}main{padding-block:var(--space-12)var(--space-16)}.hero{padding-block:var(--space-12)var(--space-8)}.hero h1{font-size:clamp(36px,7vw,64px);font-weight:820;letter-spacing:-.025em;line-height:1.02;max-width:16ch;margin:0 0 var(--space-6)}.lead{font-size:20px;line-height:1.55;color:var(--ink-muted);max-width:60ch;margin:0 0 var(--space-8)}.btn{display:inline-flex;align-items:center;min-height:var(--control-lg);padding:0 var(--space-6);background:var(--brand);color:var(--on-brand);border-radius:var(--radius-sm);font-weight:600;text-decoration:none;box-shadow:var(--shadow-pop)}.btn:hover{background:var(--brand-strong);text-decoration:none}.section{margin-block:var(--space-16)}.section>h2{margin:0 0 var(--space-6);color:var(--ink-muted)}.grid{display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr))}.card{background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-6)}.card h2,.card h3{font-size:19px;margin:0 0 var(--space-2)}.card h2 a,.card h3 a{color:inherit}.card p{margin:0;color:var(--ink-muted)}.tags{list-style:none;padding:0;margin:var(--space-4)0 0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.tags li{font:500 13px/20px var(--font-mono);background:var(--surface-sunken);border-radius:var(--radius-xs);padding:2px var(--space-2)}.meta{font:500 13px/20px var(--font-mono);color:var(--ink-muted)}.muted{color:var(--ink-muted)}.page-head{margin-bottom:var(--space-12)}.page-head h1{font-size:clamp(32px,5vw,44px);margin:0 0 var(--space-4)}.prose{max-width:68ch}.prose h1{font-size:clamp(32px,5vw,44px)}.prose h2{font-size:24px;margin-top:var(--space-12)}.prose code,.prose pre{font-family:var(--font-mono);font-size:14px;background:var(--surface-sunken);border-radius:var(--radius-xs)}.prose code{padding:1px 4px}.prose pre{padding:var(--space-4);overflow-x:auto}.prose img{border-radius:var(--radius-md)}.cta{border-top:1px solid var(--line);padding-top:var(--space-12)}.cta h2{font-size:clamp(28px,4vw,36px);margin:0 0 var(--space-4)}.site-footer{border-top:1px solid var(--line);padding-block:var(--space-8);color:var(--ink-muted);font-size:15px}