@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: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 Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/ibm-plex-sans-cyrillic-ext-700-normal.BmRLXWpJ.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-700-normal.DCQwxkRk.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:700;src:url(/_astro/ibm-plex-sans-cyrillic-700-normal.D_uavGvn.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-700-normal.RFb1v-CK.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:700;src:url(/_astro/ibm-plex-sans-greek-700-normal.wyJ6jzdA.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-700-normal.CkZN0sRy.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:700;src:url(/_astro/ibm-plex-sans-vietnamese-700-normal.CkEo6LDy.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-700-normal.BV5B8Are.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:700;src:url(/_astro/ibm-plex-sans-latin-ext-700-normal.aMgXseD4.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-700-normal.DZH6Xh-4.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:700;src:url(/_astro/ibm-plex-sans-latin-700-normal.Bxkt5Cjx.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-700-normal.Bth3BMcD.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: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}:root{--color-paper:#f7f9fc;--color-grid:#dce5f2;--color-surface:#fff;--color-ink:#1c2b4a;--color-text:var(--color-ink);--color-text-muted:#4a5878;--color-accent:#b23a31;--highlight-yellow:#f5d547b3;--highlight-green:#6fcf97b3;--highlight-blue:#6fb7f0b3;--highlight-pink:#f28ba8b3;--highlight-orange:#f5a55ab3;--highlight-purple:#b38cf0b3;--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--font-size-body:17px;--font-size-small:.875rem;--font-size-meta:.8125rem;--font-size-label:.75rem;--font-size-h1:clamp(2.25rem, 3.5vw + 1rem, 3.5rem);--font-size-h2:clamp(1.5rem, 2vw + 1rem, 2rem);--font-size-h3:1.25rem;--line-height-body:1.6;--line-height-heading:1.15;--letter-spacing-mono:.12em;--space-1:.25rem;--space-2:.5rem;--space-3:1rem;--space-4:1.5rem;--space-5:2rem;--space-6:3rem;--space-7:4rem;--space-8:6rem;--border-width:1.5px;--border:var(--border-width) solid var(--color-ink);--rule:1px solid var(--color-grid);--grid-size:24px;--shadow-hard:6px 6px 0 var(--color-ink);--max-width:1100px;--container-padding:var(--space-4);--transition-fast:.15s ease}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;background:var(--color-paper)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}section[id]{scroll-margin-top:var(--space-6)}img,picture,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}body{min-height:100vh;font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--color-text);background-color:var(--color-paper);background-image:linear-gradient(var(--color-grid) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid) 1px, transparent 1px);background-size:var(--grid-size) var(--grid-size)}h1,h2,h3,h4{font-family:var(--font-sans);font-weight:700;line-height:var(--line-height-heading);color:var(--color-ink);letter-spacing:-.01em}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3);font-weight:600}p{max-width:70ch}a{color:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{max-width:var(--max-width);padding-inline:var(--container-padding);margin-inline:auto}.mono{font-family:var(--font-mono);font-size:var(--font-size-meta);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase}.label{font-family:var(--font-mono);font-weight:600;font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase;color:var(--color-accent)}.btn{padding:.75rem var(--space-4);border:var(--border);font-family:var(--font-mono);font-weight:600;font-size:var(--font-size-meta);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase;color:var(--color-ink);transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;text-decoration:none;display:inline-block}.btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn--primary{background:var(--color-ink);color:var(--color-surface)}.btn--primary:hover{background:var(--color-accent);color:var(--color-surface)}.chips{gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.chips li{font-family:var(--font-mono);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-ink);padding:.125rem var(--space-2)}.highlight{isolation:isolate;color:var(--color-ink);display:inline-block;position:relative}.highlight:before{content:"";z-index:-1;background:var(--highlight-band,var(--highlight-yellow));border-radius:.3em;height:55%;position:absolute;bottom:.06em;left:-4px;right:-4px;transform:rotate(-1deg)}.highlight--yellow{--highlight-band:var(--highlight-yellow)}.highlight--green{--highlight-band:var(--highlight-green)}.highlight--blue{--highlight-band:var(--highlight-blue)}.highlight--pink{--highlight-band:var(--highlight-pink)}.highlight--orange{--highlight-band:var(--highlight-orange)}.highlight--purple{--highlight-band:var(--highlight-purple)}.device{background:var(--color-ink);border-radius:36px;padding:4px}.device img{border-radius:32px;width:100%;height:auto;display:block}@media (width<=640px){.device{border-radius:23px;padding:3px}.device img{border-radius:20px}}body{flex-direction:column;min-height:100vh;display:flex}.site-header[data-astro-cid-z4jru4n3]{border-bottom:var(--border);background:var(--color-paper)}.site-header__inner[data-astro-cid-z4jru4n3]{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-5);padding-block:var(--space-4);flex-wrap:wrap;display:flex}.brand[data-astro-cid-z4jru4n3]{align-items:center;gap:var(--space-2);font-family:var(--font-mono);letter-spacing:.04em;color:var(--color-ink);font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.brand[data-astro-cid-z4jru4n3]:hover{color:var(--color-accent)}.brand[data-astro-cid-z4jru4n3] .brand__mark{flex-shrink:0}.site-nav[data-astro-cid-z4jru4n3] ul[data-astro-cid-z4jru4n3]{gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.site-nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]{font-family:var(--font-mono);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase;color:var(--color-ink);padding-block:var(--space-1);border-bottom:var(--border-width) solid transparent;transition:color var(--transition-fast), border-color var(--transition-fast);text-decoration:none}.site-nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]:hover{color:var(--color-accent)}.site-nav[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3].is-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.site-main[data-astro-cid-z4jru4n3]{padding-block:var(--space-6) var(--space-8);flex:1}.site-footer[data-astro-cid-z4jru4n3]{border-top:var(--border);background:var(--color-paper)}.site-footer__inner[data-astro-cid-z4jru4n3]{justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);padding-block:var(--space-4);font-family:var(--font-mono);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-mono);text-transform:uppercase;color:var(--color-text-muted);flex-wrap:wrap;display:flex}.footer-links[data-astro-cid-z4jru4n3]{gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.footer-links[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]{color:var(--color-ink);text-decoration:none}.footer-links[data-astro-cid-z4jru4n3] a[data-astro-cid-z4jru4n3]:hover{color:var(--color-accent)}@media (width<=720px){.site-header__inner[data-astro-cid-z4jru4n3]{padding-block:var(--space-3);flex-direction:column;align-items:flex-start}.site-nav[data-astro-cid-z4jru4n3] ul[data-astro-cid-z4jru4n3]{gap:var(--space-1) var(--space-3)}}
