:root{--tk-ink:#0b0b0b;--tk-bone:#fafafa;--tk-cream:#f1f1f1;--tk-carbon:#171717;--tk-volt:#c7ff4a;--tk-mint:#46e3d8;--tk-ember:#ff6b3d;--tk-accent:var(--tk-volt);--tk-accent-ink:var(--tk-ink);--tk-bg:var(--tk-bone);--tk-bg-2:var(--tk-cream);--tk-surface:#fff;--tk-ink-2:#1a1a1a;--tk-muted:#6c6a63;--tk-muted-2:#9a978d;--tk-line:#0b0b0b1f;--tk-line-soft:#0b0b0b0f;--tk-code-bg:#0f0f10;--tk-code-line:#fafafa1f;--tk-r-sm:6px;--tk-r-md:10px;--tk-r-lg:14px;--tk-r-xl:16px;--tk-r-pill:999px;--tk-ease:cubic-bezier(.22, 1, .36, 1);--maxw:1180px;--header-h:64px;--tk-font:var(--font-onest), "General Sans", system-ui, -apple-system, sans-serif;--tk-mono-code:var(--font-jetbrains-mono), ui-monospace, "SFMono-Regular", Menlo, monospace}html[data-theme=dark]{--tk-bg:#0f0f10;--tk-bg-2:var(--tk-carbon);--tk-surface:#1a1a1d;--tk-ink:#fafafa;--tk-ink-2:#d6d6d2;--tk-muted:#9a978d;--tk-muted-2:#6c6a63;--tk-line:#fafafa24;--tk-line-soft:#fafafa0f;--tk-accent-ink:#0b0b0b}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--tk-font);background:var(--tk-bg);color:var(--tk-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;font-weight:400;line-height:1.5}a{color:var(--tk-ink);text-decoration:none}a:hover{color:var(--tk-ink)}h1,h2,h3,h4{letter-spacing:-.025em;margin:0;font-weight:500}::selection{background:var(--tk-accent);color:var(--tk-accent-ink)}code{font-family:var(--tk-mono-code);background:var(--tk-bg-2);color:var(--tk-ink);border-radius:var(--tk-r-sm);border:1px solid var(--tk-line-soft);padding:.12em .4em;font-size:.85em}pre{border:1px solid var(--tk-code-line);border-radius:var(--tk-r-md);font-family:var(--tk-mono-code);letter-spacing:.01em;padding:16px 18px;font-size:12.5px;line-height:1.6;overflow-x:auto;background:var(--tk-code-bg)!important}pre code{color:#e8e8e6;background:0 0;border:0;padding:0}.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--tk-mono-code);text-transform:uppercase;letter-spacing:.1em;color:var(--tk-muted);align-items:center;gap:7px;margin-bottom:22px;font-size:10px;display:inline-flex}.eyebrow:before{content:"";background:var(--tk-accent);border-radius:50%;width:5px;height:5px}.site-header{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--tk-bg) 86%, transparent);backdrop-filter:saturate(140%)blur(14px);border-bottom:1px solid var(--tk-line-soft);position:sticky;top:0}.site-header .inner{height:100%;max-width:var(--maxw);align-items:center;gap:28px;margin:0 auto;padding:0 24px;display:flex}.site-header.-fluid .inner,.site-footer.-fluid .inner{max-width:none}.brand{letter-spacing:-.02em;color:var(--tk-ink);align-items:center;gap:9px;font-size:15px;font-weight:500;display:flex}.brand .logo{width:auto;height:22px;display:block}.brand .logo-dark,html[data-theme=dark] .brand .logo-light{display:none}html[data-theme=dark] .brand .logo-dark{display:block}.brand small{font-family:var(--tk-mono-code);color:var(--tk-muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:500}.nav{align-items:center;gap:24px;margin-left:auto;display:flex}.nav a{color:var(--tk-muted);letter-spacing:-.005em;transition:color .2s var(--tk-ease);font-size:13px;font-weight:400}.nav a:hover{color:var(--tk-ink)}.theme-toggle{border:1px solid var(--tk-line);color:var(--tk-ink);border-radius:var(--tk-r-pill);cursor:pointer;width:36px;height:36px;transition:border-color .2s var(--tk-ease);background:0 0;place-items:center;display:grid}.theme-toggle:hover{border-color:var(--tk-ink)}.theme-toggle svg{stroke-width:1.5px;width:15px;height:15px}.tk-btn{border-radius:var(--tk-r-pill);font-family:var(--tk-font);letter-spacing:-.005em;border:1px solid var(--tk-ink);color:var(--tk-ink);cursor:pointer;transition:transform .2s var(--tk-ease);background:0 0;align-items:center;gap:8px;padding:10px 18px;font-size:13px;font-weight:500;line-height:1;display:inline-flex;position:relative;overflow:hidden}.tk-btn .tk-b-title,.tk-btn svg{z-index:1;transition:color .35s var(--tk-ease);position:relative}.tk-btn svg{stroke-width:1.5px;width:14px;height:14px}.tk-btn .tk-b-ripple{aspect-ratio:1;width:280px;transition:transform .7s var(--tk-ease);background:var(--tk-ink);z-index:0;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(0)}.tk-btn:hover .tk-b-ripple{transform:translate(-50%,-50%)scale(1.6)}.tk-btn:hover .tk-b-title,.tk-btn:hover svg{color:var(--tk-bone)}.tk-btn.-accent{background:var(--tk-accent);border-color:var(--tk-ink);color:var(--tk-accent-ink)}.tk-btn.-accent .tk-b-ripple{background:var(--tk-ink)}.tk-btn.-accent:hover .tk-b-title,.tk-btn.-accent:hover svg{color:var(--tk-bone)}html[data-theme=dark] .tk-btn.-accent:hover .tk-b-title,html[data-theme=dark] .tk-btn.-accent:hover svg{color:var(--tk-accent)}.tk-btn.-ghost{border-color:var(--tk-line)}.tk-btn.-ghost:hover{border-color:var(--tk-ink)}.tk-btn.-dark{background:var(--tk-ink);color:var(--tk-bg);border-color:var(--tk-ink)}.tk-btn.-dark .tk-b-ripple{background:var(--tk-accent)}.tk-btn.-dark:hover .tk-b-title,.tk-btn.-dark:hover svg{color:var(--tk-ink)}.tk-btn.-sm{padding:7px 14px;font-size:12px}.hero{border-bottom:1px solid var(--tk-line-soft);padding:104px 0 88px}.hero .inner{max-width:800px}.hero h1{letter-spacing:-.03em;margin:0 0 24px;font-size:clamp(40px,7vw,64px);line-height:.96}.hero h1 em{color:var(--tk-muted);font-style:normal}.hero p.lead{color:var(--tk-ink-2);max-width:560px;margin:0 0 36px;font-size:17px;line-height:1.5}.hero .cta{flex-wrap:wrap;gap:12px;display:flex}.tk-section{padding:88px 0}.section-head{max-width:640px;margin:0 0 44px}.section-head h2{letter-spacing:-.03em;margin:0 0 14px;font-size:clamp(26px,4vw,36px);line-height:1}.section-head p{color:var(--tk-muted);margin:0;font-size:15px}.tk-grid{background:var(--tk-line-soft);border:1px solid var(--tk-line-soft);border-radius:var(--tk-r-lg);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}@media (width<=860px){.tk-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.tk-grid{grid-template-columns:1fr}}.card{background:var(--tk-surface);transition:background .25s var(--tk-ease);padding:28px 26px}.card:hover{background:var(--tk-bg-2)}.card .ico{border-radius:var(--tk-r-md);border:1px solid var(--tk-line);width:38px;height:38px;color:var(--tk-ink);place-items:center;margin-bottom:18px;display:grid}.card .ico svg{stroke-width:1.5px;width:18px;height:18px}.card h3{letter-spacing:-.015em;margin:0 0 8px;font-size:16px}.card p{color:var(--tk-muted);margin:0;font-size:13.5px;line-height:1.5}.split{grid-template-columns:1fr 1.1fr;align-items:center;gap:56px;display:grid}@media (width<=860px){.split{grid-template-columns:1fr;gap:32px}.hero{padding:64px 0 52px}.tk-section{padding:56px 0}}.split h2{letter-spacing:-.03em;margin:0 0 14px;font-size:30px}.split>div>p{color:var(--tk-muted);margin:0 0 26px;font-size:15px}.steps{gap:16px;margin:0 0 30px;padding:0;list-style:none;display:grid}.steps li{color:var(--tk-ink-2);align-items:center;gap:13px;font-size:14px;display:flex}.steps .n{border-radius:var(--tk-r-sm);border:1px solid var(--tk-line);width:22px;height:22px;font-family:var(--tk-mono-code);color:var(--tk-muted);flex:none;place-items:center;font-size:11px;display:grid}.steps a{color:var(--tk-ink);text-decoration:underline;text-decoration-color:var(--tk-line);text-underline-offset:2px}.steps a:hover{text-decoration-color:var(--tk-accent)}.window{background:var(--tk-code-bg);border:1px solid var(--tk-code-line);border-radius:var(--tk-r-lg);overflow:hidden}.window .bar{border-bottom:1px solid var(--tk-code-line);align-items:center;gap:7px;padding:13px 16px;display:flex}.window .bar i{background:#fafafa2e;border-radius:50%;width:10px;height:10px;display:inline-block}.window .bar span{font-family:var(--tk-mono-code);color:#fafafa9e;letter-spacing:.04em;margin-left:8px;font-size:11px}.window pre{border:0;border-radius:0;margin:0;background:0 0!important}.docs{max-width:var(--maxw);grid-template-columns:256px 1fr;margin:0 auto;display:grid}.docs-sidebar{top:var(--header-h);height:calc(100vh - var(--header-h));border-right:1px solid var(--tk-line-soft);align-self:start;padding:36px 20px 36px 24px;position:sticky;overflow-y:auto}.docs-sidebar .grp{margin-bottom:28px}.docs-sidebar .grp h4{font-family:var(--tk-mono-code);text-transform:uppercase;letter-spacing:.1em;color:var(--tk-muted);margin:0 0 12px;font-size:10px;font-weight:500}.docs-sidebar a{border-radius:var(--tk-r-sm);color:var(--tk-muted);letter-spacing:-.005em;transition:color .18s var(--tk-ease), background .18s var(--tk-ease);padding:6px 12px;font-size:13.5px;font-weight:400;display:block}.docs-sidebar a:hover{background:var(--tk-bg-2);color:var(--tk-ink)}.docs-sidebar a.active{color:var(--tk-ink);position:relative}.docs-sidebar a.active:before{content:"";background:var(--tk-accent);border-radius:2px;width:3px;height:16px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.docs-main{min-width:0;padding:52px 56px 96px}.prose{max-width:740px}.prose h1{letter-spacing:-.03em;margin:0 0 12px;font-size:40px;line-height:1}.prose .subtitle{color:var(--tk-muted);margin:0 0 40px;font-size:17px;line-height:1.45}.prose h2{letter-spacing:-.025em;margin:48px 0 14px;font-size:22px}.prose h3{letter-spacing:-.015em;margin:32px 0 10px;font-size:16px}.prose p{color:var(--tk-ink-2);line-height:1.6}.prose ul,.prose ol{color:var(--tk-ink-2);padding-left:22px;line-height:1.6}.prose li{margin:6px 0}.prose a{color:var(--tk-ink);text-decoration:underline;text-decoration-color:var(--tk-line);text-underline-offset:3px}.prose a:hover{text-decoration-color:var(--tk-accent)}.prose table{border-collapse:collapse;width:100%;margin:20px 0;font-size:13.5px}.prose th{text-align:left;border-bottom:1px solid var(--tk-line);font-family:var(--tk-mono-code);text-transform:uppercase;letter-spacing:.08em;color:var(--tk-muted);padding:10px 14px;font-size:10px;font-weight:500}.prose td{text-align:left;border-bottom:1px solid var(--tk-line-soft);color:var(--tk-ink-2);padding:11px 14px}.prose blockquote{border-left:2px solid var(--tk-accent);color:var(--tk-ink-2);margin:20px 0;padding:2px 18px}.prose blockquote p{margin:8px 0}.callout{border-radius:var(--tk-r-md);background:var(--tk-bg-2);border:1px solid var(--tk-line-soft);gap:12px;margin:22px 0;padding:16px 18px;display:flex}.callout .ic{width:18px;height:18px;color:var(--tk-ink);flex:none;margin-top:1px}.callout .ic svg{stroke-width:1.5px;width:18px;height:18px}.callout p{color:var(--tk-ink-2);margin:0;font-size:13.5px;line-height:1.55}@media (width<=860px){.docs{grid-template-columns:1fr}.docs-sidebar{display:none}.docs-main{padding:32px 22px 72px}}.next-prev{border-top:1px solid var(--tk-line);justify-content:space-between;gap:14px;margin-top:60px;padding-top:28px;display:flex}.next-prev a{border:1px solid var(--tk-line);border-radius:var(--tk-r-md);transition:border-color .2s var(--tk-ease);flex-direction:column;flex:1;gap:4px;padding:14px 18px;text-decoration:none;display:flex}.next-prev a:hover{border-color:var(--tk-ink)}.next-prev small{color:var(--tk-muted);font-family:var(--tk-mono-code);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.next-prev b{color:var(--tk-ink);letter-spacing:-.01em;font-weight:500}.next-prev .nx{text-align:right}.changelog{margin-top:8px}.cl-entry{border-top:1px solid var(--tk-line-soft);grid-template-columns:132px 1fr;gap:28px;padding:32px 0;display:grid}.cl-entry:first-child{border-top:0;padding-top:8px}.cl-meta{flex-direction:column;align-self:start;gap:10px;display:flex;position:sticky;top:92px}.cl-meta time{font-family:var(--tk-mono-code);letter-spacing:.02em;color:var(--tk-muted);white-space:nowrap;font-size:11px}.cl-tags{flex-wrap:wrap;gap:6px;display:flex}.cl-tag{font-family:var(--tk-mono-code);text-transform:uppercase;letter-spacing:.06em;color:var(--tk-ink-2);background:var(--tk-bg-2);border:1px solid var(--tk-line-soft);border-radius:var(--tk-r-pill);white-space:nowrap;padding:3px 9px;font-size:10px}.cl-body h3{letter-spacing:-.02em;margin:0 0 14px;font-size:17px}.cl-changes{margin:0;padding:0;list-style:none}.cl-changes li{color:var(--tk-ink-2);margin:9px 0;padding-left:26px;font-size:14px;line-height:1.6;position:relative}.cl-changes li:before{content:"";background:var(--tk-bg-2);border:1px solid var(--tk-line);border-radius:3px;width:12px;height:12px;position:absolute;top:8px;left:0}.cl-changes li.add:before{content:"+"}.cl-changes li.change:before{content:"~"}.cl-changes li.fix:before{content:"›"}.cl-changes li.add:before,.cl-changes li.change:before,.cl-changes li.fix:before{font-family:var(--tk-mono-code);border-radius:var(--tk-r-sm);border:0;place-items:center;font-size:11px;line-height:1;display:grid}.cl-changes li.add:before{color:var(--tk-ink);background:var(--tk-accent)}.cl-changes li.change:before{color:var(--tk-accent-ink);background:var(--tk-mint)}.cl-changes li.fix:before{color:var(--tk-bone);background:var(--tk-ember)}.cl-changes li b{color:var(--tk-ink);font-weight:500}.cl-changes li code{font-size:12px}@media (width<=640px){.cl-entry{grid-template-columns:1fr;gap:12px}.cl-meta{flex-direction:row;align-items:center;position:static}}.site-footer{border-top:1px solid var(--tk-line-soft);margin-top:56px;padding:36px 0}.site-footer .inner{max-width:var(--maxw);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:0 24px;display:flex}.site-footer small{color:var(--tk-muted);font-size:12px}.site-footer .links{gap:22px;display:flex}.site-footer .links a{color:var(--tk-muted);transition:color .2s var(--tk-ease);font-size:12px}.site-footer .links a:hover{color:var(--tk-ink)}
