html{scroll-behavior:smooth}.doc-page{background:var(--bg-1,#f7f9fc);min-height:100vh;padding-bottom:90px}.doc-hero{margin-top:calc(-1 * var(--nav-h,64px));padding:calc(2 * var(--nav-h,64px) + 52px) 0 40px;background:radial-gradient(1100px 480px at 88% -12%, #1e6fff1f, transparent 62%), radial-gradient(860px 420px at -8% 18%, #5e9ce61a, transparent 58%), linear-gradient(180deg, var(--brand-50,#f0f6ff) 0%, var(--bg-1,#fff) 82%);border-bottom:1px solid var(--border-light,#eaecf0)}.doc-title{letter-spacing:-.02em;color:var(--text-1,#0f172a);margin:0 0 10px;font-size:34px;font-weight:800}.doc-sub{color:var(--text-3,#64748b);margin:0 0 18px;font-size:14.5px;line-height:1.7}.doc-hero-chips{flex-wrap:wrap;gap:8px;display:flex}.doc-hero-chips a{color:var(--brand,#1e6fff);background:var(--bg-1,#fff);border:1px solid #1e6fff40;border-radius:999px;padding:5px 14px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s}.doc-hero-chips a:hover{background:var(--brand,#1e6fff);color:#fff;border-color:var(--brand,#1e6fff)}.doc-hero .container{text-align:center}.doc-hero-chips{justify-content:center}.doc-layout{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:36px;margin-top:32px;display:grid}.doc-sidebar{background:var(--bg-1,#fff);border:1px solid var(--border,#e5e6eb);scrollbar-width:thin;border-radius:14px;max-height:calc(100vh - 108px);padding:10px 8px;position:sticky;top:84px;overflow-y:auto;box-shadow:0 1px 3px #0f172a0a}.doc-nav-group{margin-bottom:6px}.doc-nav-group-title{letter-spacing:.1em;color:var(--text-3,#86909c);padding:10px 10px 5px;font-size:11px;font-weight:700}.doc-nav-chapter{margin:0}.doc-nav-item{color:var(--text-2,#475569);border-radius:8px;padding:7px 10px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:block}.doc-nav-item:hover{color:var(--brand,#1e6fff);background:#1e6fff0f}.doc-nav-item.active{color:var(--brand,#1e6fff);background:linear-gradient(90deg,#1e6fff21,#1e6fff08);font-weight:600}.doc-nav-subs{border-left:2px solid #1e6fff26;margin:2px 0 6px 14px;padding-left:14px;display:none}.doc-nav-chapter.open .doc-nav-subs{display:block}.doc-nav-sub{color:var(--text-3,#94a3b8);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:3.5px 8px;font-size:12px;text-decoration:none;transition:color .15s;display:block;overflow:hidden}.doc-nav-sub:hover{color:var(--brand,#1e6fff)}.doc-nav-sub.active{color:var(--brand,#1e6fff);font-weight:600}.doc-nav-toggle{width:100%;color:var(--brand,#1e6fff);cursor:pointer;background:#1e6fff14;border:none;border-radius:8px;margin-bottom:8px;padding:9px 10px;font-size:13px;font-weight:600;display:none}.doc-body{background:var(--bg-1,#fff);border:1px solid var(--border,#e5e6eb);border-radius:16px;max-width:860px;padding:36px 44px 40px;box-shadow:0 1px 3px #0f172a0a}.doc-chapter{margin-bottom:38px;scroll-margin-top:96px}.doc-chapter h2{color:var(--text-1,#0f172a);border-left:3px solid var(--brand,#1e6fff);border-bottom:1px solid var(--border-light,#eaecf0);margin:0 0 14px;padding:0 0 10px 14px;font-size:21px;font-weight:700;line-height:1.4}.doc-anchor{color:var(--text-4,#94a3b8);opacity:0;margin-left:8px;font-size:14px;font-weight:400;text-decoration:none;transition:opacity .15s}.doc-chapter h2:hover .doc-anchor{opacity:1}.doc-section{margin-bottom:22px;scroll-margin-top:96px}.doc-section h3{color:var(--text-1,#0f172a);margin:18px 0 8px;font-size:15px;font-weight:600}.doc-section p{color:var(--text-2,#334155);margin:0 0 10px;font-size:13.5px;line-height:1.8}.doc-section ul,.doc-section ol{margin:0 0 10px;padding-left:20px}.doc-section li{color:var(--text-2,#334155);margin-bottom:4px;font-size:13.5px;line-height:1.8}.doc-section b{color:var(--text-1,#0f172a)}.doc-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.doc-section table{border-collapse:collapse;width:100%;min-width:480px;margin:10px 0 14px;font-size:12.5px}.doc-section th,.doc-section td{text-align:left;border:1px solid var(--border,#e5e6eb);color:var(--text-2,#334155);padding:8px 10px;line-height:1.6}.doc-section th{color:var(--text-1,#0f172a);white-space:nowrap;background:#1e6fff0f;font-weight:600}.doc-section tr:nth-child(2n) td{background:#1e6fff05}.doc-section code{color:#1d4ed8;background:#1e6fff12;border-radius:4px;padding:1px 5px;font-family:Cascadia Code,Consolas,monospace;font-size:12px}.doc-section pre{color:#e2e8f0;background:#0f172a;border-radius:10px;margin:10px 0 14px;padding:14px 16px;font-family:Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.7;overflow-x:auto}.doc-section pre code{color:inherit;background:0 0;padding:0}.doc-callout{color:#92400e;background:#f59e0b14;border-left:3px solid #f59e0b;border-radius:0 8px 8px 0;margin:10px 0 14px;padding:10px 14px;font-size:12.5px;line-height:1.7}#faq .doc-section{border:1px solid var(--border-light,#eaecf0);background:#1e6fff06;border-radius:10px;margin-bottom:12px;padding:4px 16px 8px}#faq .doc-section h3{color:var(--brand,#1e6fff);margin-top:12px;font-size:14px}#faq .doc-section p{margin-bottom:2px}.doc-top-btn{background:var(--bg-1,#fff);width:40px;height:40px;color:var(--brand,#1e6fff);cursor:pointer;opacity:0;pointer-events:none;z-index:60;border:1px solid #1e6fff4d;border-radius:50%;font-size:16px;font-weight:700;transition:opacity .2s,transform .2s;position:fixed;bottom:32px;right:28px;transform:translateY(8px);box-shadow:0 2px 10px #0f172a1f}.doc-top-btn.show{opacity:1;pointer-events:auto;transform:none}.doc-top-btn:hover{background:var(--brand,#1e6fff);color:#fff}@media (width<=1100px){.doc-body{padding:28px 30px 32px}}.doc-toc-fab,.doc-backdrop{display:none}@media (width<=900px){.doc-hero{margin-top:calc(-1 * var(--nav-h,64px));padding:calc(2 * var(--nav-h,64px) + 32px) 0 24px}.doc-title{font-size:25px}.doc-sub{margin-bottom:14px;font-size:13px}.doc-hero-chips a{padding:4px 11px;font-size:12px}.doc-layout{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:16px}.doc-body{border-radius:12px;max-width:100%;padding:20px 16px 26px}.doc-section code{overflow-wrap:anywhere}.doc-sidebar{width:min(80vw,300px);max-height:none;padding:18px 12px calc(18px + env(safe-area-inset-bottom));z-index:70;border-radius:0 14px 14px 0;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%);box-shadow:4px 0 24px #0f172a2e}.doc-sidebar.open{transform:none}.doc-backdrop{opacity:0;pointer-events:none;z-index:65;background:#0f172a61;transition:opacity .2s;display:block;position:fixed;inset:0}.doc-backdrop.show{opacity:1;pointer-events:auto}.doc-toc-fab{left:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60;color:var(--brand,#1e6fff);background:var(--bg-1,#fff);cursor:pointer;border:1px solid #1e6fff4d;border-radius:999px;align-items:center;padding:9px 16px;font-size:13px;font-weight:600;display:inline-flex;position:fixed;box-shadow:0 2px 10px #0f172a24}.doc-toc-fab:active{background:var(--brand,#1e6fff);color:#fff}.doc-top-btn{right:16px;bottom:calc(16px + env(safe-area-inset-bottom))}.doc-section p,.doc-section li{font-size:13px}.doc-chapter h2{font-size:18px}.doc-section table{font-size:12px}}.doc-search{z-index:70;text-align:left;max-width:560px;margin:20px auto 22px;position:relative}.doc-search input{box-sizing:border-box;border-radius:var(--radius-pill,999px);border:1px solid var(--border,#e5e6eb);background:var(--bg-1,#fff);width:100%;color:var(--text-1,#1d2129);box-shadow:var(--shadow-sm,0 1px 2px #0f172a0f);outline:none;padding:12px 52px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}.doc-search input::placeholder{color:var(--text-3,#86909c)}.doc-search input:focus{border-color:var(--brand,#1e6fff);box-shadow:var(--shadow-focus,0 0 0 3px #1e6fff29)}.doc-search input::-webkit-search-cancel-button{-webkit-appearance:none}.doc-search-icon{color:var(--text-3,#86909c);pointer-events:none;transition:color .15s;display:inline-flex;position:absolute;top:50%;left:18px;transform:translateY(-50%)}.doc-search:focus-within .doc-search-icon{color:var(--brand,#1e6fff)}.doc-search-kbd{color:var(--text-3,#86909c);background:var(--bg-2,#f7f8fa);border:1px solid var(--border,#e5e6eb);pointer-events:none;border-radius:5px;padding:2px 8px;font-family:inherit;font-size:11px;line-height:1.5;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.doc-search-panel{z-index:60;background:var(--bg-1,#fff);border:1px solid var(--border,#e5e6eb);border-radius:var(--radius-lg,14px);box-shadow:var(--shadow-lg,0 8px 16px #0f172a1f);max-height:60vh;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden auto}.doc-search-item{color:inherit;border-bottom:1px solid var(--border-light,#eaecf0);padding:11px 16px;text-decoration:none;display:block}.doc-search-item:last-child{border-bottom:none}.doc-search-item:hover{background:var(--bg-hover,#f2f3f5)}.doc-search-item-title{color:var(--text-1,#1d2129);font-size:13px;font-weight:600}.doc-search-item-snippet{color:var(--text-3,#86909c);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.doc-search-empty{color:var(--text-3,#86909c);text-align:center;padding:18px;font-size:13px}.doc-section.doc-hit-flash{animation:1.6s docHitFlash}@keyframes docHitFlash{0%,60%{background:#1e6fff17}to{background:0 0}}@media (width<=640px){.doc-search{margin:14px 0 16px}.doc-search-kbd{display:none}.doc-search input{padding-right:20px}}html.dark .doc-section code{color:#8ab4ff;background:#1e6fff2e}html.dark .doc-callout{color:#fcd34d;background:#f59e0b1f}.arch-diagram svg{background:var(--bg-1,#fff);border:1px solid var(--border,#e5e6eb);border-radius:12px;width:100%;height:auto;display:block}html.dark .arch-diagram svg{background:#10141c;border-color:#2a3242}html.dark .arch-diagram rect[fill=\#fff]{fill:#171d29}html.dark .arch-diagram rect[fill=\#EFF6FF]{fill:#131c2c}html.dark .arch-diagram rect[fill=\#ECFDF5]{fill:#11201a}html.dark .arch-diagram rect[fill=\#EDE9FE]{fill:#1b1730}html.dark .arch-diagram rect[fill=\#DBEAFE]{fill:#1a2a44}html.dark .arch-diagram rect[fill=\#D1FAE5]{fill:#12281e}html.dark .arch-diagram rect[fill=\#FEE2E2]{fill:#2c1a1a}html.dark .arch-diagram rect[fill=\#FFFBEB]{fill:#241d10}html.dark .arch-diagram rect[fill=\#FEF3C7]{fill:#2a2211}html.dark .arch-diagram [fill=\#1e293b]{fill:#e8eaf0}html.dark .arch-diagram [fill=\#334155]{fill:#c3cbda}html.dark .arch-diagram [fill=\#64748b]{fill:#8b96a8}html.dark .arch-diagram [fill=\#94a3b8]{fill:#6d7889}html.dark .arch-diagram [fill=\#065F46]{fill:#6ee7b7}html.dark .arch-diagram [fill=\#1E40AF]{fill:#93c5fd}html.dark .arch-diagram [fill=\#5B21B6]{fill:#c4b5fd}html.dark .arch-diagram [fill=\#92400E]{fill:#fcd34d}html.dark .arch-diagram [stroke=\#E2E8F0]{stroke:#2a3242}html.dark .arch-diagram [stroke=\#BFDBFE]{stroke:#274066}html.dark .arch-diagram [stroke=\#A7F3D0]{stroke:#1f4636}html.dark .arch-diagram [stroke=\#CBD5E1]{stroke:#3a4353}html.dark .arch-diagram [stroke=\#C4B5FD]{stroke:#3d3660}html.dark .arch-diagram [stroke=\#64748b]{stroke:#7e8899}
