@font-face{font-family:Geist;src:url(/fonts/geist-latin-wght-v5.3.0.woff2)format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-latin-wght-italic-v5.3.0.woff2)format("woff2-variations");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-latin-wght-v5.3.0.woff2)format("woff2-variations");font-weight:100 800;font-display:swap}@layer site{:root{color-scheme:dark;--bg:#000;--panel:#141414;--panel-2:#1c1c1c;--inset:#0a0a0a;--line:#262626;--line-2:#3a3a3a;--ink:#fafafa;--ink-2:#d4d4d4;--muted:#a1a1a1;--dim:#737373;--accent:#f7b32b;--on-accent:#111;--accent-text:#f7b32b;--accent-soft:#f7b32b1f;--ok:#4ade80;--ok-soft:#4ade801f;--violet:#a48bff;--violet-band:#0b0915;--violet-line:#241d3d;--warn:#f87171;--warn-soft:#f871711f;--focus:#f7b32b;--radius:16px;--radius-sm:8px;--pill:999px;--font-body:"Geist", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--measure:68ch;--gutter:16px}:root[data-theme=light]{color-scheme:light;--bg:#fafaf7;--panel:#fff;--panel-2:#f2f1ec;--inset:#f6f5f0;--line:#e4e2db;--line-2:#cfccc2;--ink:#0a0a0a;--ink-2:#2b2a27;--muted:#57544d;--dim:#6b6860;--accent:#f5a524;--on-accent:#111;--accent-text:#8a4b00;--accent-soft:#f5a52429;--ok:#15803d;--ok-soft:#15803d1a;--violet:#5b3fb5;--violet-band:#f1eefc;--violet-line:#dcd4f7;--warn:#b42318;--warn-soft:#b4231814;--focus:#8a4b00}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--ink-2);font:400 1.0625rem/1.65 var(--font-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}img{max-width:100%;height:auto}a{color:var(--accent-text);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}.prose a,.table-notes a,td a,.sources a{text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--accent) 45%, transparent);text-underline-offset:3px}.prose a:hover,td a:hover{text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}code,kbd,pre,.mono{font-family:var(--font-mono);font-size:.9em}:not(pre)>code{color:var(--accent-text);background:var(--accent-soft);border-radius:6px;padding:.08em .4em}hr{border:0;border-top:1px solid var(--line);margin:3rem 0}::selection{background:var(--accent);color:var(--on-accent)}strong{color:var(--ink);font-weight:600}h1,h2,h3{color:var(--ink);margin:2.4rem 0 .9rem;font-weight:600}h1{letter-spacing:-.04em;overflow-wrap:break-word;hyphens:manual;max-width:20ch;margin-top:.4rem;font-size:clamp(2.5rem,6.5vw,4.75rem);line-height:1.02}h2{letter-spacing:-.03em;font-size:clamp(1.6rem,3.6vw,2.4rem);line-height:1.1}h3{letter-spacing:-.015em;font-size:1.3rem;line-height:1.25}p,ul,ol{margin:0 0 1rem}li{margin-bottom:.4rem}.prose ul li::marker,.bullets li::marker{color:var(--accent)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip{position:absolute;top:0;left:-9999px}.skip:focus{left:var(--gutter);background:var(--accent);color:var(--on-accent);z-index:20;border-radius:var(--pill);padding:6px 12px;top:8px}.wrap{width:min(1240px,100%);padding:0 var(--gutter);margin:0 auto}@media (width>=720px){:root{--gutter:32px}}.prose{max-width:var(--measure)}.prose h2{padding-top:.6rem;font-size:clamp(1.45rem,3vw,1.9rem)}.muted{color:var(--muted)}.hl{color:var(--accent-text)}.label{font-family:var(--font-mono);color:var(--muted);letter-spacing:0;font-size:.8rem}.label-up,.eyebrow{font:500 .78rem/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent-text);margin:0 0 .9rem;display:block}.eyebrow.violet{color:var(--violet)}.btn,.btn-ghost{font:600 1rem/1 var(--font-body);border:1px solid var(--accent);border-radius:var(--pill);cursor:pointer;justify-content:center;align-items:center;gap:.5em;padding:.95em 1.6em;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn{background:var(--accent);color:var(--on-accent)}.btn:hover{background:color-mix(in srgb, var(--accent) 85%, #fff);text-decoration:none}.btn-ghost{color:var(--accent-text);border-color:var(--line-2);background:0 0}.btn-ghost:hover{border-color:var(--accent);text-decoration:none}.more{color:var(--accent-text);font-weight:500}.more:after{content:" →" / ""}.site-header{z-index:10;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}@media (width<=719px){.site-header{position:static}}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;min-height:68px;padding-block:10px;display:flex}.brand{font:700 1.05rem/1 var(--font-body);letter-spacing:-.02em;color:var(--ink);white-space:nowrap;text-decoration:none}.brand span{color:var(--accent-text)}.brand:hover{text-decoration:none}.nav{flex-wrap:wrap;align-items:center;gap:.25rem 1.6rem;display:flex}.nav a{color:var(--ink-2);padding:6px 0;font-size:.95rem;font-weight:500;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.nav a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent)}.theme-toggle{font:500 .82rem var(--font-body);border:1px solid var(--line-2);color:var(--muted);border-radius:var(--pill);cursor:pointer;background:0 0;padding:6px 12px}.theme-toggle:hover{border-color:var(--accent);color:var(--ink)}main{padding-bottom:6rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);padding:3rem 0 4rem;font-size:.95rem}.site-footer strong{color:var(--ink)}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--ink)}.footer-cols{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;display:grid}.footer-cols ul{margin:0;padding:0;list-style:none}.crumbs{font-family:var(--font-mono);color:var(--dim);margin-top:2.2rem;font-size:.8rem}.crumbs ol{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.crumbs li{margin:0}.crumbs li+li:before{content:"/" / "";color:var(--line-2);margin-right:.4rem}.crumbs a{color:var(--muted)}.meta-line{flex-wrap:wrap;gap:.3rem 1.4rem;margin:.4rem 0 1.6rem;display:flex}.lede{color:var(--ink-2);max-width:60ch;font-size:clamp(1.15rem,2vw,1.35rem);line-height:1.6}.cells{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:1rem;margin:1.4rem 0 2rem;padding:0;list-style:none;display:grid}.cell{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;margin:0;padding:1.4rem 1.5rem 1.3rem;transition:border-color .15s,background-color .15s;display:flex;position:relative}.cell:hover{border-color:var(--accent)}.cell:focus-within{outline:2px solid var(--focus);outline-offset:3px}.cell .call{font:.8rem/1.5 var(--font-mono);color:var(--dim);overflow-wrap:anywhere;margin:0 0 .9rem}.cell .call .fn{color:var(--accent-text)}.cell .call .str{color:var(--ink-2)}.cell h2,.cell h3{font:600 1.2rem/1.3 var(--font-body);letter-spacing:-.015em;margin:0 0 .5rem}.cell a.stretch{color:var(--ink);text-decoration:none}.cell a.stretch:after{content:"";border-radius:inherit;position:absolute;inset:0}.cell a.stretch:focus-visible{outline:none}.cell h2 a.stretch>span:after,.cell h3 a.stretch>span:after{content:" →" / "";color:var(--dim)}.cell:hover a.stretch>span:after{color:var(--accent-text)}.cell p{color:var(--muted);margin:0 0 .3rem;font-size:.98rem}.cell .label{margin-top:auto;padding-top:.6rem}.cell .price{font-family:var(--font-body);color:var(--ink);font-weight:600}.table-wrap{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0 1.8rem;overflow-x:auto}.table-title{font:600 1.05rem var(--font-body);color:var(--ink);margin:1.8rem 0 .5rem}table{border-collapse:collapse;width:100%;font-size:.95rem}caption{text-align:left;color:var(--ink);padding:.9rem 1rem .4rem;font-weight:600}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:.75rem 1rem}thead th{font:500 .72rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:var(--panel-2);white-space:nowrap}tbody th{color:var(--ink);font-weight:600}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tbody tr:hover td,tbody tr:hover th{background:color-mix(in srgb, var(--panel-2) 60%, transparent)}td time,th time{white-space:nowrap}td.num,th.num{text-align:right;font-family:var(--font-mono);white-space:nowrap;color:var(--ink)}thead th.num{color:var(--muted)}.fn-mark{font:600 .7rem var(--font-mono);color:var(--accent-text);vertical-align:super;margin-left:2px}.table-notes{color:var(--muted);margin:-.9rem 0 1.8rem;padding:0 .2rem;font-size:.88rem}.table-notes p{margin:.25rem 0}.tag{font:500 .78rem/1.6 var(--font-body);border-radius:var(--pill);white-space:nowrap;border:1px solid #0000;align-items:center;gap:.3em;padding:.1em .7em;display:inline-flex}.tag.ok{color:var(--ok);background:var(--ok-soft);border-color:color-mix(in srgb, var(--ok) 35%, transparent)}.tag.ok:before{content:"✓" / ""}.tag.caveat{color:var(--warn);background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 35%, transparent)}.tag.violet{color:var(--violet);border-color:color-mix(in srgb, var(--violet) 40%, transparent)}.tag.accent{color:var(--accent-text);border-color:var(--accent);font-size:.72rem}.tag.plain{color:var(--ink-2);border-color:var(--line-2)}.console{background:var(--panel);border:1px solid color-mix(in srgb, var(--accent) 55%, transparent);border-radius:var(--radius);margin:1.4rem 0 1.8rem;padding:1.3rem 1.5rem}.console>.label{font:500 .75rem var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-text);margin-bottom:.6rem;display:block}.console ul{margin:0;padding-left:1.2rem}.console li::marker{color:var(--accent)}.console p:last-child{margin-bottom:0}.toc{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);max-width:var(--measure);margin:1.4rem 0;padding:1rem 1.4rem;font-size:.95rem}.toc ol{margin:0;padding-left:1.3rem}.toc li::marker{font-family:var(--font-mono);color:var(--dim)}dl.desc{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:max-content 1fr;gap:0;margin:1rem 0 1.8rem;font-size:.97rem;display:grid;overflow:hidden}dl.desc dt,dl.desc dd{border-bottom:1px solid var(--line);margin:0;padding:.75rem 1rem}dl.desc dt{font:500 .75rem/1.9 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--panel-2)}dl.desc dt:last-of-type,dl.desc dd:last-of-type{border-bottom:0}@media (width<=560px){dl.desc{grid-template-columns:1fr}dl.desc dt{border-bottom:0;padding-bottom:.2rem}}.sources ol{padding-left:1.4rem;font-size:.93rem}.sources li{overflow-wrap:anywhere}.sources li::marker{font-family:var(--font-mono);color:var(--dim)}.faq dt{color:var(--ink);margin-top:1.2rem;font-weight:600}.faq dd{margin:.3rem 0 0}fieldset{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0;margin:0 0 1rem;padding:1rem 1.3rem 1.2rem}legend{font:500 .75rem var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:var(--panel-2);border:1px solid var(--line);border-radius:var(--pill);padding:.2rem .7rem}.choices{flex-wrap:wrap;gap:.5rem;margin-top:.4rem;display:flex}.choices label{cursor:pointer;border:1px solid var(--line-2);border-radius:var(--pill);color:var(--ink-2);align-items:center;gap:.5rem;padding:.45rem .9rem;font-size:.95rem;display:inline-flex}.choices label:hover{border-color:var(--accent)}.choices label:has(input:checked){border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}input[type=radio],input[type=checkbox]{accent-color:var(--accent);width:1rem;height:1rem;margin:0}select{font:inherit;color:var(--ink);background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--radius-sm);padding:.5rem .7rem}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.result-head{font:500 .75rem var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent-text);margin:1.6rem 0 .5rem}.verdict{letter-spacing:-.02em;color:var(--ink);margin:0 0 .6rem;font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:600}.section{padding:clamp(3.5rem,8vw,6.5rem) 0 0}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 2rem;margin-bottom:1.8rem;display:flex}.section-head h2{margin:0}.center{text-align:center}.center h2{margin-inline:auto}.hero{align-items:center;gap:3rem;padding:clamp(3rem,7vw,6rem) 0 1rem;display:grid}@media (width>=980px){.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.hero h1{margin-bottom:1.4rem}.actions{flex-wrap:wrap;gap:.8rem;margin:2rem 0 .6rem;display:flex}.actions-note{color:var(--dim);margin:0;font-size:.92rem}.recpanel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0;overflow:hidden}.recpanel-head{border-bottom:1px solid var(--line);padding:1.2rem 1.4rem 1rem}.recpanel-title{color:var(--ink);flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 .5rem;font-size:1.15rem;font-weight:600;display:flex}.recpanel-meta{font:.78rem/1.5 var(--font-mono);color:var(--muted);overflow-wrap:anywhere;margin:0}.recpanel-body{padding:1.2rem 1.4rem 1.4rem}.recpanel-group{color:var(--ink);margin:.4rem 0 .6rem;font-size:.95rem;font-weight:600}.recpanel-rows{background:var(--inset);border:1px solid var(--line);border-radius:12px;margin:0 0 1.2rem;padding:0;list-style:none}.recpanel-rows li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:.2rem 1rem;margin:0;padding:.8rem 1rem;font-size:.95rem;display:flex}.recpanel-rows li:last-child{border-bottom:0}.recpanel-rows .what{color:var(--ink-2)}.recpanel-rows .what small{font:.75rem var(--font-mono);color:var(--dim);display:block}.recpanel-rows .amt{font-family:var(--font-mono);color:var(--ink);white-space:nowrap}@media (width<=520px){.recpanel-head,.recpanel-body{padding-inline:1rem}.recpanel-rows li{padding-inline:.8rem}}.recpanel-foot{color:var(--muted);margin:0;font-size:.88rem}.recpanel-foot strong{color:var(--ink)}.features{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:2.6rem 3rem;margin:0;padding:0;list-style:none;display:grid}.features li{margin:0;position:relative}.features .icon{width:30px;height:30px;color:var(--accent);margin-bottom:1.1rem}.features h3{margin:0 0 .6rem;font-size:1.35rem}.features h3 a{color:var(--ink)}.features h3 a:after{content:" →" / "";color:var(--dim);font-weight:400}.features h3 a:hover{text-decoration:none}.features h3 a:hover:after{color:var(--accent-text)}.features p{color:var(--muted);margin:0}.split{grid-template-columns:minmax(0,1fr);align-items:center;gap:2.5rem 4rem;display:grid}@media (width>=980px){.split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}.split h2{letter-spacing:-.035em;margin-top:0;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.04}.bullets{margin:1.6rem 0;padding-left:1.2rem}.bullets li{color:var(--ink-2);margin-bottom:.8rem}.codepanel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0;overflow:hidden}.codepanel-head{border-bottom:1px solid var(--line);font:.85rem var(--font-mono);color:var(--ink-2);align-items:center;gap:.8rem;padding:.9rem 1.3rem;display:flex}.code{counter-reset:ln;font:.86rem/1.9 var(--font-mono);margin:0;padding:1.1rem 0 1.3rem;list-style:none;overflow-x:auto}.code li{counter-increment:ln;white-space:pre;color:var(--ink-2);margin:0;padding:0 1.3rem 0 0}.code li:before{content:counter(ln);text-align:right;width:3.2rem;color:var(--dim);padding-right:1.1rem;display:inline-block}.code .k{color:var(--accent-text)}.code .s{color:var(--ok)}.code .c{color:var(--dim);font-style:italic}.code .del{color:var(--warn)}.code .add{color:var(--ok)}.proof{grid-template-columns:minmax(0,1fr);gap:2.5rem;display:grid}@media (width>=1000px){.proof{grid-template-columns:minmax(0,.9fr) minmax(0,2fr)}}.quote{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);align-self:start;padding:2rem}.quote p{color:var(--ink);font-size:1.2rem;line-height:1.6}.quote .label{margin-top:1.2rem;display:block}.results{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:2.4rem 2rem;margin:0;padding:0;list-style:none;display:grid}.results li{flex-direction:column;margin:0;display:flex;position:relative}.results .eyebrow{margin-bottom:.6rem}.results h3{margin:0 0 1.2rem;font-size:1.3rem;line-height:1.3}.results h3 a{color:var(--ink)}.results h3 a:after{content:" ↗" / "";color:var(--dim);font-weight:400}.results h3 a:hover{color:var(--accent-text);text-decoration:none}.results .label{font-family:var(--font-body);color:var(--dim);margin-top:auto;font-size:.92rem}.band{background:var(--violet-band);border-block:1px solid var(--violet-line);margin:clamp(3.5rem,8vw,6.5rem) calc(50% - 50vw) 0;padding:clamp(3.5rem,7vw,6rem) calc(50vw - 50%)}.band-grid{grid-template-columns:minmax(0,1fr);align-items:center;gap:2.5rem;display:grid}@media (width>=980px){.band-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}.band h2{letter-spacing:-.035em;margin:0 0 1rem;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1.05}.band p{color:var(--ink-2);max-width:52ch;margin:0}.stats{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.stats div{border-left:1px solid var(--violet-line);padding:.4rem 1.4rem}.stats dt{letter-spacing:-.04em;color:var(--ink);font-size:clamp(2.2rem,5vw,3.6rem);font-weight:500;line-height:1}.stats dd{color:var(--muted);margin:.6rem 0 0;font-size:.95rem}@media (width<=520px){.stats{grid-template-columns:1fr;gap:1.4rem}}}
