:root{--fg:#111;--bg:#fff;--muted:#595959;--line:#e2e2e2;--code-bg:#f5f5f5;--accent:#6d28d9;--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:ui-monospace, SFMono-Regular, "Cascadia Code", Menlo, Consolas, monospace}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:76px}body{font:17px/1.65 var(--font);color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%}a{color:var(--fg);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,h4{letter-spacing:-.015em;margin:0;font-weight:700;line-height:1.2}p{margin:0 0 1em}code,pre{font-family:var(--mono);font-variant-ligatures:none}:not(pre)>code{background:var(--code-bg);border-radius:3px;padding:.1em .26em;font-size:.88em}.wrap{width:100%;max-width:980px;margin:0 auto;padding:0 24px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--fg);color:var(--bg);z-index:100;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header .bar{justify-content:space-between;align-items:center;height:60px;display:flex}.brand{align-items:center;gap:10px;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex}.logo{background:#111;border-radius:4px;place-items:center;width:30px;height:30px;display:inline-grid}.logo img{width:24px;height:24px;display:block}.site-header nav{gap:22px;font-size:.95rem;display:flex}.site-header nav a{color:var(--muted);text-decoration:none}.site-header nav a:hover{color:var(--fg);text-decoration:underline}.site-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:96px;padding:32px 0 48px;font-size:.9rem}.footer-links{flex-wrap:wrap;gap:20px;margin-bottom:14px;display:flex}.footer-links a{color:var(--fg)}.site-footer p{max-width:40em;margin:0}.btn,.demo button,.copy{font:inherit;cursor:pointer}.btn{background:var(--fg);color:var(--bg);border:1px solid var(--fg);border-radius:3px;padding:10px 18px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{background:#000;text-decoration:none}.btn.ghost{background:var(--bg);color:var(--fg)}.btn.ghost:hover{background:var(--code-bg)}.actions{flex-wrap:wrap;gap:10px;margin:0 0 1em;display:flex}.hero{padding-top:72px}.hero h1{letter-spacing:-.03em;max-width:16em;margin-bottom:20px;font-size:clamp(2rem,5vw,3rem);line-height:1.1}.lead{color:var(--muted);max-width:38em;font-size:1.15rem}.install{border:1px solid var(--fg);border-radius:3px;justify-content:space-between;align-items:center;gap:16px;max-width:420px;margin:28px 0 18px;padding:10px 12px 10px 16px;font-size:.95rem;display:flex}.install code{background:0 0;padding:0}.meta{color:var(--muted);margin-bottom:36px;font-size:.9rem}.section{padding-top:72px}.section h2{border-top:1px solid var(--fg);margin-bottom:18px;padding-top:20px;font-size:1.7rem}.section h3{margin:32px 0 10px;font-size:1.1rem}.list{margin:0 0 1em;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);padding:12px 0}.list li:first-child{border-top:1px solid var(--line)}.diagram{background:var(--code-bg);border:1px solid var(--line);border-radius:3px;margin:20px 0 24px;padding:18px 20px;font-size:.85rem;line-height:1.7;overflow-x:auto}.versions{margin:0;padding-left:0;list-style:none}.versions li{border-bottom:1px solid var(--line);padding:8px 0}.versions code{min-width:3.6em;font-weight:700;display:inline-block}.steps{padding-left:1.3em}.steps>li{margin-bottom:8px}.steps>li>strong{margin-bottom:6px;display:block}.code{border:1px solid var(--line);background:var(--code-bg);border-radius:3px;margin:0 0 1.4em;overflow:hidden}.code-head{border-bottom:1px solid var(--line);font:.78rem var(--mono);color:var(--muted);background:#fff;justify-content:space-between;align-items:center;padding:6px 8px 6px 14px;display:flex}.copy{border:1px solid var(--line);color:var(--fg);background:#fff;border-radius:3px;padding:3px 9px;font-size:.78rem}.copy:hover{border-color:var(--fg)}.install .copy{font-size:.8rem}.code pre{tab-size:2;margin:0;padding:16px 18px;font-size:.85rem;line-height:1.65;overflow-x:auto}.code pre code{font-size:inherit;background:0 0;padding:0}.hljs{color:#24292f;background:0 0}.hljs-comment,.hljs-quote{color:#6e7781}.hljs-keyword,.hljs-selector-tag,.hljs-literal{color:#cf222e}.hljs-string,.hljs-regexp,.hljs-template-variable{color:#0a3069}.hljs-number,.hljs-symbol,.hljs-bullet{color:#0550ae}.hljs-title,.hljs-title.function_,.hljs-section{color:#8250df}.hljs-title.class_,.hljs-type,.hljs-built_in{color:#953800}.hljs-attr,.hljs-attribute,.hljs-property,.hljs-variable{color:#0550ae}.hljs-params,.hljs-subst{color:#24292f}.hljs-meta,.hljs-punctuation,.hljs-operator{color:#57606a}.table-wrap{margin:0 0 1.4em;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.93rem}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px}th{border-bottom:1px solid var(--fg);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:.8rem}.demo{border:1px solid var(--fg);border-radius:3px;margin-bottom:1.4em}.demo-cols{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;display:grid}.col{border-right:1px solid var(--line);min-height:130px;padding:14px 16px}.col:last-child{border-right:0}.col h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px;font-size:.78rem}.col ul{margin:0;padding:0;list-style:none}.col li{padding:2px 0}.tag{color:var(--accent);font-size:.8rem}.empty{color:var(--muted);margin:0;font-size:.9rem}.demo-step{min-height:120px;padding:14px 16px}.demo-step p{color:var(--muted);margin:4px 0 10px}.chat{background:var(--code-bg);border:1px solid var(--line);white-space:pre-wrap;border-radius:3px;margin:0;padding:10px 12px;font-size:.82rem}.demo-controls{border-top:1px solid var(--line);align-items:center;gap:8px;padding:12px 16px;display:flex}.demo-controls button{border:1px solid var(--fg);background:var(--bg);color:var(--fg);border-radius:3px;padding:7px 14px;font-size:.9rem}.demo-controls button:last-of-type{background:var(--fg);color:var(--bg)}.demo-controls button:disabled{opacity:.35;cursor:default}.demo-controls span{color:var(--muted);margin-left:auto;font-size:.85rem}.docs-shell{grid-template-columns:230px minmax(0,1fr);gap:56px;padding-top:0;display:grid}.sidebar{align-self:start;height:100vh;padding:32px 0 40px;font-size:.93rem;position:sticky;top:0;overflow-y:auto}.search input{border:1px solid var(--line);width:100%;font:inherit;color:var(--fg);background:#fff;border-radius:3px;padding:8px 10px;font-size:.9rem}.search input:focus{border-color:var(--fg);outline:0}.search-results{border:1px solid var(--fg);background:#fff;border-radius:3px;margin:6px 0 0;padding:0;list-style:none}.search-results li{border-bottom:1px solid var(--line)}.search-results li:last-child{border-bottom:0}.search-results a{padding:8px 10px;text-decoration:none;display:block}.search-results a:hover{background:var(--code-bg)}.search-results span{color:var(--muted);font-size:.8rem;line-height:1.4;display:block}.search-results .none{color:var(--muted);padding:10px}.side-group{margin-top:24px}.side-group h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;font-size:.74rem}.side-group ul{margin:0;padding:0;list-style:none}.side-group a{color:var(--muted);padding:4px 0;text-decoration:none;display:block}.side-group a:hover{color:var(--fg);text-decoration:underline}.doc{min-width:0;max-width:720px;padding:40px 0 0}.crumb{color:var(--muted);margin-bottom:6px;font-size:.82rem}.doc h1{letter-spacing:-.025em;margin-bottom:10px;font-size:2.2rem}.doc .lead{margin-bottom:1.6em}.prose h2{border-top:1px solid var(--line);margin:2.2em 0 .6em;padding-top:1em;font-size:1.45rem}.prose h3{margin:1.8em 0 .5em;font-size:1.15rem}.prose h2:first-child{margin-top:1em}.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.3em}.prose li{margin:.3em 0}.prose blockquote{border-left:3px solid var(--line);color:var(--muted);margin:0 0 1.2em;padding:.1em 1em}.callout{border:1px solid var(--line);border-left:3px solid var(--fg);background:#fafafa;border-radius:3px;margin:0 0 1.4em;padding:12px 16px}.callout strong{text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:.78rem;display:block}.callout p:last-child{margin-bottom:0}.pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;margin-top:56px;padding-top:20px;display:grid}.pager a{font-weight:600;text-decoration:none;display:block}.pager a:hover{text-decoration:underline}.pager small{color:var(--muted);font-size:.8rem;font-weight:400;display:block}.pager .next{text-align:right}@media (max-width:820px){.docs-shell{grid-template-columns:1fr;gap:0}.sidebar{border-bottom:1px solid var(--line);height:auto;padding:20px 0 0;position:static}.side-group ul{flex-wrap:wrap;gap:4px 16px;display:flex}.side-group{margin-top:14px}.doc{padding-top:28px}.demo-cols{grid-template-columns:1fr}.col{border-right:0;border-bottom:1px solid var(--line);min-height:0}.col:last-child{border-bottom:0}}@media (max-width:560px){body{font-size:16px}.wrap{padding:0 18px}.hero{padding-top:44px}.site-header nav{gap:14px}.pager{grid-template-columns:1fr}.pager .next{text-align:left}.demo-controls{flex-wrap:wrap}.demo-controls span{width:100%;margin-left:0}}.lang select{font:inherit;border:1px solid var(--line);color:var(--fg);cursor:pointer;background:#fff;border-radius:3px;padding:4px 6px;font-size:.9rem}.lang select:hover{border-color:var(--fg)}@media (max-width:560px){.lang select{max-width:8.5rem}}
