:root{--bg:#1e1e1e;--surface:#252526;--card:#2d2d30;--hover:#3c3c41;--border:#3e3e42;--text:#d4d4d4;--text-2:#9d9d9d;--muted:#6e6e6e;--teal:#4ec9b0;--blue:#569cd6;--violet:#c586c0;--amber:#e8a44c;--glow:#0e639c;--line:linear-gradient(90deg, var(--teal), var(--blue) 45%, var(--violet) 75%, var(--amber));--sans:"Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;--mono:Consolas, "SFMono-Regular", Menlo, monospace;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{background:var(--bg);color:var(--text);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}section{padding:88px 0}h1,h2,h3{letter-spacing:-.02em;margin:0 0 16px;line-height:1.15}h1{font-size:clamp(2.2rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.2vw,2.3rem)}h3{letter-spacing:0;font-size:1.1rem}p{color:var(--text-2);margin:0 0 16px}.eyebrow{font:600 .8rem var(--mono);color:var(--teal);text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}.grad{background:var(--line);color:#0000;-webkit-background-clip:text;background-clip:text}header.site{z-index:10;background:color-mix(in srgb, var(--bg) 85%, transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}header.site:after{content:"";background:var(--line);opacity:.7;height:1px;position:absolute;inset:auto 0 -1px}header.site .wrap{justify-content:space-between;align-items:center;gap:16px;height:64px;display:flex}.brand{align-items:center;gap:10px;font-size:1.15rem;font-weight:700;display:flex}.brand img{border-radius:6px;width:28px;height:28px}nav{color:var(--text-2);align-items:center;gap:22px;font-size:.95rem;display:flex}nav a:hover{color:var(--text)}.lang{font:.8rem var(--mono);border:1px solid var(--border);border-radius:6px;padding:3px 8px}@media (width<=760px){nav .hide-sm{display:none}}.btn{border:1px solid var(--border);border-radius:8px;padding:12px 22px;font-weight:600;transition:transform .15s,background .15s,border-color .15s;display:inline-block}.btn:hover{border-color:var(--teal);transform:translateY(-1px)}.btn.primary{background:var(--teal);color:#0b1f1b;border-color:var(--teal)}.btn.primary:hover{background:#6fe0c9}.row{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.hero{background:radial-gradient(700px 320px at 75% -10%, color-mix(in srgb, var(--glow) 35%, transparent), transparent), radial-gradient(500px 260px at 10% 0%, color-mix(in srgb, var(--teal) 14%, transparent), transparent);padding:96px 0 72px}.hero .lead{max-width:62ch;font-size:1.15rem}.shot{aspect-ratio:16/9;border:1px solid var(--border);background:var(--surface);color:var(--muted);font:.9rem var(--mono);border-radius:12px;place-items:center;margin-top:56px;display:grid;position:relative;overflow:hidden;box-shadow:0 30px 80px -30px #000}.shot:before{content:"";background:var(--card);border-bottom:1px solid var(--border);height:34px;position:absolute;inset:0 0 auto}.grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px;margin-top:40px;display:grid}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;transition:border-color .2s,transform .2s}.card:hover{border-color:color-mix(in srgb, var(--teal) 60%, var(--border));transform:translateY(-2px)}.card .tag{font:600 .72rem var(--mono);color:var(--blue);border:1px solid color-mix(in srgb, var(--blue) 40%, transparent);border-radius:999px;margin-bottom:14px;padding:2px 10px;display:inline-block}.card p{margin:0;font-size:.95rem}.alt{background:var(--surface);border-block:1px solid var(--border)}.split{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;display:grid}@media (width<=860px){.split{grid-template-columns:1fr}}.code{background:var(--bg);border:1px solid var(--border);font:.88rem/1.7 var(--mono);color:var(--text);border-radius:12px;padding:20px;overflow-x:auto}.code .k{color:var(--violet)}.code .s{color:var(--amber)}.code .c{color:var(--muted)}.code .f{color:var(--teal)}ul.ticks{margin:20px 0 0;padding:0;list-style:none}ul.ticks li{color:var(--text);margin-bottom:10px;padding-left:28px;position:relative}ul.ticks li:before{content:"✓";color:var(--teal);font-weight:700;position:absolute;left:0}.cta{text-align:center}.cta p{max-width:60ch;margin-inline:auto}.cta .row{justify-content:center}footer.site{border-top:1px solid var(--border);color:var(--muted);padding:32px 0;font-size:.85rem}footer.site .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}@supports (animation-timeline:view()){.card,.shot,.split>*{animation:linear both rise view();animation-range:entry cover 28%}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.langswitch{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:2px;display:inline-flex}.langswitch a{font:600 .78rem var(--mono);color:var(--text-2);border-radius:999px;align-items:center;gap:6px;padding:4px 11px 4px 9px;transition:background .15s,color .15s;display:inline-flex}.langswitch a:hover{color:var(--text)}.langswitch a[aria-current]{background:var(--card);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--teal) 55%, var(--border))}.langswitch svg{border-radius:2px;flex:none}footer.site .legal{gap:18px;display:flex}footer.site .legal a:hover{color:var(--text)}.doc{padding:72px 0 96px}.doc .wrap{max-width:780px}.doc h1{font-size:clamp(1.9rem,4vw,2.6rem)}.doc h2{color:var(--text);margin-top:36px;font-size:1.25rem}.doc p,.doc li{color:var(--text-2)}.doc ul{padding-left:22px}.doc .updated{font:.8rem var(--mono);color:var(--muted);margin-bottom:28px}.doc .draft{border:1px solid color-mix(in srgb, var(--amber) 55%, var(--border));background:color-mix(in srgb, var(--amber) 8%, var(--card));color:var(--text);border-radius:10px;margin-bottom:32px;padding:14px 18px;font-size:.92rem}.doc .ph{color:var(--amber);font-family:var(--mono);font-size:.92em}nav .btn{white-space:nowrap}@media (width<=760px){header.site .wrap{gap:8px}nav{gap:10px}nav .btn{padding:8px 14px;font-size:.88rem}.langswitch a{padding:5px 8px}.langswitch a span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hero{padding-top:64px}section{padding:64px 0}}@media (width<=360px){.brand{font-size:1rem}.brand img{width:24px;height:24px}nav .btn{padding:7px 10px;font-size:.82rem}}html,body{overflow-x:clip}
