:root{color-scheme:light;--font-sans:"DM Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:clamp(1.75rem, 1.45rem + 1.2vw, 2.375rem);--text-3xl:clamp(2.2rem, 1.6rem + 2.6vw, 3.5rem);--text-hero:clamp(3.125rem, 2rem + 5.4vw, 5.875rem);--leading-tight:1.05;--leading-snug:1.3;--leading-normal:1.6;--leading-relaxed:1.75;--tracking-tight:-.02em;--tracking-tighter:-.055em;--tracking-hero:-.075em;--tracking-wide:.06em;--tracking-wider:.12em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--canvas:#eef0f4;--surface:#fff;--surface-2:#f7f8fa;--surface-3:#eceef3;--ink:#20242c;--ink-2:#4b5462;--muted:#69717d;--faint:#8b939e;--line:#e3e6eb;--line-strong:#d2d6dd;--accent:#5144c7;--accent-strong:#3f34a6;--accent-soft:#ecebf9;--accent-soft-line:#dcd8f4;--accent-weaker:#f2f1fb;--accent-ink:#fff;--ring:#9188f0;--panel:#171b26;--panel-2:#191c29;--panel-line:#353748;--panel-ink:#f3f1fc;--panel-muted:#b3aec4;--panel-accent:#c6b9ff;--ok:#23826b;--ok-soft:#e9f6f1;--ok-line:#cfe8df;--warn:#9c5a31;--warn-soft:#fbf3ed;--warn-line:#eedbca;--unknown:#677383;--unknown-soft:#f0f2f5;--unknown-line:#dce0e5;--bad:#b9683e;--bad-soft:#fbeeea;--bad-line:#f0d6cc;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--radius-pill:999px;--shadow-sm:0 1px 2px #171b260d;--shadow-md:0 10px 23px #5144c726;--shadow-lg:0 24px 50px -30px #171b2659;--shadow-float:0 18px 40px -24px #171b2673;--container:1360px;--container-narrow:900px;--measure:68ch;--measure-narrow:34rem;--shell-bar:82px;--ease:cubic-bezier(.2, .6, .2, 1);--fast:.14s;--normal:.22s}:root[data-theme=dark]{color-scheme:dark;--canvas:#101218;--surface:#171a22;--surface-2:#12151c;--surface-3:#1e222c;--ink:#f1f2f6;--ink-2:#c3c8d3;--muted:#9aa1af;--faint:#7c8492;--line:#262b36;--line-strong:#333a48;--accent:#8f83f2;--accent-strong:#a79cff;--accent-soft:#23233a;--accent-soft-line:#34345a;--accent-weaker:#1b1b2a;--accent-ink:#12101f;--ring:#a79cff;--ok-soft:#14251f;--ok-line:#24443a;--warn-soft:#271c14;--warn-line:#4a3626;--unknown-soft:#1b1e25;--unknown-line:#2f343f;--bad-soft:#271813;--bad-line:#4a2d24}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--canvas:#101218;--surface:#171a22;--surface-2:#12151c;--surface-3:#1e222c;--ink:#f1f2f6;--ink-2:#c3c8d3;--muted:#9aa1af;--faint:#7c8492;--line:#262b36;--line-strong:#333a48;--accent:#8f83f2;--accent-strong:#a79cff;--accent-soft:#23233a;--accent-soft-line:#34345a;--accent-weaker:#1b1b2a;--accent-ink:#12101f;--ring:#a79cff;--ok-soft:#14251f;--ok-line:#24443a;--warn-soft:#271c14;--warn-line:#4a3626;--unknown-soft:#1b1e25;--unknown-line:#2f343f;--bad-soft:#271813;--bad-line:#4a2d24}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}h1,h2,h3,h4{font-weight:var(--weight-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-decoration:none}img,svg,video{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}ul,ol{margin:0;padding:0}:focus-visible{outline:3px solid var(--ring);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:var(--accent);color:var(--accent-ink)}.container{width:100%;max-width:var(--container);padding-inline:clamp(var(--space-4), 4vw, var(--space-12));margin-inline:auto}.container--narrow{max-width:var(--container-narrow)}.overline{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--muted)}.mono{font-family:var(--font-mono);font-variant-ligatures:none}.measure{max-width:var(--measure)}.stack{gap:var(--stack-gap,var(--space-4));flex-direction:column;display:flex}.cluster{align-items:center;gap:var(--cluster-gap,var(--space-4));flex-wrap:wrap;display:flex}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:var(--space-3);left:var(--space-3);z-index:100;background:var(--accent);color:var(--accent-ink);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-weight:var(--weight-semibold);position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.prose{max-width:var(--measure);color:var(--ink-2);line-height:var(--leading-relaxed)}.prose>*+*{margin-top:1em}.prose h2{color:var(--ink);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);margin-top:1.8em}.prose h3{color:var(--ink);font-size:var(--text-md);margin-top:1.5em}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.35em}.prose code{font-family:var(--font-mono);background:var(--surface-3);border-radius:var(--radius-xs);padding:.1em .4em;font-size:.9em}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{:root{--canvas:#fff;--surface:#fff;--surface-2:#fff;--surface-3:#fff;--ink:#000;--ink-2:#1a1a1a;--muted:#444;--line:#ccc;--accent:#000;--accent-ink:#fff}.no-print{display:none!important}body{background:#fff}}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-ext-wght-normal.BOFOeGcA.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/_astro/dm-sans-latin-wght-normal.Xz1IZZA0.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.V-xxqcpd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-600-normal.9HEixskS.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-cyrillic-600-normal.CTOM6hUh.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-600-normal.fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-vietnamese-600-normal.D2EvbN8M.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-600-normal.iLQfcSjf.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-ext-600-normal.D38SheWl.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-600-normal.DmB0ttJJ.woff)format("woff");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 Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-mono-latin-600-normal.BgSNZQsw.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-600-normal.DWFSQ4vo.woff)format("woff");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}.theme-toggle[data-astro-cid-soiqu46v]{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);width:2.2rem;height:2.2rem;color:var(--muted);transition:color var(--fast) var(--ease), border-color var(--fast) var(--ease);place-items:center;display:inline-grid}.theme-toggle[data-astro-cid-soiqu46v]:hover{color:var(--ink);border-color:var(--line-strong)}.theme-toggle__icon--sun[data-astro-cid-soiqu46v]{display:none}html[data-theme=dark] .theme-toggle__icon--sun[data-astro-cid-soiqu46v]{display:grid}html[data-theme=dark] .theme-toggle__icon--moon[data-astro-cid-soiqu46v]{display:none}@media (prefers-color-scheme:dark){html:not([data-theme=light]) .theme-toggle__icon--sun[data-astro-cid-soiqu46v]{display:grid}html:not([data-theme=light]) .theme-toggle__icon--moon[data-astro-cid-soiqu46v]{display:none}}.locale[data-astro-cid-v6zpukpa]{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:inline-flex;overflow:hidden}.locale__item[data-astro-cid-v6zpukpa]{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--muted);padding:.5rem .6rem}.locale__item[data-astro-cid-v6zpukpa]+.locale__item[data-astro-cid-v6zpukpa]{border-left:1px solid var(--line)}.locale__item[data-astro-cid-v6zpukpa].is-current{background:var(--accent-soft);color:var(--accent-strong)}.locale__item[data-astro-cid-v6zpukpa]:hover{color:var(--accent)}.pub-head[data-astro-cid-23rp7uie]{z-index:30;background:color-mix(in srgb, var(--surface) 88%, transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);position:sticky;top:0}.pub-head__inner[data-astro-cid-23rp7uie]{justify-content:space-between;align-items:center;gap:var(--space-6);min-height:var(--shell-bar);display:flex}.pub-head__brand[data-astro-cid-23rp7uie]{color:var(--ink);flex:none}.pub-head__nav[data-astro-cid-23rp7uie]{gap:var(--space-6);margin-inline-start:auto;display:flex}.pub-head__link[data-astro-cid-23rp7uie]{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink-2)}.pub-head__link[data-astro-cid-23rp7uie]:hover,.pub-head__link[data-astro-cid-23rp7uie].is-current{color:var(--accent)}.pub-head__actions[data-astro-cid-23rp7uie]{align-items:center;gap:var(--space-3);flex:none;display:flex}.pub-head__cta[data-astro-cid-23rp7uie]{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);background:var(--accent);color:var(--accent-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);padding:.6rem .95rem;display:inline-flex}.pub-head__cta[data-astro-cid-23rp7uie]:hover{background:var(--accent-strong)}.pub-foot[data-astro-cid-23rp7uie]{border-top:1px solid var(--line);margin-top:var(--space-24)}.pub-foot__inner[data-astro-cid-23rp7uie]{justify-content:space-between;gap:var(--space-3);padding-block:var(--space-6);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap;display:flex}.pub-foot__links[data-astro-cid-23rp7uie]{gap:var(--space-4);display:flex}.pub-foot__links[data-astro-cid-23rp7uie] a[data-astro-cid-23rp7uie]{color:var(--ink-2)}.pub-foot__links[data-astro-cid-23rp7uie] a[data-astro-cid-23rp7uie]:hover{color:var(--accent)}@media (width<=720px){.pub-head__nav[data-astro-cid-23rp7uie],.pub-head__locale[data-astro-cid-23rp7uie]{display:none}}
