@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_5901b7c6-module__ec5Qua__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_5901b7c6-module__ec5Qua__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.0s19wthhh_6~m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.0dza.stei.9v7.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.03nf~dfjdkf~..woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.0gfhww.tctz1o.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.09q3q1i5159bl.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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.1409xf.ylxg8g.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:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_707233f-module__9hS9bG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_707233f-module__9hS9bG__variable{--font-jetbrains-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--surface:#f8f9fb;--surface-dim:#d8dadc;--surface-bright:#f8f9fb;--surface-container-lowest:#fff;--surface-container-low:#f2f4f6;--surface-container:#eceef0;--surface-container-high:#e6e8ea;--surface-container-highest:#e0e3e5;--on-surface:#191c1e;--on-surface-variant:#44474b;--inverse-surface:#2d3133;--inverse-on-surface:#eff1f3;--outline:#75777b;--outline-variant:#c5c6cb;--surface-tint:#5a5f66;--primary:#10151a;--on-primary:#fff;--primary-container:#24292f;--on-primary-container:#8b9097;--inverse-primary:#c2c7cf;--secondary:#0058bb;--on-secondary:#fff;--secondary-container:#1e71e2;--on-secondary-container:#fefcff;--tertiary:#1c120c;--on-tertiary:#fff;--tertiary-container:#32261f;--on-tertiary-container:#9e8c83;--error:#ba1a1a;--on-error:#fff;--error-container:#ffdad6;--on-error-container:#93000a;--background:#f8f9fb;--on-background:#191c1e;--surface-variant:#e0e3e5;--primary-fixed:#dee3eb;--primary-fixed-dim:#c2c7cf;--on-primary-fixed:#171c22;--on-primary-fixed-variant:#42474e;--secondary-fixed:#d8e2ff;--secondary-fixed-dim:#adc6ff;--on-secondary-fixed:#001a41;--on-secondary-fixed-variant:#004493;--tertiary-fixed:#f4ded3;--tertiary-fixed-dim:#d7c2b8;--on-tertiary-fixed:#241913;--on-tertiary-fixed-variant:#52443c;--font-sans:var(--font-inter), sans-serif;--font-mono:var(--font-jetbrains-mono), monospace;--rounded-sm:.125rem;--rounded-md:.25rem;--rounded-lg:.5rem;--rounded-xl:.75rem;--rounded-full:9999px;--spacing-unit:4px;--container-max:1280px;--gutter:16px;--margin-mobile:16px;--margin-desktop:32px;--stack-sm:8px;--stack-md:16px;--stack-lg:24px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--duration-fast:.12s;--duration-base:.18s;--duration-slow:.26s}[data-theme=dark]{--surface:#191c1e;--surface-dim:#101418;--surface-bright:#36393e;--surface-container-lowest:#0b0f12;--surface-container-low:#101418;--surface-container:#191c1e;--surface-container-high:#272a2d;--surface-container-highest:#323538;--on-surface:#e0e3e5;--on-surface-variant:#c5c6cb;--inverse-surface:#e0e3e5;--inverse-on-surface:#2d3133;--outline:#8e9095;--outline-variant:#44474b;--surface-tint:#c2c7cf;--primary:#c2c7cf;--on-primary:#2c3137;--primary-container:#42474e;--on-primary-container:#dee3eb;--inverse-primary:#5a5f66;--secondary:#adc6ff;--on-secondary:#002e69;--secondary-container:#004493;--on-secondary-container:#d8e2ff;--tertiary:#d7c2b8;--on-tertiary:#3a2e28;--tertiary-container:#52443c;--on-tertiary-container:#f4ded3;--error:#ffb4ab;--on-error:#690005;--error-container:#93000a;--on-error-container:#ffdad6;--background:#101418;--on-background:#e0e3e5;--surface-variant:#44474b}
.prose{color:var(--on-surface-variant);font-size:14px;line-height:1.6}.prose p{margin-top:1.25em;margin-bottom:1.25em}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--on-background);margin-top:2em;margin-bottom:1em;font-weight:600;line-height:1.25}.prose h1{font-size:24px}.prose h2{font-size:20px}.prose h3{font-size:18px}.prose h4{font-size:16px}.prose a{color:var(--secondary);text-underline-offset:2px;text-decoration:underline}.prose a:hover{color:var(--secondary-container)}.prose ul,.prose ol{margin-top:1.25em;margin-bottom:1.25em;padding-left:1.625em}.prose li{margin-top:.5em;margin-bottom:.5em}.prose blockquote{border-left:4px solid var(--outline-variant);color:var(--on-surface-variant);margin-top:1.6em;margin-bottom:1.6em;padding-left:1em;font-style:italic}.prose hr{border:0;border-top:1px solid var(--outline-variant);margin-top:3em;margin-bottom:3em}.prose pre{background-color:var(--surface-container);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);font-family:var(--font-mono);margin-top:1.5em;margin-bottom:1.5em;padding:1rem;font-size:13px;line-height:1.5;overflow-x:auto}.prose code{font-family:var(--font-mono);background-color:var(--surface-container-high);border-radius:var(--rounded-sm);padding:.2em .4em;font-size:.875em}.prose pre code{font-size:inherit;background-color:#0000;border-radius:0;padding:0}.hljs-comment,.hljs-quote{color:var(--outline);font-style:italic}.hljs-keyword,.hljs-selector-tag{color:#d73a49}[data-theme=dark] .hljs-keyword,[data-theme=dark] .hljs-selector-tag{color:#ff7b72}.hljs-string,.hljs-doctag,.hljs-regexp{color:#032f62}[data-theme=dark] .hljs-string,[data-theme=dark] .hljs-doctag,[data-theme=dark] .hljs-regexp{color:#a5d6ff}.hljs-title,.hljs-section,.hljs-name,.hljs-selector-id,.hljs-selector-class{color:#6f42c1}[data-theme=dark] .hljs-title,[data-theme=dark] .hljs-section,[data-theme=dark] .hljs-name,[data-theme=dark] .hljs-selector-id,[data-theme=dark] .hljs-selector-class{color:#d2a8ff}.hljs-variable,.hljs-template-variable{color:#24292e}[data-theme=dark] .hljs-variable,[data-theme=dark] .hljs-template-variable{color:#c9d1d9}.hljs-built_in,.hljs-type{color:#005cc5}[data-theme=dark] .hljs-built_in,[data-theme=dark] .hljs-type{color:#79c0ff}.prose table{border-collapse:collapse;width:100%;margin-top:2em;margin-bottom:2em}.prose th,.prose td{border:1px solid var(--outline-variant);text-align:left;padding:.5em 1em}.prose th{background-color:var(--surface-container);font-weight:600}.prose .mermaid{background-color:var(--surface);border:1px solid var(--outline-variant);border-radius:var(--rounded-md);justify-content:center;margin-top:1.5em;margin-bottom:1.5em;padding:1.5rem;display:flex}
*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background-color:var(--background);color:var(--on-background);line-height:1.5;font-family:var(--font-sans);transition:background-color var(--duration-base) ease, color var(--duration-base) ease}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root,#__next{isolation:isolate}h1,h2,h3,h4,h5,h6{color:var(--on-background)}a{color:var(--secondary);transition:color var(--duration-fast) ease;text-decoration:none}a:hover{color:var(--secondary-container)}:focus-visible{outline:2px solid var(--secondary);outline-offset:2px;border-radius:var(--rounded-sm)}.container{max-width:var(--container-max);padding:0 var(--margin-mobile);margin:0 auto}@media (min-width:768px){.container{padding:0 var(--margin-desktop)}}
.ThemeToggle-module__gv9_OW__toggle{border:1px solid var(--outline-variant);color:var(--on-surface-variant);border-radius:var(--rounded-md);cursor:pointer;width:32px;height:32px;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease, border-color var(--duration-fast) ease, transform var(--duration-fast) var(--ease-out);background:0 0;justify-content:center;align-items:center;display:flex}@media (hover:hover) and (pointer:fine){.ThemeToggle-module__gv9_OW__toggle:hover{background:var(--surface-container);color:var(--on-surface);border-color:var(--outline)}}.ThemeToggle-module__gv9_OW__toggle:active{transform:scale(.9)}.ThemeToggle-module__gv9_OW__placeholder{width:32px;height:32px}
.Navbar-module__cRh5nW__header{border-bottom:1px solid var(--outline-variant);background-color:var(--surface);z-index:50;position:sticky;top:0}.Navbar-module__cRh5nW__container{justify-content:space-between;align-items:center;height:60px;display:flex}.Navbar-module__cRh5nW__logo{font-family:var(--font-mono);font-size:16px;font-weight:600}.Navbar-module__cRh5nW__logo a{color:var(--on-surface);transition:color var(--duration-fast) ease}.Navbar-module__cRh5nW__accent{color:var(--secondary)}.Navbar-module__cRh5nW__nav{display:none}@media (min-width:768px){.Navbar-module__cRh5nW__nav{align-items:center;gap:var(--stack-md);display:flex}}.Navbar-module__cRh5nW__navLink{color:var(--on-surface-variant);border-radius:var(--rounded-md);transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:500;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.Navbar-module__cRh5nW__navLink:hover{color:var(--on-surface);background-color:var(--surface-container-high)}}.Navbar-module__cRh5nW__navLink.Navbar-module__cRh5nW__active{color:var(--secondary);background-color:var(--secondary-fixed)}[data-theme=dark] .Navbar-module__cRh5nW__navLink.Navbar-module__cRh5nW__active{background-color:var(--secondary-container);color:var(--on-secondary-container)}.Navbar-module__cRh5nW__icon{opacity:.8}.Navbar-module__cRh5nW__actions{align-items:center;gap:8px;display:flex}.Navbar-module__cRh5nW__menuToggle{border:1px solid var(--outline-variant);width:32px;height:32px;color:var(--on-surface-variant);border-radius:var(--rounded-md);cursor:pointer;transition:background-color var(--duration-fast) ease, color var(--duration-fast) ease, border-color var(--duration-fast) ease;background:0 0;justify-content:center;align-items:center;display:flex}@media (hover:hover) and (pointer:fine){.Navbar-module__cRh5nW__menuToggle:hover{background-color:var(--surface-container);color:var(--on-surface);border-color:var(--outline)}}.Navbar-module__cRh5nW__menuToggle:active{transform:scale(.94)}@media (min-width:768px){.Navbar-module__cRh5nW__menuToggle{display:none}}.Navbar-module__cRh5nW__mobileMenu{opacity:0;transition:grid-template-rows var(--duration-slow) var(--ease-in-out), opacity var(--duration-base) var(--ease-out), border-color var(--duration-slow) var(--ease-in-out);border-top:1px solid #0000;grid-template-rows:0fr;display:grid}.Navbar-module__cRh5nW__mobileMenu>*{min-height:0;overflow:hidden}.Navbar-module__cRh5nW__mobileMenuOpen{opacity:1;border-top:1px solid var(--outline-variant);grid-template-rows:1fr}@media (min-width:768px){.Navbar-module__cRh5nW__mobileMenu{display:none}}.Navbar-module__cRh5nW__mobileNav{padding:var(--stack-sm) var(--margin-mobile) var(--stack-md);flex-direction:column;gap:4px;display:flex}.Navbar-module__cRh5nW__mobileNavLink{color:var(--on-surface-variant);border-radius:var(--rounded-md);transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease;align-items:center;gap:10px;padding:10px 12px;font-size:15px;font-weight:500;display:flex}.Navbar-module__cRh5nW__mobileNavLink:active{background-color:var(--surface-container-high)}.Navbar-module__cRh5nW__mobileNavLink.Navbar-module__cRh5nW__active{color:var(--secondary);background-color:var(--secondary-fixed)}[data-theme=dark] .Navbar-module__cRh5nW__mobileNavLink.Navbar-module__cRh5nW__active{background-color:var(--secondary-container);color:var(--on-secondary-container)}
.Footer-module__3hUVsW__footer{border-top:1px solid var(--outline-variant);background-color:var(--surface);margin-top:64px;padding:32px 0}.Footer-module__3hUVsW__container{justify-content:center;align-items:center;display:flex}.Footer-module__3hUVsW__text{color:var(--on-surface-variant);font-size:14px}
