:root{--bg-primary: rgba(7, 9, 13, 1);--bg-secondary: rgba(0, 0, 0, 1);--bg-elev: rgba(13, 16, 22, 1);--bg-button: rgba(38, 42, 58, 1);--bg-field: rgba(20, 23, 32, 1);--bg-hover: rgba(255, 255, 255, .04);--bg-active: rgba(56, 97, 251, .12);--backdrop: rgba(0, 0, 0, .72);--text-primary: rgb(255, 255, 255);--text-secondary: rgba(130, 134, 143, 1);--text-tertiary: rgba(95, 99, 108, 1);--text-inverse: rgb(28, 28, 28);--border: rgba(216, 231, 242, .07);--border-strong: rgba(216, 231, 242, .14);--blue: rgba(56, 97, 251, 1);--blue-008: rgba(56, 97, 251, .08);--blue-015: rgba(56, 97, 251, .15);--red: rgba(249, 57, 86, 1);--green: rgba(18, 209, 142, 1);--yellow: rgba(255, 235, 79, 1);--kbd-bg: rgba(255, 255, 255, .06);--code-bg: rgba(255, 255, 255, .03);--code-border: rgba(255, 255, 255, .06);--ui-accent: var(--text-primary);--ui-accent-fg: rgb(15, 17, 22);--ui-accent-tint: rgba(255, 255, 255, .06);--ui-accent-tint-strong: rgba(255, 255, 255, .12);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--sidebar-w: 280px;--toc-w: 240px;--topbar-h: 56px;--content-max: 760px;--row-pad-y: 7px}:root.light{--bg-primary: rgb(252, 252, 253);--bg-secondary: rgb(255, 255, 255);--bg-elev: rgb(248, 249, 251);--bg-button: rgb(238, 240, 244);--bg-field: rgb(244, 246, 249);--bg-hover: rgba(0, 0, 0, .04);--bg-active: rgba(56, 97, 251, .08);--backdrop: rgba(20, 24, 36, .5);--text-primary: rgb(15, 17, 22);--text-secondary: rgba(95, 99, 108, 1);--text-tertiary: rgba(140, 144, 153, 1);--border: rgba(15, 20, 36, .08);--border-strong: rgba(15, 20, 36, .14);--kbd-bg: rgba(0, 0, 0, .05);--code-bg: rgba(15, 20, 36, .04);--code-border: rgba(15, 20, 36, .06);--ui-accent: rgb(15, 17, 22);--ui-accent-fg: rgb(255, 255, 255);--ui-accent-tint: rgba(15, 17, 22, .06);--ui-accent-tint-strong: rgba(15, 17, 22, .12)}:root.sidebar-compact{--sidebar-w: 232px;--row-pad-y: 5px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.app{min-height:100vh;display:grid;grid-template-rows:var(--topbar-h) 1fr}.topbar{position:sticky;top:0;z-index:30;height:var(--topbar-h);display:grid;grid-template-columns:var(--sidebar-w) 1fr auto;align-items:center;background:color-mix(in oklab,var(--bg-primary) 86%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.topbar-left{display:flex;align-items:center;height:100%;min-width:0}.topbar-brand{display:flex;align-items:center;gap:10px;padding:0 20px;height:100%;border-right:1px solid var(--border);min-width:0}.topbar-brand svg{width:22px;height:14px;fill:var(--text-primary)}.topbar-brand .wordmark{font-weight:600;font-size:15px;letter-spacing:-.01em}.topbar-brand .docs-tag{font-size:11px;color:var(--text-secondary);padding:3px 7px;border:1px solid var(--border);border-radius:4px;font-weight:500;margin-left:4px;text-transform:uppercase;letter-spacing:.04em}.topbar-nav{display:flex;align-items:center;gap:4px;padding:0 16px;height:100%}.topbar-nav a{font-size:13px;color:var(--text-secondary);padding:6px 12px;border-radius:6px;font-weight:500;transition:color .15s,background .15s}.topbar-nav a:hover{color:var(--text-primary);background:var(--bg-hover)}.topbar-nav a.active{color:var(--text-primary)}.topbar-actions{display:flex;align-items:center;gap:10px;padding:0 20px;height:100%}.search-trigger{display:flex;align-items:center;gap:10px;padding:7px 12px;background:var(--bg-field);border:1px solid var(--border);border-radius:8px;color:var(--text-secondary);font-size:13px;min-width:260px;transition:border-color .15s}.search-trigger:hover{border-color:var(--border-strong);color:var(--text-primary)}.search-trigger .kbd{margin-left:auto;background:var(--kbd-bg);padding:2px 6px;border-radius:4px;font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.icon-btn{width:34px;height:34px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;transition:color .15s,background .15s,border-color .15s}.icon-btn:hover{color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-strong)}.lang-wrap{position:relative}.lang-trigger{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer;transition:color .15s,background .15s,border-color .15s}.lang-trigger:hover{color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-strong)}.lang-trigger .lang-code{letter-spacing:.04em}.lang-trigger .lang-chev{transition:transform .15s;color:var(--text-tertiary)}.lang-trigger .lang-chev.open{transform:rotate(180deg)}.lang-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 32px #0006;padding:6px;z-index:40}.lang-menu-head{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600;padding:8px 10px 6px}.lang-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;background:transparent;border:0;border-radius:6px;cursor:pointer;color:var(--text-primary);font-family:inherit;font-size:13px;text-align:left}.lang-item:hover{background:var(--bg-hover)}.lang-item.active{background:var(--ui-accent-tint);font-weight:500}.lang-item .lang-flag{display:inline-flex;align-items:center;justify-content:center;width:26px;height:18px;border-radius:3px;background:var(--bg-button);font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.04em;color:var(--text-secondary)}.lang-item.active .lang-flag{color:var(--text-primary)}.lang-item .lang-label{flex:1}.lang-item .lang-check{color:var(--text-primary)}.translation-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;margin:0 0 24px;border:1px solid var(--border);background:var(--bg-elev);border-radius:8px;font-size:13px;color:var(--text-secondary)}.translation-banner svg{color:var(--text-tertiary);flex-shrink:0}.main{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:calc(100vh - var(--topbar-h))}.sidebar{border-right:1px solid var(--border);padding:24px 14px 60px;height:calc(100vh - var(--topbar-h));overflow-y:auto;position:sticky;top:var(--topbar-h)}.sidebar::-webkit-scrollbar{width:8px}.sidebar::-webkit-scrollbar-thumb{background:var(--bg-button);border-radius:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sb-section{margin-bottom:18px}.sb-section-head{display:flex;align-items:center;gap:10px;padding:6px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);-webkit-user-select:none;user-select:none;background:transparent;border:0;width:100%;text-align:left;border-radius:6px;cursor:pointer;font-family:inherit;transition:color .12s,background .12s}.sb-section-head:hover{color:var(--text-secondary);background:var(--bg-hover)}.sb-section-head .sb-section-label{flex:1}.sb-section-head .chev{color:var(--text-tertiary);transition:transform .18s ease}.sb-section.closed .sb-section-head .chev{transform:rotate(-90deg)}.sb-section.open .sb-section-head .chev{transform:rotate(0)}.sb-section-head .num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:var(--bg-button);font-family:var(--font-mono);font-size:10px;color:var(--text-secondary);font-weight:500}.sb-item{display:flex;align-items:center;gap:8px;padding:var(--row-pad-y) 10px var(--row-pad-y) 36px;font-size:13.5px;color:var(--text-secondary);border-radius:6px;cursor:pointer;position:relative;transition:color .12s,background .12s}.sb-item:hover{color:var(--text-primary);background:var(--bg-hover)}.sb-item.active{color:var(--text-primary);background:var(--ui-accent-tint);font-weight:500}.sb-item .badge{margin-left:auto;font-size:10px;padding:1px 6px;border-radius:3px;font-family:var(--font-mono);font-weight:500;background:var(--bg-button);color:var(--text-secondary)}.sb-item .badge.new{background:var(--blue-015);color:var(--blue)}.sb-item .badge.soon{color:var(--yellow);background:#ffeb4f1a}.sb-foot{margin-top:28px;padding:14px 10px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.sb-foot a{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--text-secondary);padding:6px 8px;border-radius:6px}.sb-foot a:hover{color:var(--text-primary);background:var(--bg-hover)}.sb-foot svg{width:14px;height:14px}.content-wrap{display:grid;grid-template-columns:minmax(0,1fr) var(--toc-w);align-items:start;min-width:0}.content{min-width:0}.content pre,.content table.docs{max-width:100%}.content{padding:56px 64px 120px;max-width:calc(var(--content-max) + 128px);width:100%;margin:0 auto}.content.no-toc{grid-column:1 / -1;max-width:900px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-tertiary);margin-bottom:18px}.breadcrumb .crumb{color:var(--text-secondary)}.breadcrumb .sep{opacity:.5}.page-h1{font-size:36px;line-height:1.15;letter-spacing:-.02em;font-weight:600;margin:0 0 14px}.page-lead{font-size:16px;color:var(--text-secondary);line-height:1.6;margin:0 0 32px;max-width:640px}.content h2{font-size:22px;font-weight:600;letter-spacing:-.01em;margin:48px 0 14px;scroll-margin-top:80px}.content h3{font-size:16px;font-weight:600;margin:32px 0 8px;scroll-margin-top:80px}.content p{color:var(--text-primary);margin:12px 0}.content p.muted{color:var(--text-secondary)}.content ul,.content ol{padding-left:22px;margin:12px 0}.content li{margin:6px 0;color:var(--text-primary)}.content li::marker{color:var(--text-tertiary)}.content strong{font-weight:600}.content a.inline{color:var(--blue);border-bottom:1px solid var(--blue-015)}.content a.inline:hover{border-bottom-color:var(--blue)}code{font-family:var(--font-mono);font-size:.88em;background:var(--code-bg);border:1px solid var(--code-border);padding:1px 5px;border-radius:4px;color:var(--text-primary)}pre{background:var(--bg-secondary);border:1px solid var(--border);border-radius:10px;padding:0;margin:18px 0;overflow:hidden}pre .codeblock-head{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:11.5px;color:var(--text-secondary);background:var(--bg-elev)}pre .codeblock-head .lang{text-transform:uppercase;letter-spacing:.06em}pre .codeblock-head .copy{margin-left:auto;padding:3px 8px;background:transparent;border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);font-size:11px}pre code{display:block;background:transparent;border:0;padding:16px 18px;font-size:12.5px;line-height:1.65;overflow-x:auto;color:var(--text-primary);white-space:pre}.tok-k{color:#c084fc}.tok-s{color:#86efac}.tok-n{color:#fbbf24}.tok-c{color:var(--text-tertiary);font-style:italic}.tok-f{color:#60a5fa}.tok-p{color:var(--text-secondary)}.callout{display:flex;gap:14px;padding:14px 16px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elev);margin:18px 0}.callout .ico{flex:0 0 18px;width:18px;height:18px;border-radius:4px;margin-top:2px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:700}.callout .body{font-size:13.5px;color:var(--text-primary)}.callout .body .title{font-weight:600;margin-bottom:2px}.callout.info{border-color:var(--blue-015);background:var(--blue-008)}.callout.info .ico{background:var(--blue);color:#fff}.callout.warn{border-color:#ffeb4f40;background:#ffeb4f0f}.callout.warn .ico{background:var(--yellow);color:#000}.callout.danger{border-color:#f9395640;background:#f939560f}.callout.danger .ico{background:var(--red);color:#fff}.callout .spotlight{margin:0;padding-left:18px}.callout .spotlight li+li{margin-top:8px}.callout .spotlight strong{color:var(--text-primary)}table.docs{width:100%;border-collapse:collapse;margin:18px 0;font-size:13px;border:1px solid var(--border);border-radius:10px;overflow:hidden}table.docs th{text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);background:var(--bg-elev);padding:10px 14px;border-bottom:1px solid var(--border)}table.docs td{padding:10px 14px;border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:top}table.docs tr:last-child td{border-bottom:0}table.docs td code{font-size:12px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0 8px}.feature-card{display:block;padding:18px 18px 20px;border:1px solid var(--border);border-radius:12px;background:var(--bg-elev);text-align:left;width:100%;cursor:pointer;transition:border-color .15s,transform .15s,background .15s}.feature-card:hover{border-color:var(--border-strong);background:color-mix(in oklab,var(--bg-elev) 70%,var(--ui-accent-tint))}.feature-card .fc-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}.feature-card .fc-ico{width:28px;height:28px;border-radius:7px;background:var(--bg-button);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.feature-card .fc-title{font-weight:600;font-size:14.5px;color:var(--text-primary)}.feature-card .fc-desc{font-size:13px;color:var(--text-secondary);line-height:1.55}.feature-card .fc-foot{margin-top:14px;font-size:12px;color:var(--text-primary);display:flex;align-items:center;gap:6px}.hero{padding:28px 0 12px;margin-bottom:8px}.hero .eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);font-weight:600;display:inline-flex;align-items:center;gap:8px;margin-bottom:14px}.hero .eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ui-accent);box-shadow:0 0 0 4px var(--ui-accent-tint)}.hero h1{font-size:44px;line-height:1.08;letter-spacing:-.025em;font-weight:600;margin:0 0 14px;max-width:580px}.hero .lead{font-size:16.5px;color:var(--text-secondary);max-width:580px;line-height:1.55;margin:0 0 24px}.hero .actions{display:flex;gap:10px}.hero .btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;font-size:13.5px;font-weight:500;border-radius:8px;border:1px solid var(--border);background:var(--bg-button);color:var(--text-primary);cursor:pointer}.hero .btn.primary{background:var(--ui-accent);border-color:var(--ui-accent);color:var(--ui-accent-fg)}.hero .btn:hover{transform:translateY(-1px)}.landing-compact .hero h1{font-size:32px;max-width:520px}.landing-compact .hero .lead{font-size:14.5px}.landing-compact .feature-grid{grid-template-columns:repeat(2,1fr);gap:8px}.landing-compact .feature-card{padding:14px;border-radius:10px}.stat-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;margin:22px 0 4px;background:var(--bg-elev)}.stat{padding:14px 16px;border-right:1px solid var(--border)}.stat:last-child{border-right:0}.stat .label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:500;margin-bottom:4px}.stat .value{font-family:var(--font-mono);font-size:18px;letter-spacing:-.01em;color:var(--text-primary);font-weight:500}.stat .value .delta{font-size:11px;margin-left:6px;color:var(--green)}.page-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:60px;padding-top:24px;border-top:1px solid var(--border)}.page-nav a{padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev);display:block}.page-nav a:hover{border-color:var(--border-strong)}.page-nav .arrow{color:var(--text-tertiary);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.page-nav .label{font-weight:600;font-size:14px;margin-top:4px;color:var(--text-primary)}.page-nav .next{text-align:right}.toc{position:sticky;top:calc(var(--topbar-h) + 56px);align-self:start;padding:56px 32px 24px 0;font-size:12.5px}.toc-head{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600;margin-bottom:10px}.toc ul{list-style:none;padding:0;margin:0;border-left:1px solid var(--border)}.toc li a{display:block;padding:5px 14px;color:var(--text-secondary);border-left:2px solid transparent;margin-left:-1px}.toc li a:hover{color:var(--text-primary)}.toc li a.active{color:var(--text-primary);border-left-color:var(--ui-accent)}.toc li.h3 a{padding-left:26px;font-size:12px}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:flex-start;justify-content:center;padding-top:100px;z-index:100}.search-modal{width:580px;max-width:calc(100% - 40px);background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:14px;box-shadow:0 24px 60px #00000080;overflow:hidden}.search-input-wrap{display:flex;align-items:center;gap:10px;padding:16px 18px;border-bottom:1px solid var(--border)}.search-input-wrap input{flex:1;background:transparent;border:0;outline:0;color:var(--text-primary);font-size:15px;font-family:inherit}.search-results{max-height:360px;overflow-y:auto;padding:8px}.search-group-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600;padding:10px 10px 6px}.search-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;color:var(--text-primary)}.search-item:hover,.search-item.kbd-active{background:var(--ui-accent-tint)}.search-item .si-ico{width:28px;height:28px;background:var(--bg-button);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex:0 0 28px}.search-item .si-title{font-size:13.5px;font-weight:500}.search-item .si-section{font-size:11.5px;color:var(--text-tertiary);margin-top:1px}.search-empty{padding:28px 12px;text-align:center;color:var(--text-tertiary);font-size:13px}.search-foot{display:flex;gap:14px;padding:10px 16px;border-top:1px solid var(--border);font-size:11px;color:var(--text-tertiary)}.search-foot .kbd-pill{display:inline-flex;align-items:center;gap:4px}.search-foot .kbd-pill kbd{background:var(--kbd-bg);padding:1px 5px;border-radius:3px;font-family:var(--font-mono);font-size:10px}.arch{border:1px solid var(--border);border-radius:12px;padding:20px;margin:22px 0;background:var(--bg-elev)}.arch-layer{display:flex;align-items:stretch;gap:10px;margin-bottom:10px}.arch-layer:last-child{margin-bottom:0}.arch-layer .lbl{flex:0 0 80px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);font-weight:600;display:flex;align-items:center}.arch-blocks{flex:1;display:grid;gap:8px}.arch-blocks.cols-2{grid-template-columns:1fr 1fr}.arch-blocks.cols-3{grid-template-columns:repeat(3,1fr)}.arch-blocks.cols-4{grid-template-columns:repeat(4,1fr)}.arch-block{padding:12px 14px;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary);font-size:12.5px}.arch-block .ab-title{font-weight:600;margin-bottom:2px}.arch-block .ab-sub{color:var(--text-secondary);font-size:11.5px;font-family:var(--font-mono)}.arch-block.accent{border-color:var(--border-strong);background:var(--ui-accent-tint)}.arch-block.accent .ab-title{color:var(--text-primary)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin:22px 0 0}.tab{padding:8px 14px;font-size:12.5px;color:var(--text-secondary);border:0;background:transparent;border-bottom:2px solid transparent;margin-bottom:-1px}.tab.active{color:var(--text-primary);border-bottom-color:var(--ui-accent)}.tab:hover{color:var(--text-primary)}.faq details{border-bottom:1px solid var(--border);padding:4px 0}.faq details summary{cursor:pointer;list-style:none;padding:14px 4px;display:flex;align-items:center;gap:14px;font-weight:500;font-size:14.5px}.faq details summary::-webkit-details-marker{display:none}.faq details summary:after{content:"+";margin-left:auto;color:var(--text-tertiary);font-family:var(--font-mono);font-size:18px;font-weight:300}.faq details[open] summary:after{content:"−";color:var(--text-primary)}.faq details .answer{padding:0 4px 16px;color:var(--text-secondary);font-size:14px;line-height:1.6}.cl-entry{display:grid;grid-template-columns:140px 1fr;gap:28px;padding:24px 0;border-bottom:1px solid var(--border)}.cl-meta .ver{font-family:var(--font-mono);font-size:13px;font-weight:600;padding:3px 8px;background:var(--bg-button);border-radius:5px;display:inline-block;margin-bottom:6px}.cl-meta .date{font-size:12px;color:var(--text-tertiary)}.cl-tag{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:600;padding:2px 8px;border-radius:4px;margin-right:6px;font-family:var(--font-mono)}.cl-tag.feat{background:var(--blue-015);color:var(--blue)}.cl-tag.fix{background:#12d18e26;color:var(--green)}.cl-tag.brk{background:#f9395626;color:var(--red)}:root.no-tweaks .tweaks-panel{display:none!important}.hamburger{display:none;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--bg-elev);color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:background .12s,color .12s,border-color .12s;margin-right:8px}.hamburger:hover{color:var(--text-primary);background:var(--bg-hover);border-color:var(--border-strong)}.hamburger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hamburger svg{display:block}.mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:60;opacity:0;pointer-events:none;transition:opacity .2s ease}.mobile-backdrop.open{opacity:1;pointer-events:auto}@media (max-width: 1180px){.content-wrap{grid-template-columns:1fr}.toc{display:none}.main{grid-template-columns:248px 1fr}}@media (max-width: 1024px){.content{padding:36px 36px 96px}.hero h1{font-size:40px}}@media (max-width: 880px){.topbar{grid-template-columns:auto 1fr auto;padding:0 16px;height:56px}.topbar-brand{border-right:0;padding-right:12px;gap:10px}.topbar-brand .wordmark{font-size:14px}.topbar-brand .docs-tag,.topbar-nav{display:none}.hamburger{display:inline-flex}.main{grid-template-columns:1fr}.sidebar{position:fixed;top:56px;left:0;bottom:0;width:280px;max-width:86vw;z-index:70;transform:translate(-100%);transition:transform .24s ease;background:var(--bg-primary);border-right:1px solid var(--border);box-shadow:6px 0 24px #0000004d;overflow-y:auto;padding:18px 14px 24px}.sidebar.open{transform:translate(0)}.content,.content.no-toc{padding:28px 22px 80px}.search-trigger{min-width:0;gap:6px;padding:0 10px}.search-trigger .label,.search-trigger .kbd{display:none}.icon-btn{width:34px;height:34px}.lang-trigger{padding:0 8px;gap:6px}.hero h1{font-size:34px;max-width:none}.hero p{font-size:16px}.page-h1{font-size:30px}.stat-strip{grid-template-columns:1fr 1fr}.stat{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:16px 18px}.stat:nth-child(2n){border-right:0}.stat:nth-last-child(1),.stat:nth-last-child(2){border-bottom:0}.feature-grid{grid-template-columns:1fr;gap:14px}.feature-card{padding:18px}.arch{padding:18px 14px}.arch-layer{gap:12px;padding:14px 12px}.arch-blocks.cols-3,.arch-blocks.cols-4{grid-template-columns:1fr 1fr}.content table.docs{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.breadcrumb{font-size:12px}.twk-panel{width:calc(100vw - 24px);right:12px;bottom:12px;max-height:60vh}}@media (max-width: 640px){.topbar{padding:0 12px}.topbar-brand .wordmark{display:none}.content{padding:22px 16px 64px}.hero{padding-top:20px;padding-bottom:8px}.hero h1{font-size:28px;line-height:1.18}.hero p{font-size:15px}.page-h1{font-size:26px;line-height:1.2}h2{font-size:22px;margin-top:36px}h3{font-size:17px}.arch-layer{flex-direction:column;align-items:stretch}.arch-layer>.lbl{writing-mode:horizontal-tb;text-orientation:mixed;transform:none;min-width:0;padding:0 0 8px;border-right:0;border-bottom:1px solid var(--border);text-align:left}.arch-blocks.cols-2,.arch-blocks.cols-3,.arch-blocks.cols-4{grid-template-columns:1fr}.search-overlay{align-items:flex-start;padding-top:0}.search-modal{width:100%;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;border:0}.page-nav{grid-template-columns:1fr;gap:10px}.callout{padding:14px}pre,pre code{font-size:12px}}@media (max-width: 480px){.topbar{padding:0 10px;height:52px}.sidebar{top:52px;width:264px}.hamburger{margin-right:4px;width:34px;height:34px}.content{padding:18px 14px 56px}.hero h1{font-size:24px}.page-h1{font-size:22px}.stat-strip{grid-template-columns:1fr}.stat{border-right:0!important;border-bottom:1px solid var(--border);padding:14px 16px}.stat:last-child{border-bottom:0}.icon-btn{width:32px;height:32px}.lang-trigger{padding:0 6px}.lang-trigger .lang-code{font-size:11px}.breadcrumb{display:none}}.search-overlay{opacity:0;transition:opacity .2s ease}.search-overlay.show{opacity:1}.search-modal{transform:translateY(-10px) scale(.97);opacity:0;transition:opacity .22s cubic-bezier(.4,0,.2,1),transform .24s cubic-bezier(.4,0,.2,1)}.search-overlay.show .search-modal{transform:translateY(0) scale(1);opacity:1}.search-overlay.show .search-item{animation:nxItemIn .26s cubic-bezier(.4,0,.2,1) backwards}.search-overlay.show .search-item:nth-child(1){animation-delay:30ms}.search-overlay.show .search-item:nth-child(2){animation-delay:55ms}.search-overlay.show .search-item:nth-child(3){animation-delay:80ms}.search-overlay.show .search-item:nth-child(4){animation-delay:105ms}.search-overlay.show .search-item:nth-child(5){animation-delay:.13s}.search-overlay.show .search-item:nth-child(6){animation-delay:155ms}.search-overlay.show .search-item:nth-child(7){animation-delay:.18s}.search-overlay.show .search-item:nth-child(8){animation-delay:205ms}.search-overlay.show .search-item:nth-child(9){animation-delay:.23s}@keyframes nxItemIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.sb-items-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.4,0,.2,1)}.sb-section.open .sb-items-wrap{grid-template-rows:1fr}.sb-items-inner{overflow:hidden;min-height:0}.sb-section.closed .sb-items-inner{visibility:hidden;transition:visibility 0s .26s}.sb-section.open .sb-items-inner{visibility:visible;transition:visibility 0s 0s}.sb-items-inner .sb-item{opacity:0;transform:translate(-6px);transition:opacity .22s ease,transform .22s cubic-bezier(.4,0,.2,1),color .12s,background .12s}.sb-section.open .sb-items-inner .sb-item{opacity:1;transform:none}.sb-section.open .sb-items-inner .sb-item:nth-child(1){transition-delay:40ms,40ms,0s,0s}.sb-section.open .sb-items-inner .sb-item:nth-child(2){transition-delay:65ms,65ms,0s,0s}.sb-section.open .sb-items-inner .sb-item:nth-child(3){transition-delay:90ms,90ms,0s,0s}.sb-section.open .sb-items-inner .sb-item:nth-child(4){transition-delay:115ms,115ms,0s,0s}.sb-section.open .sb-items-inner .sb-item:nth-child(5){transition-delay:.14s,.14s,0s,0s}.sb-section.open .sb-items-inner .sb-item:nth-child(6){transition-delay:165ms,165ms,0s,0s}.sb-item:before{content:"";position:absolute;left:14px;top:50%;width:3px;height:14px;background:var(--ui-accent);border-radius:2px;transform:translateY(-50%) scaleY(0);transition:transform .22s cubic-bezier(.4,0,.2,1)}.sb-item.active:before{transform:translateY(-50%) scaleY(1)}.lang-menu{opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .16s ease,transform .18s cubic-bezier(.4,0,.2,1)}.lang-menu.open{opacity:1;transform:none;pointer-events:auto}.lang-chev{transition:transform .18s ease}.lang-chev.open{transform:rotate(180deg)}.lang-item{transition:background .16s ease,color .12s ease}.ham-icon{position:relative;display:inline-block;width:18px;height:18px}.ham-svg{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .18s ease,transform .24s cubic-bezier(.4,0,.2,1)}.ham-close{opacity:0;transform:rotate(-90deg)}.ham-icon.is-open .ham-bars{opacity:0;transform:rotate(90deg)}.ham-icon.is-open .ham-close{opacity:1;transform:rotate(0)}.theme-icon{position:relative;display:inline-block;width:15px;height:15px}.theme-svg{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .2s ease,transform .32s cubic-bezier(.4,0,.2,1)}.theme-icon.is-dark .theme-sun{opacity:0;transform:rotate(-90deg) scale(.6)}.theme-icon.is-light .theme-moon{opacity:0;transform:rotate(90deg) scale(.6)}.theme-btn:hover .theme-icon{transform:scale(1.06);transition:transform .22s ease}.stat{transition:background .2s ease}.stat:hover{background:var(--bg-hover)}.feature-card{transition:transform .26s cubic-bezier(.4,0,.2,1),border-color .2s ease,background .2s ease,box-shadow .24s ease}.feature-card:hover{transform:translateY(-2px)}.toc li a{transition:color .18s ease,border-left-color .24s cubic-bezier(.4,0,.2,1)}.sb-section-head:hover .num{background:var(--bg-active);transition:background .18s ease}.hamburger,.icon-btn,.lang-trigger,.search-trigger{transition:color .14s ease,background .14s ease,border-color .14s ease,transform .14s ease}.hamburger:active,.icon-btn:active,.lang-trigger:active,.search-trigger:active{transform:scale(.96)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}@media (hover: none){.sb-item,.lang-item,button{-webkit-tap-highlight-color:transparent}.feature-card:hover{transform:none}}
