@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.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:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.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:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
:root{--bg:#070707;--panel:#ffffff0f;--panel-2:#ffffff17;--text:#ffffffeb;--muted:#ffffffa6;--faint:#ffffff6b;--border:#ffffff1a;--border-strong:#ffffff29;--accent:#8bd3ff;--accent-2:#a78bfa;--danger:#ff4d6d;--shadow:0 12px 40px #0000008c;--radius:16px;--radius-sm:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{color:var(--text);background:radial-gradient(1200px 700px at 15% 10%,#a78bfa24,transparent 60%),radial-gradient(900px 520px at 85% 20%,#8bd3ff1f,transparent 55%),var(--bg);font-family:var(--font-geist-sans),ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,"Noto Sans","Apple Color Emoji","Segoe UI Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:hover{color:#fff}code{font-family:var(--font-geist-mono),ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}.appHeader{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#07070799;position:sticky;top:0}.appHeaderInner{justify-content:space-between;align-items:center;gap:14px;max-width:1060px;margin:0 auto;padding:18px;display:flex}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brandMark{width:34px;height:34px;box-shadow:var(--shadow);background:linear-gradient(135deg,#8bd3ffe6,#a78bfae6);border-radius:10px}.brandText{flex-direction:column;min-width:0;line-height:1.1;display:flex}.brandTitle{letter-spacing:.2px;white-space:nowrap;text-overflow:ellipsis;font-weight:650;overflow:hidden}.brandSubtitle{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.headerActions{align-items:center;gap:10px;display:flex}.chip{color:var(--muted);border:1px solid var(--border);background:#ffffff08;border-radius:999px;padding:7px 10px;font-size:12px}.container{max-width:1060px;margin:0 auto;padding:22px 18px 52px}.h1{letter-spacing:-.02em;font-size:34px;line-height:1.15}.h2{color:var(--muted);margin-top:18px;font-size:18px;font-weight:520}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}@media (max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.grid{grid-template-columns:1fr}}.card{border:1px solid var(--border);background:linear-gradient(180deg,var(--panel),#ffffff05);border-radius:var(--radius);padding:14px;transition:transform .18s,border-color .18s,background .18s;box-shadow:0 0 #0000}.card:hover{border-color:var(--border-strong);background:linear-gradient(180deg,var(--panel-2),#ffffff08);transform:translateY(-2px)}.cardTitle{letter-spacing:.1px;align-items:center;gap:10px;min-width:0;font-weight:600;display:flex}.cardKicker{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.45}.kbd{font-family:var(--font-geist-mono);border:1px solid var(--border);color:var(--muted);border-bottom-color:#ffffff38;border-radius:8px;padding:2px 6px;font-size:11px}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.breadcrumbs a{color:var(--muted)}.breadcrumbs a:hover{color:#fff}.article{border:1px solid var(--border);border-radius:var(--radius);background:#ffffff08;margin-top:18px;padding:18px}.article :where(h1,h2,h3){margin-top:16px;margin-bottom:10px;line-height:1.2}.article h1{font-size:24px}.article h2{color:#ffffffe0;font-size:18px}.article h3{color:#ffffffdb;font-size:15px}.article p,.article li{color:#ffffffdb;line-height:1.65}.article p{margin:10px 0}.article ul,.article ol{margin:10px 0 10px 20px}.article a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.article a:hover{color:#fff}.article pre{border:1px solid var(--border);background:#00000059;border-radius:12px;margin:12px 0;padding:12px;overflow:auto}.article code{color:#ffffffe6}.article table{border-collapse:collapse;width:100%;max-width:100%;margin:14px 0;font-size:13px;line-height:1.4;display:block;overflow-x:auto}.article thead th{position:sticky;top:0}.article th,.article td{border:1px solid var(--border);vertical-align:top;padding:8px 10px}.article th{color:#ffffffeb;text-align:left;background:#ffffff0f;font-weight:650}.article tbody tr:nth-child(2n) td{background:#ffffff05}.article tbody tr:hover td{background:#ffffff0a}.footerNote{color:var(--faint);margin-top:26px;font-size:12px}
