@font-face{font-family:JetBrains Mono Variable;src:url(/fonts/jbmono.woff2) format("woff2");font-weight:400 800;font-display:swap}:root{color-scheme:light dark;--paper:#ffffff;--panel:#f5f5f4;--ink:#0b0b0c;--muted:#55575c;--rule:#dcdcda;--accent:#c2410c;--sans:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--mono:"JetBrains Mono Variable",ui-monospace,"SF Mono","Cascadia Mono",Menlo,monospace;--fs-display:clamp(36px,7vw,64px);--fs-h2:clamp(22px,3vw,28px);--fs-h3:18px;--fs-body:17px;--fs-lead:clamp(18px,1.1vw + 13.7px,20px);--fs-rank:clamp(40px,8vw,64px);--fs-price:17px;--fs-small:14px;--fs-stamp:13px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:72px;--s9:112px;--max:1200px;--prose:680px;--gut:clamp(16px,4vw,32px);--r:2px}@media(prefers-color-scheme:dark){:root{--paper:#0e0f11;--panel:#17191c;--ink:#ededee;--muted:#9a9ca3;--rule:#2a2d31;--accent:#fb8a4c}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs-body)/1.6 var(--sans);font-variant-numeric:tabular-nums lining-nums;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.skip{position:absolute;left:-9999px;top:var(--s2);background:var(--ink);color:var(--paper);padding:var(--s3) var(--s4);font-weight:650;z-index:9}.skip:focus{left:var(--s2)}.wrap{max-width:calc(var(--max) + 2*var(--gut));margin:0 auto;padding:0 var(--gut)}.prose>*{max-width:var(--prose)}.prose>table,.prose>.full,.prose>form{max-width:none}header.site{border-bottom:1px solid var(--rule)}header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;column-gap:var(--s6)}.brand{font:800 20px/1 var(--mono);letter-spacing:-.04em;color:var(--ink);text-decoration:none;margin-right:auto;padding:var(--s4) 0;min-height:44px;display:inline-flex;align-items:center}header.site nav{display:flex;column-gap:var(--s3);font-size:15px;overflow-x:auto;scrollbar-width:none;max-width:100%}header.site nav a{color:var(--ink);text-decoration:none;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap;border-bottom:2px solid transparent;padding:0 var(--s1)}header.site nav a:hover{text-decoration:underline}header.site nav a[aria-current]{border-bottom-color:var(--accent)}@media(max-width:719px){header.site nav{width:100%;margin-top:calc(-1*var(--s2))}}main{padding:var(--s6) 0 var(--s8)}h1,h2,h3{text-wrap:balance;color:var(--ink)}h1{font:750 var(--fs-display)/1 var(--mono);letter-spacing:-.03em;margin:var(--s4) 0 var(--s5)}h2{font:700 var(--fs-h2)/1.2 var(--mono);letter-spacing:-.02em;margin:var(--s8) 0 var(--s4)}h3{font:650 var(--fs-h3)/1.3 var(--sans);margin:var(--s6) 0 var(--s2)}h3 .lbl{color:var(--muted);font-weight:500}h3 .tool{font-family:var(--mono);font-weight:700}h2,h3{scroll-margin-top:var(--s5)}p,ul,ol{margin:0 0 var(--s4)}li{margin:var(--s1) 0}.crumbs{font-size:var(--fs-small);color:var(--muted);display:flex;flex-wrap:wrap;align-items:center}.crumbs a{color:var(--muted);min-height:44px;display:inline-flex;align-items:center}.crumbs span{padding:0 var(--s2)}.meta,.src{font-size:var(--fs-small);line-height:1.45;color:var(--muted)}.stamp{font:500 var(--fs-stamp)/1.45 var(--mono);color:var(--muted)}.meta{margin-top:var(--s7)}.lead{font-size:var(--fs-lead);line-height:1.5;margin-bottom:var(--s5)}.box,.disc{background:var(--panel);padding:var(--s4) var(--s5);margin:var(--s5) 0;font-size:15px}.disc{border:0}table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.45;margin:var(--s5) 0 var(--s3)}caption{text-align:left;caption-side:top;color:var(--muted);font-size:var(--fs-small);padding-bottom:var(--s2)}th{text-align:left;font-weight:650;font-size:var(--fs-small);background:var(--panel);padding:var(--s3) var(--s4) var(--s3) var(--s3)}td{padding:var(--s3) var(--s4) var(--s3) var(--s3);vertical-align:top;border-bottom:1px solid var(--rule)}.num,td.num,th.num{text-align:right;font-family:var(--mono);font-weight:600;white-space:nowrap}.win{font-weight:800}.win small{font:600 12px var(--sans);color:var(--muted);margin-left:var(--s1)}.index{list-style:none;padding:0;margin:var(--s5) 0;display:grid;column-gap:var(--s7);counter-reset:i;max-width:none!important}@media(min-width:960px){.index{grid-template-columns:1fr 1fr}}.index li{margin:0;counter-increment:i}.index a{display:grid;grid-template-columns:3.2rem 1fr;column-gap:var(--s3);padding:var(--s3) 0;min-height:56px;text-decoration:none;color:var(--ink)}.index a:before{content:counter(i,decimal-leading-zero);font:800 28px/1.1 var(--mono);color:var(--ink);grid-row:span 2}.index li:first-child a:before{color:var(--accent)}.index strong{font-weight:650;font-size:var(--fs-h3)}.index span{color:var(--muted);font-size:15px}.index a:hover strong{text-decoration:underline}.btn{display:inline-flex;align-items:center;min-height:48px;padding:0 var(--s5);background:var(--ink);color:var(--paper);font-weight:650;text-decoration:none;border-radius:var(--r);border:0;cursor:pointer}.btn:hover{background:var(--accent);color:#fff}footer{border-top:1px solid var(--rule);padding:var(--s5) 0 var(--s7);font-size:var(--fs-small);color:var(--muted)}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s3) var(--s7)}footer p{max-width:40rem;margin:var(--s3) 0 0}footer nav{display:flex;flex-wrap:wrap;column-gap:var(--s5)}footer nav a{color:var(--muted);min-height:44px;display:inline-flex;align-items:center}@media(max-width:719px){table,thead,tbody,tr,td,th,caption{display:block}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}tbody tr{padding:var(--s3) 0;border-bottom:1px solid var(--rule)}td{padding:var(--s1) 0;border:0;display:grid;grid-template-columns:8rem 1fr;gap:var(--s3);text-align:left!important}td:before{content:attr(data-label);font:650 var(--fs-small)/1.6 var(--sans);color:var(--muted)}td:first-child{display:block;font-weight:650;font-size:var(--fs-h3);padding-bottom:var(--s2)}td:first-child:before,td[data-label=""]:before{content:none}}
