*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:light;--bg:#ffffff;--bg-card:#ffffff;--bg-hover:#f8f8f8;--bg-subtle:#f8f8f8;--bg-surface:#fafafa;--border:#e0e0e0;--border-row:#f3f4f6;--border-control:#d1d5db;--border-strong:#000000;--text:#000000;--text-muted:#666666;--text-faint:#6b7280;--text-ghost:#4b5563;--accent:#000000;--accent-hover:#333333;--success:#22c55e;--warning:#f59e0b;--error:#ef4444;--success-text:#15803d;--success-bg:#f0fdf4;--success-border:#22c55e;--warning-text:#92400e;--warning-bg:#fffbeb;--warning-border:#fcd34d;--error-text:#b91c1c;--error-bg:#fef2f2;--error-border:#fca5a5;--danger:#dc2626;--danger-hover:#b91c1c;--disabled-bg:#f0f0f0;--disabled-text:#cccccc;--font:var(--font-inter,"Inter"),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--mono:"JetBrains Mono","Fira Code","Cascadia Code",monospace}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:.9375rem;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg-subtle)}::-webkit-scrollbar-thumb{background:#ccc}::-webkit-scrollbar-thumb:hover{background:#000}a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px}a:hover{color:var(--accent-hover);text-decoration:underline}a.card,a.card:hover,nav .brand,nav .brand:hover,nav .links a{text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}nav{background:var(--bg);border-bottom:1px solid var(--border);padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:10}nav .nav-inner{justify-content:space-between;gap:1rem;height:44px;max-width:1200px;margin:0 auto;padding:0 1.5rem}nav .brand,nav .nav-inner{display:flex;align-items:center}nav .brand{gap:.5rem;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text);white-space:nowrap}nav .links{display:flex;gap:.375rem;list-style:none;flex-wrap:wrap}nav .links a{display:block;background:var(--bg);border:1px solid var(--border-control);color:var(--text-ghost);font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;line-height:1;padding:.4rem .6rem;transition:all .1s ease;white-space:nowrap}nav .links a:hover{border-color:var(--border-strong);color:var(--text);text-decoration:none}nav .links a.active{background:var(--accent);border-color:var(--accent);color:#fff}main{padding:2rem 0}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:0;padding:1.25rem}a.card{transition:border-color .1s ease}a.card:hover{border-color:var(--border-strong)}.badge{display:inline-block;border:1px solid transparent;border-radius:0;padding:.15rem .45rem;font-size:.625rem;font-weight:700;line-height:1.5;text-transform:uppercase;letter-spacing:.1em}.badge-success{border-color:var(--success-border);background:var(--success-bg);color:var(--success-text)}.badge-warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-text)}.badge-error{border-color:var(--error-border);background:var(--error-bg);color:var(--error-text)}.badge-info{border-color:var(--border);background:var(--bg-subtle);color:var(--text)}code,pre{font-family:var(--mono)}pre{background:var(--bg-subtle);border:1px solid var(--border);color:var(--text);padding:.75rem;overflow-x:auto;font-size:.8rem;line-height:1.5}code,pre{border-radius:0}code{background:rgba(0,0,0,.06);padding:.1rem .3rem;font-size:.875em}pre code{background:none;padding:0;color:inherit}kbd{background:var(--bg-subtle);border:1px solid var(--border);border-radius:0;color:var(--text);font-family:var(--mono);font-size:.85em;padding:.05rem .3rem}input,select,textarea{background:var(--bg);border:1px solid var(--border-control);border-radius:0;color:var(--text);font-family:var(--font);font-size:.8125rem;padding:.5rem .75rem;transition:border-color .1s ease;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--border-strong);outline:none}input:disabled,select:disabled,textarea:disabled{background:var(--bg-subtle);color:var(--text-muted)}input::placeholder,textarea::placeholder{color:var(--text-faint)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border);border:none;height:2px;padding:0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background:#000;border-radius:0;cursor:pointer}input[type=range]::-moz-range-thumb{width:12px;height:12px;background:#000;border:none;border-radius:0;cursor:pointer}button{background:var(--accent);border:none;border-radius:0;color:#fff;cursor:pointer;font-family:var(--font);font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.55rem 1.1rem;transition:all .1s ease}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed;opacity:1}.btn-ghost{background:var(--bg);border:1px solid var(--border-control);color:var(--text-ghost);font-size:.625rem;font-weight:700;letter-spacing:.12em;padding:.5rem .75rem}.btn-ghost:hover:not(:disabled){background:var(--bg);border-color:var(--border-strong);color:var(--text)}.btn-ghost:disabled{background:var(--bg);border-color:var(--border);color:var(--disabled-text)}a.btn-ghost{display:inline-block;line-height:1;text-transform:uppercase}a.btn-ghost,a.btn-ghost:hover{text-decoration:none}.btn-ghost.active,.btn-ghost.active:hover{background:var(--accent);border-color:var(--accent);color:#fff}.btn-danger{background:var(--danger);border:1px solid var(--danger);color:#fff;font-weight:700;letter-spacing:.1em}.btn-danger:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}table{width:100%;border-collapse:collapse;font-size:.75rem}td,th{padding:.5rem .75rem;text-align:left}th{background:var(--bg-subtle);border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}td{border-bottom:1px solid var(--border-row)}tr:hover td{background:var(--bg-hover)}.error-msg{color:var(--error-text);font-size:.8rem;padding:.6rem .75rem;background:var(--error-bg);border:1px solid var(--error-border);border-radius:0}.loading{color:var(--text-muted);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}h1{font-size:1rem;letter-spacing:.14em;margin-bottom:.5rem}h1,h2{font-weight:700;text-transform:uppercase;line-height:1.4}h2{font-size:.875rem;letter-spacing:.16em;margin-bottom:.85rem}h3{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;line-height:1.4;margin-bottom:.5rem}p{margin-bottom:1rem}.grid-2{grid-template-columns:1fr 1fr;grid-gap:1rem}.grid-2,.grid-3{display:grid;gap:1rem}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:1rem}.stack{flex-direction:column;gap:1rem}.row,.stack{display:flex}.row{align-items:center;gap:.75rem}.mermaid-diagram{background:var(--bg);border:1px solid var(--border);border-radius:0;overflow-x:auto;padding:1rem}.mermaid-diagram svg{display:block;height:auto;margin:0 auto;max-width:100%}.md-body{line-height:1.7}.md-body>*+*{margin-top:.75rem}.md-body p{margin:0}.md-body h1{font-size:.875rem;margin-bottom:.25rem}.md-body h2{font-size:.8125rem;margin-bottom:.25rem}.md-body h3{font-size:.75rem;margin-bottom:.25rem}.md-body h4{font-size:.6875rem;margin-bottom:.25rem}.md-body ol,.md-body ul{padding-left:1.4rem;margin:.4rem 0}.md-body li+li{margin-top:.2rem}.md-body hr{border:none;border-top:1px solid var(--border);margin:.75rem 0}.md-body pre{margin:.5rem 0}.md-body table{font-size:.7rem;margin:.5rem 0}.md-body td,.md-body th{padding:.3rem .5rem}.md-body th{font-size:.6rem;letter-spacing:.06em}@media (max-width:768px){.grid-2,.grid-3{grid-template-columns:1fr}nav .nav-inner{height:auto;flex-wrap:wrap;gap:.5rem;padding:.5rem 1rem}nav .links{gap:.3rem}}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_8b3a0b{font-family:Inter,Inter Fallback;font-style:normal}.__variable_8b3a0b{--font-inter:"Inter","Inter Fallback"}