:root{--bg:#0b0d12;--bg-elev:#12151c;--bg-elev2:#171b24;--border:#232833;--border-strong:#2f3644;--text:#e6e9ef;--text-dim:#9aa3b2;--text-faint:#66707f;--accent:#6d8cff;--accent-dim:#3a4a8a;--green:#34d399;--red:#f87171;--yellow:#fbbf24;--radius:10px;--header-h:56px;--sidebar-w:260px;--toc-w:220px;--content-max:760px}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.mono{font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace}.header{position:fixed;top:0;left:0;right:0;height:var(--header-h);z-index:40;gap:18px;padding:0 20px;background:rgba(11,13,18,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.header,.header-brand{display:flex;align-items:center}.header-brand{gap:10px;font-size:17px;font-weight:700;letter-spacing:-.02em;flex-shrink:0}.brand-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.brand-badge{font-size:11px;font-weight:600;color:var(--text-dim);border:1px solid var(--border-strong);border-radius:20px;padding:1px 8px;letter-spacing:.02em}.header-spacer{flex:1 1}.header-search{display:flex;align-items:center;gap:8px;width:240px;max-width:40vw;background:var(--bg-elev2);border:1px solid var(--border-strong);border-radius:8px;padding:7px 11px;color:var(--text-faint);font-size:13px;cursor:text}.header-search .kbd{margin-left:auto;font-size:11px;border:1px solid var(--border);border-radius:5px;padding:1px 6px;color:var(--text-faint)}.header-link{color:var(--text-dim);font-size:14px;font-weight:500}.hamburger,.header-link:hover{color:var(--text)}.hamburger{display:none;background:none;border:1px solid var(--border-strong);border-radius:8px;width:34px;height:34px;cursor:pointer;font-size:16px;align-items:center;justify-content:center}.shell{display:flex;padding-top:var(--header-h)}.sidebar{width:var(--sidebar-w);flex-shrink:0;position:-webkit-sticky;position:sticky;top:var(--header-h);align-self:flex-start;height:calc(100vh - var(--header-h));overflow-y:auto;border-right:1px solid var(--border);padding:22px 14px 60px;background:var(--bg)}.nav-group{margin-bottom:22px}.nav-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);padding:0 10px 8px}.nav-item{display:block;padding:6px 10px;border-radius:7px;color:var(--text-dim);font-size:14px;font-weight:500;border-left:2px solid transparent;transition:background .12s,color .12s}.nav-item:hover{background:var(--bg-elev2);color:var(--text)}.nav-item.active{background:var(--accent-dim);color:#fff;border-left-color:var(--accent)}.sidebar-backdrop{display:none}.content-wrap{flex:1 1;min-width:0;display:flex;justify-content:center;gap:40px;padding:40px 40px 100px}.content{flex:1 1;min-width:0;max-width:var(--content-max)}.toc{width:var(--toc-w);flex-shrink:0;position:-webkit-sticky;position:sticky;top:calc(var(--header-h) + 40px);align-self:flex-start;max-height:calc(100vh - var(--header-h) - 60px);overflow-y:auto}.toc-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);margin-bottom:10px}.toc-list{list-style:none;margin:0;padding:0;border-left:1px solid var(--border)}.toc-link{display:block;padding:4px 0 4px 14px;margin-left:-1px;border-left:2px solid transparent;color:var(--text-faint);font-size:13px;line-height:1.4;transition:color .12s,border-color .12s}.toc-link.lvl-3{padding-left:26px}.toc-link:hover{color:var(--text)}.toc-link.active{color:var(--accent);border-left-color:var(--accent)}.doc{max-width:var(--content-max)}.doc h1{font-size:34px;font-weight:800;letter-spacing:-.03em;margin:0 0 14px;line-height:1.15}.doc h2{font-size:22px;letter-spacing:-.02em;margin:44px 0 14px;padding-top:8px}.doc h2,.doc h3{font-weight:700;scroll-margin-top:calc(var(--header-h) + 20px)}.doc h3{font-size:17px;margin:30px 0 10px}.doc p{margin:0 0 16px;color:var(--text)}.doc .lead{font-size:17px;color:var(--text-dim);margin-bottom:28px;line-height:1.6}.doc a.link{color:var(--accent)}.doc a.link:hover{text-decoration:underline}.doc ol,.doc ul{margin:0 0 16px;padding-left:22px}.doc li{margin-bottom:6px}.doc li::marker{color:var(--text-faint)}.doc code:not(pre code){font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:.86em;background:var(--bg-elev2);border:1px solid var(--border);border-radius:5px;padding:1px 5px;color:#c9d3f5}.doc hr{border:none;border-top:1px solid var(--border);margin:40px 0}.doc strong{color:var(--text);font-weight:700}.callout{display:flex;gap:12px;background:var(--bg-elev);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;padding:14px 16px;margin:20px 0;color:var(--text-dim)}.callout .callout-icon{flex-shrink:0}.callout p{margin:0}.callout.warn{border-left-color:var(--yellow)}.doc-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);margin:20px 0}.doc table{border-collapse:collapse;width:100%;font-size:13.5px}.doc th{text-align:left;color:var(--text-dim);font-weight:600;background:var(--bg-elev);white-space:nowrap;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.doc td,.doc th{padding:10px 14px;border-bottom:1px solid var(--border)}.doc td{vertical-align:top}.doc tbody tr:last-child td{border-bottom:none}.doc td code{white-space:nowrap}.method{display:inline-block;font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:11px;font-weight:700;border-radius:5px;padding:2px 7px;letter-spacing:.03em;color:#0b0d12;margin-right:8px;vertical-align:middle}.method.get{background:var(--green)}.method.post{background:var(--accent)}.method.delete{background:var(--red)}.endpoint{display:flex;align-items:center;gap:4px;background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;padding:10px 14px;margin:14px 0;font-size:14px}.endpoint .path{font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:13.5px;color:var(--text)}.code-block{position:relative;margin:18px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#090b10}.code-head{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;border-bottom:1px solid var(--border);background:var(--bg-elev)}.code-lang{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.copy-btn{background:var(--bg-elev2);border:1px solid var(--border-strong);color:var(--text-dim);border-radius:6px;padding:3px 9px;font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.copy-btn:hover{background:var(--border);color:var(--text)}.copy-btn.copied{color:var(--green);border-color:var(--green)}.code-block pre{margin:0;padding:14px 16px;overflow-x:auto;font-family:ui-monospace,SF Mono,Menlo,Monaco,monospace;font-size:13px;line-height:1.6;color:#d5dbe8}.page-nav{display:flex;justify-content:space-between;gap:16px;margin-top:56px;padding-top:24px;border-top:1px solid var(--border)}.page-nav a{flex:1 1;border:1px solid var(--border);border-radius:10px;padding:14px 16px;transition:border-color .12s,background .12s}.page-nav a:hover{border-color:var(--border-strong);background:var(--bg-elev)}.page-nav .pn-label{font-size:12px;color:var(--text-faint)}.page-nav .pn-title{font-size:15px;font-weight:600;color:var(--accent);margin-top:3px}.page-nav .next{text-align:right}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px;margin:24px 0}.doc-card{display:block;border:1px solid var(--border);border-radius:10px;padding:16px 18px;background:var(--bg-elev);transition:border-color .12s,transform .12s}.doc-card:hover{border-color:var(--accent-dim);transform:translateY(-2px)}.doc-card .dc-title{font-weight:700;font-size:15px;margin-bottom:4px}.doc-card .dc-desc{color:var(--text-dim);font-size:13.5px}@media (max-width:1100px){.toc{display:none}.content-wrap{padding:36px 32px 100px}}@media (max-width:820px){.hamburger{display:flex}.header-search{display:none}.sidebar{position:fixed;top:var(--header-h);left:0;z-index:35;height:calc(100vh - var(--header-h));background:var(--bg-elev);transform:translateX(-100%);transition:transform .2s ease;box-shadow:2px 0 24px rgba(0,0,0,.4)}.sidebar.open{transform:translateX(0)}.sidebar-backdrop.open{display:block;position:fixed;inset:var(--header-h) 0 0 0;z-index:34;background:rgba(0,0,0,.5)}.content-wrap{padding:28px 20px 80px}.doc h1{font-size:28px}}