@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-opsz-normal.CfYZpDVp.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-opsz-normal.BFQXbQ-f.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-ext-opsz-normal.BmPQvyvo.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-greek-opsz-normal.BM0NlUE_.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-vietnamese-opsz-normal.Ci9T9ieq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-ext-opsz-normal.DpK-iCPk.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-latin-opsz-normal.BwkfbSeq.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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+0460-052F,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+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,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+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,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+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-0: #0b0b0d;--ink-1: #121216;--ink-2: #1a1a20;--ink-3: #232330;--line: #2a2a33;--line-bright: #3a3a46;--bone-0: #f2f1ec;--bone-1: #b9b8b3;--bone-2: #83827e;--spectrum: linear-gradient( 90deg, #ff4d4d 0%, #ff9a3d 16%, #ffd23d 32%, #4dd97a 50%, #3dc8ff 68%, #6d6dff 84%, #c44dff 100% );--spectrum-soft: linear-gradient( 90deg, rgb(255 77 77 / .55), rgb(255 210 61 / .55), rgb(77 217 122 / .55), rgb(61 200 255 / .55), rgb(196 77 255 / .55) );--font-display: "Inter Variable", Inter, system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", monospace;--font-system: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI Variable Display", "Segoe UI", system-ui, sans-serif;--t-display-size: clamp(2.6rem, 6.4vw, 5rem);--t-display-lh: 1;--t-display-track: -.045em;--t-1-size: clamp(2rem, 4.6vw, 3.1rem);--t-1-lh: 1.06;--t-1-track: -.034em;--t-2-size: clamp(1.55rem, 3vw, 2.1rem);--t-2-lh: 1.14;--t-2-track: -.022em;--t-3-size: 1.24rem;--t-3-lh: 1.3;--t-3-track: -.011em;--t-body-lh: 1.65;--t-body-track: 0em;--t-small-size: .86rem;--t-small-lh: 1.55;--t-small-track: .006em;--t-label-track: .14em;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--press: .1s ease-out;--max-w: 1280px;--nav-h: 68px;--radius: 2px;color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--ink-0);color:var(--bone-0);font-family:var(--font-display);font-size:100%;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;scrollbar-color:var(--ink-3) var(--ink-0)}body{min-height:100dvh;overflow-x:hidden}::selection{background:#ffd23d;color:var(--ink-0)}h1,h2,h3,h4{font-weight:500;text-wrap:balance}h1{line-height:var(--t-1-lh);letter-spacing:var(--t-1-track)}h2{line-height:var(--t-2-lh);letter-spacing:var(--t-2-track)}h3{line-height:var(--t-3-lh);letter-spacing:var(--t-3-track)}h4{line-height:1.4;letter-spacing:-.004em}.t-display{font-size:var(--t-display-size);line-height:var(--t-display-lh);letter-spacing:var(--t-display-track)}p{line-height:var(--t-body-lh);letter-spacing:var(--t-body-track);max-width:62ch;color:var(--bone-1)}small,.t-small{font-size:var(--t-small-size);line-height:var(--t-small-lh);letter-spacing:var(--t-small-track)}a{color:inherit;text-decoration:none}code,.mono{font-family:var(--font-mono);font-size:.86em}.wrap{max-width:var(--max-w);margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}.spectrum-line{height:1px;background:var(--spectrum);opacity:.7;border:0}[data-spin-border]{position:relative;--spin: 0}[data-spin-border]:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from calc(var(--spin) * 1deg),#e5484d,#e5a13d,#e2d34b,#46c46f,#3dc8ff,#6f6bf2,#b55bd6,#e5484d);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:0;transition:opacity .32s var(--ease-out);pointer-events:none}@media (hover: hover) and (pointer: fine){[data-spin-border]:hover:after{opacity:.85}}[data-spin-border].coasting:after{opacity:.85}.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border:1px solid var(--line-bright);border-radius:var(--radius);color:var(--bone-0);font-size:.95rem;font-weight:500;background:transparent;cursor:pointer;position:relative;overflow:hidden;transition:transform var(--press),border-color .2s ease}.btn:after{content:"";position:absolute;inset:0;background:var(--spectrum);opacity:.14;clip-path:inset(0 100% 0 0);transition:clip-path .32s var(--ease-out)}@media (hover: hover) and (pointer: fine){.btn:hover{border-color:var(--bone-2)}.btn:hover:after{clip-path:inset(0 0 0 0)}}.btn:active{transform:scale(.97)}.btn.primary{background:var(--bone-0);color:var(--ink-0);border-color:var(--bone-0)}.btn.primary:after{opacity:.25}.wipe-word{display:inline-block;white-space:nowrap}.wipe-ch{display:inline-block;clip-path:inset(0 0 0 0);transition:clip-path 60ms linear,transform 60ms linear}[data-wipe]:not(.wiped) .wipe-ch{clip-path:inset(0 100% 0 0);transform:translateY(.08em);transition:none}@media (prefers-reduced-motion: no-preference){.wipe-ch.eroding{animation-name:glyph-erode;animation-iteration-count:infinite;animation-timing-function:steps(2,jump-none)}}@keyframes glyph-erode{0%,to{opacity:1;clip-path:inset(0 0 0 0)}46%{opacity:1;clip-path:inset(0 0 0 0)}48%{opacity:.72;clip-path:inset(8% 0 0 0)}50%{opacity:1;clip-path:inset(0 0 0 0)}81%{opacity:1}83%{opacity:.85;clip-path:inset(0 0 12% 0)}85%{opacity:1;clip-path:inset(0 0 0 0)}}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}.reveal.in{opacity:1;transform:none}button,[role=button],.btn,summary{touch-action:manipulation}button:active,[role=button]:active{transform:scale(.97);transition:transform var(--press)}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}.btn,.btn:after{transition:none}button:active,[role=button]:active,.btn:active{transform:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency: reduce){.nav{background:var(--ink-0);backdrop-filter:none}}@media (prefers-contrast: more){:root{--bone-1: #d6d5d0;--bone-2: #a3a29d;--line: #4a4a58;--line-bright: #6a6a7c}.nav{background:var(--ink-0);backdrop-filter:none}}:focus-visible{outline:2px solid #3dc8ff;outline-offset:3px}.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:10px 16px;background:var(--bone-0);color:var(--ink-0);border-radius:var(--radius);font-weight:600;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.nav[data-astro-cid-dmqpwcec]{position:fixed;inset:0 0 auto;height:var(--nav-h);z-index:40;background:color-mix(in srgb,var(--ink-0) 72%,transparent);backdrop-filter:blur(18px) saturate(150%);border-bottom:1px solid transparent;transition:border-color .26s ease,background .26s ease}.nav[data-astro-cid-dmqpwcec].scrolled{border-bottom-color:var(--line);background:color-mix(in srgb,var(--ink-0) 82%,transparent)}.nav[data-astro-cid-dmqpwcec]:after{content:"";position:absolute;inset:100% 0 auto;height:22px;background:linear-gradient(to bottom,color-mix(in srgb,var(--ink-0) 55%,transparent),transparent);opacity:0;transition:opacity .26s ease;pointer-events:none}.nav[data-astro-cid-dmqpwcec].scrolled:after{opacity:1}.bar[data-astro-cid-dmqpwcec]{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:11px;font-weight:600;font-size:1.02rem;letter-spacing:-.008em}nav[data-astro-cid-dmqpwcec]{display:flex;gap:clamp(10px,2.4vw,30px);min-width:0}.tab[data-astro-cid-dmqpwcec]{position:relative;padding:6px 2px;font-size:.94rem;font-weight:460;letter-spacing:.004em;color:var(--bone-1);transition:color .2s ease}.tab[data-astro-cid-dmqpwcec]:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--spectrum);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}.tab[data-astro-cid-dmqpwcec].active{color:var(--bone-0)}.tab[data-astro-cid-dmqpwcec].active:after{transform:scaleX(1)}@media (hover: hover) and (pointer: fine){.tab[data-astro-cid-dmqpwcec]:hover{color:var(--bone-0)}.tab[data-astro-cid-dmqpwcec]:hover:after{transform:scaleX(1)}}.gh[data-astro-cid-dmqpwcec]{color:var(--bone-1);display:grid;place-items:center;transition:color .2s ease,transform .16s var(--ease-out)}@media (hover: hover) and (pointer: fine){.gh[data-astro-cid-dmqpwcec]:hover{color:var(--bone-0)}}.gh[data-astro-cid-dmqpwcec]:active{transform:scale(.94)}@media (max-width: 620px){.brand[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]{display:none}nav[data-astro-cid-dmqpwcec]{gap:15px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(90deg,#000 88%,transparent 100%)}nav[data-astro-cid-dmqpwcec]::-webkit-scrollbar{display:none}.tab[data-astro-cid-dmqpwcec]{font-size:.86rem;white-space:nowrap;flex:0 0 auto}.brand[data-astro-cid-dmqpwcec],.gh[data-astro-cid-dmqpwcec]{flex:0 0 auto}}#sweep-panel{position:fixed;inset:0;z-index:90;background:var(--spectrum);transform:translate(-102%);pointer-events:none;will-change:transform}#sweep-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 100% at 0% 50%,transparent 60%,rgb(11 11 13 / .35) 100%)}main{min-height:100dvh}.site-footer{margin-top:clamp(64px,10vh,140px)}.foot{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-block:34px}.foot-brand{display:flex;align-items:center;gap:10px;font-weight:600}.foot-note{font-size:.88rem;color:var(--bone-2)}.foot-links{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:.9rem;color:var(--bone-1)}.foot-links a:hover{color:var(--bone-0)}
