:root{--bg:#070708;--bg-1:#0c0c0d;--bg-2:#101011;--bg-3:#19191b;--line:rgba(255,255,255,0.08);--line-2:rgba(255,255,255,0.15);--fg:#ffffff;--fg-2:rgba(255,255,255,0.72);--fg-3:rgba(255,255,255,0.5);--fg-4:rgba(255,255,255,0.3);--r:8px;--r-sm:6px;--max:1150px;--head:var(--font-head),-apple-system,system-ui,"Segoe UI",sans-serif;--sans:var(--font-sans),-apple-system,system-ui,"Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,Menlo,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg)}body{font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font:inherit;color:inherit}::selection{background:rgba(255,255,255,.22)}.wrap{max-width:var(--max);margin:0 auto;padding:0 max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left))}@media (max-width:640px){.wrap{padding:0 16px}}.mono{font-family:var(--mono)}.dim{color:var(--fg-3)}.dim2{color:var(--fg-2)}.small{font-size:13.5px}.u{text-decoration:underline;text-underline-offset:3px;color:var(--fg-2)}.u:hover{color:#fff}h1,h2,h3{font-family:var(--head);font-weight:300;letter-spacing:-.03em;margin:0;line-height:1.14}h2{font-size:clamp(28px,3.4vw,42px)}h3{font-size:22px;font-weight:400;letter-spacing:-.02em}p{margin:0}.label{letter-spacing:.12em;color:var(--fg-3)}.chip,.label{font-family:var(--mono);font-size:11.5px;text-transform:uppercase}.chip{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:5px;border:1px solid var(--line-2);color:var(--fg-2);letter-spacing:.08em;line-height:1.2;white-space:nowrap}.chip.fill{background:#fff;color:#000;border-color:#fff}.chip .dot{width:5px;height:5px;border-radius:50%;background:#fff}.chip.fill .dot{background:#000}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:42px;padding:0 20px;border-radius:var(--r-sm);border:1px solid #fff;background:#fff;color:#000;font-size:15px;font-weight:500;transition:transform .15s ease,background .15s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0) scale(.98)}.btn.dark{background:rgba(255,255,255,.04);color:#fff;border-color:var(--line-2)}.btn.dark:hover{background:rgba(255,255,255,.1)}.btn.sm{height:34px;padding:0 13px;font-size:13.5px}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.card{background:var(--bg-1);border-radius:var(--r)}.card,.frame{border:1px solid var(--line)}.frame{position:relative;border-radius:var(--r);--lit:0;--mx:50%;--my:50%;background:radial-gradient(380px circle at var(--mx) var(--my),rgba(255,255,255,calc(.06 * var(--lit))),transparent 62%),var(--bg-1);transition:border-color .35s}.frame:hover{border-color:rgba(255,255,255,.16)}.frame:after,.frame:before{content:"";position:absolute;width:9px;height:9px;border:1px solid var(--fg-3);pointer-events:none;transition:width .5s cubic-bezier(.2,.7,.2,1),height .5s cubic-bezier(.2,.7,.2,1),border-color .35s}.frame:hover:after,.frame:hover:before{width:18px;height:18px;border-color:#fff}.frame[data-reveal]:not(.in):after,.frame[data-reveal]:not(.in):before{width:0;height:0}.frame:before{left:-1px;top:-1px;border-right:0;border-bottom:0;border-top-left-radius:var(--r)}.frame:after{right:-1px;bottom:-1px;border-left:0;border-top:0;border-bottom-right-radius:var(--r)}.sec{padding-top:160px}.sec-head{display:grid;grid-template-columns:180px 1fr;grid-gap:24px;gap:24px;margin-bottom:52px;align-items:start}.sec-head .label{padding-top:12px}.sec-head h2{max-width:720px}.sec-head p{max-width:560px;margin-top:16px}@media (max-width:860px){.sec{padding-top:110px}.sec-head{grid-template-columns:1fr;gap:14px;margin-bottom:36px}.sec-head .label{padding-top:0}}.page{padding-top:130px;animation:fade .6s cubic-bezier(.2,.7,.2,1) both}.tbl{width:100%;border-collapse:collapse;font-size:14.5px}.tbl th{text-align:left;font-weight:400;color:var(--fg-3);font-size:12.5px;padding:0 14px 12px;white-space:nowrap}.tbl td{padding:13px 14px;border-top:1px solid var(--line)}.scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}.kv{display:grid;grid-template-columns:auto 1fr;font-size:14.5px}.kv>*{padding:12px 0;border-top:1px solid var(--line);min-width:0}.kv>:nth-child(odd){color:var(--fg-3);padding-right:24px;white-space:nowrap}.kv>:nth-child(2n){text-align:right;overflow-wrap:anywhere}.code,.kv>:nth-child(2n){font-family:var(--mono);font-size:13px;color:var(--fg-2)}.code{line-height:1.7;background:#0a0a0b;border:1px solid var(--line);border-radius:var(--r-sm);padding:16px 18px;overflow-x:auto;white-space:pre}.code b{color:#fff;font-weight:400}.code i{color:var(--fg-4);font-style:normal}.wrapcode{white-space:pre-wrap;overflow-wrap:anywhere}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-size:12.5px;color:var(--fg-3)}.input{height:42px;border-radius:var(--r-sm);border:1px solid var(--line-2);background:#0a0a0b;padding:0 13px;outline:none;transition:border-color .15s;width:100%;min-width:0}textarea.input{height:auto;padding:11px 13px;resize:vertical;line-height:1.5}.input:focus{border-color:rgba(255,255,255,.4)}.input.mono{font-size:13px}.seg{display:inline-flex;padding:3px;gap:3px;background:#0a0a0b;border:1px solid var(--line);border-radius:var(--r);flex-wrap:wrap}.seg button{border:0;background:transparent;padding:7px 13px;border-radius:5px;color:var(--fg-3);font-size:14px}.seg button[aria-pressed=true]{background:var(--bg-3);color:#fff}.err{color:#fff;border:1px solid var(--line-2);border-left:2px solid #fff;background:rgba(255,255,255,.04);padding:11px 14px;border-radius:var(--r-sm);font-size:14px}.note{color:var(--fg-3);font-size:13.5px}.fade-in{animation:fade .7s ease both}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.rise>*{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}.rise>:nth-child(2){animation-delay:.08s}.rise>:nth-child(3){animation-delay:.16s}.rise>:nth-child(4){animation-delay:.24s}.rise>:nth-child(5){animation-delay:.32s}.rise>:nth-child(6){animation-delay:.4s}@keyframes sweep{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.pulse{animation:pulse 1.6s ease-in-out infinite}[data-reveal]{opacity:0;transform:translate3d(0,24px,0);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0s)}[data-reveal].in{opacity:1;transform:none}[data-reveal=fade]{transform:none}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none;transition:none}.fade-in,.page,.pulse,.rise>*{animation:none}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,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(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.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(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-mono:"Geist Mono","Geist Mono Fallback"}@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");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:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98848575513c9742-s.woff2) format("woff2");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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-s.p.woff2) format("woff2");unicode-range:u+00??,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:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_1357df{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_1357df{--font-head:"Outfit","Outfit Fallback"}