@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-ext-wght-normal.DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-wght-normal.BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-vietnamese-wght-normal.6IgcOCM7.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-ext-wght-normal.DC-KSUi6.woff2)format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-wght-normal.BgDaEnEv.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-symbols2-wght-normal.CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-vietnamese-wght-normal.DadHysG0.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2)format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");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{--site-accent:#ff6a2b}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}@font-face{font-family:Geist Fallback;src:local(Arial),local(ArialMT),local(Helvetica Neue),local(Helvetica),local(Roboto);unicode-range:U+20-FF,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;size-adjust:104.755%;ascent-override:95.9379%;descent-override:28.1609%;line-gap-override:0%}:root{--c-bg:#f4f4f2;--c-white:#fff;--c-soft:#fafaf9;--c-softer:#fcfcfb;--c-panel:#eaeae7;--c-ink:#0e0e10;--c-ink-2:#18181b;--c-ink-3:#27272a;--c-text:#3f3f46;--c-muted:#636369;--c-dim:#a1a1aa;--c-dim-2:#d4d4d8;--c-line:#e4e4e0;--c-line-2:#efefec;--c-line-3:#c9c9c4;--c-accent:#ff6a2b;--c-accent-2:#f2561a;--c-accent-soft:#ffe9df;--c-accent-ink:#9a3412;--c-ok:#16a34a;--c-ok-bright:#22c55e;--c-ok-soft:#dcfce7;--c-ok-ink:#15803d;--c-bad:#dc2626;--c-bad-soft:#fee2e2;--c-bad-ink:#b91c1c;--c-violet:#4a154b;--c-blue:#0ea5e9;--c-teal:#0f766e;--c-amber:#f59e0b;--radius-sm:12px;--radius-md:20px;--radius-lg:28px;--shadow-sm:0 1px 2px #0e0e100d;--shadow-md:0 1px 2px #0e0e100a, 0 8px 24px -8px #0e0e1029;--shadow-lg:0 0 0 1px #0e0e100f, 0 2px 4px #0e0e100a, 0 40px 80px -30px #0e0e1073, 0 20px 40px -24px #0e0e1040;--ring:inset 0 0 0 1px var(--c-line);--ring-soft:inset 0 0 0 1px var(--c-line-2);--page-width:1180px;--section-gap:112px;--font:"Geist Variable", "Geist", "Geist Fallback", system-ui, sans-serif;--mono:"Geist Mono Variable", "Geist Mono", ui-monospace, monospace;--ease:cubic-bezier(.2, .8, .2, 1)}html:has(.site-root){background:var(--c-bg);scroll-behavior:smooth;scroll-padding-top:88px}.site-root{background:var(--c-bg);min-height:100vh;color:var(--c-text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:17px;line-height:1.55}.site-root :where(h1,h2,h3,p,ul,ol,dl,dd,figure,blockquote){margin:0}.site-root :where(ul,ol){padding:0;list-style:none}.site-root :where(a){color:inherit;text-decoration:none}.site-root :where(h1,h2,h3){color:var(--c-ink);text-wrap:balance;font-weight:600}.site-root h2{letter-spacing:-.035em;font-size:clamp(30px,3.4vw,44px);line-height:1.04}.site-root h2.is-wide{max-width:13.66em;font-size:clamp(34px,4.2vw,56px)}.site-root img{max-width:100%;display:block}.site-root :focus-visible{outline:2px solid var(--c-accent);outline-offset:3px;border-radius:8px}.wrap{max-width:var(--page-width);margin:0 auto;padding:0 24px}.section{padding:var(--section-gap) 0}.section.is-flush{padding-top:0}.section.is-white{background:var(--c-white)}.section.is-dark{background:var(--c-ink);color:var(--c-dim)}.section.is-dark :where(h2,h3){color:var(--c-white)}.section.is-dark+.section.is-dark{border-top:1px solid #ffffff1a}.section-sub{max-width:720px;color:var(--c-muted);margin:16px 0 40px;font-size:18px;line-height:1.55}.split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;display:grid}.pill{white-space:nowrap;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 20px;font-size:15px;font-weight:600;line-height:normal;transition:transform .2s,background-color .2s,box-shadow .2s;display:inline-flex}.pill:disabled{opacity:.6;cursor:default;transform:none}.pill--dark{background:var(--c-ink);color:var(--c-white)}.pill--dark:hover{background:var(--c-ink-3);transform:translateY(-1px)}.pill--light{background:var(--c-white);box-shadow:var(--ring);color:var(--c-ink)}.pill--light:hover{box-shadow:inset 0 0 0 1px var(--c-line-3)}.pill--accent{background:var(--c-accent);color:var(--c-ink);box-shadow:inset 0 1px #ffffff4d,0 6px 16px -6px #ff6a2b99}.pill--accent:hover{background:var(--c-accent-2);transform:translateY(-1px)}.pill--sm{padding:9px 14px;font-size:13.5px}.tabs{flex-wrap:wrap;display:flex}.tabs,.tabs button{align-items:center;gap:8px}.tabs button{background:var(--c-white);box-shadow:var(--ring);color:var(--c-ink);font:inherit;white-space:nowrap;cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease);border:0;border-radius:999px;padding:9px 16px 9px 13px;font-size:14px;font-weight:500;line-height:normal;display:inline-flex}.tabs .tab-icon{width:18px;height:18px;color:var(--c-accent);flex:none}.tabs button:hover{background:#eaeae7}.tabs button.is-active,.tabs button[aria-pressed=true]{background:var(--c-ink);box-shadow:none;color:var(--c-white)}.tabs button.is-active .tab-icon,.tabs button[aria-pressed=true] .tab-icon{color:var(--c-white)}@media (width<=760px){.tabs{scrollbar-width:none;flex-wrap:nowrap;margin-inline:-16px;padding-inline:16px;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:none}}.text-link{color:var(--c-ink);box-shadow:inset 0 -1px 0 var(--c-line-3);font-weight:600;transition:box-shadow .2s}.text-link:hover{box-shadow:inset 0 -1px 0 var(--c-ink)}.chip{background:var(--c-soft);box-shadow:var(--ring-soft);color:var(--c-ink);border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 6px;font-size:12.5px;font-weight:500;line-height:normal;display:inline-flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.tag{background:#f4f4f5;border-radius:999px;margin:0 4px 0 0;padding:3px 8px;font-size:11.5px;font-weight:600;line-height:normal;display:inline-block}.tag--red{background:var(--c-bad-soft);color:#b91c1c}.tag--green{background:var(--c-ok-soft);color:#15803d}.tag--orange{background:var(--c-accent-soft);color:var(--c-accent-ink)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=760px){:root{--section-gap:64px}.site-root .section h2,.site-root h2{font-size:clamp(28px,8vw,36px)}.site-root .section-sub{margin-bottom:32px;font-size:16px}.split{grid-template-columns:minmax(0,1fr);gap:24px}}::view-transition-group(*){animation-duration:.45s;animation-timing-function:var(--ease)}::view-transition-new(root){animation-duration:.3s}::view-transition-old(root){animation-duration:.3s}html:has(.site-menu[open]){overflow:hidden}@keyframes tick{0%{opacity:0;transform:translateY(-8px)}}@keyframes flash{40%{color:var(--c-ok-ink)}}@keyframes grow{0%{transform:scaleY(.25)}}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}}@keyframes shimmer{0%{background-position:125% 0}to{background-position:-125% 0}}@keyframes typing-dot{0%,60%,to{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){html:has(.site-root){scroll-behavior:auto}::view-transition-group(*){animation:none!important}::view-transition-new(*){animation:none!important}::view-transition-old(*){animation:none!important}.site-root *,.site-root :after,.site-root :before{transition-duration:.01ms!important;animation-duration:.01ms!important}}.site-root .page-hero{padding-top:136px;padding-bottom:40px}.site-root .page-crumbs{color:var(--c-muted);align-items:center;gap:9px;margin-bottom:40px;font-size:14px;display:flex;overflow:hidden}.site-root .page-crumbs a{min-height:44px;color:var(--c-ink);align-items:center;font-weight:500;display:flex}.site-root .page-crumbs>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.site-root .page-kicker{color:var(--c-muted);margin-bottom:16px;font-size:15px}.site-root .page-hero h1{letter-spacing:-.04em;max-width:20ch;font-size:clamp(40px,5.4vw,64px);line-height:1.02}.site-root .page-subtitle{max-width:46em;margin-top:24px;font-size:19px;line-height:1.6}.site-root .page-note{border-radius:var(--radius-md);background:var(--c-white);max-width:60em;box-shadow:var(--ring-soft);color:var(--c-muted);margin-top:32px;padding:18px 22px;font-size:14.5px;line-height:1.65}.site-root .page-note b{color:var(--c-ink);font-weight:600}.site-root .page-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:80px;display:grid}.site-root .page-facts>div{border-radius:var(--radius-md);background:var(--c-white);box-shadow:var(--ring-soft);padding:18px 20px}.site-root .page-facts dt{color:var(--c-muted);font-size:13px}.site-root .page-facts dd{color:var(--c-ink);margin-top:8px;font-size:15px;font-weight:500;line-height:1.5}.site-root .prose{padding-bottom:80px}.site-root .prose>*{max-width:900px}.site-root .prose :is(h2,h3){letter-spacing:-.035em;margin:72px 0 20px;scroll-margin-top:96px;font-size:clamp(28px,3.4vw,40px);line-height:1.04}.site-root .prose>:first-child{margin-top:0}.site-root .prose :is(p,li){font-size:17px;line-height:1.75}.site-root .prose p{max-width:64ch}.site-root .prose p+p{margin-top:16px}.site-root .prose :is(ul,ol){margin:16px 0;padding-left:24px}.site-root .prose ul{list-style:outside}.site-root .prose ol{list-style:decimal}.site-root .prose li+li{margin-top:10px}.site-root .prose strong{color:var(--c-ink);font-weight:600}.site-root .prose a{color:var(--c-ink);box-shadow:inset 0 -1px 0 var(--c-line-3);font-weight:500}.site-root .prose a:hover{box-shadow:inset 0 -1px 0 var(--c-ink)}.site-root .prose code{color:var(--c-ink);font-family:var(--mono);font-size:14px}.site-root .prose pre{border-radius:var(--radius-sm);background:var(--c-white);max-width:100%;box-shadow:var(--ring-soft);color:var(--c-ink);font:13px/1.7 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0;padding:20px}.site-root .prose pre code{white-space:inherit;font-size:inherit}.site-root .prose blockquote{border-left:3px solid var(--c-accent);color:var(--c-ink);margin:24px 0;padding:4px 0 4px 20px}.site-root .prose-table{border-radius:var(--radius-sm);background:var(--c-white);box-shadow:var(--ring-soft);margin:24px 0 32px;overflow-x:auto}.site-root .prose table{border-collapse:collapse;width:100%;font-size:14.5px;line-height:1.55}.site-root .prose :is(th,td){border-bottom:1px solid var(--c-line-2);text-align:left;vertical-align:top;padding:14px}.site-root .prose th{color:var(--c-muted);font-size:13px;font-weight:600}.site-root .prose tr:last-child td{border-bottom:0}.site-root .prose--document>*{max-width:68ch}.site-root .prose--document h2{margin:56px 0 20px;font-size:32px}.site-root .prose--document h3{margin:36px 0 16px;font-size:24px}.site-root .prose--document :is(p,li){font-size:18px}.site-root .page-cta{border-top:1px solid var(--c-line-2);background:var(--c-white);padding:80px 0}.site-root .page-cta.is-dark{background:var(--c-ink);color:var(--c-dim);border-top:0}.site-root .page-cta__kicker{color:var(--c-muted);font-size:15px}.site-root .page-cta h2{max-width:24ch;margin:16px 0 28px;font-size:clamp(30px,3.4vw,44px);line-height:1.1}.site-root .page-cta.is-dark h2{color:var(--c-white);margin:0;font-size:clamp(28px,3vw,40px)}.site-root .page-cta__text{max-width:64ch;margin:18px 0 26px}@media (width<=800px){.site-root .page-hero{padding-top:112px}.site-root .prose :is(h2,h3){margin-top:56px}.site-root .page-cta{padding:64px 0}.site-root .page-hero h1{font-size:clamp(36px,10vw,56px)}.site-root .page-subtitle{font-size:17px}.site-root .page-facts{grid-template-columns:1fr 1fr;margin-bottom:64px}}@media (width<=520px){.site-root .page-crumbs>span:nth-last-child(-n+2){display:none}.site-root .page-facts{grid-template-columns:1fr}.site-root .prose :is(th,td){min-width:140px}.site-root .page-cta .pill{text-align:center;white-space:normal;width:100%}.site-root .prose :is(p,li),.site-root .prose--document :is(p,li){font-size:16px}}.site-root .demo-small{color:var(--c-muted);font-size:13.5px}.site-root .demo-time{background:var(--c-ok-soft);color:var(--c-ok-ink);font-family:var(--mono);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-flex}.site-root .is-typing:after{opacity:.5;vertical-align:-2px;content:"";background:currentColor;width:2px;height:1em;margin-left:2px;display:inline-block}.site-root .demo-page p{max-width:64ch}.site-root .demo-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.site-root .demo-actions .pill--light{min-height:40px;box-shadow:inset 0 0 0 1px var(--c-line);padding:8px 14px;font-size:14px;font-weight:500;line-height:normal}.site-root .demo-actions .pill--light:hover{box-shadow:inset 0 0 0 1px var(--c-line-3)}.site-root .demo-run{margin-left:auto;padding:13px 20px;font-size:15px}@media (width<=760px){.site-root .demo-run{width:100%;margin-left:0}}.site-root .demo-run:disabled{opacity:.6;cursor:progress}@property --ring{syntax:"<number>";inherits:true;initial-value:0}.site-root .demo-page :where(input:not([type=file]),textarea){border:1px solid var(--c-line);background:var(--c-soft);width:100%;min-width:0;color:var(--c-ink);font:15.5px/1.55 var(--font);border-radius:12px;padding:12px 14px}.site-root .demo-page :where(input:not([type=file]),textarea):focus{border-color:var(--c-ink);background:var(--c-white);outline:2px solid var(--c-accent);outline-offset:1px}@property --accent{syntax:"<color>";inherits:true;initial-value:#2563eb}.site-root [data-anim]{animation:rise-in .45s var(--ease) both;animation-delay:calc(var(--d,0)*.11s)}.site-root [data-anim=pop]{animation-name:demo-pop}@keyframes demo-pop{0%{opacity:0;transform:scale(.94)}}.site-root .is-swapping{opacity:0}.site-root .demo-swap,.site-root .is-swapping{transition:opacity .18s var(--ease)}.site-root .demo-skeleton{gap:12px;padding:4px 0;display:grid}.site-root .demo-skeleton i{width:calc(100% - var(--i,0)*9%);background:linear-gradient(100deg,var(--c-line-2) 30%,#f7f7f5 50%,var(--c-line-2) 70%) 0 0 /250% 100%;border-radius:8px;height:16px;animation:1.4s linear infinite shimmer;display:block}.site-root .demo-skeleton i:first-child{border-radius:var(--radius-sm);width:100%;height:56px}.site-root .demo-page button:disabled,.site-root .demo-page input:disabled,.site-root .demo-page textarea:disabled{opacity:.55;cursor:default}@media (prefers-reduced-motion:reduce){.site-root .demo-skeleton i,.site-root [data-anim]{animation:none}}.error-page[data-v-c5adf0cb]{font-family:var(--font);color:var(--c-ink);-webkit-font-smoothing:antialiased;background:var(--c-bg);min-height:100vh;align-content:center;padding:48px 24px;font-size:17px;line-height:1.55;display:grid}.error-page__logo[data-v-c5adf0cb]{width:fit-content;color:inherit;letter-spacing:-.03em;text-transform:lowercase;align-items:center;gap:8px;margin-bottom:64px;font-size:17px;font-weight:700;display:inline-flex}.error-page__mark[data-v-c5adf0cb]{border:2.4px solid;border-radius:50%;width:22px;height:22px;display:block;position:relative}.error-page__mark i[data-v-c5adf0cb]{border:1.6px solid var(--c-bg);background:var(--c-accent);border-radius:50%;width:8px;height:8px;position:absolute;top:-1px;right:-2px}.error-page__code[data-v-c5adf0cb]{color:var(--c-muted);letter-spacing:.08em;margin:0 0 12px;font-size:14px;font-weight:600}.error-page h1[data-v-c5adf0cb]{letter-spacing:-.04em;max-width:18ch;margin:0 0 20px;font-size:clamp(34px,6vw,64px);font-weight:600;line-height:1}.error-page>p[data-v-c5adf0cb]:not(.error-page__code){max-width:42em;color:var(--c-muted);margin:0 0 28px;font-size:17px;line-height:1.55}.error-page__links[data-v-c5adf0cb]{flex-wrap:wrap;gap:20px;display:flex}.error-page__links a[data-v-c5adf0cb]{color:var(--c-ink);text-underline-offset:3px;font-weight:600;text-decoration:underline}
