@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4f6667dd39116621-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07935285219a259d-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f58031ded4338640-s.390ncx5urfkfu.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77814b00d5ca94a4-s.21jp631_3pja2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/605ce01b664af129-s.p.0wgildi0cnwt9.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.MwEO2a_className{font-family:Geist,Geist Fallback;font-style:normal}.MwEO2a_variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b0c6b664fd57c2c6-s.31988l_ccedte.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6e342921ee4dcd9d-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bb852295097cd96-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9eb5a876700c0028-s.1uyisp29ctx0d.woff2)format("woff2");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;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2a04751c893bf294-s.1rgnod-3esatf.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/07a39a8a4660cc7c-s.p.0r6juujl39pe6.woff2)format("woff2");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 Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.Gb1_vG_className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.Gb1_vG_variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--surface:#f5f5f7;--surface-raised:#f0f0f2;--surface-strong:#e8e8ed;--surface-muted:#fbfbfd;--ink:#1d1d1f;--ink-soft:#6e6e73;--ink-muted:#6e6e73;--copy:#424245;--copy-strong:#1d1d1f;--copy-strongest:#000;--copy-muted:#6e6e73;--line:#d2d2d7;--line-strong:#b8b8bd;--accent:#0071e3;--accent-strong:#0077ed;--accent-hover:#0077ed;--accent-soft:#2997ff;--accent-ink:#fff;--sage:#30d158;--ochre:#ff9f0a;--progress:var(--accent);--focus:#0071e3;--cta-bg:#000;--callout-info-accent:#2f80ed;--callout-info-bg:#f0f4f9;--callout-tip-accent:#2f9e62;--callout-tip-bg:#eef7f0;--callout-warning-accent:#c47e12;--callout-warning-bg:#fdf6e8;--callout-danger-accent:#ff453a;--callout-danger-bg:#1d1d1f;--callout-danger-title:#f5f5f7;--callout-danger-body:#d2d2d7;--callout-danger-muted:#a1a1a6;--forest:#f5f5f7;--forest-soft:#fbfbfd;--on-forest:var(--ink);--on-forest-muted:var(--ink-soft);--glow:transparent;--scrim:#0000007a;--overlay:#0000006b;--chrome:#ffffffb8;--chrome-ink:var(--ink);--chrome-muted:var(--ink-soft);--chrome-line:var(--line);--chrome-line-strong:var(--line-strong);--paper:var(--bg);--paper-strong:var(--surface);--paper-muted:var(--surface-muted);--paper-ink:var(--ink);--paper-soft:var(--ink-soft);--paper-line:var(--line);--paper-line-strong:var(--line-strong);--paper-accent:var(--accent);--code-bg:#171817;--code-text:#e9e7e0;--code-line:#30332e;--syntax-comment:#7f867c;--syntax-punctuation:#b7bcad;--syntax-keyword:#f0a07f;--syntax-string:#bdd3aa;--syntax-number:#e7c58d;--syntax-function:#f5e2b9;--syntax-property:#dcd0b2;--syntax-operator:#d6d0b8;--counter-bg:#171817;--counter-on:var(--accent);--counter-off:#454a43;--font-display:"SF Pro Display", -apple-system, BlinkMacSystemFont, var(--font-geist-sans), "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-sans:"SF Pro Text", -apple-system, BlinkMacSystemFont, var(--font-geist-sans), "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--font-size-screening:clamp(64px, 8.6vw, 128px);--font-size-display:clamp(52px, 6.4vw, 92px);--font-size-brand:20px;--font-size-h1:clamp(42px, 5.6vw, 76px);--font-size-h2:clamp(32px, 4.2vw, 56px);--font-size-h3:clamp(22px, 2.4vw, 28px);--font-size-h4:21px;--font-size-h5:17px;--font-size-h6:15px;--font-size-lead:21px;--font-size-lead-small:19px;--font-size-quote:25px;--font-size-body:17px;--font-size-small:15px;--font-size-ui:14px;--font-size-meta:12px;--font-size-label:11px;--font-size-code:14px;--line-height-screening:.96;--line-height-display:1;--line-height-h1:1.02;--line-height-h2:1.06;--line-height-h3:1.18;--line-height-h4:1.3;--line-height-h5:1.45;--line-height-lead:1.5;--line-height-lead-small:1.5;--line-height-body:1.65;--line-height-small:1.5;--line-height-ui:1.4;--line-height-meta:1.4;--line-height-label:1.3;--line-height-code:1.7;--tracking-screening:-.05em;--tracking-display:-.045em;--tracking-heading:-.03em;--tracking-label:.01em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:40px;--space-9:56px;--space-10:72px;--space-11:96px;--space-12:128px;--space-13:160px;--radius-xs:8px;--radius-sm:12px;--radius-md:18px;--radius-lg:28px;--radius-pill:980px;--radius:var(--radius-md);--page-max:1240px;--content-max:1120px;--article-max:1240px;--reading-max:720px;--reading-wide:720px;--toc-width:200px;--article-gap:72px;--screen-width:720px;--header-height:48px;--gutter:40px;--gutter-sm:20px;--code-bleed:0px;--control-size:34px;--shadow-screen:none;--shadow-overlay:0 32px 80px #0000002e;--shadow-panel:0 24px 60px -36px #00000047;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-instant:.1s;--duration-fast:.16s;--duration-base:.22s;--duration-slow:.36s;--duration-reveal:.7s;--anim-rise-in:rise-in;--anim-loading-pulse:loading-pulse;--anim-menu-in:menu-in;--anim-search-overlay-in:search-overlay-in;--anim-search-panel-in:search-panel-in;--anim-hero-line-in:hero-line-in;--anim-hero-fade-in:hero-fade-in;--anim-art-drift:art-drift;--anim-art-orbit:art-orbit;--anim-art-breathe:art-breathe;--anim-reveal-up:reveal-up;--z-header:40;--z-menu:30;--z-progress:50;--z-skip:100;--z-overlay:1000;--sun-icon-opacity:0;--sun-icon-transform:rotate(-20deg) scale(.75);--moon-icon-opacity:1;--moon-icon-transform:rotate(0) scale(1)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--surface:#1d1d1f;--surface-raised:#2c2c2e;--surface-strong:#3a3a3c;--surface-muted:#0a0a0a;--ink:#f5f5f7;--ink-soft:#a1a1a6;--ink-muted:#86868b;--copy:#d2d2d7;--copy-strong:#f5f5f7;--copy-strongest:#fff;--copy-muted:#a1a1a6;--line:#3a3a3c;--line-strong:#545458;--accent:#2997ff;--accent-strong:#51a9ff;--accent-hover:#51a9ff;--accent-soft:#64b5ff;--accent-ink:#fff;--sage:#30d158;--ochre:#ff9f0a;--progress:var(--accent);--focus:#2997ff;--cta-bg:#1d1d1f;--callout-info-accent:#64b5ff;--callout-info-bg:#0d1622;--callout-tip-accent:#6fd39a;--callout-tip-bg:#0e1a14;--callout-warning-accent:#ffb340;--callout-warning-bg:#1b1610;--callout-danger-accent:#ff6961;--callout-danger-bg:#1c1416;--callout-danger-title:#fff;--callout-danger-body:#e5e5ea;--callout-danger-muted:#a1a1a6;--forest:#1d1d1f;--forest-soft:#2c2c2e;--on-forest:var(--ink);--on-forest-muted:var(--ink-soft);--overlay:#000000b8;--scrim:#000000b8;--chrome:#000000b8;--chrome-ink:var(--ink);--chrome-muted:var(--ink-soft);--chrome-line:var(--line);--chrome-line-strong:var(--line-strong);--paper:var(--bg);--paper-strong:var(--surface);--paper-muted:var(--surface-muted);--paper-ink:var(--ink);--paper-soft:var(--ink-soft);--paper-line:var(--line);--paper-line-strong:var(--line-strong);--paper-accent:var(--accent);--shadow-overlay:0 32px 80px #000000a3;--shadow-panel:0 24px 60px -36px #000000b8;--sun-icon-opacity:1;--sun-icon-transform:rotate(0) scale(1);--moon-icon-opacity:0;--moon-icon-transform:rotate(20deg) scale(1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-5));background:var(--bg);color:var(--ink);scrollbar-color:var(--line-strong) var(--bg);scrollbar-width:thin}body{isolation:isolate;background:var(--bg);min-width:320px;color:var(--ink);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);font-kerning:normal;text-rendering:optimizelegibility;caret-color:var(--accent);-webkit-text-size-adjust:100%;transition:background-color var(--duration-base) ease, color var(--duration-base) ease;margin:0;position:relative}h1,h2,h3,h4,h5,h6,p{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:var(--tracking-heading)}h1{font-size:var(--font-size-h1);font-weight:600;line-height:var(--line-height-h1);letter-spacing:var(--tracking-display);text-wrap:balance}h2{font-size:var(--font-size-h2);font-weight:600;line-height:var(--line-height-h2);text-wrap:balance}h3{font-size:var(--font-size-h3);font-weight:600;line-height:var(--line-height-h3);text-wrap:balance}h4,h5{text-wrap:balance;font-weight:600}h4{font-size:var(--font-size-h4);line-height:var(--line-height-h4)}h5{font-size:var(--font-size-h5);line-height:var(--line-height-h5)}h6{font-size:var(--font-size-h6);font-weight:600;line-height:var(--line-height-label)}body,button,a,input{-webkit-font-smoothing:antialiased}button,input{font:inherit}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px}html::-webkit-scrollbar{width:10px;height:10px}html::-webkit-scrollbar-track{background:0 0}html::-webkit-scrollbar-thumb{border:3px solid var(--bg);border-radius:var(--radius-pill);background:var(--line-strong)}html::-webkit-scrollbar-thumb:hover{background:var(--accent)}@media (max-width:1024px){:root{--gutter:28px;--article-gap:56px;--page-max:100%}}@media (max-width:768px){:root{--header-height:60px;--gutter:20px;--gutter-sm:20px;--font-size-h1:48px;--font-size-h2:30px;--font-size-h3:23px;--font-size-lead:18px;--font-size-body:17px}}@media (max-width:480px){:root{--font-size-h1:42px;--font-size-h2:28px;--font-size-h3:22px;--font-size-lead:18px}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes hero-line-in{0%{transform:translateY(112%)}to{transform:translateY(0)}}@keyframes hero-fade-in{0%{opacity:0;filter:blur(4px);transform:translateY(14px)}to{opacity:1;filter:blur();transform:none}}@keyframes art-drift{0%{transform:translate(-2%,-1%)rotate(0)scale(1)}to{transform:translate(3%,2%)rotate(14deg)scale(1.08)}}@keyframes art-orbit{to{rotate:360deg}}@keyframes art-breathe{0%,to{scale:1}50%{scale:1.045}}@keyframes reveal-up{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes menu-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes search-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes search-panel-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}[data-load-reveal]{animation:rise-in .56s var(--ease-out) var(--load-delay,60ms) both}[data-load-reveal="2"]{--load-delay:.12s}[data-load-reveal="3"]{--load-delay:.18s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-load-reveal]{opacity:1!important;animation:none!important;transform:none!important}}
