:root{--ndb-ink: #0b0b0f;--ndb-paper: #ffffff;--ndb-line: #e5e5e5;--ndb-muted: #6b6b76;--ndb-accent: #f0047f;--ndb-accent-soft: #fde6f1;--ndb-on-accent: #ffffff;--ndb-button: #0b0b0f;--ndb-on-button: #ffffff;--ndb-font-sans: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;--ndb-font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ndb-radius: 8px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--ndb-ink: #f4f4f6;--ndb-paper: #0e0e11;--ndb-line: #26262c;--ndb-muted: #9a9aa5;--ndb-accent: #f0047f;--ndb-accent-soft: #2a0a1b;--ndb-button: #f4f4f6;--ndb-on-button: #0b0b0f}}:root[data-theme=dark]{--ndb-ink: #f4f4f6;--ndb-paper: #0e0e11;--ndb-line: #26262c;--ndb-muted: #9a9aa5;--ndb-accent: #f0047f;--ndb-accent-soft: #2a0a1b;--ndb-button: #f4f4f6;--ndb-on-button: #0b0b0f}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;background:var(--ndb-paper);color:var(--ndb-ink);font-family:var(--ndb-font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}code,kbd,pre{font-family:var(--ndb-font-mono)}:root{--topbar-h: 60px;--tabs-h: 46px;--sidebar-w: 248px;--outline-w: 216px;--content-w: 760px}.logo{display:inline-flex;align-items:center}.logo img{display:block;height:44px;width:auto}.only-dark{display:none!important}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .only-light{display:none!important}:root:not([data-theme=light]) .only-dark{display:block!important}}:root[data-theme=dark] .only-light{display:none!important}:root[data-theme=dark] .only-dark{display:block!important}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:var(--ndb-radius);background:transparent;color:var(--ndb-muted);cursor:pointer}.icon-button:hover{background:var(--ndb-accent-soft);color:var(--ndb-accent)}.install-button{display:inline-flex;align-items:center;height:36px;padding:0 16px;border-radius:var(--ndb-radius);background:var(--ndb-button);color:var(--ndb-on-button);font-size:14px;font-weight:600}.install-button.large{height:50px;padding:0 24px;font-size:15px}.ghost-button{display:inline-flex;align-items:center;height:50px;padding:0 22px;border:1px solid var(--ndb-line);border-radius:var(--ndb-radius);font-size:15px;font-weight:600}.ghost-button:hover{border-color:var(--ndb-accent);color:var(--ndb-accent)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}*{scrollbar-width:thin;scrollbar-color:transparent transparent}*:hover{scrollbar-color:color-mix(in srgb,var(--ndb-muted) 35%,transparent) transparent}::-webkit-scrollbar{width:6px;height:6px;background:transparent}::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}::-webkit-scrollbar-thumb{border-radius:999px;background:transparent}:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ndb-muted) 35%,transparent)}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:8px;height:var(--topbar-h);padding:0 24px;background:var(--ndb-paper);border-bottom:1px solid var(--ndb-line)}.main-links .version-pill{display:inline-flex;align-items:center;height:24px;margin-left:4px;padding:0 9px;border:1px solid var(--ndb-line);border-radius:999px;color:var(--ndb-muted);font-family:var(--ndb-font-mono, ui-monospace, monospace);font-size:12px;font-weight:500;white-space:nowrap}.main-links .version-pill:hover{border-color:var(--ndb-accent);color:var(--ndb-accent)}.topbar-spacer{flex:1}.menu-button{display:none}.main-links{display:flex;align-items:center;gap:4px;margin-left:28px}.main-links a{display:inline-flex;align-items:center;padding:6px 12px;border-radius:var(--ndb-radius);color:var(--ndb-muted);font-size:14px;font-weight:500}.main-links a:hover{color:var(--ndb-ink)}.search{position:relative;display:flex;align-items:center;width:280px;height:36px;padding:0 10px;border:1px solid var(--ndb-line);border-radius:var(--ndb-radius);color:var(--ndb-muted)}.search:focus-within{border-color:var(--ndb-accent)}.search-input{flex:1;min-width:0;height:100%;padding:0 8px;border:0;outline:0;background:transparent;color:var(--ndb-ink);font:inherit;font-size:14px}.search-key{padding:0 6px;border:1px solid var(--ndb-line);border-radius:5px;font-size:12px}.search-results{position:absolute;top:44px;right:0;width:420px;max-width:calc(100vw - 32px);margin:0;padding:6px;list-style:none;border:1px solid var(--ndb-line);border-radius:12px;background:var(--ndb-paper);box-shadow:0 12px 32px #0000001f}.search-results a{display:block;padding:8px 10px;border-radius:8px;font-size:14px}.search-results a:hover{background:var(--ndb-accent-soft)}.search-results small{display:block;color:var(--ndb-muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-empty{padding:10px;color:var(--ndb-muted);font-size:14px}.tabs{position:sticky;top:var(--topbar-h);z-index:30;height:var(--tabs-h);background:var(--ndb-paper);border-bottom:1px solid var(--ndb-line)}.tabs-scroll{display:flex;gap:4px;height:100%;padding:0 24px;overflow-x:auto}.tab{display:inline-flex;flex:none;align-items:center;gap:8px;padding:0 14px;border-bottom:2px solid transparent;color:var(--ndb-muted);font-size:14px;font-weight:500}.tab:hover{color:var(--ndb-ink)}.tab.active{border-bottom-color:var(--ndb-accent);color:var(--ndb-ink)}.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,calc(var(--content-w) + 48px)) var(--outline-w)}.main{min-width:0;padding:40px 32px 96px 16px}.scrim{display:none}.sidebar{position:sticky;top:calc(var(--topbar-h) + var(--tabs-h));align-self:start;height:calc(100vh - var(--topbar-h) - var(--tabs-h));padding:28px 16px 40px 38px;overflow-y:auto}.side-group{margin-bottom:28px}.side-title{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.01em}.side-item{display:block;margin-left:2px;padding:5px 12px;border-left:2px solid transparent;color:var(--ndb-muted);font-size:14px}.side-item:hover{color:var(--ndb-ink)}.side-item.active{border-left-color:var(--ndb-accent);color:var(--ndb-accent);font-weight:600}.outline{position:sticky;top:calc(var(--topbar-h) + var(--tabs-h));align-self:start;max-height:calc(100vh - var(--topbar-h) - var(--tabs-h));padding:40px 24px 40px 8px;overflow-y:auto}.outline-title{margin:0 0 10px;font-size:13px;font-weight:700}.outline-item{display:block;padding:3px 0;color:var(--ndb-muted);font-size:13px}.outline-item.nested{padding-left:12px}.outline-item:hover{color:var(--ndb-accent)}.outline-item.active{color:var(--ndb-accent);font-weight:600}@media (max-width: 1180px){.shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.outline{display:none}}@media (max-width: 860px){.topbar{padding:0 12px}.menu-button{display:inline-flex}.main-links{display:none}.search{width:36px;padding:0;justify-content:center;border-color:transparent}.search-input,.search-key{display:none}.search:focus-within{width:200px;padding:0 10px;border-color:var(--ndb-accent);background:var(--ndb-paper)}.search:focus-within .search-input{display:block}.search-results{position:fixed;top:calc(var(--topbar-h) + 4px);right:16px;left:16px;width:auto;max-width:none}.tabs-scroll{padding:0 12px}.shell{display:block}.main{padding:28px 16px 72px}.sidebar{position:fixed;top:calc(var(--topbar-h) + var(--tabs-h));bottom:0;left:0;z-index:35;width:min(300px,84vw);height:calc(100dvh - var(--topbar-h) - var(--tabs-h));background:var(--ndb-paper);border-right:1px solid var(--ndb-line);transform:translate(-100%);transition:transform .2s ease}.sidebar.open{transform:none}.drawer-open .scrim{position:fixed;inset:calc(var(--topbar-h) + var(--tabs-h)) 0 0;z-index:34;display:block;background:#0006}}.doc{max-width:var(--content-w)}.doc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.crumbs{display:flex;flex-wrap:wrap;gap:6px;color:var(--ndb-muted);font-size:14px}.crumbs .current{color:var(--ndb-accent);font-weight:600}.copy-page{display:inline-flex;flex:none;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--ndb-line);border-radius:var(--ndb-radius);background:transparent;color:var(--ndb-ink);font:inherit;font-size:13px;font-weight:500;cursor:pointer}.copy-page:hover{border-color:var(--ndb-accent);color:var(--ndb-accent)}.doc-content h1{margin:0 0 16px;font-size:40px;font-weight:800;line-height:1.15;letter-spacing:-.02em}.doc-content h1+p{margin:0 0 28px;color:var(--ndb-muted);font-size:18px;line-height:1.6}.doc-content h2{margin:48px 0 12px;padding-top:8px;font-size:26px;font-weight:700;letter-spacing:-.01em}.doc-content h3{margin:32px 0 8px;font-size:19px;font-weight:700}.header-anchor{margin-left:-20px;padding-right:6px;color:var(--ndb-accent);font-size:0;opacity:0}.header-anchor:before{content:"#";font-size:.7em}h2:hover .header-anchor,h3:hover .header-anchor{opacity:1}.doc-content p,.doc-content li{font-size:16px}.doc-content ul,.doc-content ol{padding-left:22px}.doc-content li::marker{color:var(--ndb-muted)}.doc-content a:not(.header-anchor){color:var(--ndb-accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--ndb-accent) 35%,transparent);text-underline-offset:3px}.doc-content hr{border:0;border-top:1px solid var(--ndb-line)}.doc-content :not(pre)>code{padding:2px 6px;border:1px solid var(--ndb-line);border-radius:6px;background:color-mix(in srgb,var(--ndb-line) 35%,transparent);font-size:.875em}.doc-content div[class*=language-]{margin:16px 0;border:1px solid var(--ndb-line);border-radius:12px;overflow:hidden}.doc-content div[class*=language-] pre{margin:0;padding:16px 18px;overflow-x:auto;font-size:13.5px;line-height:1.65;background:color-mix(in srgb,var(--ndb-line) 25%,var(--ndb-paper))!important}.doc-content .shiki span{color:var(--shiki-light)}.doc-content .shiki code{padding:0;border:0;background:none}.doc-content .lang{display:none}.doc-content div[class*=language-]{position:relative}.doc-content button.copy{position:absolute;top:8px;right:8px;width:30px;height:30px;border:1px solid var(--ndb-line);border-radius:6px;background:var(--ndb-paper);color:var(--ndb-muted);cursor:pointer;opacity:0;transition:opacity .15s ease}.doc-content button.copy:before{content:"";display:block;width:16px;height:16px;margin:auto;background:currentcolor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='12' height='12' rx='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E") center / contain no-repeat}.doc-content button.copy.copied{color:var(--ndb-accent)}.doc-content div[class*=language-]:hover button.copy{opacity:1}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .doc-content .shiki span{color:var(--shiki-dark)}}:root[data-theme=dark] .doc-content .shiki span{color:var(--shiki-dark)}.doc-content table{display:block;width:100%;margin:16px 0;overflow-x:auto;border-collapse:collapse;font-size:14px}.doc-content th,.doc-content td{padding:8px 12px;border:1px solid var(--ndb-line);text-align:left;vertical-align:top}.doc-content th{background:color-mix(in srgb,var(--ndb-line) 30%,transparent);font-weight:600}.doc-content blockquote{margin:16px 0;padding:2px 16px;border-left:3px solid var(--ndb-accent);color:var(--ndb-muted)}.doc-content img{display:block;width:100%;max-width:100%;height:auto;margin:24px 0;border:1px solid var(--ndb-line);border-radius:14px}@media (max-width: 860px){.doc-content h1{font-size:32px}.doc-head{align-items:flex-start}}.landing{max-width:1182px;padding:72px 24px 96px 38px}.hero{display:flex;align-items:center;justify-content:space-between;gap:48px}.hero-text{min-width:0}.hero-art{flex:none}.hero-art img{display:block;width:300px;height:auto}.eyebrow{margin:0 0 8px;color:var(--ndb-accent);font-size:14px;font-weight:600}.hero-title{margin:0 0 16px;font-size:56px;font-weight:800;line-height:1.05;letter-spacing:-.03em}.hero-lead{max-width:640px;margin:0 0 28px;color:var(--ndb-muted);font-size:19px;line-height:1.6}.hero-lead code{padding:1px 6px;border:1px solid var(--ndb-line);border-radius:6px;font-size:.85em}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-title img{display:block;height:72px;width:auto}.quick{margin-top:72px}.quick-title{margin:0 0 8px;font-size:32px;font-weight:800;line-height:1.15;letter-spacing:-.02em}.quick-lead{margin:0 0 28px;color:var(--ndb-muted);font-size:17px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.step{display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid var(--ndb-line);border-radius:12px}.step-number{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-bottom:14px;border-radius:999px;background:var(--ndb-accent-soft);color:var(--ndb-accent);font-size:13px;font-weight:700}.step-title{margin:0 0 6px;font-size:17px;font-weight:700}.step-text{margin:0 0 16px;color:var(--ndb-muted);font-size:14.5px;line-height:1.55}.step-code{flex:1;margin:0;padding:14px 16px;border:1px solid var(--ndb-line);border-radius:10px;background:color-mix(in srgb,var(--ndb-line) 25%,var(--ndb-paper));font-family:var(--ndb-font-mono);font-size:12.5px;line-height:1.65;overflow-x:auto}.step-code code{padding:0;border:0;background:none;font:inherit}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none}.chip{padding:4px 12px;border:1px solid var(--ndb-line);border-radius:999px;color:var(--ndb-muted);font-size:13.5px}.chip:hover{border-color:var(--ndb-accent);color:var(--ndb-accent)}@media (max-width: 860px){.quick{margin-top:48px}.quick-title{font-size:26px}.steps{grid-template-columns:1fr}}.card-section{margin-top:64px}.card-section-title{margin:0 0 20px;font-size:24px;font-weight:700}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{display:flex;flex-direction:column;padding:20px;border:1px solid var(--ndb-line);border-radius:12px;transition:border-color .15s ease}.card:hover{border-color:var(--ndb-accent)}.card-icon{margin-bottom:14px;color:var(--ndb-accent)}.card-title{margin:0 0 6px;font-size:17px;font-weight:700}.card-text{flex:1;margin:0 0 16px;color:var(--ndb-muted);font-size:14.5px;line-height:1.55}.card-link{display:flex;flex-wrap:wrap;align-items:center;gap:6px;color:var(--ndb-accent);font-size:13.5px;font-weight:500}.card-link code{padding:1px 6px;border-radius:6px;background:var(--ndb-accent-soft);font-size:12.5px;overflow-wrap:anywhere}@media (max-width: 860px){.hero{flex-direction:column-reverse;align-items:flex-start;gap:24px}.hero-art img{width:180px}.landing{padding:40px 16px 72px}.hero-title img{height:56px}.cards{grid-template-columns:1fr}}.lost-art{display:block;width:200px;height:auto;margin-bottom:20px}
