@layer reset{*,:after,:before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,p{margin:0}button,input,select{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img,svg{max-width:100%}img{display:block}a{color:inherit;text-decoration:none}}@layer base{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f7f7f4;--surface:#fff;--ink:#20232c;--muted:#646774;--line:#dcdee3;--blue:#315cda;--purple:#7351c9;--max-width:1240px;--gutter:calc(clamp(20px, 4.2vw, 64px));--font-sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:var(--paper);color:var(--ink)}html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-size:15px;line-height:1.7}::selection{color:#172851;background:#dce5ff}:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:2px}main:focus{outline:none}h1,h2,h3,h4{font-weight:600;line-height:1.18}button{color:inherit}[id]{scroll-margin-top:12px}@media (width<=700px){html{scroll-padding-top:84px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}@layer components{.container{width:min(var(--max-width),100% - var(--gutter) * 2);margin-inline:auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:10px;font-size:10px;font-weight:500;line-height:1.6;display:flex}.eyebrow:before{content:"";background:var(--blue);flex:none;width:16px;height:2px}.button{overflow-wrap:anywhere;text-align:center;border:1px solid #0000;border-radius:5px;justify-content:center;align-items:center;gap:14px;max-width:100%;min-height:44px;padding:11px 18px;font-size:13px;font-weight:550;line-height:1.5;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.button--primary{background:var(--blue);color:#fff}.button svg,.text-link svg{flex-shrink:0}.button--primary:hover{background:#2348b5}.button--outline{background:0 0;border-color:#cfd3dc}.button--outline:hover{border-color:var(--blue);color:var(--blue);background:#eff3ff}.button--text{color:var(--blue);padding-inline:0}.button--text:hover{color:#173caa;text-underline-offset:5px;text-decoration:underline}.text-link{align-items:center;gap:10px;min-height:44px;font-size:13px;font-weight:550;transition:color .18s;display:inline-flex}.text-link:hover{color:var(--blue)}@media (prefers-reduced-motion:no-preference){a[href] svg[aria-hidden=true]:is([data-icon=arrow-right],[data-icon=arrow-up-right],[data-icon=arrow-down],[data-icon=chevron-left]){--arrow-x:2px;--arrow-y:0px;transition:transform .18s}a[href] svg[aria-hidden=true][data-icon=arrow-up-right]{--arrow-y:-2px}a[href] svg[aria-hidden=true][data-icon=arrow-down]{--arrow-x:0px;--arrow-y:2px}a[href] svg[aria-hidden=true][data-icon=chevron-left]{--arrow-x:-2px}a[href]:focus-visible svg[aria-hidden=true]:is([data-icon=arrow-right],[data-icon=arrow-up-right],[data-icon=arrow-down],[data-icon=chevron-left]){transform:translate(var(--arrow-x),var(--arrow-y))}@media (hover:hover) and (pointer:fine){a[href]:hover svg[aria-hidden=true]:is([data-icon=arrow-right],[data-icon=arrow-up-right],[data-icon=arrow-down],[data-icon=chevron-left]){transform:translate(var(--arrow-x),var(--arrow-y))}}}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.section-heading h2{letter-spacing:-.025em;font-size:calc(clamp(25px,3vw,32px))}.section-index{font:10px/1.5 var(--font-mono);letter-spacing:.08em;color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rule{border:0;border-top:1px solid var(--line)}}.site-header[data-v-56e2081a]{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#f7f7f4f5;position:sticky;top:0}.header-inner[data-v-56e2081a]{justify-content:space-between;gap:30px;height:82px}.brand[data-v-56e2081a],.header-inner[data-v-56e2081a]{align-items:center;display:flex}.brand[data-v-56e2081a]{letter-spacing:-.6px;white-space:nowrap;gap:11px;font-size:19px;font-weight:650}.brand-mark[data-v-56e2081a]{-o-object-fit:contain;object-fit:contain;mix-blend-mode:multiply;width:35px;height:35px}.brand-suffix[data-v-56e2081a]{letter-spacing:-.5px;font-weight:450}.desktop-nav[data-v-56e2081a]{gap:29px;margin-left:auto;font-size:12px;font-weight:550;display:flex}.desktop-nav a[data-v-56e2081a]{align-items:center;min-height:44px;padding-block:12px;display:inline-flex;position:relative}.desktop-nav a[data-v-56e2081a]:hover,.desktop-nav a[aria-current][data-v-56e2081a],.github-link[data-v-56e2081a]:hover{color:var(--blue)}.desktop-nav a[aria-current][data-v-56e2081a]:after{content:"";background:var(--blue);width:16px;height:2px;position:absolute;bottom:3px;left:0}.header-tools[data-v-56e2081a]{gap:22px}.github-link[data-v-56e2081a],.header-tools[data-v-56e2081a]{align-items:center;display:flex}.github-link[data-v-56e2081a]{gap:5px;min-height:44px;font-size:12px}.language-link[data-v-56e2081a]{font:11px/1 var(--font-mono);background:0 0;border:1px solid #d4d7df;border-radius:4px;place-items:center;width:44px;min-height:44px;display:grid}.language-link[data-v-56e2081a]:hover{border-color:var(--blue);color:var(--blue)}.menu-button[data-v-56e2081a]{background:0 0;border:0;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;display:none}.mobile-nav[data-v-56e2081a]{display:none}.skip-link[data-v-56e2081a]{z-index:100;background:var(--blue);color:#fff;border-radius:4px;padding:12px 20px;position:fixed;top:8px;left:16px;transform:translateY(-160%)}.skip-link[data-v-56e2081a]:focus{transform:translateY(0)}@media (width<=1000px){.desktop-nav[data-v-56e2081a],.header-inner[data-v-56e2081a]{gap:20px}.header-tools[data-v-56e2081a]{gap:16px}.brand-suffix[data-v-56e2081a]{display:none}}@media (width<=700px){.header-inner[data-v-56e2081a]{gap:12px;height:68px}.brand-suffix[data-v-56e2081a]{font-size:15px;display:inline}.brand[data-v-56e2081a]{gap:7px;font-size:18px}.brand-mark[data-v-56e2081a]{width:29px;height:29px}.desktop-nav[data-v-56e2081a],.github-link[data-v-56e2081a]{display:none}.header-tools[data-v-56e2081a]{gap:4px}.menu-button[data-v-56e2081a],.mobile-nav[data-v-56e2081a]{display:flex}.language-link[data-v-56e2081a]{border:0;min-height:44px}.mobile-nav[data-v-56e2081a]{overscroll-behavior:contain;flex-direction:column;max-height:calc(100dvh - 68px);padding-bottom:16px;overflow-y:auto}.mobile-nav a[data-v-56e2081a]{border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;min-height:44px;padding:13px 4px;font-size:14px;display:flex}.mobile-nav a[aria-current][data-v-56e2081a]{color:var(--blue)}.mobile-nav a[data-v-56e2081a]:focus-visible{outline-offset:-3px}}@media (width>=701px){.mobile-nav[data-v-56e2081a]{display:none!important}}@media (width<=700px) and (prefers-reduced-motion:no-preference){.mobile-nav[data-v-56e2081a]{animation:.14s ease-out mobile-nav-enter-56e2081a}@keyframes mobile-nav-enter-56e2081a{0%{opacity:0}to{opacity:1}}}.research-link[data-v-33d1a904]{min-height:44px;color:var(--blue);align-items:center;gap:8px;font-size:13px;font-weight:550;line-height:1.65;display:inline-flex}.research-link>span[data-v-33d1a904]:first-child{overflow-wrap:anywhere;min-width:0}.research-link>svg[data-v-33d1a904]{flex:none}.research-link[data-v-33d1a904]:hover{text-underline-offset:4px;text-decoration:underline}.footer-main>div[data-v-0a3d6452]{min-width:0}.footer-main nav .research-link[data-v-0a3d6452]{color:var(--muted);font-size:12px;font-weight:400}.site-footer[data-v-0a3d6452]{border-top:1px solid var(--line);margin-top:88px}.footer-main[data-v-0a3d6452]{justify-content:space-between;gap:32px;padding-block:38px;display:flex}.footer-brand[data-v-0a3d6452]{letter-spacing:-.7px;align-items:center;gap:14px;min-height:44px;font-size:21px;font-weight:600;display:inline-flex}.brand-square[data-v-0a3d6452]{background:var(--blue);width:6px;height:6px}.footer-main p[data-v-0a3d6452]{color:var(--muted);margin-top:9px;font-size:12px}.footer-main nav[data-v-0a3d6452]{flex-wrap:wrap;align-items:center;gap:28px;min-width:0;font-size:12px;display:flex}.footer-main nav svg[data-v-0a3d6452]{flex:none}.footer-main nav a[data-v-0a3d6452]{overflow-wrap:anywhere;align-items:center;gap:5px;min-height:44px;display:flex}.footer-main nav a[data-v-0a3d6452]:hover{color:var(--blue)}.footer-bottom[data-v-0a3d6452]{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:24px;padding-block:20px;font-size:10px;display:flex}.footer-location[data-v-0a3d6452]{font-family:var(--font-mono);letter-spacing:.07em;font-size:9px}@media (width<=700px){.site-footer[data-v-0a3d6452]{margin-top:56px}.footer-main[data-v-0a3d6452]{flex-direction:column;gap:20px;padding-block:28px}.footer-main nav[data-v-0a3d6452]{gap:24px}.footer-bottom[data-v-0a3d6452]{flex-wrap:wrap;gap:8px 20px;font-size:10px}.footer-location[data-v-0a3d6452]{width:100%;margin-top:8px}}.error-page[data-v-4434b723]{color:#20232c;background:#f7f7f4;min-height:100vh;padding:32px calc(max(24px,50vw - 620px));font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif}.error-brand[data-v-4434b723]{color:inherit;align-items:center;gap:12px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.error-page main[data-v-4434b723]{max-width:720px;padding-block:calc(clamp(70px,15vh,180px))}.error-code[data-v-4434b723]{color:#315cda;letter-spacing:.1em;font:12px/1.5 monospace}.error-page h1[data-v-4434b723]{letter-spacing:-.04em;margin:24px 0;font-size:calc(clamp(32px,5vw,58px));font-weight:600;line-height:1.3}.error-page main>p[data-v-4434b723]:last-of-type{color:#646774;font-size:15px;line-height:1.9}.error-actions[data-v-4434b723]{flex-wrap:wrap;gap:18px 30px;margin-top:35px;display:flex}.error-actions a[data-v-4434b723]{color:#315cda;padding:12px 0;font-size:14px;text-decoration:none}.error-actions a[data-v-4434b723]:hover{text-decoration:underline}.error-page a[data-v-4434b723]:focus-visible{outline-offset:5px;outline:3px solid #315cda}
