:root[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8f9fc;--bg-tertiary:#eef1f7;--bg-hover:#6366f10f;--bg-active:#6366f11f;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--border-primary:#e2e8f0;--border-secondary:#cbd5e1;--border-color:#e2e8f0;--accent-primary:#0f172a;--accent-hover:#1e293b;--accent-light:#0f172a14;--accent-gradient-from:#0f172a;--accent-gradient-to:#334155;--sidebar-bg:#fff;--sidebar-border:#e2e8f0;--sidebar-item-hover:#0f172a0d;--sidebar-item-active:#0f172a14;--sidebar-text:#64748b;--sidebar-text-active:#0f172a;--header-bg:#fffc;--header-border:#0f172a14;--code-bg:#f8fafc;--code-text:#0f172a;--code-border:#e2e8f0;--scrollbar-track:transparent;--scrollbar-thumb:#cbd5e1;--scrollbar-thumb-hover:#94a3b8}:root[data-theme=dark]{--bg-primary:#0a0e1a;--bg-secondary:#141827;--bg-tertiary:#1e2337;--bg-hover:#8b5cf614;--bg-active:#8b5cf626;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-tertiary:#64748b;--border-primary:#94a3b81a;--border-secondary:#94a3b826;--border-color:#94a3b81a;--accent-primary:#f1f5f9;--accent-hover:#e2e8f0;--accent-light:#f1f5f91f;--accent-gradient-from:#f1f5f9;--accent-gradient-to:#cbd5e1;--sidebar-bg:#0a0e1a;--sidebar-border:#94a3b81a;--sidebar-item-hover:#f1f5f914;--sidebar-item-active:#f1f5f91f;--sidebar-text:#94a3b8;--sidebar-text-active:#f1f5f9;--header-bg:#0a0e1acc;--header-border:#f1f5f91a;--code-bg:#141827;--code-text:#e2e8f0;--code-border:#94a3b81f;--scrollbar-track:transparent;--scrollbar-thumb:#94a3b833;--scrollbar-thumb-hover:#94a3b866}:root{--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-normal:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.35s cubic-bezier(.4,0,.2,1);--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--z-sidebar:100;--z-header:200;--z-dropdown:300;--z-modal:400;--z-tooltip:500}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;text-rendering:optimizeLegibility;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--transition-normal),color var(--transition-normal);font-feature-settings:"cv02","cv03","cv04","cv11";font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code,pre{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}#root{height:100%}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb)var(--scrollbar-track)}a{color:var(--accent-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-hover)}::selection{background-color:var(--accent-primary);color:#fff}.check-icon{color:#10b981;background:#10b9811a;border-radius:50%;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;font-size:.75rem;font-style:normal;font-weight:700;line-height:1;display:inline-flex}.check-icon:before{content:"✓"}.x-icon{color:#ef4444;background:#ef44441a;border-radius:50%;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;font-size:.75rem;font-style:normal;font-weight:700;line-height:1;display:inline-flex}.x-icon:before{content:"✕"}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}button{cursor:pointer;font-family:inherit}.container{width:100%;max-width:1280px;padding:0 var(--spacing-lg);margin:0 auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);width:280px;height:100vh;z-index:var(--z-sidebar);transition:background-color var(--transition-normal),border-color var(--transition-normal);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-header{border-bottom:1px solid var(--border-primary);flex-shrink:0;align-items:center;height:64px;padding:0 1.25rem;display:flex}.sidebar-logo{color:var(--text-primary);transition:opacity var(--transition-fast);align-items:center;gap:.625rem;font-size:1.125rem;font-weight:700;text-decoration:none;display:flex}.sidebar-logo:hover{opacity:.7}.sidebar-logo svg{flex-shrink:0}.sidebar-logo-text{letter-spacing:-.02em}.sidebar-nav{flex:1;padding:1.25rem .75rem;overflow-y:auto}.nav-item-wrapper{margin-bottom:var(--spacing-xs)}.nav-item{position:relative}.nav-item.parent{margin-bottom:var(--spacing-sm)}.nav-item.child .nav-item-title{font-size:var(--text-sm)}.nav-item-button,.nav-item-link{width:100%;color:var(--sidebar-text);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;display:flex}.nav-item-link{text-decoration:none}.nav-item-button:hover,.nav-item-link:hover{background-color:var(--sidebar-item-hover);color:var(--text-primary)}.nav-item.active .nav-item-button,.nav-item.active .nav-item-link{background:var(--sidebar-item-active);color:var(--sidebar-text-active);font-weight:600;position:relative}.nav-item.active .nav-item-button:before,.nav-item.active .nav-item-link:before{content:"";background:var(--accent-primary);border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;top:50%;left:-.75rem;transform:translateY(-50%)}.nav-item-chevron{color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.nav-item-chevron.open{transform:rotate(90deg)}.nav-item-title{flex:1}.nav-item-children{flex-direction:column;gap:2px;display:flex}@media (max-width:768px){.sidebar{transition:transform var(--transition-normal);transform:translate(-100%)}.sidebar.open{transform:translate(0)}}.search-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0009;justify-content:center;align-items:flex-start;padding-top:12vh;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.search-modal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;width:90%;max-width:640px;animation:.2s ease-out slideIn;overflow:hidden;box-shadow:0 24px 80px #0006}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.search-modal-input-wrapper{border-bottom:1px solid var(--border-color);align-items:center;gap:14px;padding:18px 24px;display:flex}.search-modal-icon{color:var(--text-tertiary);flex-shrink:0}.search-modal-input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:1rem;font-weight:400}.search-modal-input::placeholder{color:var(--text-tertiary)}.search-modal-kbd{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-tertiary);border-radius:6px;padding:4px 10px;font-family:SF Mono,monospace;font-size:11px;font-weight:500}.search-results{max-height:400px;overflow-y:auto}.search-no-results{text-align:center;color:var(--text-secondary);padding:40px 20px}.search-result-item{cursor:pointer;border-bottom:1px solid var(--border-color);padding:14px 24px;transition:all .15s}.search-result-item:hover,.search-result-item.selected{background:var(--bg-hover)}.search-result-item:last-child{border-bottom:none}.search-result-title{color:var(--text-primary);margin-bottom:6px;font-size:.9375rem;font-weight:600}.search-result-preview{color:var(--text-tertiary);font-size:.8125rem;line-height:1.5}.search-modal-footer{border-top:1px solid var(--border-color);background:var(--bg-secondary);padding:14px 24px}.search-modal-hint{color:var(--text-tertiary);align-items:center;gap:10px;font-size:.8125rem;display:flex}.search-modal-hint kbd{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:5px;padding:3px 7px;font-family:SF Mono,monospace;font-size:11px;font-weight:500}.header{background-color:var(--header-bg);-webkit-backdrop-filter:blur(16px)saturate(180%);border-bottom:1px solid var(--header-border);height:64px;z-index:var(--z-header);transition:all var(--transition-normal);justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:fixed;top:0;left:280px;right:0}.header-left{justify-content:center;align-items:center;gap:var(--spacing-lg);flex:1;display:flex}.mobile-menu-btn{width:36px;height:36px;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:none}.mobile-menu-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.search-container{cursor:pointer;width:100%;max-width:500px;position:relative}.search-icon{color:var(--text-tertiary);pointer-events:none;transition:color var(--transition-fast);position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-container.focused .search-icon{color:var(--accent-primary)}.search-input{background-color:var(--bg-secondary);border:1px solid var(--border-primary);width:100%;height:38px;color:var(--text-primary);transition:all var(--transition-fast);border-radius:8px;padding:0 90px 0 42px;font-size:.875rem;font-weight:400}.search-input::placeholder{color:var(--text-tertiary)}.search-input:focus{border-color:var(--accent-primary);background-color:var(--bg-primary);box-shadow:0 0 0 3px var(--accent-light),0 4px 12px #0f172a1a;outline:none}[data-theme=dark] .search-input:focus{box-shadow:0 0 0 3px var(--accent-light),0 4px 12px #f1f5f91a}.search-kbd{background-color:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-tertiary);pointer-events:none;border-radius:5px;padding:3px 8px;font-family:SF Mono,monospace;font-size:11px;font-weight:500;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.header-right{align-items:center;gap:var(--spacing-md);flex:1;justify-content:flex-end;display:flex}.theme-toggle{width:38px;height:38px;color:var(--text-secondary);transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;display:flex}.theme-toggle:hover{background-color:var(--bg-hover);color:var(--text-primary)}.signin-btn{background:var(--accent-primary);transition:all var(--transition-fast);white-space:nowrap;letter-spacing:-.01em;border:none;border-radius:8px;padding:8px 20px;font-size:.875rem;font-weight:600;text-decoration:none;color:var(--bg-primary)!important}.signin-btn:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #0f172a40;color:var(--bg-primary)!important}[data-theme=dark] .signin-btn{background:#fff;color:#0a0e1a!important}[data-theme=dark] .signin-btn:hover{background:#f1f5f9;box-shadow:0 4px 16px #ffffff26;color:#0a0e1a!important}@media (max-width:768px){.header{padding:0 var(--spacing-md);left:0}.mobile-menu-btn{display:flex}.search-container{max-width:none}.search-kbd{display:none}}@media (max-width:480px){.search-input{font-size:16px}}.table-of-contents{z-index:10;width:240px;max-height:calc(100vh - 140px);padding:0;position:fixed;top:112px;right:2.5rem;overflow-y:auto}.toc-header{color:var(--text-primary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1rem;font-size:.75rem;font-weight:700}.toc-list{margin:0;padding:0;list-style:none}.toc-item{margin-bottom:.25rem}.toc-item a{color:var(--text-tertiary);transition:all var(--transition-fast);border-left:2px solid #0000;border-radius:4px;margin-left:-.75rem;padding:.375rem 0 .375rem .75rem;font-size:.8125rem;line-height:1.6;text-decoration:none;display:block;position:relative}.toc-item a:hover{color:var(--text-primary);border-left-color:var(--border-secondary)}.toc-item.active a{color:var(--accent-primary);border-left-color:var(--accent-primary);font-weight:600}.toc-level-1{padding-left:0}.toc-level-2{padding-left:.75rem}.toc-level-3{padding-left:1.5rem}.toc-level-2 a,.toc-level-3 a{font-size:.75rem}@media (max-width:1280px){.table-of-contents{display:none}}@media (min-width:1281px) and (max-width:1440px){.table-of-contents{width:200px;right:1rem}}.docs-footer{text-align:center;border-top:1px solid var(--border-primary);width:100%;margin-top:auto;padding:4rem 0 3rem}[data-theme=light] .docs-footer{background:#fafafa}[data-theme=dark] .docs-footer{background:var(--bg-primary)}.footer-content{flex-direction:column;align-items:center;gap:1.5rem;display:flex}.footer-social{justify-content:center;gap:1.5rem;display:flex}.footer-social a{background:var(--bg-secondary);width:36px;height:36px;color:var(--text-secondary);border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.footer-social a:hover{background:var(--bg-hover);color:var(--text-primary);transform:translateY(-1px)}.footer-social a:after{display:none}.footer-copyright{border-top:1px solid var(--border-primary);padding-top:1.5rem}.footer-copyright p{color:var(--text-tertiary);margin:0;font-size:.9rem;font-weight:400}@media (max-width:768px){.docs-footer{padding:3rem 0 2rem}.footer-social{gap:1rem}.footer-content{gap:1.25rem}}@media (max-width:480px){.docs-footer{padding:2rem 0 1.5rem}.footer-social a{width:32px;height:32px}.footer-copyright p{font-size:.8rem}}.docs-layout{height:100vh;display:flex;overflow:hidden}.docs-main{height:100vh;transition:margin-left var(--transition-normal);flex-direction:column;flex:1;margin-left:280px;display:flex}.docs-content-wrapper{flex:1;justify-content:center;margin-top:64px;display:flex;position:relative;overflow-y:auto}.docs-content-container{flex-direction:column;flex:1;width:100%;max-width:900px;min-height:calc(100vh - 64px);display:flex}.docs-content{padding:3.5rem 4rem;padding-bottom:var(--spacing-xl);flex:1;max-width:100%}.docs-content h1{color:var(--text-primary);letter-spacing:-.03em;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700;line-height:1.15}.docs-content h2{color:var(--text-primary);letter-spacing:-.02em;border-bottom:1px solid var(--border-primary);margin-top:3rem;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.75rem;font-weight:600;line-height:1.3}.docs-content h3{color:var(--text-primary);letter-spacing:-.01em;margin-top:2rem;margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.docs-content p{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.9375rem;line-height:1.8}.docs-content a{color:var(--accent-primary);transition:all var(--transition-fast);border-bottom:1px solid #0000;font-weight:500;text-decoration:none}.docs-content a:hover{border-bottom-color:var(--accent-primary)}.docs-content ul,.docs-content ol{color:var(--text-secondary);margin-bottom:1.25rem;padding-left:1.5rem}.docs-content li{margin-bottom:.625rem;font-size:.9375rem;line-height:1.8}.docs-content li::marker{color:var(--text-tertiary)}.docs-content code{background-color:var(--code-bg);color:var(--code-text);border:1px solid var(--code-border);border-radius:5px;padding:.15rem .4rem;font-family:JetBrains Mono,SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-size:.875em;font-weight:500}.docs-content pre{background-color:var(--code-bg);border:1px solid var(--code-border);border-radius:10px;margin:1.5rem 0;padding:1.25rem 1.5rem;overflow-x:auto;box-shadow:0 2px 8px #0000000a}.docs-content pre code{background:0 0;border:none;padding:0;font-size:.875rem;line-height:1.7}.docs-content blockquote{border-left:3px solid var(--accent-primary);padding-left:var(--spacing-lg);margin:var(--spacing-lg)0;color:var(--text-secondary);font-style:italic}.docs-content table{border-collapse:collapse;border:1px solid var(--border-primary);border-radius:10px;width:100%;margin:1.5rem 0 2rem;font-size:.9375rem;overflow:hidden;box-shadow:0 2px 8px #0000000a}.docs-content th,.docs-content td{text-align:left;border-bottom:1px solid var(--border-primary);padding:1rem 1.25rem}.docs-content thead tr{background:#0f172a08;border-bottom:2px solid #0000}[data-theme=dark] .docs-content thead tr{background:#f1f5f90a}.docs-content th{color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.docs-content td{color:var(--text-secondary);background-color:var(--bg-primary)}.docs-content tbody tr{transition:all var(--transition-fast)}.docs-content tbody tr:hover{background-color:var(--bg-hover)}.docs-content tbody tr:last-child td{border-bottom:none}.docs-content img{border-radius:var(--radius-md);max-width:100%;height:auto;margin:var(--spacing-lg)0}.docs-content li::marker{color:var(--text-tertiary);font-weight:600}@media (min-width:1281px){.docs-content-container{margin-right:280px}}@media (max-width:768px){.docs-main{margin-left:0}.docs-content-container{margin-right:0}.docs-content{padding:var(--spacing-lg)}.docs-content h1{font-size:var(--text-3xl)}.docs-content h2{font-size:var(--text-xl)}}@media (max-width:480px){.docs-content{padding:var(--spacing-md)}.docs-content h1{font-size:var(--text-2xl)}}.markdown-content{width:100%}.markdown-content pre{border:1px solid var(--code-border);border-radius:10px;margin:1.5rem 0;padding:0;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d;background:var(--code-bg)!important}.markdown-content pre code{color:var(--code-text);background:0 0;padding:1.25rem 1.5rem;font-family:JetBrains Mono,SF Mono,Monaco,Fira Code,Cascadia Code,monospace;font-size:.875rem;line-height:1.7;display:block;overflow-x:auto}[data-theme=light] .markdown-content .hljs{color:#24292f;background:#f6f8fa}[data-theme=light] .markdown-content .hljs-comment{color:#6e7781;font-style:normal}[data-theme=light] .markdown-content .hljs-keyword,[data-theme=light] .markdown-content .hljs-selector-tag,[data-theme=light] .markdown-content .hljs-subst{color:#cf222e;font-weight:500}[data-theme=light] .markdown-content .hljs-string,[data-theme=light] .markdown-content .hljs-doctag,[data-theme=light] .markdown-content .hljs-regexp{color:#0a3069}[data-theme=light] .markdown-content .hljs-title,[data-theme=light] .markdown-content .hljs-name,[data-theme=light] .markdown-content .hljs-type,[data-theme=light] .markdown-content .hljs-tag{color:#8250df;font-weight:500}[data-theme=light] .markdown-content .hljs-attribute,[data-theme=light] .markdown-content .hljs-property,[data-theme=light] .markdown-content .hljs-variable,[data-theme=light] .markdown-content .hljs-number,[data-theme=light] .markdown-content .hljs-literal{color:#0550ae}[data-theme=light] .markdown-content .hljs-function,[data-theme=light] .markdown-content .hljs-title.function_{color:#8250df}[data-theme=light] .markdown-content .hljs-params{color:#24292f}[data-theme=dark] .markdown-content .hljs{color:#c9d1d9;background:#0d1117}[data-theme=dark] .markdown-content .hljs-comment{color:#8b949e;font-style:normal}[data-theme=dark] .markdown-content .hljs-keyword,[data-theme=dark] .markdown-content .hljs-selector-tag,[data-theme=dark] .markdown-content .hljs-subst{color:#ff7b72;font-weight:500}[data-theme=dark] .markdown-content .hljs-string,[data-theme=dark] .markdown-content .hljs-doctag,[data-theme=dark] .markdown-content .hljs-regexp{color:#a5d6ff}[data-theme=dark] .markdown-content .hljs-title,[data-theme=dark] .markdown-content .hljs-name,[data-theme=dark] .markdown-content .hljs-type,[data-theme=dark] .markdown-content .hljs-tag{color:#d2a8ff;font-weight:500}[data-theme=dark] .markdown-content .hljs-attribute,[data-theme=dark] .markdown-content .hljs-property,[data-theme=dark] .markdown-content .hljs-variable,[data-theme=dark] .markdown-content .hljs-number,[data-theme=dark] .markdown-content .hljs-literal{color:#79c0ff}[data-theme=dark] .markdown-content .hljs-function,[data-theme=dark] .markdown-content .hljs-title.function_{color:#d2a8ff}[data-theme=dark] .markdown-content .hljs-params{color:#c9d1d9}.markdown-content code:not(pre code){background-color:var(--code-bg);color:var(--code-text);border:1px solid var(--code-border);border-radius:5px;padding:.15rem .4rem;font-family:JetBrains Mono,SF Mono,Monaco,Fira Code,monospace;font-size:.875em;font-weight:500}
