@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-cyrillic-ext-wght-normal.DjL33-gN.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-vietnamese-wght-normal.6IgcOCM7.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-latin-ext-wght-normal.DC-KSUi6.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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-latin-wght-normal.BgDaEnEv.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-vietnamese-wght-normal.DadHysG0.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-latin-ext-wght-normal.Bwz-egvJ.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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/tinystore/_app/immutable/assets/geist-mono-latin-wght-normal.XN7g48iV.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{--ts-bg:#f7f6f9;--ts-text:#23212b;--ts-text-body:#3b3946;--ts-text-lead:#5d5a67;--ts-text-note:#2b2933;--ts-muted:#6b6775;--ts-muted-2:#6f6b7d;--ts-faint:#6b6775;--ts-dim:#716d80;--ts-line:#e2dfe9;--ts-border:#dcd9e4;--ts-border-2:#d9d6e1;--ts-border-3:#cdc9d6;--ts-border-strong:#b4b0c0;--ts-surface:#efedf3;--ts-surface-2:#e7e4ed;--ts-hover:#ebe8f0;--ts-pill:#e9e6ee;--ts-chip:#e2dfe9;--ts-kbd:#e9e6ee;--ts-row-hover:#f1eff5;--ts-dialog:#fff;--ts-dialog-foot:#f1eff5;--ts-accent:#e29a36;--ts-accent-text:#a85f0b;--ts-accent-ink:#17130a;--ts-accent-line:#e3c28e;--ts-logo-top:#c97a12;--ts-danger:#b5311f;--ts-ok:#2f7d4f;--ts-accent-soft:#f6e3c4;--ts-danger-soft:#f6dcd7;--ts-overlay:#ece9f2bd;--ts-shadow:#23212b47;--ts-sans:"Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ts-mono:"Geist Mono Variable", ui-monospace, "SF Mono", "Cascadia Mono", monospace;--ts-header:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ts-bg:#141318;--ts-text:#eceaf3;--ts-text-body:#cfccda;--ts-text-lead:#a29fb0;--ts-text-note:#d8d5e2;--ts-muted:#9a97a8;--ts-muted-2:#8f8c9e;--ts-faint:#7d7a8b;--ts-dim:#6f6b7d;--ts-line:#26242d;--ts-border:#2a2832;--ts-border-2:#2d2b35;--ts-border-3:#33303c;--ts-border-strong:#4d4a58;--ts-surface:#1b1a21;--ts-surface-2:#201e27;--ts-hover:#1d1b23;--ts-pill:#1f1d25;--ts-chip:#26242d;--ts-kbd:#16151b;--ts-row-hover:#18171d;--ts-dialog:#1b1a21;--ts-dialog-foot:#17161c;--ts-accent-text:#e29a36;--ts-accent-line:#5a4320;--ts-logo-top:#e29a36;--ts-danger:#f0857a;--ts-ok:#6fcf97;--ts-accent-soft:#3a2b14;--ts-danger-soft:#3a1c19;--ts-overlay:#0a090db8;--ts-shadow:#000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--ts-bg:#141318;--ts-text:#eceaf3;--ts-text-body:#cfccda;--ts-text-lead:#a29fb0;--ts-text-note:#d8d5e2;--ts-muted:#9a97a8;--ts-muted-2:#8f8c9e;--ts-faint:#7d7a8b;--ts-dim:#6f6b7d;--ts-line:#26242d;--ts-border:#2a2832;--ts-border-2:#2d2b35;--ts-border-3:#33303c;--ts-border-strong:#4d4a58;--ts-surface:#1b1a21;--ts-surface-2:#201e27;--ts-hover:#1d1b23;--ts-pill:#1f1d25;--ts-chip:#26242d;--ts-kbd:#16151b;--ts-row-hover:#18171d;--ts-dialog:#1b1a21;--ts-dialog-foot:#17161c;--ts-accent-text:#e29a36;--ts-accent-line:#5a4320;--ts-logo-top:#e29a36;--ts-danger:#f0857a;--ts-ok:#6fcf97;--ts-accent-soft:#3a2b14;--ts-danger-soft:#3a1c19;--ts-overlay:#0a090db8;--ts-shadow:#000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--ts-header) + 24px);scrollbar-gutter:stable;-webkit-tap-highlight-color:transparent}html:has(dialog[open]){overflow:hidden}body{background:var(--ts-bg);color:var(--ts-text);font-family:var(--ts-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button,summary{transition:color .15s,background-color .15s,border-color .15s,transform .1s}@media (prefers-reduced-motion:reduce){a,button,summary{transition:none}}code,pre,kbd{font-family:var(--ts-mono)}:focus-visible{outline:2px solid var(--ts-accent);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}kbd{color:var(--ts-muted);border:1px solid var(--ts-border-2);background:var(--ts-kbd);border-radius:5px;padding:1px 6px;font-size:12px;line-height:1.4}::view-transition-old(root){animation-duration:.3s}::view-transition-new(root){animation-duration:.3s}:root[data-look=light],[data-look=light]{--ts-bg:#f7f6f9;--ts-text:#23212b;--ts-text-body:#3b3946;--ts-text-lead:#5d5a67;--ts-text-note:#2b2933;--ts-muted:#6b6775;--ts-muted-2:#6f6b7d;--ts-faint:#6b6775;--ts-dim:#716d80;--ts-line:#e2dfe9;--ts-border:#dcd9e4;--ts-border-2:#d9d6e1;--ts-border-3:#cdc9d6;--ts-border-strong:#b4b0c0;--ts-surface:#efedf3;--ts-surface-2:#e7e4ed;--ts-hover:#ebe8f0;--ts-pill:#e9e6ee;--ts-chip:#e2dfe9;--ts-kbd:#e9e6ee;--ts-row-hover:#f1eff5;--ts-dialog:#fff;--ts-dialog-foot:#f1eff5;--ts-accent:#e29a36;--ts-accent-text:#a85f0b;--ts-accent-ink:#17130a;--ts-accent-line:#e3c28e;--ts-logo-top:#c97a12;--ts-danger:#b5311f;--ts-ok:#2f7d4f;--ts-accent-soft:#f6e3c4;--ts-danger-soft:#f6dcd7;--ts-overlay:#ece9f2bd;--ts-shadow:#23212b47;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-look=paper],[data-look=paper]{--ts-bg:#f8f4ec;--ts-text:#23212b;--ts-text-body:#3b3946;--ts-text-lead:#5d5a67;--ts-text-note:#2b2933;--ts-muted:#6b6775;--ts-muted-2:#6f6b7d;--ts-faint:#6b6775;--ts-dim:#716d80;--ts-line:#e7dfcf;--ts-border:#e1d8c6;--ts-border-2:#ddd3c0;--ts-border-3:#d2c6b1;--ts-border-strong:#b4b0c0;--ts-surface:#f1ebdf;--ts-surface-2:#eae2d3;--ts-hover:#eee7da;--ts-pill:#ebe3d4;--ts-chip:#e5dbc9;--ts-kbd:#ebe3d4;--ts-row-hover:#f3eee4;--ts-dialog:#fffcf6;--ts-dialog-foot:#f3eee4;--ts-accent:#e29a36;--ts-accent-text:#a85f0b;--ts-accent-ink:#17130a;--ts-accent-line:#e3c28e;--ts-logo-top:#c97a12;--ts-danger:#b5311f;--ts-ok:#2f7d4f;--ts-accent-soft:#f6e3c4;--ts-danger-soft:#f6dcd7;--ts-overlay:#f0e9dcbd;--ts-shadow:#23212b47;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-look=github-light],[data-look=github-light]{--ts-bg:#fff;--ts-text:#1f2328;--ts-text-body:#1f2328;--ts-text-lead:#394048;--ts-text-note:#1f2328;--ts-muted:#59636e;--ts-muted-2:#59636e;--ts-faint:#818b98;--ts-dim:#818b98;--ts-line:#d8dee4;--ts-border:#d0d7de;--ts-border-2:#d0d7de;--ts-border-3:#c3cbd2;--ts-border-strong:#afb8c1;--ts-surface:#f6f8fa;--ts-surface-2:#eff2f5;--ts-hover:#f3f5f8;--ts-pill:#eff2f5;--ts-chip:#eff2f5;--ts-kbd:#f6f8fa;--ts-row-hover:#f6f8fa;--ts-dialog:#fff;--ts-dialog-foot:#f6f8fa;--ts-accent:#0969da;--ts-accent-text:#0969da;--ts-accent-ink:#fff;--ts-accent-line:#90bcee;--ts-logo-top:#0969da;--ts-danger:#cf222e;--ts-ok:#1a7f37;--ts-accent-soft:#d8e7f9;--ts-danger-soft:#f7dcde;--ts-overlay:#ffffffbd;--ts-shadow:#1f232833;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-look=solarized-light],[data-look=solarized-light]{--ts-bg:#fdf6e3;--ts-text:#073642;--ts-text-body:#3f5560;--ts-text-lead:#506670;--ts-text-note:#3f5560;--ts-muted:#657b83;--ts-muted-2:#657b83;--ts-faint:#93a1a1;--ts-dim:#93a1a1;--ts-line:#e5dcc3;--ts-border:#ddd6c1;--ts-border-2:#ddd6c1;--ts-border-3:#cfc8b3;--ts-border-strong:#b9b29f;--ts-surface:#eee8d5;--ts-surface-2:#e6dfca;--ts-hover:#eae4d0;--ts-pill:#e6dfca;--ts-chip:#e6dfca;--ts-kbd:#eee8d5;--ts-row-hover:#eee8d5;--ts-dialog:#fffbf0;--ts-dialog-foot:#eee8d5;--ts-accent:#268bd2;--ts-accent-text:#1f6fa8;--ts-accent-ink:#fdf6e3;--ts-accent-line:#9cc6db;--ts-logo-top:#268bd2;--ts-danger:#c4291f;--ts-ok:#5f6f00;--ts-accent-soft:#dbe5e0;--ts-danger-soft:#f4d5c4;--ts-overlay:#fdf6e3bd;--ts-shadow:#1f232833;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-look=rose-pine-dawn],[data-look=rose-pine-dawn]{--ts-bg:#faf4ed;--ts-text:#575279;--ts-text-body:#575279;--ts-text-lead:#666285;--ts-text-note:#575279;--ts-muted:#797593;--ts-muted-2:#797593;--ts-faint:#9893a5;--ts-dim:#9893a5;--ts-line:#f2e9e1;--ts-border:#dfdad9;--ts-border-2:#dfdad9;--ts-border-3:#d8d4d4;--ts-border-strong:#cecacd;--ts-surface:#fffaf3;--ts-surface-2:#f2e9e1;--ts-hover:#f9f2ea;--ts-pill:#f2e9e1;--ts-chip:#f2e9e1;--ts-kbd:#fffaf3;--ts-row-hover:#fffaf3;--ts-dialog:#fffaf3;--ts-dialog-foot:#fffaf3;--ts-accent:#907aa9;--ts-accent-text:#7a6497;--ts-accent-ink:#faf4ed;--ts-accent-line:#cabdce;--ts-logo-top:#907aa9;--ts-danger:#b4637a;--ts-ok:#3f7f89;--ts-accent-soft:#e9e0e2;--ts-danger-soft:#efdddb;--ts-overlay:#faf4edbd;--ts-shadow:#1f232833;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-look=dark],[data-look=dark]{--ts-bg:#141318;--ts-text:#eceaf3;--ts-text-body:#cfccda;--ts-text-lead:#a29fb0;--ts-text-note:#d8d5e2;--ts-muted:#9a97a8;--ts-muted-2:#8f8c9e;--ts-faint:#7d7a8b;--ts-dim:#6f6b7d;--ts-line:#26242d;--ts-border:#2a2832;--ts-border-2:#2d2b35;--ts-border-3:#33303c;--ts-border-strong:#4d4a58;--ts-surface:#1b1a21;--ts-surface-2:#201e27;--ts-hover:#1d1b23;--ts-pill:#1f1d25;--ts-chip:#26242d;--ts-kbd:#16151b;--ts-row-hover:#18171d;--ts-dialog:#1b1a21;--ts-dialog-foot:#17161c;--ts-accent:#e29a36;--ts-accent-text:#e29a36;--ts-accent-ink:#17130a;--ts-accent-line:#5a4320;--ts-logo-top:#e29a36;--ts-danger:#f0857a;--ts-ok:#6fcf97;--ts-accent-soft:#3a2b14;--ts-danger-soft:#3a1c19;--ts-overlay:#0a090db8;--ts-shadow:#000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=black],[data-look=black]{--ts-bg:#000;--ts-text:#eceaf3;--ts-text-body:#cfccda;--ts-text-lead:#a29fb0;--ts-text-note:#d8d5e2;--ts-muted:#9a97a8;--ts-muted-2:#8f8c9e;--ts-faint:#7d7a8b;--ts-dim:#6f6b7d;--ts-line:#1b1a20;--ts-border:#201f26;--ts-border-2:#24222a;--ts-border-3:#2b2932;--ts-border-strong:#4d4a58;--ts-surface:#0c0c0f;--ts-surface-2:#111014;--ts-hover:#111014;--ts-pill:#141318;--ts-chip:#1b1a20;--ts-kbd:#0a0a0c;--ts-row-hover:#0b0b0e;--ts-dialog:#0e0d11;--ts-dialog-foot:#0a0a0d;--ts-accent:#e29a36;--ts-accent-text:#e29a36;--ts-accent-ink:#17130a;--ts-accent-line:#5a4320;--ts-logo-top:#e29a36;--ts-danger:#f0857a;--ts-ok:#6fcf97;--ts-accent-soft:#3a2b14;--ts-danger-soft:#3a1c19;--ts-overlay:#000000bf;--ts-shadow:#000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=github-dark],[data-look=github-dark]{--ts-bg:#0d1117;--ts-text:#f0f6fc;--ts-text-body:#d1d7e0;--ts-text-lead:#b4bbc4;--ts-text-note:#d1d7e0;--ts-muted:#9198a1;--ts-muted-2:#9198a1;--ts-faint:#6e7681;--ts-dim:#6e7681;--ts-line:#21262d;--ts-border:#30363d;--ts-border-2:#30363d;--ts-border-3:#3a4048;--ts-border-strong:#484f58;--ts-surface:#151b23;--ts-surface-2:#212830;--ts-hover:#1b222a;--ts-pill:#212830;--ts-chip:#212830;--ts-kbd:#151b23;--ts-row-hover:#151b23;--ts-dialog:#151b23;--ts-dialog-foot:#151b23;--ts-accent:#4493f8;--ts-accent-text:#4493f8;--ts-accent-ink:#0d1117;--ts-accent-line:#264c7c;--ts-logo-top:#4493f8;--ts-danger:#f85149;--ts-ok:#3fb950;--ts-accent-soft:#16263b;--ts-danger-soft:#331b1f;--ts-overlay:#0d1117bd;--ts-shadow:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=dracula],[data-look=dracula]{--ts-bg:#282a36;--ts-text:#f8f8f2;--ts-text-body:#e6e6e0;--ts-text-lead:#ced1d9;--ts-text-note:#e6e6e0;--ts-muted:#b0b8d1;--ts-muted-2:#b0b8d1;--ts-faint:#8592bd;--ts-dim:#8592bd;--ts-line:#343746;--ts-border:#44475a;--ts-border-2:#44475a;--ts-border-3:#505878;--ts-border-strong:#6272a4;--ts-surface:#21222c;--ts-surface-2:#343746;--ts-hover:#2b2d39;--ts-pill:#343746;--ts-chip:#343746;--ts-kbd:#21222c;--ts-row-hover:#21222c;--ts-dialog:#21222c;--ts-dialog-foot:#21222c;--ts-accent:#bd93f9;--ts-accent-text:#bd93f9;--ts-accent-ink:#282a36;--ts-accent-line:#6b598e;--ts-logo-top:#bd93f9;--ts-danger:#f55;--ts-ok:#50fa7b;--ts-accent-soft:#403b55;--ts-danger-soft:#4a313b;--ts-overlay:#282a36bd;--ts-shadow:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=nord],[data-look=nord]{--ts-bg:#2e3440;--ts-text:#eceff4;--ts-text-body:#d8dee9;--ts-text-lead:#c0c8d6;--ts-text-note:#d8dee9;--ts-muted:#a3adbf;--ts-muted-2:#a3adbf;--ts-faint:#8a96ad;--ts-dim:#8a96ad;--ts-line:#3b4252;--ts-border:#434c5e;--ts-border-2:#434c5e;--ts-border-3:#475063;--ts-border-strong:#4c566a;--ts-surface:#3b4252;--ts-surface-2:#434c5e;--ts-hover:#3f4758;--ts-pill:#434c5e;--ts-chip:#434c5e;--ts-kbd:#3b4252;--ts-row-hover:#3b4252;--ts-dialog:#3b4252;--ts-dialog-foot:#3b4252;--ts-accent:#88c0d0;--ts-accent-text:#88c0d0;--ts-accent-ink:#2e3440;--ts-accent-line:#577381;--ts-logo-top:#88c0d0;--ts-danger:#d08770;--ts-ok:#a3be8c;--ts-accent-soft:#3c4a57;--ts-danger-soft:#484148;--ts-overlay:#2e3440bd;--ts-shadow:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=tokyo-night],[data-look=tokyo-night]{--ts-bg:#1a1b26;--ts-text:#c0caf5;--ts-text-body:#a9b1d6;--ts-text-lead:#979fc5;--ts-text-note:#a9b1d6;--ts-muted:#8189b0;--ts-muted-2:#8189b0;--ts-faint:#6b739c;--ts-dim:#6b739c;--ts-line:#292e42;--ts-border:#2f334d;--ts-border-2:#2f334d;--ts-border-3:#343955;--ts-border-strong:#3b4261;--ts-surface:#16161e;--ts-surface-2:#1f2335;--ts-hover:#1b1d2a;--ts-pill:#1f2335;--ts-chip:#1f2335;--ts-kbd:#16161e;--ts-row-hover:#16161e;--ts-dialog:#16161e;--ts-dialog-foot:#16161e;--ts-accent:#7aa2f7;--ts-accent-text:#7aa2f7;--ts-accent-ink:#1a1b26;--ts-accent-line:#455884;--ts-logo-top:#7aa2f7;--ts-danger:#f7768e;--ts-ok:#9ece6a;--ts-accent-soft:#293147;--ts-danger-soft:#3d2a37;--ts-overlay:#1a1b26bd;--ts-shadow:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-look=catppuccin-mocha],[data-look=catppuccin-mocha]{--ts-bg:#1e1e2e;--ts-text:#cdd6f4;--ts-text-body:#bac2de;--ts-text-lead:#b1b9d4;--ts-text-note:#bac2de;--ts-muted:#a6adc8;--ts-muted-2:#a6adc8;--ts-faint:#8a8fa8;--ts-dim:#8a8fa8;--ts-line:#313244;--ts-border:#45475a;--ts-border-2:#45475a;--ts-border-3:#4d4f63;--ts-border-strong:#585b70;--ts-surface:#181825;--ts-surface-2:#313244;--ts-hover:#252535;--ts-pill:#313244;--ts-chip:#313244;--ts-kbd:#181825;--ts-row-hover:#181825;--ts-dialog:#181825;--ts-dialog-foot:#181825;--ts-accent:#cba6f7;--ts-accent-text:#cba6f7;--ts-accent-ink:#1e1e2e;--ts-accent-line:#6c5b88;--ts-logo-top:#cba6f7;--ts-danger:#f38ba8;--ts-ok:#a6e3a1;--ts-accent-soft:#3a344e;--ts-danger-soft:#402f42;--ts-overlay:#1e1e2ebd;--ts-shadow:#0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.prose{color:var(--ts-text-body);overflow-wrap:break-word;font-size:17.5px;line-height:1.75}.prose>:first-child{margin-top:0}.prose p{text-wrap:pretty;margin:0 0 20px}.prose p.lead{color:var(--ts-text-lead);margin:0 0 8px;font-size:21px;line-height:1.6}.prose h2,.prose h3,.prose h4{color:var(--ts-text);font-weight:600;position:relative}.prose h2{border-bottom:1px solid var(--ts-line);letter-spacing:-.035em;margin:72px 0 24px;padding-bottom:14px;font-size:32px;line-height:1.2}.prose h3{letter-spacing:-.02em;margin:44px 0 16px;font-size:22px;line-height:1.3}.prose h4{margin:32px 0 12px;font-size:18px;line-height:1.4}.prose .anchor{width:1em;color:var(--ts-border-strong);opacity:0;margin-left:-1em;font-weight:400;transition:opacity .12s;position:absolute}.prose h2:hover .anchor,.prose h3:hover .anchor,.prose h4:hover .anchor{opacity:1}.prose a:not(.anchor){color:var(--ts-text);text-decoration:underline;-webkit-text-decoration-color:var(--ts-border-strong);text-decoration-color:var(--ts-border-strong);text-underline-offset:3px;text-decoration-thickness:1px}.prose a:not(.anchor):hover{color:var(--ts-accent-text);text-decoration-color:currentColor}.prose strong{color:var(--ts-text);font-weight:600}.prose :not(pre)>code{color:var(--ts-text);background:var(--ts-surface-2);border:1px solid var(--ts-border);border-radius:6px;padding:2px 6px;font-size:.86em}.prose ul,.prose ol{margin:0 0 20px;padding-left:1.4em}.prose li{margin:6px 0}.prose li::marker{color:var(--ts-faint)}.prose li>p{margin-bottom:8px}.prose blockquote{border-left:2px solid var(--ts-border-2);color:var(--ts-muted);margin:0 0 20px;padding:2px 0 2px 18px}.prose hr{border:0;border-top:1px solid var(--ts-line);margin:48px 0}.prose img{max-width:100%;height:auto}.prose .callout{color:var(--ts-text-note);background:var(--ts-surface);border:1px solid var(--ts-border);border-radius:12px;margin:8px 0 28px;padding:18px 22px;font-size:17px;line-height:1.65}.prose .callout p{margin-bottom:10px}.prose .callout>:last-child{margin-bottom:0}.prose .callout p.callout-label{color:var(--ts-accent-text);font:500 12px / 1.4 var(--ts-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.prose .callout-caution p.callout-label{color:var(--ts-danger)}.prose .callout :not(pre)>code{background:var(--ts-chip);border-color:#0000}.prose .table{border:1px solid var(--ts-border);border-radius:12px;margin:8px 0 24px;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:15.5px;line-height:1.5}.prose th,.prose td{text-align:left;vertical-align:top;border-top:1px solid var(--ts-line);padding:13px 20px}.prose thead th{color:var(--ts-faint);font:500 12px / 1.4 var(--ts-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-top:0}.prose table.headless thead{display:none}.prose table.headless tbody tr:first-child td{border-top:0}.prose .table td code{color:var(--ts-text);background:0 0;border:0;padding:0;font-size:14px}.prose .table td:not(:first-child){color:var(--ts-text)}.code{background:var(--ts-surface);border:1px solid var(--ts-border-2);border-radius:12px;margin:26px 0 30px;overflow:hidden}.code-variant{display:none}.code-variant[data-default]{display:block}:is(:root[data-lang=bun] .code:has(>[data-variant=bun])>.code-variant,:root[data-lang=python] .code:has(>[data-variant=python])>.code-variant,:root[data-lang=go] .code:has(>[data-variant=go])>.code-variant,:root[data-lang=rust] .code:has(>[data-variant=rust])>.code-variant){display:none}:is(:root[data-lang=bun] .code:has(>[data-variant=bun])>[data-variant=bun],:root[data-lang=python] .code:has(>[data-variant=python])>[data-variant=python],:root[data-lang=go] .code:has(>[data-variant=go])>[data-variant=go],:root[data-lang=rust] .code:has(>[data-variant=rust])>[data-variant=rust]){display:block}.code-bar{background:var(--ts-surface-2);border-bottom:1px solid var(--ts-border-2);justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:0 8px 0 18px;display:flex}.code-title{color:var(--ts-muted-2);font:13px var(--ts-mono)}.code-files{align-self:stretch;margin-left:-18px;display:flex}.code-file{color:var(--ts-muted-2);border:0;border-top:2px solid #0000;border-right:1px solid var(--ts-border-2);font:13px var(--ts-mono);cursor:pointer;background:0 0;align-items:center;margin-bottom:-1px;padding:0 18px;display:flex}@media (hover:hover){.code-file:hover,.code-lang:hover,.code-copy:hover{color:var(--ts-text)}}.code-file[aria-selected=true]{color:var(--ts-text);background:var(--ts-surface);border-top-color:var(--ts-accent)}.code-tools{align-items:center;gap:2px;margin-left:auto;display:flex}.code-langs{gap:2px;display:flex}.code-lang{color:var(--ts-muted-2);font:500 13px var(--ts-sans);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 11px}.code-lang:active,.code-copy:active{background:var(--ts-chip)}.code-lang[aria-pressed=true]{color:var(--ts-text);background:var(--ts-chip)}.code-copy{width:30px;height:30px;color:var(--ts-faint);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;padding:0;display:flex}.code-copy .icon-done,.code-copy[data-copied] .icon-copy{display:none}.code-copy[data-copied] .icon-done{color:var(--ts-accent-text);display:block}.code pre{--code-pad-x:22px;padding:20px var(--code-pad-x) 22px;font:14px / 1.75 var(--ts-mono);tab-size:4;scrollbar-width:thin;scrollbar-color:var(--ts-border-strong) transparent;margin:0;overflow-x:auto}.code [data-variant=bun] pre{tab-size:2}.code pre code{font:inherit}.shiki span{color:var(--shiki-light)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .shiki span{color:var(--shiki-dark)}}:root[data-theme=dark] .shiki span{color:var(--shiki-dark)}:root:is([data-look=github-light],[data-look=solarized-light],[data-look=rose-pine-dawn],[data-look=github-dark],[data-look=dracula],[data-look=nord],[data-look=tokyo-night],[data-look=catppuccin-mocha]) .shiki span{color:var(--shiki-look)}:root[data-look=github-light]{--code-foreground:#1f2328;--code-comment:#59636e;--code-keyword:#cf222e;--code-string:#0a3069;--code-constant:#0550ae;--code-function:#8250df;--code-type:#953800;--code-parameter:#1f2328;--code-property:#0550ae;--code-punctuation:#1f2328}:root[data-look=solarized-light]{--code-foreground:#586e75;--code-comment:#93a1a1;--code-keyword:#859900;--code-string:#2aa198;--code-constant:#d33682;--code-function:#268bd2;--code-type:#b58900;--code-parameter:#586e75;--code-property:#268bd2;--code-punctuation:#657b83}:root[data-look=rose-pine-dawn]{--code-foreground:#575279;--code-comment:#9893a5;--code-keyword:#286983;--code-string:#ea9d34;--code-constant:#d7827e;--code-function:#d7827e;--code-type:#56949f;--code-parameter:#907aa9;--code-property:#907aa9;--code-punctuation:#797593}:root[data-look=github-dark]{--code-foreground:#e6edf3;--code-comment:#8b949e;--code-keyword:#ff7b72;--code-string:#a5d6ff;--code-constant:#79c0ff;--code-function:#d2a8ff;--code-type:#ffa657;--code-parameter:#e6edf3;--code-property:#79c0ff;--code-punctuation:#e6edf3}:root[data-look=dracula]{--code-foreground:#f8f8f2;--code-comment:#6272a4;--code-keyword:#ff79c6;--code-string:#f1fa8c;--code-constant:#bd93f9;--code-function:#50fa7b;--code-type:#8be9fd;--code-parameter:#ffb86c;--code-property:#f8f8f2;--code-punctuation:#f8f8f2}:root[data-look=nord]{--code-foreground:#d8dee9;--code-comment:#616e88;--code-keyword:#81a1c1;--code-string:#a3be8c;--code-constant:#b48ead;--code-function:#88c0d0;--code-type:#8fbcbb;--code-parameter:#d8dee9;--code-property:#d8dee9;--code-punctuation:#eceff4}:root[data-look=tokyo-night]{--code-foreground:#a9b1d6;--code-comment:#565f89;--code-keyword:#bb9af7;--code-string:#9ece6a;--code-constant:#ff9e64;--code-function:#7aa2f7;--code-type:#2ac3de;--code-parameter:#e0af68;--code-property:#73daca;--code-punctuation:#89ddff}:root[data-look=catppuccin-mocha]{--code-foreground:#cdd6f4;--code-comment:#9399b2;--code-keyword:#cba6f7;--code-string:#a6e3a1;--code-constant:#fab387;--code-function:#89b4fa;--code-type:#f9e2af;--code-parameter:#eba0ac;--code-property:#b4befe;--code-punctuation:#9399b2}@media (width<=720px){.prose{font-size:16.5px}.prose p.lead{font-size:19px}.prose h2{margin-top:56px;font-size:26px}.code{margin:22px 0 24px}.code-bar{flex-wrap:wrap;row-gap:8px;padding:8px 12px}.code-tools{justify-content:space-between;width:100%}.code-copy{border:1px solid var(--ts-border-2)}.code-title,.code-files{flex-basis:100%;order:2}.code-title:empty{display:none}.code-title{overflow-wrap:anywhere;font-size:12px}.code-files{flex-wrap:wrap;gap:6px;margin-left:0}.code-bar:has(span.code-langs)>:is(.code-title,.code-files){flex:1 1 0;order:0;min-width:0}.code-bar:has(span.code-langs)>.code-tools{width:auto}.code-file{border:1px solid var(--ts-border-2);border-radius:6px;margin:0;padding:3px 10px;font-size:12px}.code-file[aria-selected=true]{background:var(--ts-border-2);border-color:#0000}.code pre{--code-pad-x:16px;padding:14px var(--code-pad-x) 16px;font-size:12.5px;line-height:1.7}}.prose.api h2{font:600 22px / 1.3 var(--ts-mono);letter-spacing:-.01em;margin:64px 0 14px;padding-bottom:10px}.prose.api h3{color:var(--ts-text);font:500 16px / 1.4 var(--ts-mono);letter-spacing:0;margin:34px 0 10px}.prose.api p,.prose.api li{font-size:16px;line-height:1.7}.prose.api .code{border-radius:10px;margin:0 0 16px;position:relative}.prose.api .code-bar{background:0 0;border:0;min-height:0;padding:0;position:absolute;top:6px;right:6px}.prose.api .code-title{display:none}.prose.api .code pre{padding:14px 48px 14px 18px;font-size:13.5px;line-height:1.65}.code a.api{color:inherit;text-underline-offset:4px;cursor:pointer;border-radius:3px;-webkit-text-decoration:underline dotted #0000;text-decoration:underline dotted #0000;text-decoration-thickness:1.5px;transition:text-decoration-color .15s,background .15s}.code a.api:hover,.code a.api:focus-visible{-webkit-text-decoration-color:var(--ts-accent);text-decoration-color:var(--ts-accent);outline:none}.code a.api[aria-expanded=true]{background:var(--ts-accent-soft);-webkit-text-decoration-color:var(--ts-accent);text-decoration-color:var(--ts-accent)}.prose figure.scene{margin:26px 0 30px}.prose figure.explain{min-width:0;margin:0}.prose figure.scene.playing{margin:0}.prose figure.scene .scene-code pre{background:var(--ts-surface);border-radius:12px;margin:0 0 12px;padding:12px 18px;overflow-x:auto}.prose figure.scene-broken pre,.prose figure.diagram-broken pre{color:var(--ts-danger);text-align:left}dialog.diagram-zoom{background:var(--ts-bg);cursor:zoom-out;border:0;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:24px;overflow:auto}dialog.diagram-zoom::backdrop{background:var(--ts-overlay)}dialog.diagram-zoom svg{font-family:var(--ts-sans);margin:auto;display:block}.prose figure.diagram{border-top:1px solid var(--ts-line);border-bottom:1px solid var(--ts-line);text-align:center;cursor:zoom-in;margin:26px 0 30px;padding:22px 0}.prose figure.diagram:focus-visible{outline:2px solid var(--ts-accent);outline-offset:2px}.prose figure.diagram svg{height:auto;font-family:var(--ts-sans);display:inline-block}.prose figure.diagram .diagram-narrow,.prose figure.diagram .diagram-hint{display:none}.prose figure.diagram .diagram-hint{color:var(--ts-muted);font:11.5px var(--ts-mono);margin-top:10px}@media (width<=640px){.prose figure.diagram .diagram-wide{display:none}.prose figure.diagram .diagram-narrow{display:inline-block}.prose figure.diagram .diagram-hint{display:block}}.diagram text{paint-order:stroke;stroke:var(--ts-bg);stroke-width:4px;stroke-linejoin:round}.diagram-node rect,.diagram-node path{fill:var(--ts-surface-2);stroke:var(--ts-border-2);stroke-width:1px}.diagram .diagram-text{fill:var(--ts-text);stroke:none;font-size:14px;font-weight:550}.diagram-group rect{fill:none;stroke:var(--ts-line);stroke-width:1.5px;stroke-dasharray:5 5}.diagram-group-label{fill:var(--ts-muted);font:500 10.5px var(--ts-mono);letter-spacing:.06em;text-transform:uppercase}.diagram-edge{fill:none;stroke:var(--ts-border-strong);stroke-width:1.5px}.diagram-thick{stroke:var(--ts-accent);stroke-width:2px}.diagram-head{fill:var(--ts-border-strong)}.diagram-head-accent{fill:var(--ts-accent)}.diagram-label{fill:var(--ts-muted);font:11.5px var(--ts-mono)}.prose.release:not(.releases)>p.lead+ul{border-top:1px solid var(--ts-line);margin:28px 0 36px;padding:0;list-style:none}.prose.release:not(.releases)>p.lead+ul>li{border-bottom:1px solid var(--ts-line);grid-template-columns:112px minmax(0,1fr);gap:16px;margin:0;padding:14px 0;display:grid}.prose.release:not(.releases)>p.lead+ul>li>strong{color:var(--ts-accent-text);font:500 12px / 1.4 var(--ts-mono);letter-spacing:.08em;text-transform:uppercase;padding-top:4px}.prose.release:not(.releases)>p.lead+ul ul{margin:0;padding:0;list-style:none}.prose.release:not(.releases)>p.lead+ul ul>li{color:var(--ts-muted);margin:0;padding:2px 0;font-size:16px;line-height:1.6}.prose.release:not(.releases)>p.lead+ul ul>li>a:first-child{color:var(--ts-text);font-weight:500;text-decoration:none}@media (hover:hover){.prose.release:not(.releases)>p.lead+ul ul>li>a:first-child:hover{color:var(--ts-accent-text)}}@media (width<=720px){.prose.release:not(.releases)>p.lead+ul>li{grid-template-columns:minmax(0,1fr);gap:4px}}.prose.releases>p.lead+ul{gap:12px;margin:32px 0 40px;padding:0;list-style:none;display:grid}.prose.releases>p.lead+ul>li{color:var(--ts-muted);background:var(--ts-surface);border:1px solid var(--ts-border);border-radius:12px;margin:0;padding:16px 18px;font-size:15px;line-height:1.55;transition:border-color .15s;position:relative}.prose.releases>p.lead+ul>li strong{color:var(--ts-text);letter-spacing:-.01em;margin-bottom:4px;font-size:16.5px;font-weight:600;display:inline-block}.prose.releases>p.lead+ul>li a{color:inherit;text-decoration:none}.prose.releases>p.lead+ul>li a:after{content:"";border-radius:inherit;position:absolute;inset:0}@media (hover:hover){.prose.releases>p.lead+ul>li:hover{border-color:var(--ts-accent-line)}}.prose .shiki .line.diff-add,.prose .shiki .line.diff-remove{min-width:calc(100% + 2 * var(--code-pad-x,22px));margin:0 calc(-1 * var(--code-pad-x,22px));padding:0 var(--code-pad-x,22px);display:inline-block}.prose .shiki:has(.line.marked,.line.diff-add,.line.diff-remove)>code{min-width:100%;display:inline-block}.prose .shiki .line.diff-add{background:color-mix(in srgb, var(--ts-ok) 14%, transparent)}.prose .shiki .line.diff-remove{background:color-mix(in srgb, var(--ts-danger) 14%, transparent)}.prose .callout .code-variant[data-variant=diff] .code-bar{display:none}.prose .callout .code{margin:14px 0 0}.prose code.names{-webkit-text-decoration:underline dotted var(--ts-faint);text-decoration:underline dotted var(--ts-faint);text-underline-offset:4px;cursor:help}.prose code.names>span,:root[data-lang=python] .prose code.names>[data-lang=bun],:root[data-lang=go] .prose code.names>[data-lang=bun],:root[data-lang=rust] .prose code.names>[data-lang=bun]{display:none}.prose code.names>[data-lang=bun],:root[data-lang=python] .prose code.names>[data-lang=python],:root[data-lang=go] .prose code.names>[data-lang=go],:root[data-lang=rust] .prose code.names>[data-lang=rust]{display:inline}.prose [data-for]{display:none}:root:not([data-lang]) .prose [data-for~=bun],:root[data-lang=bun] .prose [data-for~=bun],:root[data-lang=python] .prose [data-for~=python],:root[data-lang=go] .prose [data-for~=go],:root[data-lang=rust] .prose [data-for~=rust]{display:revert}.prose div[data-for]:not(.code){border-left:2px solid var(--ts-accent-line);margin:0 0 24px;padding-left:16px}.prose div[data-for]:not(.code):before{content:attr(data-for);color:var(--ts-accent-text);font:500 11.5px / 1.4 var(--ts-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;display:block}.prose div[data-for]:not(.code)>:last-child{margin-bottom:0}.new-in{vertical-align:.35em;color:var(--ts-accent-text);background:var(--ts-accent-soft);font:500 11px / 1.4 var(--ts-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;border-radius:999px;margin-left:10px;padding:3px 8px;text-decoration:none;display:inline-block}.prose a.new-in:not(.anchor){color:var(--ts-accent-text);text-decoration:none}@media (hover:hover){.new-in:hover{background:var(--ts-accent-line)}}.prose div[data-for*=\ ]{border-left:0;padding-left:0}.prose div[data-for*=\ ]:before{content:none}.prose a.contract{color:var(--ts-accent-text);font:500 .86em var(--ts-mono);text-underline-offset:4px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;position:relative}.prose .shiki .line.marked{min-width:calc(100% + 2 * var(--code-pad-x,22px));margin:0 calc(-1 * var(--code-pad-x,22px));padding:0 calc(var(--code-pad-x,22px) - 2px);background:color-mix(in srgb, var(--ts-accent) 10%, transparent);border-left:2px solid var(--ts-accent);display:inline-block}.prose .shiki:has(.line.marked) .line:not(.marked){opacity:.55;transition:opacity .15s}@media (hover:hover){.prose .shiki:has(.line.marked):hover .line:not(.marked){opacity:1}}.prose figure.tree{background:var(--ts-surface);border:1px solid var(--ts-border);border-radius:12px;margin:22px 0 26px;padding:18px 22px;font-size:14.5px;line-height:1.5}.prose figure.tree ul{margin:0;padding:0;list-style:none}.prose figure.tree ul ul{border-left:1px solid var(--ts-line);margin-left:7px;padding-left:16px}.prose figure.tree li{margin:0}.prose figure.tree .tree-entry{align-items:baseline;gap:8px;padding:3px 0;display:flex}.prose figure.tree .tree-icon{color:var(--ts-faint);flex:none;align-self:center}.prose figure.tree .tree-icon.folder{color:var(--ts-accent-text)}.prose figure.tree .tree-name{min-width:15ch;color:var(--ts-text);font-family:var(--ts-mono);flex:none}.prose figure.tree .tree-note{color:var(--ts-muted);font-size:14px}.prose [data-steps]{counter-reset:step;position:relative}.prose [data-steps]:before{content:"";border-left:1px solid var(--ts-accent-line);position:absolute;top:76px;bottom:0;left:17px}.prose [data-steps]>h2{counter-increment:step;border-bottom:0;margin-top:56px;padding:2px 0 0 52px;position:relative}.prose [data-steps]>h2:before{content:counter(step);width:35px;height:35px;color:var(--ts-accent-text);background:var(--ts-bg);border:1px solid var(--ts-accent-line);font:500 15px / 1 var(--ts-mono);letter-spacing:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.prose [data-steps]>:not(h2),.prose [data-steps]>figure.scene.playing{margin-left:52px}@media (width<=720px){.prose [data-steps]>h2{padding-left:46px}.prose [data-steps]>:not(h2),.prose [data-steps]>figure.scene.playing{margin-left:0}.prose [data-steps]:before{content:none}}.prose figure.tree ul ul .tree-name{min-width:calc(15ch - 23px)}.prose figure.tree ul ul ul .tree-name{min-width:calc(15ch - 46px)}@media (width<=720px){.prose figure.tree{padding:14px 14px 12px;font-size:14px}.prose figure.tree ul ul{margin-left:6px;padding-left:12px}.prose figure.tree .tree-entry{flex-wrap:wrap;row-gap:0;padding:4px 0}.prose figure.tree .tree-name,.prose figure.tree ul ul .tree-name,.prose figure.tree ul ul ul .tree-name{min-width:0}.prose figure.tree .tree-note{flex-basis:100%;padding-left:23px;font-size:13px;line-height:1.45}}@media (prefers-reduced-motion:no-preference){.code-variant{animation:.18s ease-out variant-in}}@keyframes variant-in{0%{opacity:0}}.api-pop{z-index:60;width:min(520px,100vw - 32px);color:var(--ts-text-body);background:var(--ts-dialog);border:1px solid var(--ts-border-strong);box-shadow:0 14px 40px -12px var(--ts-shadow);font:14px / 1.5 var(--ts-sans);transform-origin:var(--arrow,24px) top;border-radius:12px;animation:.16s cubic-bezier(.2,.9,.3,1.2) both api-in;position:absolute}.api-pop.above{transform-origin:var(--arrow,24px) bottom}.api-pop.closing{animation:.11s ease-in both api-out}.api-pop:before{content:"";top:-6px;left:calc(var(--arrow,24px) - 6px);background:var(--ts-dialog);border-top:1px solid var(--ts-border-strong);border-left:1px solid var(--ts-border-strong);width:10px;height:10px;position:absolute;transform:rotate(45deg)}.api-pop.above:before{top:auto;bottom:-6px;transform:rotate(225deg)}@keyframes api-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}@keyframes api-out{to{opacity:0;transform:translateY(-3px)scale(.98)}}.api-head{align-items:center;gap:8px;padding:12px 14px 0;display:flex}.api-kind{background:var(--ts-accent-soft);color:var(--ts-accent-text);font:500 10.5px var(--ts-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:2px 7px}.api-name{color:var(--ts-text);font:600 14px var(--ts-mono)}.api-close{color:var(--ts-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-left:auto;padding:4px 8px;font-size:18px;line-height:1}.api-close:hover{background:var(--ts-hover);color:var(--ts-text)}.api-sig{background:var(--ts-surface);color:var(--ts-text);font:12.5px / 1.6 var(--ts-mono);white-space:pre;border-radius:8px;margin:10px 14px 0;padding:10px 12px;overflow-x:auto}.api-forms{color:var(--ts-muted);font:12px var(--ts-mono);margin:6px 14px 0}.api-doc{margin:10px 14px 0}.api-doc.none{color:var(--ts-muted);font-style:italic}.api-doc code{font:12.5px var(--ts-mono)}.api-foot{border-top:1px solid var(--ts-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding:10px 14px 12px;display:flex}.api-foot a{color:var(--ts-accent-text);font-weight:500;text-decoration:none}.api-foot a:hover{text-decoration:underline}.api-where{color:var(--ts-muted);font:12px var(--ts-mono)}.api-copy{border:1px solid var(--ts-border);background:var(--ts-surface);color:var(--ts-text-body);font:500 12.5px var(--ts-sans);cursor:pointer;border-radius:7px;padding:4px 10px}.api-scrim{z-index:59;background:var(--ts-overlay);animation:.2s both api-fade;position:fixed;inset:0}.api-scrim.closing{animation:.18s both api-fade-out}@keyframes api-fade-out{to{opacity:0}}@keyframes api-fade{0%{opacity:0}}.api-pop.sheet{width:auto;max-height:75vh;padding-bottom:env(safe-area-inset-bottom,0px);border-bottom:0;border-radius:16px 16px 0 0;animation:.26s cubic-bezier(.2,.9,.25,1) both api-sheet-in;position:fixed;inset:auto 0 0;overflow-y:auto}.api-pop.sheet:before{display:none}.api-pop.sheet.closing{animation:.2s ease-in both api-sheet-out}.api-grip{background:var(--ts-border-strong);border-radius:4px;width:40px;height:4px;margin:8px auto 0;display:block}@keyframes api-sheet-in{0%{transform:translateY(100%)}}@keyframes api-sheet-out{to{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.api-pop,.api-pop.sheet,.api-scrim{animation-duration:1ms}}svg.svelte-1l8nvlt{flex:none;display:block}.top.svelte-1l8nvlt{fill:var(--ts-logo-top)}.bands.svelte-1l8nvlt{fill:var(--ts-text)}.fold.svelte-1cmi4dh{width:100%;color:var(--ts-muted);font:500 14.5px var(--ts-sans);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:12px 2px;display:flex}.fold.svelte-1cmi4dh .which:where(.svelte-1cmi4dh){color:var(--ts-text);margin-left:auto}.fold.svelte-1cmi4dh svg{color:var(--ts-faint);transition:transform .2s}.inline.unfolded.svelte-1cmi4dh .fold:where(.svelte-1cmi4dh) svg{transform:rotate(180deg)}.looks-inline.svelte-1cmi4dh{padding:0 2px 12px}.inline.svelte-1cmi4dh .group:where(.svelte-1cmi4dh){margin:6px 0}.chips.svelte-1cmi4dh{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.chip.svelte-1cmi4dh{min-width:0;color:var(--ts-text-body);border:1px solid var(--ts-border);font:500 13.5px var(--ts-sans);text-align:left;cursor:pointer;background:0 0;border-radius:9px;align-items:center;gap:8px;padding:7px 8px;display:flex}.chip.svelte-1cmi4dh>span:where(.svelte-1cmi4dh):last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chip[aria-pressed=true].svelte-1cmi4dh{color:var(--ts-text);background:var(--ts-pill);border-color:var(--ts-border-strong)}.theme.svelte-1cmi4dh{position:relative}.toggle.svelte-1cmi4dh{border:1px solid var(--ts-border);cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}@media (hover:hover){.toggle.svelte-1cmi4dh:hover,.looks.svelte-1cmi4dh button:where(.svelte-1cmi4dh):hover{background:var(--ts-hover)}}.toggle.svelte-1cmi4dh:active{background:var(--ts-pill)}.half.svelte-1cmi4dh{border:1.5px solid var(--ts-text-body);background:linear-gradient(90deg, var(--ts-text-body) 50%, transparent 50%);border-radius:99px;width:16px;height:16px}.looks.svelte-1cmi4dh{z-index:40;background:var(--ts-dialog);border:1px solid var(--ts-border);min-width:200px;max-height:min(560px,80vh);box-shadow:0 12px 32px var(--ts-shadow);transform-origin:100% 0;border-radius:12px;gap:2px;padding:6px;animation:.14s ease-out svelte-1cmi4dh-pop;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}@keyframes svelte-1cmi4dh-pop{0%{opacity:0;transform:translateY(-4px)scale(.97)}}@media (prefers-reduced-motion:reduce){.looks.svelte-1cmi4dh{animation:none}}.looks.svelte-1cmi4dh button:where(.svelte-1cmi4dh){color:var(--ts-text-body);font:500 14px var(--ts-sans);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:7px 10px;display:flex}.looks.svelte-1cmi4dh button[aria-checked=true]:where(.svelte-1cmi4dh){color:var(--ts-text);background:var(--ts-pill)}.group.svelte-1cmi4dh{color:var(--ts-faint);font:500 11px / 1.4 var(--ts-mono);letter-spacing:.08em;text-transform:uppercase;margin:6px 10px 2px}.swatch.svelte-1cmi4dh{background:var(--ts-bg);border:1px solid var(--ts-border-strong);border-radius:6px;justify-content:space-between;align-items:center;gap:4px;width:34px;height:22px;padding:0 5px;display:flex}.ink.svelte-1cmi4dh{color:var(--ts-text);font:600 10px var(--ts-sans)}.dot.svelte-1cmi4dh{background:var(--ts-accent);border-radius:50%;width:7px;height:7px}header.svelte-1elxaub{z-index:20;height:var(--ts-header);background:var(--ts-bg);border-bottom:1px solid var(--ts-line);align-items:center;gap:28px;padding:0 28px;display:flex;position:sticky;top:0}.brand.svelte-1elxaub{letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;font-weight:600;display:flex}.tabs.svelte-1elxaub{gap:4px;font-size:14.5px;font-weight:500;display:flex}.tabs.svelte-1elxaub a:where(.svelte-1elxaub){color:var(--ts-muted);border-radius:8px;padding:7px 12px}@media (hover:hover){.tabs.svelte-1elxaub a:where(.svelte-1elxaub):hover{color:var(--ts-text)}.search.svelte-1elxaub:hover{border-color:var(--ts-border-strong)}.square.svelte-1elxaub:hover,.menu.svelte-1elxaub:hover{background:var(--ts-hover)}}.search.svelte-1elxaub:active,.square.svelte-1elxaub:active,.menu.svelte-1elxaub:active{background:var(--ts-pill)}.tabs.svelte-1elxaub a[aria-current=page]:where(.svelte-1elxaub){color:var(--ts-text);background:var(--ts-pill)}.tools.svelte-1elxaub{align-items:center;gap:10px;margin-left:auto;display:flex}.search.svelte-1elxaub{width:176px;height:36px;color:var(--ts-faint);border:1px solid var(--ts-border);cursor:pointer;background:0 0;border-radius:9px;justify-content:space-between;align-items:center;padding:0 10px 0 12px;font-size:14px;display:flex}.search.svelte-1elxaub kbd:where(.svelte-1elxaub){color:var(--ts-faint);border-color:var(--ts-border);background:0 0}.square.svelte-1elxaub{width:36px;height:36px;color:var(--ts-text-body);border:1px solid var(--ts-border);border-radius:9px;justify-content:center;align-items:center;display:flex}.theme.svelte-1elxaub{display:contents}.menu.svelte-1elxaub{width:40px;height:40px;color:var(--ts-text);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;display:none}@media (width<=720px){header.svelte-1elxaub{gap:12px;height:56px;padding:0 12px 0 18px}.brand.svelte-1elxaub{gap:9px;font-size:17px}.tabs.svelte-1elxaub,.github.svelte-1elxaub,.theme.svelte-1elxaub{display:none}.tools.svelte-1elxaub{gap:6px}.search.svelte-1elxaub{width:auto;height:auto;color:var(--ts-muted-2);border-radius:8px;padding:6px 12px;font-size:13.5px}.search.svelte-1elxaub kbd:where(.svelte-1elxaub){display:none}.menu.svelte-1elxaub{display:flex}}dialog.svelte-r1tfyb{width:min(380px,88vw);max-width:none;height:100dvh;max-height:none;color:var(--ts-text);background:var(--ts-bg);border:0;border-left:1px solid var(--ts-line);box-shadow:-24px 0 60px -30px var(--ts-shadow);margin:0 0 0 auto;padding:0}dialog[open].svelte-r1tfyb{flex-direction:column;animation:.24s cubic-bezier(.2,.8,.2,1) svelte-r1tfyb-slide-in;display:flex}dialog.svelte-r1tfyb::backdrop{background:var(--ts-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:.24s ease-out svelte-r1tfyb-fade}dialog.svelte-r1tfyb.closing{animation:.18s ease-in forwards svelte-r1tfyb-slide-out}dialog.svelte-r1tfyb.closing::backdrop{animation:.18s ease-in reverse forwards svelte-r1tfyb-fade}@media (prefers-reduced-motion:reduce){dialog[open].svelte-r1tfyb,dialog.svelte-r1tfyb::backdrop{animation:none}}@keyframes svelte-r1tfyb-slide-in{0%{transform:translate(100%)}}@keyframes svelte-r1tfyb-slide-out{to{transform:translate(100%)}}@keyframes svelte-r1tfyb-fade{0%{opacity:0}}.top.svelte-r1tfyb{border-bottom:1px solid var(--ts-line);flex:none;justify-content:space-between;align-items:center;height:56px;padding:0 10px 0 18px;display:flex}.brand.svelte-r1tfyb{letter-spacing:-.02em;align-items:center;gap:9px;font-size:17px;font-weight:600;display:flex}.close.svelte-r1tfyb{width:40px;height:40px;color:var(--ts-text-body);cursor:pointer;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex}.close.svelte-r1tfyb:active{background:var(--ts-pill)}.content.svelte-r1tfyb{overscroll-behavior:contain;flex:1;min-height:0;padding:4px 16px 28px;overflow-y:auto}.search.svelte-r1tfyb{height:44px;color:var(--ts-faint);background:var(--ts-surface);border:1px solid var(--ts-border);text-align:left;cursor:pointer;border-radius:10px;flex:none;align-items:center;gap:10px;margin:14px 16px 6px;padding:0 14px;font-size:15px;display:flex}.search.svelte-r1tfyb:active{background:var(--ts-pill)}.books.svelte-r1tfyb{grid-template-columns:repeat(var(--parts), minmax(0, 1fr));background:var(--ts-surface);border:1px solid var(--ts-border);border-radius:10px;flex:none;margin:8px 16px 4px;padding:3px;display:grid;position:relative}.pill.svelte-r1tfyb{width:calc((100% - 6px) / var(--parts));background:var(--ts-pill);box-shadow:0 1px 2px var(--ts-shadow);transform:translateX(calc(var(--at) * 100%));border-radius:7px;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:absolute;top:3px;bottom:3px;left:3px}@media (prefers-reduced-motion:reduce){.pill.svelte-r1tfyb{transition:none}}.books.svelte-r1tfyb button:where(.svelte-r1tfyb){height:34px;color:var(--ts-muted);font:500 13px var(--ts-sans);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;transition:color .15s;position:relative;overflow:hidden}.books.svelte-r1tfyb button[aria-selected=true]:where(.svelte-r1tfyb){color:var(--ts-text)}.theme.svelte-r1tfyb{max-height:62dvh;padding:4px 16px calc(6px + env(safe-area-inset-bottom));background:var(--ts-surface);border-top:1px solid var(--ts-line);flex:none;overflow-y:auto}dialog.svelte-1002zyw{width:min(680px,100vw - 32px);max-width:none;max-height:min(640px,100vh - 160px);color:var(--ts-text);background:var(--ts-dialog);border:1px solid var(--ts-border-3);box-shadow:0 40px 100px -20px var(--ts-shadow);border-radius:18px;margin:120px auto 0;padding:0;overflow:hidden}dialog[open].svelte-1002zyw{animation:.16s ease-out svelte-1002zyw-rise}dialog.svelte-1002zyw::backdrop{background:var(--ts-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:.16s ease-out svelte-1002zyw-fade}@media (prefers-reduced-motion:reduce){dialog[open].svelte-1002zyw,dialog.svelte-1002zyw::backdrop{animation:none}}@keyframes svelte-1002zyw-rise{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes svelte-1002zyw-fade{0%{opacity:0}}.panel.svelte-1002zyw{max-height:inherit;flex-direction:column;display:flex}.field.svelte-1002zyw{border-bottom:1px solid var(--ts-border-2);flex:none;align-items:center;gap:14px;height:64px;padding:0 18px;display:flex}.glass.svelte-1002zyw{color:var(--ts-muted-2);display:flex}input.svelte-1002zyw{min-width:0;color:var(--ts-text);font:400 19px var(--ts-sans);caret-color:var(--ts-accent);background:0 0;border:0;outline:0;flex:1}input.svelte-1002zyw::placeholder{color:var(--ts-faint)}input.svelte-1002zyw::-webkit-search-cancel-button{display:none}.cancel.svelte-1002zyw{display:none}.filters.svelte-1002zyw{border-bottom:1px solid var(--ts-line);flex:none;gap:8px;padding:12px 18px;display:flex;overflow-x:auto}.filters.svelte-1002zyw button:where(.svelte-1002zyw){color:var(--ts-muted);border:1px solid var(--ts-border-2);cursor:pointer;background:0 0;border-radius:99px;flex:none;padding:5px 12px;font-size:13px;font-weight:500}.filters.svelte-1002zyw button:where(.svelte-1002zyw):active{background:var(--ts-pill)}.filters.svelte-1002zyw button[aria-selected=true]:where(.svelte-1002zyw){color:var(--ts-bg);background:var(--ts-text);border-color:var(--ts-text)}.results.svelte-1002zyw{flex:1;min-height:0;padding:0 8px 8px;overflow-y:auto}.group.svelte-1002zyw{color:var(--ts-dim);font:500 11.5px var(--ts-mono);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:14px 14px 6px}.hit.svelte-1002zyw{border-radius:10px;align-items:flex-start;gap:14px;padding:12px 14px;display:flex}.hit[aria-selected=true].svelte-1002zyw{background:var(--ts-chip)}.mark.svelte-1002zyw{width:30px;height:30px;color:var(--ts-muted-2);border:1px solid var(--ts-border-3);font:500 13px var(--ts-mono);border-radius:8px;flex:none;justify-content:center;align-items:center;margin-top:1px;display:flex}.hit[aria-selected=true].svelte-1002zyw .mark:where(.svelte-1002zyw){color:var(--ts-accent-text)}.body.svelte-1002zyw{flex:1;min-width:0}.where.svelte-1002zyw{font-size:15.5px;font-weight:500;display:block}.page.svelte-1002zyw{color:var(--ts-muted-2);font-weight:400}.snippet.svelte-1002zyw{color:var(--ts-muted);margin-top:3px;font-size:14px;line-height:1.5;display:block}.snippet.svelte-1002zyw mark{color:var(--ts-accent-text);background:0 0;font-weight:600}.enter.svelte-1002zyw{visibility:hidden;align-self:center}.hit[aria-selected=true].svelte-1002zyw .enter:where(.svelte-1002zyw){visibility:visible}.empty.svelte-1002zyw{color:var(--ts-muted);margin:0;padding:24px 14px;font-size:14px}.foot.svelte-1002zyw{color:var(--ts-faint);background:var(--ts-dialog-foot);border-top:1px solid var(--ts-border-2);flex:none;justify-content:space-between;align-items:center;padding:12px 18px;font-size:13px;display:flex}.keys.svelte-1002zyw{gap:18px;display:flex}.keys.svelte-1002zyw span:where(.svelte-1002zyw){align-items:center;gap:6px;display:flex}@media (width<=720px){dialog.svelte-1002zyw{border:0;border-radius:0;width:100vw;height:100dvh;max-height:none;margin:0}.field.svelte-1002zyw{border-bottom:0;gap:12px;height:auto;padding:14px}input.svelte-1002zyw{font-size:17px}.esc.svelte-1002zyw,.foot.svelte-1002zyw .keys:where(.svelte-1002zyw),.enter.svelte-1002zyw,.mark.svelte-1002zyw{display:none}.cancel.svelte-1002zyw{color:var(--ts-accent-text);cursor:pointer;background:0 0;border:0;padding:0;font-size:16px;font-weight:500;display:block}.filters.svelte-1002zyw{padding:0 14px 14px}.results.svelte-1002zyw{padding:0}.hit.svelte-1002zyw{border-bottom:1px solid var(--ts-line);border-radius:0;padding:14px 18px}}
