@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-cyrillic-ext-wght-normal.0w5-20wrij2y1.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-cyrillic-wght-normal.1fjuga16p-_i_.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-greek-wght-normal.1bpl7wsc6313m.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-vietnamese-wght-normal.3t024er0ypawq.woff2)format("woff2-variations");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:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-latin-ext-wght-normal.3t_7mbg42824f.woff2)format("woff2-variations");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:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(../media/ibm-plex-sans-latin-wght-normal.15jby9eboz7vb.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-ext-wght-normal.1ladf10s224e1.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-cyrillic-wght-normal.0x7cg5h5x34js.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-greek-wght-normal.1k07jbkicvzf3.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-vietnamese-wght-normal.0a13tgqsi9z78.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-ext-wght-normal.3rxtet6g9i1k3.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(../media/jetbrains-mono-latin-wght-normal.2rmhnsrc80fag.woff2)format("woff2-variations");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}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ab-ink:#0b0d10;--ab-surface:#12151a;--ab-surface-2:#181c22;--ab-line:#262b33;--ab-text:#e8eaed;--ab-muted:#9aa3ad;--ab-faint:#78828e;--ab-fine:#8d97a3;--ab-running:#3ecf8e;--ab-waiting:#f5b544;--ab-done:#6aa8ff;--ab-failed:#f2685c;--ab-running-text:#5fe0a6;--ab-waiting-text:#f5b544;--ab-done-text:#8dbcff;--ab-failed-text:#f58b81;--ab-font:"IBM Plex Sans Variable", system-ui, sans-serif;--ab-mono:"JetBrains Mono Variable", ui-monospace, monospace;--c-accent-low:#0f2a20;--c-accent:#3ecf8e;--c-accent-high:#b8f5d6;--c-accent-text:#7de8b4;--c-white:#fff;--c-gray-1:#e8eaed;--c-gray-2:#c3c9d0;--c-gray-3:#9aa3ad;--c-gray-4:#78828e;--c-gray-5:#343a43;--c-gray-6:#181c22;--c-black:#0b0d10;--fw-1:#3987e5;--fw-2:#d95926;--fw-3:#199e70;--fw-4:#9085e9}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ab-ink:#fafaf9;--ab-surface:#f2f3f1;--ab-surface-2:#e9ebe8;--ab-line:#dcdfdb;--ab-text:#14171a;--ab-muted:#4a535c;--ab-faint:#6b747e;--ab-fine:#55606a;--ab-running:#12915c;--ab-waiting:#b87400;--ab-done:#2563c9;--ab-failed:#c2372b;--ab-running-text:#0b7a4b;--ab-waiting-text:#8a5a00;--ab-done-text:#1d4fa3;--ab-failed-text:#b3392e;--c-accent-low:#d8f3e5;--c-accent:#12915c;--c-accent-high:#0a4f33;--c-accent-text:#0b7a4b;--c-white:#14171a;--c-gray-1:#1b1f23;--c-gray-2:#343b42;--c-gray-3:#4a535c;--c-gray-4:#6b747e;--c-gray-5:#d5d9d4;--c-gray-6:#eceeeb;--c-black:#fff;--fw-1:#2a78d6;--fw-2:#eb6834;--fw-3:#1baf7a;--fw-4:#6250d6}
:root{--ab-base:#0b0d10;--glass-bg:#12151a;--glass-bg-strong:#181c22;--glass-bg-soft:#ffffff08;--glass-border:#262b33;--glass-border-strong:#343a43;--glass-highlight:none;--glass-shadow:0 1px 2px #0006}:root[data-theme=light]{--ab-base:#fafaf9;--glass-bg:#fff;--glass-bg-strong:#fff;--glass-bg-soft:#14171a08;--glass-border:#dcdfdb;--glass-border-strong:#c4c9c3;--glass-shadow:0 1px 2px #14171a0f}html{background:var(--ab-base)}body{background:0 0}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}
*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{color:var(--ab-text);font-family:var(--ab-font);-webkit-font-smoothing:antialiased;-moz-text-size-adjust:100%;text-size-adjust:100%;line-height:1.6}body{min-height:100vh;margin:0;position:relative;overflow-x:clip}img,svg{max-width:100%}a{color:var(--ab-running-text);text-underline-offset:.2em}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ab-running);outline-offset:3px;border-radius:6px}:root[data-theme=light] :focus-visible{outline-color:var(--c-accent)}.skip{position:absolute;top:0;left:-999px}.skip:focus{background:var(--glass-bg-strong);color:var(--ab-text);z-index:100;border-radius:999px;padding:.5rem .8rem;top:1rem;left:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shiki,.shiki span{color:var(--shiki-dark);font-style:var(--shiki-dark-font-style);font-weight:var(--shiki-dark-font-weight)}:root[data-theme=light] .shiki,:root[data-theme=light] .shiki span{color:var(--shiki-light);font-style:var(--shiki-light-font-style);font-weight:var(--shiki-light-font-weight)}.shiki{background:0 0!important}pre,code,kbd{font-family:var(--ab-mono)}[data-tab-panel]:not([data-active]):not(html[data-lang=python] .ab-synced[data-has-python]:not([data-hydrated]) [data-tab-lang=python],html[data-lang=typescript] .ab-synced[data-has-typescript]:not([data-hydrated]) [data-tab-lang=typescript],html[data-lang=rust] .ab-synced[data-has-rust]:not([data-hydrated]) [data-tab-lang=rust]),html[data-lang=python] .ab-synced[data-has-python]:not([data-hydrated]) [data-tab-panel]:not([data-tab-lang=python]),html[data-lang=typescript] .ab-synced[data-has-typescript]:not([data-hydrated]) [data-tab-panel]:not([data-tab-lang=typescript]),html[data-lang=rust] .ab-synced[data-has-rust]:not([data-hydrated]) [data-tab-panel]:not([data-tab-lang=rust]){display:none}.theme-toggle{min-width:2.5rem;min-height:2.5rem;color:var(--ab-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:0 .7rem;font-size:.9rem;font-weight:650;transition:background-color .15s,color .15s;display:inline-flex}.theme-toggle:hover{color:var(--ab-text);background:var(--glass-bg-soft);border-color:var(--glass-border)}.theme-toggle svg{width:1.1rem;height:1.1rem}.icon-button{width:2.5rem;height:2.5rem;color:var(--ab-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover{color:var(--ab-text);background:var(--glass-bg-soft);border-color:var(--glass-border)}.icon-button svg{width:1.25rem;height:1.25rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}.theme-toggle .when-dark,.theme-toggle .when-light{align-items:center;gap:.4rem;display:inline-flex}:root[data-theme=light] .theme-toggle .when-dark,:root:not([data-theme=light]) .theme-toggle .when-light{display:none}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}html.theme-fade,html.theme-fade *,html.theme-fade :before,html.theme-fade :after{transition:background-color .35s,color .35s,border-color .35s,fill .35s,stroke .35s!important}@keyframes theme-icon-in{0%{opacity:0;transform:rotate(-90deg)scale(.5)}to{opacity:1;transform:none}}.theme-toggle .when-dark svg,.theme-toggle .when-light svg{animation:.45s cubic-bezier(.22,1,.36,1) theme-icon-in}@media (prefers-reduced-motion:reduce){.theme-toggle .when-dark svg,.theme-toggle .when-light svg{animation:none}}.logo-mark{flex:none;display:block;overflow:visible}.logo-hex{stroke:var(--ab-running);stroke-dasharray:1;stroke-dashoffset:0;animation:.8s cubic-bezier(.22,1,.36,1) both logo-draw}.logo-body{fill:color-mix(in srgb, var(--ab-running) 20%, transparent)}.logo-core{fill:var(--ab-waiting);transform-box:fill-box;transform-origin:50%;animation:.5s cubic-bezier(.34,1.56,.64,1) .6s backwards logo-pop,1.1s ease-in-out 1.2s logo-pulse}.logo-ignite,.logo-flame,.logo-flame-core{transform-box:fill-box;transform-origin:top}.logo-ignite{animation:.45s ease-out .7s backwards logo-ignite}.logo-flame{stroke:var(--ab-waiting);fill:color-mix(in srgb, var(--ab-waiting) 40%, transparent);animation:.9s ease-in-out 1.15s infinite logo-flicker}.logo-flame-core{fill:color-mix(in srgb, var(--ab-waiting) 60%, #fff8e6);animation:.55s ease-in-out 1.15s infinite alternate logo-flicker-core}:root[data-theme=light] .logo-flame-core{fill:var(--ab-waiting)}.logo-rocket{transform-box:view-box}.logo-smoke circle{fill:color-mix(in srgb, var(--ab-muted) 55%, transparent);opacity:0;transform-box:fill-box;transform-origin:50%}.brand:hover .logo-rocket,.dh-brand:hover .logo-rocket,.brand:focus-visible .logo-rocket,.dh-brand:focus-visible .logo-rocket{animation:1.3s cubic-bezier(.45,0,.25,1) both logo-launch}.brand:hover .logo-flame,.dh-brand:hover .logo-flame,.brand:focus-visible .logo-flame,.dh-brand:focus-visible .logo-flame{animation:.16s ease-in-out infinite alternate logo-roar}.brand:hover .logo-flame-core,.dh-brand:hover .logo-flame-core,.brand:focus-visible .logo-flame-core,.dh-brand:focus-visible .logo-flame-core{animation:.12s ease-in-out infinite alternate logo-roar-core}.brand:hover .logo-smoke circle,.dh-brand:hover .logo-smoke circle,.brand:focus-visible .logo-smoke circle,.dh-brand:focus-visible .logo-smoke circle{animation:.75s ease-out infinite logo-puff}.brand:hover .logo-smoke circle:nth-child(2),.dh-brand:hover .logo-smoke circle:nth-child(2),.brand:focus-visible .logo-smoke circle:nth-child(2),.dh-brand:focus-visible .logo-smoke circle:nth-child(2){animation-delay:.25s}.brand:hover .logo-smoke circle:nth-child(3),.dh-brand:hover .logo-smoke circle:nth-child(3),.brand:focus-visible .logo-smoke circle:nth-child(3),.dh-brand:focus-visible .logo-smoke circle:nth-child(3){animation-delay:.5s}@keyframes logo-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes logo-pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes logo-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes logo-ignite{0%{opacity:0;transform:scaleY(0)}60%{opacity:1;transform:scaleY(1.5)}to{opacity:1;transform:scaleY(1)}}@keyframes logo-flicker{0%,to{transform:scale(1)}25%{transform:scale(.92,1.16)}50%{transform:scale(1.05,.9)}75%{transform:scale(.96,1.1)}}@keyframes logo-flicker-core{0%{opacity:.85;transform:scaleY(.85)}to{opacity:1;transform:scale(.9,1.2)}}@keyframes logo-roar{0%{transform:scale(1.05,1.45)}to{transform:scale(.92,1.75)}}@keyframes logo-roar-core{0%{transform:scaleY(1.5)}to{transform:scale(.85,1.9)}}@keyframes logo-launch{0%{transform:translate(0)}6%{transform:translate(-.5px,.3px)}12%{transform:translate(.5px)}18%{transform:translate(-.5px,.3px)}24%{transform:translate(.4px)}30%{transform:translate(0)}55%{transform:translateY(-8px)}to{transform:translate(0)}}@keyframes logo-puff{0%{opacity:.6;transform:translateY(-1px)scale(.5)}to{opacity:0;transform:translateY(4px)scale(1.8)}}@media (prefers-reduced-motion:reduce){.logo-hex,.logo-core,.logo-ignite,.logo-flame,.logo-flame-core,.logo-rocket,.logo-smoke circle,.brand:hover *,.dh-brand:hover *,.brand:focus-visible *,.dh-brand:focus-visible *{animation:none!important}}.watermark{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.watermark-mark{shape-rendering:geometricprecision;width:112vmin;max-width:none;height:112vmin;position:absolute;top:6vh;right:-14vmin;overflow:visible}.watermark-hex{stroke:var(--ab-running);opacity:.1;stroke-dasharray:1;stroke-dashoffset:0;animation:2.6s cubic-bezier(.22,1,.36,1) both watermark-draw,9s ease-in-out 2.6s infinite watermark-breathe}.watermark-core{fill:var(--ab-waiting);opacity:.12;animation:1.2s ease-out 1.8s backwards watermark-fade-in,6s ease-in-out 3.2s infinite watermark-pulse}.watermark-flame{stroke:var(--ab-waiting);opacity:.12;animation:1.2s ease-out 1.8s backwards watermark-fade-in,1.4s ease-in-out 3s infinite watermark-flicker}.watermark-flame-core{fill:var(--ab-waiting);opacity:.1;animation:1.2s ease-out 2s backwards watermark-fade-in,.9s ease-in-out 3s infinite alternate watermark-flicker-core}@keyframes watermark-flicker{0%,to{opacity:.12}30%{opacity:.2}55%{opacity:.09}80%{opacity:.17}}@keyframes watermark-flicker-core{0%{opacity:.06}to{opacity:.2}}:root[data-theme=light] .watermark-hex{opacity:.12}:root[data-theme=light] .watermark-core{opacity:.16}@keyframes watermark-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes watermark-breathe{0%,to{opacity:.1}50%{opacity:.17}}@keyframes watermark-fade-in{0%{opacity:0}to{opacity:.12}}@keyframes watermark-pulse{0%,to{opacity:.12}50%{opacity:.26}}@media (max-width:50rem){.watermark-mark{width:130vmin;height:130vmin;right:-30vmin}}@media (prefers-reduced-motion:reduce){.watermark-hex,.watermark-flame,.watermark-flame-core,.watermark-core{animation:none}}
