@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-Variable.woff2)format("woff2");font-weight:300 900;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/Satoshi-VariableItalic.woff2)format("woff2");font-weight:300 900;font-style:italic;font-display:swap}:root{color-scheme:light dark;--green:#5ef69f;--yellow:#ffd546;--blue:#64a2ff;--green-deep:#149557;--blue-deep:#4480da;--bg:#fff;--bg-soft:#f4f6f8;--surface:#fff;--text:#0e1116;--text-soft:#4a5260;--border:#e3e7ec;--link:#2f6fd6;--accent-ink:#0e1116;--focus:#4480da;--font:"Satoshi", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius:18px;--wrap:1120px;--measure:72ch}@media (prefers-color-scheme:dark){:root{--bg:#0b0d10;--bg-soft:#13171c;--surface:#161a20;--text:#eef1f5;--text-soft:#a3acb9;--border:#262c34;--link:#8ab8ff;--focus:#64a2ff}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:88px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}img,svg{max-width:100%;display:block}a{color:var(--link);text-underline-offset:3px}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}h1,h2,h3{letter-spacing:-.01em;line-height:1.2}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}.skip{position:absolute;left:-999px}.skip:focus{z-index:10;background:var(--surface);padding:8px 12px;top:12px;left:16px}.site-header{z-index:5;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:16px;height:64px;display:flex}.brand{color:var(--text);align-items:center;display:inline-flex}.brand svg{width:auto;height:34px}.nav{gap:22px;font-size:15px;font-weight:500;display:flex}.nav a{color:var(--text-soft);text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--text)}.site-footer{border-top:1px solid var(--border);background:var(--bg-soft);color:var(--text-soft);margin-top:96px;font-size:14px}.site-footer .wrap{grid-template-columns:1fr auto;align-items:start;gap:24px;padding-top:40px;padding-bottom:48px;display:grid}.site-footer nav{flex-wrap:wrap;gap:10px 22px;display:flex}.site-footer a{color:var(--text-soft);text-decoration:none}.site-footer a:hover{color:var(--text)}.site-footer .fine{grid-column:1/-1;margin:0}.site-footer .mark{width:28px;height:28px}@media (width<=640px){.site-footer .wrap{grid-template-columns:1fr}}.btn{background:var(--green);color:var(--accent-ink);border-radius:999px;align-items:center;gap:8px;padding:12px 22px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:#4fe68f}.btn.secondary{color:var(--text);border:1.5px solid var(--border);background:0 0}.prose{max-width:var(--measure)}.prose h2{margin:2.4em 0 .6em;font-size:1.45rem;font-weight:800}.prose h3{margin:1.8em 0 .5em;font-size:1.15rem;font-weight:700}.prose h4{margin:1.5em 0 .4em;font-size:1rem;font-weight:700}.prose p,.prose ul,.prose ol{margin:0 0 1em}.prose li{margin:.3em 0}.prose li::marker{color:var(--text-soft)}.prose strong{font-weight:700}.prose hr{border:0;border-top:1px solid var(--border);margin:2.5em 0}.prose blockquote{border-left:3px solid var(--green);color:var(--text-soft);margin:1.2em 0;padding:.2em 0 .2em 1em}.prose code{background:var(--bg-soft);border-radius:5px;padding:.1em .35em;font-size:.9em}.prose table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.95em;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:8px 12px}.prose th{font-weight:700}.prose .anchor{color:var(--text-soft);opacity:0;margin-left:.35em;font-weight:500;text-decoration:none}.prose h2:hover .anchor,.prose h3:hover .anchor,.prose .anchor:focus{opacity:1}@media (hover:none){.prose .anchor{opacity:.45}}.prose pre{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;margin:0 0 1.2em;padding:14px 16px;font-size:13.5px;line-height:1.55;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose code,.prose pre{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}
