.halo-docs{--doc-bg:#09090b;--doc-fg:#b6b6c0;--doc-heading:#fafafa;--doc-muted:#8a8a96;--doc-line:rgba(255,255,255,0.08);--doc-line-strong:rgba(255,255,255,0.14);--doc-accent:#6b8cff;--doc-chip-bg:rgba(255,255,255,0.07);--doc-panel:rgba(255,255,255,0.03);min-height:100vh;background:var(--doc-bg);color:var(--doc-fg);font-family:var(--font-geist-sans),system-ui,sans-serif;-webkit-font-smoothing:antialiased}.halo-docs *,.halo-docs :after,.halo-docs :before{box-sizing:border-box}.halo-docs button{font:inherit;cursor:pointer;background:none;border:none}.halo-docs a{color:inherit;text-decoration:none}body:has(.halo-docs){margin:0;background:var(--doc-bg,#09090b)}.halo-docs ::selection{background:var(--doc-accent);color:#fff}.docs-topbar{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--doc-line);background:rgba(9,9,11,.85);backdrop-filter:blur(12px)}.docs-topbar-inner{margin:0 auto;max-width:1600px;height:4rem;display:flex;align-items:center;gap:1rem;padding:0 1.25rem}@media (min-width:768px){.docs-topbar-inner{padding:0 2rem}}.docs-logo{display:flex;align-items:center;gap:.55rem}.docs-logo-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(107,140,255,.12);color:var(--doc-accent)}.docs-logo-mark svg{width:19px;height:19px}.docs-logo-name{font-size:1.1rem;font-weight:600;letter-spacing:-.01em;color:var(--doc-heading)}.docs-search{margin:0 auto;display:none;width:100%;max-width:28rem;align-items:center;gap:.5rem;border:1px solid var(--doc-line);background:var(--doc-panel);border-radius:.75rem;padding:.5rem .875rem;font-size:.875rem;color:var(--doc-muted)}@media (min-width:768px){.docs-search{display:flex}}.docs-search span{flex:1}.docs-search kbd{border:1px solid var(--doc-line);border-radius:.375rem;padding:.1rem .35rem;font-size:.7rem;font-family:var(--font-geist-mono),monospace}.docs-topbar-nav{margin-left:auto;display:flex;align-items:center;gap:1rem}.halo-docs .docs-github-btn{display:inline-flex;align-items:center;gap:.45rem;border-radius:999px;background:#ffffff;padding:.5rem 1rem .5rem .875rem;font-size:.875rem;font-weight:600;color:#000000;white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.4);transition:background .15s ease,box-shadow .15s ease}.halo-docs .docs-github-btn:hover{background:#e6e6ec;box-shadow:0 4px 14px rgba(0,0,0,.5)}.docs-body{margin:0 auto;max-width:1600px;display:flex}.docs-main{flex:1;min-width:0}.docs-sidebar{position:sticky;top:4rem;height:calc(100vh - 4rem);width:16rem;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--doc-line);padding:2rem 1.25rem;display:none}@media (min-width:1024px){.docs-sidebar{display:block}}.docs-side-nav{display:flex;flex-direction:column;gap:1.75rem}.docs-side-title{margin:0 0 .5rem;padding:0 .75rem;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--doc-heading)}.docs-side-links{display:flex;flex-direction:column;gap:.125rem}.doc-side-link{display:block;padding:.4rem .75rem;border-radius:8px;color:var(--doc-muted);font-size:.9rem;transition:color .15s ease,background .15s ease}.doc-side-link:hover{color:var(--doc-heading)}.doc-side-link[data-active=true]{color:var(--doc-accent);background:rgba(255,255,255,.05);font-weight:500}.docs-page{display:flex;width:100%;justify-content:center}.docs-toc{position:sticky;top:4rem;height:calc(100vh - 4rem);width:15rem;flex-shrink:0;overflow-y:auto;padding:3.5rem 2rem 0 0;display:none}@media (min-width:1280px){.docs-toc{display:block}}.docs-toc-title{margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;color:var(--doc-heading)}.docs-toc-list{display:flex;flex-direction:column;border-left:1px solid var(--doc-line);padding-left:.75rem}.doc-toc-link{display:block;padding:.3rem 0;color:var(--doc-muted);font-size:.85rem;line-height:1.4;transition:color .15s ease}.doc-toc-link:hover{color:var(--doc-heading)}.doc-toc-link[data-active=true]{color:var(--doc-accent)}.doc-prose{width:100%;max-width:48rem;padding:2.5rem 1.5rem;font-size:1rem;line-height:1.7;color:var(--doc-fg)}@media (min-width:768px){.doc-prose{padding:3.5rem 3rem}}.doc-prose .doc-eyebrow{color:var(--doc-accent);font-size:.875rem;font-weight:500;margin:0 0 .5rem}.doc-prose h1{color:var(--doc-heading);font-size:2.25rem;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:0 0 .75rem}.doc-prose .doc-lead{font-size:1.15rem;line-height:1.6;color:var(--doc-muted);margin:0 0 2rem}.doc-prose h2{font-size:1.4rem;font-weight:650;letter-spacing:-.01em;margin:2.75rem 0 1rem}.doc-prose h2,.doc-prose h3{color:var(--doc-heading);scroll-margin-top:6rem}.doc-prose h3{font-size:1.1rem;font-weight:600;margin:2rem 0 .75rem}.doc-prose p{margin:0 0 1.15rem}.doc-prose a{color:var(--doc-accent);text-decoration:none}.doc-prose a:hover{text-decoration:underline}.doc-prose strong{color:#e9e9ef;font-weight:650}.doc-prose em{color:#d0d0d8}.doc-prose ol,.doc-prose ul{margin:0 0 1.15rem;padding-left:1.4rem}.doc-prose li{margin:.45rem 0}.doc-prose ul{list-style:none;padding-left:1.1rem}.doc-prose ul li{position:relative}.doc-prose ul li:before{content:"";position:absolute;left:-1.1rem;top:.7rem;width:5px;height:5px;border-radius:999px;background:var(--doc-muted)}.doc-prose code{font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.85em;background:var(--doc-chip-bg);border:1px solid var(--doc-line);border-radius:6px;padding:.12em .4em;color:#e4e4e7}.doc-prose pre{background:#0d0d11;border:1px solid var(--doc-line);border-radius:14px;padding:1.1rem 1.25rem;overflow-x:auto;margin:0 0 1.5rem;font-size:.85rem;line-height:1.6}.doc-prose pre code{background:none;border:none;padding:0;white-space:pre;color:#d8d8e0}.doc-prose hr{border:none;border-top:1px solid var(--doc-line);margin:2.5rem 0}.doc-prose table{width:100%;border-collapse:collapse;margin:0 0 1.5rem;font-size:.92rem}.doc-prose td,.doc-prose th{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--doc-line);vertical-align:top}.doc-prose th{color:var(--doc-heading);font-weight:600;border-bottom-color:var(--doc-line-strong)}.doc-callout{display:flex;gap:.85rem;background:rgba(107,140,255,.08);border:1px solid rgba(107,140,255,.22);border-radius:16px;padding:1.1rem 1.25rem;margin:0 0 1.75rem;color:#cdd6f4;font-size:.95rem;line-height:1.6}.doc-callout svg{flex-shrink:0;margin-top:.15rem;color:var(--doc-accent)}.doc-callout strong{color:#e9edff}