@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.g30qAdWV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.Dsrv2Tcn.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-400-normal.DZqxrq2p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-400-normal.BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-greek-400-normal._efipK4i.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-400-normal.D9ESIMu3.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-vietnamese-400-normal.DG4YqDda.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-400-normal.fK1oJ5dG.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.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 Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.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 Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-ext-400-italic.BELOEI8R.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-400-italic.CfSXsIbO.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 Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-400-italic.D9J6q4_O.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-400-italic.Bf1n82Tb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-greek-400-italic.BEZwmy7D.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-400-italic.CTYLy0lX.woff)format("woff");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;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-vietnamese-400-italic.BbRnwouv.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-400-italic.78jqtfZH.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 Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-italic.Du9zzoL2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-italic.V_9i1P_m.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 Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-italic.CZTNEAuW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-italic.CsGl1sm0.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.DUMzJB7m.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.Bz0x94Yp.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-600-normal.71GNu3SW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-600-normal.BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-greek-600-normal.DzTrcv_p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-600-normal.D-CqTdkO.woff)format("woff");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;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-vietnamese-600-normal.DpPYBSTl.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-600-normal.DgdngZtN.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-ext-600-normal.DOrvGEcy.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-600-normal.DIrixKbi.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 Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.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: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}:root{color-scheme:light;--bg:#f6f3ea;--surface:#fbf9f3;--ink:#1c1e21;--muted:#5a5d63;--dim:#6b6e74;--rule:#d8d2c3;--rule-strong:#b9b2a2;--grid:#1a6b4312;--grid-major:#1a6b431f;--accent:#1a6b43;--on-accent:#f6f3ea;--accent-soft:#1a6b431a;--code-bg:#efebe0;--code-string:#6a4f1c;--code-deleted:#9b2c2c;--font-sans:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--measure:68ch;--page:72rem;--gutter:1rem;--radius:3px;--ease:cubic-bezier(.2, .7, .2, 1)}@media (width>=40rem){:root{--gutter:1.5rem}}@media screen and (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#151b22;--surface:#1b222a;--ink:#e5e3dc;--muted:#a1a8b2;--dim:#878e98;--rule:#2b3440;--rule-strong:#3d4855;--grid:#58c48a0f;--grid-major:#58c48a1a;--accent:#58c48a;--on-accent:#151b22;--accent-soft:#58c48a1f;--code-bg:#10151b;--code-string:#d8c9a3;--code-deleted:#f0a0a0}}@media screen{:root[data-theme=dark]{color-scheme:dark;--bg:#151b22;--surface:#1b222a;--ink:#e5e3dc;--muted:#a1a8b2;--dim:#878e98;--rule:#2b3440;--rule-strong:#3d4855;--grid:#58c48a0f;--grid-major:#58c48a1a;--accent:#58c48a;--on-accent:#151b22;--accent-soft:#58c48a1f;--code-bg:#10151b;--code-string:#d8c9a3;--code-deleted:#f0a0a0}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--sticky-h,0px) + 1rem)}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-sans);overflow-wrap:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;font-size:1.0625rem;line-height:1.65;display:flex}main{flex:1}img,svg,video,iframe{max-width:100%}img,video{height:auto}h1,h2,h3,h4{letter-spacing:-.01em;text-wrap:balance;margin:0 0 .5em;font-weight:600;line-height:1.2}h1{letter-spacing:-.02em;font-size:clamp(2rem,1.4rem + 3vw,3rem)}h2{font-size:1.5rem}h3{font-size:1.125rem}p{margin:0 0 1em}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:var(--accent);color:var(--on-accent)}hr{border:0;border-top:1px solid var(--rule);margin:2.5rem 0}code,kbd,samp,pre{font-family:var(--font-mono);font-size:.9em}button{font:inherit;color:inherit}html:not(.js) .js-only{display:none!important}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{left:var(--gutter);z-index:100;background:var(--accent);color:var(--on-accent);font-family:var(--font-mono);border-radius:var(--radius);padding:.5rem .875rem;font-size:.875rem;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:.75rem}.wrap{width:100%;max-width:var(--page);padding-inline:var(--gutter);margin-inline:auto}.narrow>*{max-width:var(--measure)}.page{padding-block:3rem 4rem}@media (width>=48rem){.page{padding-block:4rem 5rem}}.measure{max-width:var(--measure)}.meta,.label{font-family:var(--font-mono);letter-spacing:.01em;color:var(--muted);font-size:.8125rem}.label{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}.section-head{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.section-head h2{margin:0;font-size:1.25rem}.sec-num{min-width:2.25em;font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);vertical-align:.15em;margin-right:.375rem;font-size:.8125rem;font-weight:400;display:inline-block}.page-head{margin-bottom:2.5rem}.page-head .label{margin-bottom:.75rem;display:block}.page-head p{color:var(--muted);max-width:var(--measure);font-size:1.125rem}.tag{font-family:var(--font-mono);border:1px solid var(--rule-strong);color:var(--muted);white-space:nowrap;border-radius:2px;align-items:center;gap:.375rem;padding:.3125rem .5rem;font-size:.75rem;line-height:1;display:inline-flex}.tag-dot{background:var(--accent);border-radius:50%;width:.5rem;height:.5rem}.more{font-family:var(--font-mono);white-space:nowrap;font-size:.875rem;text-decoration:none}.more:hover{text-decoration:underline}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:1.25rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.title-block{border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,1fr);margin:0;display:grid;overflow:hidden}@media (width>=40rem){.title-block{grid-template-columns:repeat(var(--tb-cols,1), minmax(0, 1fr))}}.tb-cell{border-top:1px solid var(--rule);border-left:1px solid var(--rule);min-width:0;margin:-1px 0 0 -1px;padding:.75rem 1rem .875rem}.tb-cell.tb-wide{grid-column:1/-1}.tb-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0 0 .25rem;font-size:.6875rem;font-weight:400;display:block}.tb-value{margin:0;font-size:.9375rem;line-height:1.45}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1.25em}.prose p,.prose ul,.prose ol,.prose blockquote,.prose pre{margin-bottom:0}.prose h2{margin-top:2.25em;margin-bottom:0;font-size:1.5rem}.prose h3{margin-top:2em;margin-bottom:0;font-size:1.1875rem}.prose h2+*,.prose h3+*{margin-top:.75em}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--accent)}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin-left:0;margin-right:0;padding:.25em 0 .25em 1.25em;font-style:italic}.prose :not(pre)>code{background:var(--code-bg);border:1px solid var(--rule);border-radius:var(--radius);padding:.1em .35em;font-size:.875em}.prose pre{background:var(--code-bg);border:1px solid var(--rule);border-radius:var(--radius);padding:1rem 1.125rem;font-size:.875rem;line-height:1.55;overflow-x:auto}.prose img,.prose video{border-radius:var(--radius);border:1px solid var(--rule);display:block}.prose iframe{aspect-ratio:16/9;border-radius:var(--radius);border:0;width:100%;height:auto;display:block}.prose hr{margin:2.5em 0}.prose table{border-collapse:collapse;width:100%;font-size:.9375rem;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--rule);text-align:left;padding:.5em .75em}.astro-code{--astro-code-foreground:var(--ink);--astro-code-background:var(--code-bg);--astro-code-token-keyword:var(--accent);--astro-code-token-link:var(--accent);--astro-code-token-comment:var(--muted);--astro-code-token-punctuation:var(--muted);--astro-code-token-string:var(--code-string);--astro-code-token-string-expression:var(--code-string);--astro-code-token-constant:var(--ink);--astro-code-token-function:var(--ink);--astro-code-token-parameter:var(--ink);--astro-code-token-inserted:var(--accent);--astro-code-token-deleted:var(--code-deleted);--astro-code-token-changed:var(--code-string);--astro-code-ansi-black:var(--ink);--astro-code-ansi-red:var(--code-deleted);--astro-code-ansi-green:var(--accent);--astro-code-ansi-yellow:var(--code-string);--astro-code-ansi-blue:var(--ink);--astro-code-ansi-magenta:var(--ink);--astro-code-ansi-cyan:var(--accent);--astro-code-ansi-white:var(--muted);--astro-code-ansi-bright-black:var(--muted);--astro-code-ansi-bright-red:var(--code-deleted);--astro-code-ansi-bright-green:var(--accent);--astro-code-ansi-bright-yellow:var(--code-string);--astro-code-ansi-bright-blue:var(--ink);--astro-code-ansi-bright-magenta:var(--ink);--astro-code-ansi-bright-cyan:var(--accent);--astro-code-ansi-bright-white:var(--ink)}.astro-code span[style*=--astro-code-token-comment]{font-style:italic}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{:root{color-scheme:light;--bg:#fff;--surface:#fff;--ink:#000;--muted:#333;--dim:#333;--rule:#bbb;--rule-strong:#888;--accent:#000;--on-accent:#fff;--accent-soft:transparent;--code-bg:#f4f4f4;--code-string:#000;--code-deleted:#000}.site-header nav,.theme-toggle,.site-footer,.skip-link,.js-only{display:none!important}body{font-size:11pt}a{color:inherit;text-decoration:none}.card{break-inside:avoid}}main:focus{outline:none}.theme-toggle[data-astro-cid-l6lhmie6]{border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);width:44px;height:44px;color:var(--ink);cursor:pointer;justify-self:end;place-items:center;padding:0;display:inline-grid}.theme-toggle[data-astro-cid-l6lhmie6]:hover{border-color:var(--rule-strong);color:var(--accent)}.theme-toggle[data-astro-cid-l6lhmie6] svg[data-astro-cid-l6lhmie6]{grid-area:1/1}.icon-sun[data-astro-cid-l6lhmie6]{display:none}:root[data-theme=dark] .icon-sun[data-astro-cid-l6lhmie6]{display:block}:root[data-theme=dark] .icon-moon[data-astro-cid-l6lhmie6]{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun[data-astro-cid-l6lhmie6]{display:block}:root:not([data-theme=light]) .icon-moon[data-astro-cid-l6lhmie6]{display:none}}.site-header[data-astro-cid-nen7h5rs]{border-bottom:1px solid var(--rule);background:var(--bg)}.bar[data-astro-cid-nen7h5rs]{grid-template-columns:1fr auto;grid-template-areas:"brand toggle""nav nav";align-items:center;gap:.25rem 1rem;padding-block:.75rem .5rem;display:grid}.brand[data-astro-cid-nen7h5rs]{color:var(--ink);grid-area:brand;justify-self:start;align-items:center;gap:.625rem;min-height:44px;font-weight:600;text-decoration:none;display:inline-flex}.brand[data-astro-cid-nen7h5rs] .brand-mark{color:var(--accent);flex:none}.brand-name[data-astro-cid-nen7h5rs]{letter-spacing:-.005em;font-size:1rem}.nav[data-astro-cid-nen7h5rs]{grid-area:nav}.nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{flex-wrap:wrap;gap:.25rem;margin:0 0 0 -.625rem;padding:0;list-style:none;display:flex}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{min-height:44px;font-family:var(--font-mono);color:var(--muted);border-radius:var(--radius);align-items:center;padding:0 .625rem;font-size:.875rem;text-decoration:none;display:inline-flex;position:relative}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--ink)}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:8px;left:.625rem;right:.625rem}.bar[data-astro-cid-nen7h5rs] .theme-toggle{grid-area:toggle}@media (width>=40rem){.bar[data-astro-cid-nen7h5rs]{grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav toggle";padding-block:.75rem}.nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{justify-content:flex-end;margin:0}}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--rule);margin-top:auto}.foot[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1.5rem;padding-block:1.25rem;display:flex}.foot[data-astro-cid-jo6i4kqk] p[data-astro-cid-jo6i4kqk]{margin:0}.links[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:0 1.25rem;margin:0;padding:0;list-style:none;display:flex}.links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{align-items:center;min-height:44px;display:inline-flex}
