:root,html[data-theme=dark]{color-scheme:dark;--bg: #07111f;--bg-soft: #0b1628;--bg-elevated: #0f1d33;--bg-grid: rgba(148, 163, 184, .08);--surface: #0f172a;--surface-alt: rgba(30, 41, 59, .78);--surface-secondary: rgba(15, 23, 42, .82);--surface-muted: rgba(15, 23, 42, .72);--surface-border: rgba(148, 163, 184, .16);--surface-border-strong: rgba(148, 163, 184, .26);--line-soft: rgba(148, 163, 184, .16);--line-strong: rgba(148, 163, 184, .3);--text: #e2e8f0;--text-soft: #cbd5e1;--text-faint: #94a3b8;--text-strong: #f8fafc;--text-inverse: #f8fafc;--text-inverse-soft: rgba(226, 232, 240, .78);--text-inverse-faint: rgba(148, 163, 184, .82);--brand: #2563eb;--brand-strong: #60a5fa;--brand-soft: rgba(37, 99, 235, .1);--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .22);--success: #10b981;--success-soft: rgba(16, 185, 129, .14);--warning: #8b5cf6;--warning-soft: rgba(139, 92, 246, .16);--pricing-free: #14b8a6;--pricing-free-soft: rgba(20, 184, 166, .14);--pricing-welfare: #a855f7;--pricing-welfare-soft: rgba(168, 85, 247, .16);--pricing-paid: #f59e0b;--pricing-paid-soft: rgba(245, 158, 11, .16);--divider: rgba(148, 163, 184, .2);--header-bg: rgba(7, 17, 31, .94);--header-border: rgba(148, 163, 184, .14);--body-background: radial-gradient(circle at 14% 10%, rgba(37, 99, 235, .16), transparent 26%), radial-gradient(circle at 86% 12%, rgba(14, 165, 233, .1), transparent 22%), radial-gradient(circle at 52% 118%, rgba(59, 130, 246, .08), transparent 34%), linear-gradient(135deg, rgba(255, 255, 255, .018), transparent 26%, transparent 74%, rgba(59, 130, 246, .028)), linear-gradient(180deg, #07111f 0%, #0a1424 42%, #0f172a 100%);--ambient-a-bg: radial-gradient(circle, rgba(37, 99, 235, .18) 0%, rgba(37, 99, 235, .06) 38%, transparent 72%);--ambient-b-bg: radial-gradient(circle, rgba(14, 165, 233, .14) 0%, rgba(14, 165, 233, .04) 42%, transparent 72%);--ambient-c-bg: radial-gradient(circle at 50% 50%, rgba(30, 64, 175, .18) 0%, rgba(30, 64, 175, .04) 46%, transparent 74%);--surface-gradient: linear-gradient(180deg, rgba(15, 23, 42, .96), rgba(11, 18, 32, .92));--surface-card-gradient: linear-gradient(180deg, rgba(15, 23, 42, .96), rgba(15, 23, 42, .9));--panel-subtle-gradient: linear-gradient(180deg, rgba(15, 23, 42, .95), rgba(11, 22, 40, .92));--article-bg: linear-gradient(180deg, rgba(15, 23, 42, .965), rgba(11, 22, 40, .94));--search-dialog-bg: linear-gradient(180deg, rgba(15, 23, 42, .98), rgba(11, 22, 40, .95));--search-box-bg: rgba(15, 23, 42, .92);--search-result-bg: rgba(15, 23, 42, .78);--search-result-hover-bg: rgba(30, 41, 59, .9);--sidebar-group-bg: rgba(15, 23, 42, .58);--sidebar-group-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);--sidebar-group-current-bg: linear-gradient(180deg, rgba(37, 99, 235, .16), rgba(15, 23, 42, .84));--sidebar-group-current-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 14px 32px rgba(2, 6, 23, .22);--sidebar-chip-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 12px 24px rgba(2, 6, 23, .26);--sidebar-arrow-bg: rgba(15, 23, 42, .82);--back-to-top-bg: rgba(7, 17, 31, .9);--back-to-top-hover-bg: rgba(15, 23, 42, .98);--back-to-top-icon-bg: rgba(37, 99, 235, .18);--back-to-top-icon-color: #bfdbfe;--header-chip-bg: linear-gradient(180deg, rgba(255, 255, 255, .072), rgba(255, 255, 255, .03));--header-chip-bg-hover: linear-gradient(180deg, rgba(255, 255, 255, .128), rgba(255, 255, 255, .06));--header-chip-border: rgba(148, 163, 184, .13);--header-chip-border-strong: rgba(147, 197, 253, .34);--header-chip-text: var(--text-inverse-soft);--header-chip-text-strong: var(--text-inverse);--header-chip-highlight: linear-gradient(90deg, transparent, rgba(125, 211, 252, .82) 20%, rgba(96, 165, 250, .96) 50%, rgba(125, 211, 252, .82) 80%, transparent);--header-chip-highlight-shadow: 0 0 18px rgba(56, 189, 248, .22);--header-chip-overlay: radial-gradient(circle at 50% 0%, rgba(255, 255, 255, .09), transparent 58%), linear-gradient(180deg, rgba(255, 255, 255, .05), transparent 68%);--header-primary-bg: linear-gradient(180deg, rgba(96, 165, 250, .22), rgba(37, 99, 235, .1));--header-primary-text: #f0f7ff;--header-portal-bg: linear-gradient(180deg, rgba(96, 165, 250, .12), rgba(37, 99, 235, .045));--header-portal-bg-hover: linear-gradient(180deg, rgba(125, 211, 252, .17), rgba(37, 99, 235, .065));--header-portal-border: rgba(96, 165, 250, .2);--header-portal-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 12px 24px -20px rgba(37, 99, 235, .34);--header-active-bg: linear-gradient(180deg, rgba(125, 211, 252, .22), rgba(37, 99, 235, .13));--header-active-text: #f8fbff;--header-chip-shadow: inset 0 1px 0 rgba(255, 255, 255, .055), 0 14px 30px -18px rgba(2, 6, 23, .32), 0 6px 14px -14px rgba(2, 6, 23, .22);--header-chip-shadow-hover: inset 0 1px 0 rgba(255, 255, 255, .08), 0 22px 48px -20px rgba(2, 6, 23, .44), 0 10px 24px -18px rgba(37, 99, 235, .18);--header-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 24px 52px -20px rgba(37, 99, 235, .36), 0 12px 28px -18px rgba(125, 211, 252, .22);--header-trigger-icon-bg: rgba(37, 99, 235, .16);--header-trigger-icon-color: #dbeafe;--header-shortcut-border: rgba(148, 163, 184, .14);--header-tool-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);--brand-mark-bg: linear-gradient(180deg, #3b82f6 0%, #2563eb 58%, #1d4ed8 100%);--brand-mark-border: rgba(147, 197, 253, .38);--brand-mark-text: #eff6ff;--brand-mark-shadow: inset 0 1px 0 rgba(255, 255, 255, .16), 0 12px 28px rgba(37, 99, 235, .28);--menu-toggle-line: #dbeafe;--overlay-backdrop: rgba(2, 6, 23, .56);--mobile-sidebar-backdrop: rgba(2, 6, 23, .55);--hero-surface-bg: linear-gradient(135deg, rgba(8, 15, 30, .96), rgba(14, 25, 44, .92));--hero-card-bg: rgba(255, 255, 255, .04);--portal-dark-surface-bg: linear-gradient(135deg, rgba(8, 15, 30, .98), rgba(14, 25, 44, .96));--portal-dark-surface-soft-bg: linear-gradient(135deg, rgba(8, 15, 30, .94), rgba(14, 25, 44, .9));--portal-card-overlay-bg: linear-gradient(180deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .04));--portal-chip-bg: rgba(255, 255, 255, .05);--portal-link-bg: rgba(255, 255, 255, .07);--portal-link-hover-bg: rgba(255, 255, 255, .11);--eyebrow-bg: rgba(37, 99, 235, .14);--eyebrow-color: #bfdbfe;--inline-code-bg: rgba(148, 163, 184, .16);--tree-link-hover-bg: rgba(37, 99, 235, .14);--table-bg: linear-gradient(180deg, rgba(15, 23, 42, .94), rgba(11, 22, 40, .9));--selection-bg: rgba(37, 99, 235, .24);--selection-color: #fff;--accent-gradient: linear-gradient(90deg, #38bdf8, #2563eb);--accent-gradient-strong: linear-gradient(90deg, #38bdf8, #2563eb 55%, #7c3aed);--success-gradient: linear-gradient(90deg, #38bdf8, #2563eb, #10b981);--planned-gradient: linear-gradient(90deg, #fbbf24, #f97316, #fb923c);--interactive-soft-bg: rgba(37, 99, 235, .05);--interactive-soft-bg-hover: rgba(37, 99, 235, .08);--interactive-strong-bg: rgba(37, 99, 235, .12);--interactive-active-bg: rgba(37, 99, 235, .1);--interactive-border: rgba(37, 99, 235, .16);--interactive-border-strong: rgba(37, 99, 235, .24);--focus-ring-soft: 0 0 0 3px rgba(37, 99, 235, .12);--focus-ring: 0 0 0 3px rgba(37, 99, 235, .18);--card-hover-border: rgba(37, 99, 235, .18);--card-hover-shadow: 0 18px 42px rgba(37, 99, 235, .12);--card-hover-shadow-strong: 0 22px 52px rgba(15, 23, 42, .16);--card-top-accent-bg: linear-gradient(90deg, rgba(56, 189, 248, .88), rgba(37, 99, 235, .88));--shadow: rgba(2, 6, 23, .92);--shadow-sm: 0 12px 30px rgba(15, 23, 42, .18);--shadow-md: 0 20px 50px rgba(2, 6, 23, .24);--shadow-lg: 0 28px 80px rgba(2, 6, 23, .32);--shadow-dark: 0 28px 80px rgba(2, 6, 23, .38);--motion-fast: .18s;--motion-base: .28s;--motion-slow: .38s;--ease-standard: cubic-bezier(.22, 1, .36, 1);--code-toolbar-height: 1.72rem;--code-toolbar-top: .3rem;--code-text: #e2e8f0;--code-block-bg-top: rgba(15, 23, 42, .985);--code-block-bg-bottom: rgba(15, 23, 42, .955);--code-block-sheen: linear-gradient(180deg, rgba(255, 255, 255, .022), rgba(255, 255, 255, 0) 3.1rem);--code-block-border: rgba(71, 85, 105, .68);--code-block-shadow: 0 18px 42px rgba(2, 6, 23, .38);--code-toolbar-divider: rgba(71, 85, 105, .58);--code-toolbar-overlay: linear-gradient(180deg, rgba(15, 23, 42, .92), rgba(15, 23, 42, .76));--code-toolbar-shadow: inset 0 -1px 0 rgba(71, 85, 105, .58);--code-language-text: rgba(226, 232, 240, .58);--code-copy-border: rgba(148, 163, 184, .18);--code-copy-bg: rgba(15, 23, 42, .3);--code-copy-text: rgba(226, 232, 240, .72);--code-copy-hover-border: rgba(191, 219, 254, .22);--code-copy-hover-bg: rgba(30, 41, 59, .82);--code-copy-hover-text: rgba(248, 250, 252, .96);--code-copy-shadow: 0 10px 20px rgba(2, 6, 23, .26);--code-copy-shadow-hover: 0 14px 28px rgba(2, 6, 23, .34);--code-token-comment: #94a3b8;--code-token-keyword: #93c5fd;--code-token-string: #86efac;--code-token-number: #f9a8d4;--code-token-meta: #fcd34d;--code-token-punctuation: #cbd5e1;--code-token-deletion: #fca5a5;--radius-md: 18px;--radius-xl: 30px;--article-max-width: 100%;--article-measure: 100%}html[data-theme=light]{color-scheme:light;--bg: #f3f7fd;--bg-soft: #edf4ff;--bg-elevated: #ffffff;--bg-grid: rgba(148, 163, 184, .14);--surface: #ffffff;--surface-alt: rgba(248, 250, 252, .96);--surface-secondary: rgba(255, 255, 255, .88);--surface-muted: rgba(248, 250, 252, .92);--surface-border: rgba(148, 163, 184, .18);--surface-border-strong: rgba(96, 165, 250, .26);--line-soft: rgba(148, 163, 184, .18);--line-strong: rgba(148, 163, 184, .3);--text: #0f172a;--text-soft: #334155;--text-faint: #64748b;--text-strong: #020617;--text-inverse: #0f172a;--text-inverse-soft: rgba(15, 23, 42, .72);--text-inverse-faint: rgba(51, 65, 85, .72);--brand: #2563eb;--brand-strong: #1d4ed8;--brand-soft: rgba(37, 99, 235, .08);--accent: #2563eb;--accent-soft: rgba(37, 99, 235, .16);--success: #059669;--success-soft: rgba(5, 150, 105, .12);--warning: #7c3aed;--warning-soft: rgba(124, 58, 237, .12);--pricing-free: #0f766e;--pricing-free-soft: rgba(15, 118, 110, .12);--pricing-welfare: #7c3aed;--pricing-welfare-soft: rgba(124, 58, 237, .12);--pricing-paid: #b45309;--pricing-paid-soft: rgba(180, 83, 9, .12);--divider: rgba(148, 163, 184, .24);--header-bg: rgba(255, 255, 255, .82);--header-border: rgba(148, 163, 184, .18);--body-background: radial-gradient(circle at 14% 10%, rgba(37, 99, 235, .1), transparent 26%), radial-gradient(circle at 86% 12%, rgba(56, 189, 248, .08), transparent 22%), radial-gradient(circle at 52% 118%, rgba(59, 130, 246, .06), transparent 34%), linear-gradient(135deg, rgba(255, 255, 255, .5), transparent 24%, transparent 76%, rgba(37, 99, 235, .03)), linear-gradient(180deg, #f7fbff 0%, #eef5ff 42%, #e8f0fc 100%);--ambient-a-bg: radial-gradient(circle, rgba(37, 99, 235, .12) 0%, rgba(37, 99, 235, .04) 38%, transparent 72%);--ambient-b-bg: radial-gradient(circle, rgba(14, 165, 233, .12) 0%, rgba(14, 165, 233, .04) 42%, transparent 72%);--ambient-c-bg: radial-gradient(circle at 50% 50%, rgba(59, 130, 246, .12) 0%, rgba(59, 130, 246, .03) 46%, transparent 74%);--surface-gradient: linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 250, 252, .96));--surface-card-gradient: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .96));--panel-subtle-gradient: linear-gradient(180deg, rgba(255, 255, 255, .97), rgba(241, 245, 249, .95));--article-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .96));--search-dialog-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .96));--search-box-bg: rgba(255, 255, 255, .94);--search-result-bg: rgba(255, 255, 255, .9);--search-result-hover-bg: rgba(239, 246, 255, .96);--sidebar-group-bg: rgba(255, 255, 255, .78);--sidebar-group-shadow: inset 0 1px 0 rgba(255, 255, 255, .88);--sidebar-group-current-bg: linear-gradient(180deg, rgba(37, 99, 235, .08), rgba(255, 255, 255, .98));--sidebar-group-current-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 14px 32px rgba(148, 163, 184, .18);--sidebar-chip-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .7), 0 10px 22px rgba(148, 163, 184, .14);--sidebar-arrow-bg: rgba(255, 255, 255, .72);--back-to-top-bg: rgba(255, 255, 255, .92);--back-to-top-hover-bg: rgba(248, 250, 252, .98);--back-to-top-icon-bg: rgba(37, 99, 235, .12);--back-to-top-icon-color: #1d4ed8;--header-chip-bg: linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(248, 250, 252, .76));--header-chip-bg-hover: linear-gradient(180deg, rgba(255, 255, 255, 1), rgba(239, 246, 255, .95));--header-chip-border: rgba(148, 163, 184, .16);--header-chip-border-strong: rgba(59, 130, 246, .24);--header-chip-text: rgba(15, 23, 42, .72);--header-chip-text-strong: #0f172a;--header-chip-highlight: linear-gradient(90deg, transparent, rgba(59, 130, 246, .76) 20%, rgba(37, 99, 235, .88) 50%, rgba(59, 130, 246, .76) 80%, transparent);--header-chip-highlight-shadow: 0 0 14px rgba(96, 165, 250, .18);--header-chip-overlay: radial-gradient(circle at 50% 0%, rgba(191, 219, 254, .4), transparent 54%), linear-gradient(180deg, rgba(255, 255, 255, .32), transparent 70%);--header-primary-bg: linear-gradient(180deg, rgba(239, 246, 255, .98), rgba(219, 234, 254, .76));--header-primary-text: #1d4ed8;--header-portal-bg: linear-gradient(180deg, rgba(239, 246, 255, .88), rgba(219, 234, 254, .52));--header-portal-bg-hover: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(219, 234, 254, .72));--header-portal-border: rgba(96, 165, 250, .18);--header-portal-shadow: inset 0 1px 0 rgba(255, 255, 255, .98), 0 12px 24px -20px rgba(96, 165, 250, .22);--header-active-bg: linear-gradient(180deg, rgba(239, 246, 255, .96), rgba(219, 234, 254, .68));--header-active-text: #0f172a;--header-chip-shadow: inset 0 1px 0 rgba(255, 255, 255, .98), 0 12px 24px -18px rgba(148, 163, 184, .24), 0 6px 12px -14px rgba(148, 163, 184, .14);--header-chip-shadow-hover: inset 0 1px 0 rgba(255, 255, 255, 1), 0 22px 38px -18px rgba(148, 163, 184, .26), 0 10px 22px -16px rgba(96, 165, 250, .14);--header-active-shadow: inset 0 1px 0 rgba(255, 255, 255, .92), 0 24px 42px -18px rgba(96, 165, 250, .22), 0 12px 24px -16px rgba(191, 219, 254, .16);--header-trigger-icon-bg: rgba(37, 99, 235, .1);--header-trigger-icon-color: #1d4ed8;--header-shortcut-border: rgba(148, 163, 184, .18);--header-tool-shadow: inset 0 1px 0 rgba(255, 255, 255, .92);--brand-mark-border: rgba(96, 165, 250, .34);--brand-mark-text: #eff6ff;--brand-mark-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 12px 28px rgba(37, 99, 235, .18);--menu-toggle-line: #1d4ed8;--overlay-backdrop: rgba(15, 23, 42, .22);--mobile-sidebar-backdrop: rgba(15, 23, 42, .2);--hero-surface-bg: linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(239, 246, 255, .96));--hero-card-bg: rgba(255, 255, 255, .82);--portal-dark-surface-bg: linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(239, 246, 255, .96));--portal-dark-surface-soft-bg: linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(241, 245, 249, .94));--portal-card-overlay-bg: linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(248, 250, 252, .82));--portal-chip-bg: rgba(255, 255, 255, .72);--portal-link-bg: rgba(255, 255, 255, .76);--portal-link-hover-bg: rgba(239, 246, 255, .96);--eyebrow-bg: rgba(37, 99, 235, .1);--eyebrow-color: #1d4ed8;--inline-code-bg: rgba(148, 163, 184, .16);--tree-link-hover-bg: rgba(37, 99, 235, .08);--table-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .96));--selection-bg: rgba(37, 99, 235, .18);--selection-color: #0f172a;--interactive-soft-bg: rgba(37, 99, 235, .04);--interactive-soft-bg-hover: rgba(37, 99, 235, .08);--interactive-strong-bg: rgba(37, 99, 235, .12);--interactive-active-bg: rgba(37, 99, 235, .1);--interactive-border: rgba(37, 99, 235, .14);--interactive-border-strong: rgba(37, 99, 235, .22);--focus-ring-soft: 0 0 0 3px rgba(37, 99, 235, .1);--focus-ring: 0 0 0 3px rgba(37, 99, 235, .16);--card-hover-border: rgba(37, 99, 235, .16);--card-hover-shadow: 0 18px 42px rgba(148, 163, 184, .18);--card-hover-shadow-strong: 0 22px 52px rgba(148, 163, 184, .22);--card-top-accent-bg: linear-gradient(90deg, rgba(37, 99, 235, .82), rgba(59, 130, 246, .82));--shadow: rgba(148, 163, 184, .86);--shadow-sm: 0 12px 28px rgba(148, 163, 184, .12);--shadow-md: 0 20px 48px rgba(148, 163, 184, .16);--shadow-lg: 0 24px 64px rgba(148, 163, 184, .18);--shadow-dark: 0 24px 54px rgba(148, 163, 184, .2);--code-text: #0f172a;--code-block-bg-top: rgba(255, 255, 255, .98);--code-block-bg-bottom: rgba(248, 250, 252, .96);--code-block-sheen: linear-gradient(180deg, rgba(255, 255, 255, .72), rgba(248, 250, 252, .48) 3.1rem);--code-block-border: rgba(148, 163, 184, .22);--code-block-shadow: 0 12px 28px rgba(15, 23, 42, .08);--code-toolbar-divider: rgba(148, 163, 184, .14);--code-toolbar-overlay: linear-gradient(180deg, rgba(241, 245, 249, .96), rgba(248, 250, 252, .82));--code-toolbar-shadow: inset 0 -1px 0 rgba(148, 163, 184, .14);--code-language-text: rgba(30, 41, 59, .82);--code-copy-border: rgba(148, 163, 184, .2);--code-copy-bg: rgba(255, 255, 255, .92);--code-copy-text: rgba(30, 41, 59, .9);--code-copy-hover-border: rgba(96, 165, 250, .28);--code-copy-hover-bg: rgba(239, 246, 255, .98);--code-copy-hover-text: #0f172a;--code-copy-shadow: 0 8px 18px rgba(15, 23, 42, .08);--code-copy-shadow-hover: 0 12px 22px rgba(15, 23, 42, .12);--code-token-comment: #475569;--code-token-keyword: #1e40af;--code-token-string: #166534;--code-token-number: #9d174d;--code-token-meta: #92400e;--code-token-punctuation: #1f2937;--code-token-deletion: #b91c1c}html{scroll-behavior:smooth;view-transition-name:root}@media(prefers-reduced-motion:no-preference){::view-transition-old(root),::view-transition-new(root){animation-duration:var(--motion-slow);animation-timing-function:var(--ease-standard)}::view-transition-old(root){animation-name:theme-fade-out}::view-transition-new(root){animation-name:theme-fade-in}}@keyframes theme-fade-in{0%{opacity:0;filter:saturate(.94) brightness(.98)}to{opacity:1;filter:none}}@keyframes theme-fade-out{0%{opacity:1;filter:none}to{opacity:0;filter:saturate(1.04) brightness(1.02)}}html[data-theme-transition=running],html[data-theme-transition=running] *,html[data-theme-transition=running] *:before,html[data-theme-transition=running] *:after{transition:background-color var(--motion-base) var(--ease-standard),background var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),fill var(--motion-base) var(--ease-standard),stroke var(--motion-base) var(--ease-standard)!important}body{margin:0;min-width:320px;color:var(--text);background:var(--body-background);background-attachment:fixed;transition:background .28s ease,color .28s ease}a{color:var(--brand);text-decoration:none;transition:color .2s ease,border-color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease}a:hover{color:var(--brand-strong)}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{font:inherit}code,pre{font-family:SFMono-Regular,Cascadia Code,JetBrains Mono,Consolas,monospace}img{max-width:100%}#app{position:relative;min-height:100vh;overflow:clip;--ambient-pointer-x: 50vw;--ambient-pointer-y: 30vh;--ambient-shift-x: 0px;--ambient-shift-y: 0px;--ambient-shift-soft-x: 0px;--ambient-shift-soft-y: 0px;--ambient-shift-deep-x: 0px;--ambient-shift-deep-y: 0px}.app-shell{position:relative;min-height:100vh;isolation:isolate}.ambient{position:fixed;z-index:-3;pointer-events:none;opacity:.82}.ambient-a{top:0;left:-8rem;width:28rem;height:28rem;border-radius:50%;background:var(--ambient-a-bg);animation:ambient-float-a 16s ease-in-out infinite alternate}.ambient-b{top:10rem;right:-8rem;width:30rem;height:30rem;border-radius:50%;background:var(--ambient-b-bg);animation:ambient-float-b 19s ease-in-out infinite alternate}.ambient-c{bottom:-6rem;left:14%;width:42rem;height:18rem;border-radius:999px;background:var(--ambient-c-bg);animation:ambient-float-c 23s ease-in-out infinite alternate}.ambient-d{top:36%;right:18%;width:18rem;height:18rem;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--warning-soft) 72%,transparent) 0%,color-mix(in srgb,var(--brand-soft) 36%,transparent) 46%,transparent 72%);opacity:.48;filter:blur(10px);animation:ambient-float-d 18s ease-in-out infinite alternate}.ambient-grid{position:fixed;inset:0;z-index:-4;pointer-events:none;background-image:linear-gradient(var(--bg-grid) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 90%);mask-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent 90%);opacity:.44;animation:ambient-grid-drift 36s linear infinite}.ambient-rings,.ambient-noise,.ambient-interaction{position:fixed;inset:0;pointer-events:none}.ambient-rings{z-index:-5;background:repeating-radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--brand) 10%,transparent) 0 2px,transparent 2px 22px),repeating-radial-gradient(circle at 88% 24%,color-mix(in srgb,var(--warning) 8%,transparent) 0 2px,transparent 2px 24px),repeating-radial-gradient(circle at 24% 82%,color-mix(in srgb,var(--brand) 8%,transparent) 0 1.5px,transparent 1.5px 18px);-webkit-mask-image:radial-gradient(circle at center,rgba(0,0,0,.7),transparent 88%);mask-image:radial-gradient(circle at center,rgba(0,0,0,.7),transparent 88%);opacity:.26;animation:ambient-rings-drift 22s ease-in-out infinite alternate,ambient-rings-breathe 11s ease-in-out infinite alternate}.ambient-noise{z-index:-6;background:radial-gradient(circle at 16% 22%,rgba(255,255,255,.08) 0 1px,transparent 1.5px),radial-gradient(circle at 72% 18%,rgba(255,255,255,.06) 0 1px,transparent 1.5px),radial-gradient(circle at 82% 68%,rgba(255,255,255,.05) 0 1px,transparent 1.5px),radial-gradient(circle at 34% 74%,rgba(255,255,255,.04) 0 1px,transparent 1.5px);background-size:280px 280px,360px 360px,320px 320px,400px 400px;opacity:.27;animation:ambient-noise-shift 20s linear infinite,ambient-noise-breathe 10s ease-in-out infinite alternate}.ambient-interaction{z-index:-2;opacity:.52;background:radial-gradient(28rem circle at var(--ambient-pointer-x) var(--ambient-pointer-y),color-mix(in srgb,var(--brand-soft) 82%,rgba(255,255,255,.08)),transparent 60%),radial-gradient(19rem circle at calc(var(--ambient-pointer-x) + var(--ambient-shift-soft-x)) calc(var(--ambient-pointer-y) + var(--ambient-shift-soft-y)),color-mix(in srgb,var(--warning-soft) 72%,transparent),transparent 62%),radial-gradient(13rem circle at calc(var(--ambient-pointer-x) - var(--ambient-shift-deep-x)) calc(var(--ambient-pointer-y) - var(--ambient-shift-deep-y)),color-mix(in srgb,var(--brand-soft) 54%,rgba(255,255,255,.06)),transparent 64%);filter:blur(18px) saturate(1.08);transition:opacity var(--motion-base) var(--ease-standard),background var(--motion-base) var(--ease-standard)}.surface-panel,.surface-card,.panel,.breadcrumbs{position:relative;border:1px solid var(--surface-border);background:var(--surface-gradient);box-shadow:var(--shadow-md)}.surface-panel-strong{box-shadow:var(--shadow-lg)}.site-header,.surface-panel,.surface-card,.panel,.breadcrumbs,.hero,.portal-hero,.portal-section-shell,.portal-start-intro,.portal-story-intro,.portal-story-panel,.search-dialog,.back-to-top{transition:background var(--motion-base) var(--ease-standard),border-color var(--motion-base) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),color var(--motion-base) var(--ease-standard)}.ambient,.ambient-grid,.ambient-rings,.ambient-noise{transition:opacity var(--motion-base) var(--ease-standard),background var(--motion-base) var(--ease-standard)}@keyframes ambient-float-a{0%{transform:translateZ(0) scale(.97)}50%{transform:translate3d(1.25rem,.7rem,0) scale(1.01)}to{transform:translate3d(3.6rem,1.9rem,0) scale(1.06)}}@keyframes ambient-float-b{0%{transform:translateZ(0) scale(.97)}50%{transform:translate3d(-1rem,.8rem,0) scale(1.01)}to{transform:translate3d(-3rem,2rem,0) scale(1.07)}}@keyframes ambient-float-c{0%{transform:translateZ(0) scale(.98)}50%{transform:translate3d(1.2rem,-.6rem,0) scale(1.01)}to{transform:translate3d(3rem,-1.5rem,0) scale(1.05)}}@keyframes ambient-float-d{0%{transform:translateZ(0) scale(.92);opacity:.34}50%{transform:translate3d(-.8rem,.5rem,0) scale(.99);opacity:.42}to{transform:translate3d(-2.2rem,1.4rem,0) scale(1.1);opacity:.54}}@keyframes ambient-grid-drift{0%{background-position:0 0,0 0;opacity:.44}50%{opacity:.52}to{background-position:24px -18px,-24px 18px;opacity:.46}}@keyframes ambient-rings-drift{0%{transform:translateZ(0) scale(.99)}to{transform:translate3d(1.4rem,-1rem,0) scale(1.03)}}@keyframes ambient-rings-breathe{0%{opacity:.18}to{opacity:.3}}@keyframes ambient-noise-shift{0%{background-position:0 0,0 0,0 0,0 0}to{background-position:28px -18px,-22px 16px,20px 24px,-18px -20px}}@keyframes ambient-noise-breathe{0%{opacity:.24}to{opacity:.36}}.child-card,.pager-link,.plugin-card,.portal-entry-link,.plugin-doc-preview a,.known-routes a,.portal-start-card,.button,.search-result,.search-suggestion-chip,.outline-link,.tree-link{transition:transform var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),box-shadow var(--motion-base) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.child-card:hover,.pager-link:hover,.plugin-card:hover,.portal-entry-link:hover,.plugin-doc-preview a:hover,.known-routes a:hover,.portal-start-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-hover-shadow-strong)}.portal-overview-card,.portal-stat,.hero-meta-card{position:relative;overflow:hidden}.portal-overview-card:before,.portal-stat:before,.hero-meta-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:var(--card-top-accent-bg);opacity:.95;pointer-events:none}@media(prefers-reduced-motion:reduce){.ambient,.ambient-rings,.ambient-noise{animation:none!important}.ambient-interaction{opacity:.22}}.reading-progress{position:fixed;inset:0 0 auto;z-index:40;height:3px;background:#94a3b824;pointer-events:none}.reading-progress-bar{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,#38bdf8,#2563eb 55%,#7c3aed);box-shadow:0 0 18px #38bdf873}.back-to-top{position:fixed;right:1.25rem;bottom:1.25rem;z-index:32;display:inline-flex;align-items:center;gap:.5rem;min-height:2.9rem;padding:.72rem .95rem;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:var(--back-to-top-bg);color:var(--text-inverse);box-shadow:var(--shadow-dark);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,background-color .2s ease}.back-to-top[data-visible=true]{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--back-to-top-hover-bg)}.back-to-top-icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:999px;background:var(--back-to-top-icon-bg);color:var(--back-to-top-icon-color)}.search-layer{position:fixed;inset:0;z-index:60;display:grid;place-items:start center;padding:5.75rem 1rem 1rem;opacity:0;pointer-events:none;transition:opacity .2s ease}.search-layer[data-open=true]{opacity:1;pointer-events:auto}.search-backdrop{position:absolute;inset:0;border:0;background:var(--overlay-backdrop)}.search-dialog{position:relative;z-index:1;width:min(840px,100%);max-height:min(70vh,760px);padding:1rem;border:1px solid rgba(148,163,184,.18);border-radius:28px;background:var(--search-dialog-bg);box-shadow:0 28px 90px #0f172a42}.search-box{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.85rem .95rem;border:1px solid rgba(37,99,235,.14);border-radius:20px;background:var(--search-box-bg);box-shadow:inset 0 1px #fffc}.search-box-icon{color:var(--brand-strong);font-size:1rem;font-weight:700}.search-input{width:100%;padding:0;border:0;outline:none;background:transparent;color:var(--text);font-size:1rem;line-height:1.5}.search-input::placeholder{color:var(--text-faint)}.search-dismiss{min-height:2rem;padding:.32rem .62rem;border:1px solid var(--interactive-border);border-radius:999px;background:var(--interactive-soft-bg-hover);color:var(--brand-strong);font-size:.82rem;font-weight:700;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.search-dismiss:hover{border-color:var(--interactive-border-strong);background:var(--interactive-strong-bg);transform:translateY(-1px)}.search-helper{margin-top:.75rem;color:var(--text-faint);font-size:.84rem}.search-scope-switcher{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:.85rem}.search-scope-chip{display:inline-flex;align-items:center;justify-content:center;min-height:2.2rem;padding:.46rem .8rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:var(--surface-secondary);color:var(--text-soft);font-size:.82rem;font-weight:700}.search-scope-chip:hover{color:var(--brand-strong);border-color:#2563eb29;background:var(--interactive-soft-bg-hover)}.search-scope-chip.is-active{color:var(--brand-strong);border-color:var(--interactive-border-strong);background:linear-gradient(180deg,var(--interactive-strong-bg),var(--interactive-soft-bg-hover))}.search-results{overflow:auto;margin-top:.9rem;max-height:calc(min(70vh,760px) - 6.5rem)}.search-results-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem;padding:.2rem .1rem}.search-results-title,.search-empty-title{color:var(--text);font-size:1rem;font-weight:800}.search-results-meta,.search-empty-copy{margin:.18rem 0 0;color:var(--text-soft);line-height:1.7}.search-results-tip{flex:0 0 auto;padding:.4rem .68rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:var(--surface-secondary);color:var(--text-faint);font-size:.76rem;font-weight:700;letter-spacing:.04em}.search-result-list,.search-suggestion-list{display:grid;gap:.7rem}.search-result{display:grid;gap:.45rem;padding:.95rem 1rem;border:1px solid rgba(148,163,184,.16);border-radius:20px;background:var(--search-result-bg);color:var(--text);box-shadow:0 10px 24px #0f172a0d;transition:border-color .2s ease,background-color .2s ease,transform .2s ease,box-shadow .2s ease}.search-result:hover,.search-result.is-active{border-color:#2563eb2e;background:var(--search-result-hover-bg);transform:translateY(-1px)}.search-result.is-active{box-shadow:var(--focus-ring-soft),0 14px 28px #2563eb1f}.search-result-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.search-result-plugin{display:inline-flex;align-items:center;min-height:1.8rem;padding:.22rem .58rem;border-radius:999px;background:var(--interactive-active-bg);color:var(--brand-strong);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.search-result-path{color:var(--text-faint);font-size:.8rem}.search-result-title{font-size:1rem;font-weight:800;line-height:1.45}.search-result-snippet{margin:0;color:var(--text-soft);line-height:1.72}.search-result-title mark,.search-result-path mark,.search-result-snippet mark{padding:0 .18rem;border-radius:6px;background:#facc1542;color:inherit;box-shadow:inset 0 -1px #f59e0b38}.search-empty-state{display:grid;gap:.78rem;padding:.35rem .2rem .2rem}.search-summary-card{display:grid;gap:.22rem;padding:.95rem 1rem;border:1px solid rgba(148,163,184,.16);border-radius:18px;background:var(--surface-secondary)}.search-summary-card.is-empty{background:linear-gradient(180deg,#f8fafcfa,#fffffff0)}.search-summary-label{color:var(--text-faint);font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.search-summary-value{color:var(--text);font-size:1rem;line-height:1.4}.search-summary-meta{color:var(--text-soft);font-size:.86rem;line-height:1.6}.search-suggestion-list{grid-template-columns:repeat(auto-fit,minmax(160px,max-content))}.search-suggestion-chip{display:inline-flex;align-items:center;justify-content:center;min-height:2.35rem;padding:.58rem .82rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:var(--surface-secondary);color:var(--text-soft);font-weight:700;transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.search-suggestion-chip:hover,.search-suggestion-chip.is-active{color:var(--brand-strong);border-color:#2563eb29;background:var(--interactive-soft-bg-hover);transform:translateY(-1px)}.search-suggestion-chip.is-active{box-shadow:0 0 0 3px #2563eb1f}.search-scope-chip:focus-visible,.search-result:focus-visible,.search-suggestion-chip:focus-visible,.search-dismiss:focus-visible,.search-input:focus-visible{outline:none;box-shadow:0 0 0 3px #2563eb2e}.pager-link{display:flex;flex-direction:column;gap:.42rem;padding:1.05rem 1.15rem}.pager-link-next{text-align:right}.pager-label{color:var(--text-faint);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.pager-title{color:var(--text);font-size:1.02rem;font-weight:700}.empty-panel{color:var(--text-soft)}.not-found{position:relative;z-index:1;max-width:980px;margin:0 auto;padding:2.5rem 1rem 3rem}.not-found-panel{gap:1.1rem}.not-found-panel h1{margin:0;font-size:clamp(2rem,5vw,3rem);line-height:1.05}.not-found-panel p{margin:0;color:var(--text-soft);line-height:1.8}.not-found-links{display:flex;flex-wrap:wrap;gap:.75rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.74rem 1.05rem;border:1px solid rgba(148,163,184,.24);border-radius:999px;background:#fff;color:var(--text);font-size:.92rem;font-weight:650;box-shadow:0 10px 24px #0f172a14}.button:hover{transform:translateY(-1px)}.button.primary{border-color:#2563eb3d;background:linear-gradient(180deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 16px 32px #2563eb47}.button.secondary{background:var(--surface-secondary);color:var(--text)}.known-routes{display:grid;gap:.65rem}.known-routes a{display:block;padding:.82rem .95rem;border-radius:16px;background:var(--surface-secondary);color:var(--text-soft)}.known-routes a:hover{color:var(--brand-strong);background:var(--interactive-soft-bg-hover)}.sidebar-backdrop{display:none}::selection{background:var(--selection-bg);color:var(--selection-color)}.portal-main{position:relative;z-index:1;max-width:1440px;margin:0 auto;padding:1.5rem 1rem 2.5rem}.portal-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:1.2rem;padding:1.5rem;border-color:#60a5fa29;border-radius:36px;background:var(--portal-dark-surface-bg);box-shadow:var(--shadow-dark)}.portal-hero-copy h1{margin:1rem 0 .9rem;max-width:11ch;color:var(--text-inverse);font-size:clamp(3rem,7vw,5.2rem);line-height:.98}.portal-hero-copy p{margin:0;max-width:44rem;color:var(--text-inverse-soft);font-size:1.04rem;line-height:1.9}.portal-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.3rem}.portal-highlight{display:grid;gap:.35rem;min-height:6.2rem;padding:.9rem .95rem;border:1px solid rgba(148,163,184,.16);border-radius:20px;background:var(--portal-card-overlay-bg);color:var(--text-inverse-soft);box-shadow:inset 0 1px #ffffff14}.portal-highlight-title{color:var(--text-inverse);font-size:.92rem;font-weight:800;line-height:1.35}.portal-highlight-copy{color:var(--text-inverse-soft);font-size:.84rem;line-height:1.65}.portal-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:1.5rem}.portal-actions .button.secondary{border-color:#94a3b82e;background:var(--portal-chip-bg);color:var(--text-inverse);box-shadow:none}.portal-hero-copy,.portal-hero-side{min-width:0}.portal-hero-side{display:grid;gap:1rem}.portal-overview-card{display:grid;gap:.8rem;align-content:start;min-height:auto;padding:1.2rem;border:1px solid rgba(148,163,184,.16);border-radius:28px;background:var(--portal-card-overlay-bg);color:var(--text-inverse);box-shadow:inset 0 1px #ffffff14,var(--shadow-sm)}.portal-overview-label{color:var(--text-inverse-faint);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-overview-title{margin-top:.15rem;font-size:1.4rem;font-weight:750;line-height:1.2}.portal-entry-list{display:grid;gap:.72rem;margin-top:.35rem}.portal-entry-link{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;min-height:4.1rem;padding:.92rem 2.8rem .92rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:18px;background:var(--portal-link-bg);color:var(--text-inverse);font-weight:650;line-height:1.45}.portal-entry-copy{display:grid;gap:.24rem;min-width:0}.portal-entry-title{color:inherit;font-size:.98rem;font-weight:800;line-height:1.35}.portal-entry-desc{color:var(--text-inverse-soft);font-size:.82rem;line-height:1.55;text-wrap:pretty}.portal-entry-side{display:grid;justify-items:end;gap:.45rem;flex:0 0 auto}.portal-entry-meta,.portal-entry-status,.portal-entry-pricing{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:.24rem .58rem;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.06em;white-space:nowrap}.portal-entry-meta{border:1px solid rgba(148,163,184,.18);background:#ffffff1f;color:var(--text-inverse)}.portal-entry-pricing{border:1px solid rgba(148,163,184,.18);background:#ffffff17;color:var(--text-inverse-faint)}.portal-entry-pricing.is-free{border-color:#14b8a63d;background:#14b8a62e;color:#ccfbf1}.portal-entry-pricing.is-paid{border-color:#f59e0b3d;background:#f59e0b33;color:#fef3c7}.portal-entry-status{border:1px solid rgba(148,163,184,.18);background:#ffffff17;color:var(--text-inverse-faint)}.portal-entry-status.is-ready{border-color:#10b9813d;background:#10b98129;color:#d1fae5}.portal-entry-status.is-updated{border-color:#7c3aed3d;background:#7c3aed2e;color:#f3e8ff}.portal-entry-status.is-planned{border-color:#f973163d;background:#f973162e;color:#fed7aa}html[data-theme=light] .portal-entry-status.is-ready{color:var(--success)}html[data-theme=light] .portal-entry-status.is-updated{color:#7c3aed}html[data-theme=light] .portal-entry-status.is-planned{color:#ea580c}html[data-theme=light] .portal-entry-pricing.is-free{color:var(--pricing-free)}html[data-theme=light] .portal-entry-pricing.is-paid{color:var(--pricing-paid)}html[data-theme=light] .portal-filter-chip{background:#ffffffd1;color:var(--text-soft)}html[data-theme=light] .portal-sort-label{color:var(--text-faint)}html[data-theme=light] .plugin-highlight.is-featured{color:var(--brand-strong)}html[data-theme=light] .plugin-highlight.is-starter{color:var(--success)}html[data-theme=light] .portal-filter-chip:hover,html[data-theme=light] .portal-filter-chip.is-active{color:var(--brand-strong)}html[data-theme=light] .portal-filter-chip.is-active{border-color:#2563eb38;background:linear-gradient(180deg,#2563eb1f,#2563eb0f)}html[data-theme=light] .portal-filter-empty{background:#ffffffb3;color:var(--text-soft)}.portal-entry-link:after{content:"→";position:absolute;top:50%;right:1rem;color:var(--brand-strong);font-size:1rem;transform:translateY(-50%)}.portal-entry-link:hover{border-color:var(--card-hover-border);background:var(--portal-link-hover-bg);color:var(--text-inverse);transform:translateY(-2px)}.portal-overview-note{margin:-.05rem 0 0;color:var(--text-inverse-soft);font-size:.92rem;line-height:1.72}.portal-overview-card p{margin:.85rem 0 0;color:var(--text-inverse-soft);line-height:1.8}.portal-overview-list{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}.portal-overview-list span{display:inline-flex;align-items:center;min-height:2.1rem;padding:.42rem .72rem;border-radius:999px;background:var(--portal-card-overlay-bg);color:var(--text-inverse-soft);font-size:.84rem}.portal-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:1.35rem}.portal-stat-grid .portal-stat-value{color:var(--text-inverse)}.portal-stat{display:flex;flex-direction:column;gap:.35rem;min-height:8.5rem;padding:1rem;border-radius:24px;justify-content:flex-end}.portal-stat-value{font-size:clamp(1.8rem,4vw,2.35rem);font-weight:800;line-height:1}.portal-stat-label{color:var(--text-inverse-faint);font-size:.76rem;line-height:1.6}.portal-section{margin-top:1.2rem}.portal-section-shell{padding:clamp(1.25rem,1rem + .8vw,1.8rem);border:1px solid rgba(96,165,250,.14);border-radius:30px;background:var(--portal-dark-surface-soft-bg);box-shadow:var(--shadow-dark)}.portal-start-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:1rem}.portal-start-intro,.portal-start-card{padding:1.3rem;border-radius:28px}.portal-start-intro{border:1px solid rgba(96,165,250,.14);background:var(--portal-dark-surface-bg);box-shadow:var(--shadow-dark)}.portal-start-intro h2{margin:.55rem 0 .7rem;color:var(--text-inverse);font-size:clamp(1.9rem,4vw,2.7rem);line-height:1.08;letter-spacing:-.04em}.portal-start-intro p{margin:0;color:var(--text-inverse-soft);line-height:1.85}.portal-start-intro .section-title{color:var(--text-inverse-faint)}.portal-start-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.portal-start-card{display:flex;flex-direction:column;gap:.75rem}.portal-start-card:hover .portal-start-link{color:var(--brand)}.portal-start-step{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:999px;background:var(--interactive-active-bg);color:var(--brand-strong);font-size:.88rem;font-weight:800}.portal-start-card strong{color:var(--text);font-size:1.18rem;line-height:1.3}.portal-start-card p{margin:0;color:var(--text-soft);line-height:1.75}.portal-start-link{margin-top:auto;color:var(--brand-strong);font-size:.9rem;font-weight:700}.portal-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.portal-section-tools{display:grid;gap:.75rem;justify-items:end}.portal-tools-divider{width:100%;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--line-strong) 82%,transparent),transparent);opacity:.88}.portal-filter-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.portal-sort-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.6rem}.portal-sort-label{color:var(--text-inverse-faint);font-size:.78rem;font-weight:800;letter-spacing:.08em}.portal-filter-chip{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.2rem;padding:.46rem .82rem;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:#ffffff0f;color:var(--text-inverse-soft);font-size:.82rem;font-weight:700;transition:transform var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.portal-filter-chip:hover{color:var(--text-inverse);border-color:#60a5fa42;background:#ffffff1a}.portal-filter-chip.is-active{color:var(--text-inverse);border-color:#60a5fa4d;background:linear-gradient(180deg,#2563eb38,#2563eb1f);box-shadow:inset 0 1px #ffffff14,0 10px 24px #2563eb24}.portal-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;min-height:1.5rem;padding:0 .38rem;border-radius:999px;background:#ffffff1f;color:currentColor;font-size:.74rem;font-weight:800}.portal-section-head h2,.portal-story-intro h2{margin:.55rem 0 .7rem;color:var(--text-inverse);font-size:clamp(2rem,4vw,3rem);line-height:1.06}.portal-section-head p,.portal-story-intro p{margin:0;max-width:46rem;color:var(--text-inverse-soft);line-height:1.8}.portal-section-head .section-title,.portal-story-intro .section-title{color:var(--text-inverse-faint)}.plugin-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.portal-filter-empty{margin-top:1rem;padding:1rem 1.1rem;border:1px dashed rgba(148,163,184,.24);border-radius:18px;background:#ffffff0a;color:var(--text-inverse-soft);text-align:center}.plugin-card{position:relative;display:flex;flex-direction:column;gap:.95rem;overflow:hidden;padding:1.35rem;will-change:transform,opacity}.plugin-card.is-filter-entering,.plugin-card.is-filter-hiding{pointer-events:none}.plugin-card[hidden]{display:none}.plugin-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#38bdf8,#2563eb,#10b981)}.plugin-card.is-planned:before{background:var(--planned-gradient)}.plugin-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.plugin-card-heading{min-width:0}.plugin-status-row{display:flex;flex-wrap:wrap;gap:.55rem}.plugin-card h2{margin:.75rem 0 0;color:var(--text);font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.1;text-wrap:balance}.plugin-path{display:inline-flex;align-items:center;margin-top:.7rem;padding:.34rem .62rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:#2563eb0d;color:var(--text-faint);font-size:.82rem;font-weight:600;word-break:break-word}.plugin-status,.plugin-badge,.plugin-pill{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:2rem;padding:.42rem .78rem;border-radius:999px;font-size:.82rem;font-weight:700}.plugin-status{border:1px solid rgba(5,150,105,.14);color:var(--success);background:var(--success-soft)}.plugin-status:before{content:"";width:.46rem;height:.46rem;border-radius:999px;background:currentColor;box-shadow:0 0 0 3px #94a3b829}.plugin-status.is-updated{border-color:#7c3aed33;color:#7c3aed;background:#7c3aed24}.plugin-status.is-planned{border-color:#f9731638;color:#f97316;background:#f9731624}.plugin-badge,.plugin-pill{border:1px solid rgba(148,163,184,.18);background:var(--surface-secondary);color:var(--text-soft)}.plugin-pricing.is-free{border-color:#14b8a63d;background:var(--pricing-free-soft);color:var(--pricing-free)}.plugin-pricing.is-welfare{border-color:#a855f747;background:var(--pricing-welfare-soft);color:var(--pricing-welfare)}.plugin-pricing.is-paid{border-color:#f59e0b47;background:var(--pricing-paid-soft);color:var(--pricing-paid)}.plugin-highlight-row{display:flex;flex-wrap:wrap;gap:.55rem}.plugin-highlight{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:.28rem .72rem;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.06em}.plugin-highlight.is-featured{border:1px solid rgba(96,165,250,.24);background:#2563eb1a;color:var(--brand-strong)}.plugin-highlight.is-starter{border:1px solid rgba(16,185,129,.22);background:#10b9811f;color:var(--success)}.plugin-desc{margin:0;color:var(--text-soft);line-height:1.85}.plugin-pills{display:flex;flex-wrap:wrap;gap:.65rem}.plugin-doc-preview{display:grid;gap:.65rem}.plugin-doc-label{color:var(--text-faint);font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.plugin-doc-preview a,.plugin-doc-empty{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.82rem .95rem;border:1px solid rgba(148,163,184,.16);border-radius:16px;background:var(--surface-secondary);color:var(--text-soft);line-height:1.6;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}.plugin-doc-preview a:after{content:"→";flex:0 0 auto;color:var(--brand-strong)}.plugin-doc-preview a:hover{color:var(--brand-strong);border-color:#2563eb29;background:#2563eb0d;transform:translateY(-1px)}.plugin-links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:auto}.plugin-links .button{flex:1 1 10.5rem}.portal-story-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:1rem}.portal-story-intro,.portal-story-panel{padding:1.35rem;border-radius:30px}.portal-story-panel{border:1px solid rgba(148,163,184,.18);box-shadow:var(--shadow-md)}.portal-story-intro{border-color:#60a5fa24;background:var(--portal-dark-surface-bg);box-shadow:var(--shadow-dark)}.portal-story-panel{min-width:0}.hero{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:1.1rem;margin-bottom:1rem;padding:1.4rem;border-color:#60a5fa2e;border-radius:30px;background:var(--hero-surface-bg);box-shadow:var(--shadow-dark)}.hero-copy,.hero-meta,.article,.child-card,.pager-link,.sidebar-panel,.outline-panel,.not-found-panel,.portal-hero-copy,.portal-hero-side,.portal-story-intro,.portal-story-panel,.plugin-card,.portal-stat,.portal-overview-card{position:relative;z-index:1}.hero-copy,.hero-meta,.hero-meta-card{min-width:0}.eyebrow{display:inline-flex;align-items:center;gap:.4rem;min-height:2rem;padding:.4rem .8rem;border-radius:999px;background:var(--eyebrow-bg);color:var(--eyebrow-color);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hero h1,.portal-hero-copy h1,.portal-section-head h2,.portal-story-intro h2,.not-found-panel h1{letter-spacing:-.04em}.hero h1{margin:1rem 0 .8rem;color:var(--text-inverse);font-size:clamp(2.3rem,5vw,3.6rem);line-height:1.02}.hero p{margin:0;max-width:48rem;color:var(--text-inverse-soft);font-size:1rem;line-height:1.85}.hero-meta{display:grid;gap:.85rem}.hero-meta-card{padding:1rem 1.05rem;border:1px solid rgba(148,163,184,.14);border-radius:22px;background:var(--hero-card-bg)}.hero-meta-label{display:block;color:var(--text-inverse-faint);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hero-meta-value{display:block;margin-top:.45rem;color:var(--text-inverse);font-size:1rem;line-height:1.6;word-break:break-word;overflow-wrap:anywhere}.tree-list,.outline-list,.known-routes{list-style:none;padding:0;margin:0}.tree-list{display:grid;gap:.55rem}.tree-item>.tree-list{margin-top:.55rem;margin-left:.72rem;padding-left:.72rem;border-left:1px solid rgba(148,163,184,.08)}.tree-item>.tree-list>.tree-item+.tree-item{margin-top:.1rem}.tree-link{position:relative;display:block;padding:.8rem .95rem;border:1px solid transparent;border-radius:var(--radius-md);background:var(--surface-secondary);color:var(--text);line-height:1.5}.tree-link:hover{border-color:var(--interactive-border);background:var(--tree-link-hover-bg);transform:translateY(-1px);box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 8%,transparent)}.tree-item.is-active>.tree-link{border-color:var(--interactive-border-strong);background:linear-gradient(180deg,var(--interactive-soft-bg-hover),var(--interactive-soft-bg));color:var(--brand-strong);font-weight:700;box-shadow:inset 0 1px #ffffff73,0 6px 16px color-mix(in srgb,var(--brand) 5%,transparent)}.child-grid-section{margin-top:1.25rem;margin-bottom:0}.child-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:.9rem}.surface-card,.child-card,.pager-link{border:1px solid var(--surface-border);border-radius:24px;background:var(--surface-card-gradient);box-shadow:var(--shadow-sm)}.portal-overview-card.surface-card,.portal-stat.surface-card{border-color:#94a3b829;background:var(--portal-card-overlay-bg);color:var(--text-inverse);box-shadow:inset 0 1px #ffffff14,var(--shadow-sm)}.child-card{display:flex;flex-direction:column;gap:.55rem;padding:1.1rem 1.15rem}.child-card:hover,.pager-link:hover,.plugin-card:hover,.portal-start-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.child-card-kicker{color:var(--text-faint);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.child-card-title{color:var(--text);font-size:1.06rem;font-weight:700}.child-card-path{color:var(--text-soft);font-size:.88rem;word-break:break-word}@media(prefers-reduced-motion:no-preference){.brand-mark:after,.button:after,.plugin-card:after,.portal-stat:after,.child-card:after,.pager-link:after,.sidebar-plugin-chip:after,.search-result:before,.table-scroll:before,.markdown-body blockquote:after,.markdown-body pre:after{animation-duration:.8s}}.brand-mark,.button,.portal-stat,.plugin-card,.child-card,.pager-link,.sidebar-plugin-chip,.search-result,.table-scroll,.markdown-body blockquote,.markdown-body pre,.sidebar-group-toggle{position:relative;overflow:hidden}.brand-mark:after,.button:after,.portal-stat:after,.plugin-card:after,.child-card:after,.pager-link:after,.sidebar-plugin-chip:after,.search-result:before,.table-scroll:before,.markdown-body blockquote:after,.markdown-body pre:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .2s var(--ease-standard),transform .26s var(--ease-standard)}.brand-mark{box-shadow:0 0 0 1px color-mix(in srgb,var(--line-strong) 72%,transparent)}.brand-mark:after{inset:-45%;background:linear-gradient(120deg,transparent 24%,color-mix(in srgb,var(--accent) 18%,white 24%) 48%,transparent 72%);transform:translate(-150%)}.brand:hover .brand-mark,.brand:focus-visible .brand-mark{transform:translateY(-1px) scale(1.02);box-shadow:0 14px 30px color-mix(in srgb,var(--accent) 18%,transparent)}.brand:hover .brand-mark:after,.brand:focus-visible .brand-mark:after{opacity:1;animation:sheen-sweep .85s var(--ease-standard)}.header-link,.quick-link,.sidebar-plugin-chip,.portal-filter-chip,.search-result,.outline-link,.code-copy-button,.sidebar-group-toggle,.heading-anchor{transition:transform .16s var(--ease-standard),box-shadow .18s var(--ease-standard),background-color .18s var(--ease-standard),border-color .18s var(--ease-standard),color .18s var(--ease-standard),opacity .18s var(--ease-standard)}.header-link:hover,.quick-link:hover,.sidebar-plugin-chip:hover,.portal-filter-chip:hover,.outline-link:hover{transform:translateY(-1px)}.header-link:active,.quick-link:active,.sidebar-plugin-chip:active,.portal-filter-chip:active,.search-result:active,.button:active,.sidebar-group-toggle:active,.code-copy-button:active{transform:translateY(0) scale(.985)}.button{isolation:isolate}.button:after{inset:-30%;background:linear-gradient(115deg,transparent 32%,color-mix(in srgb,white 40%,transparent) 50%,transparent 68%);transform:translate(-150%)}.button:hover:after,.button:focus-visible:after{opacity:.9;animation:sheen-sweep .9s var(--ease-standard)}.button.primary:hover,.button.primary:focus-visible{transform:translateY(-2px);box-shadow:0 18px 34px color-mix(in srgb,var(--accent) 30%,transparent),0 0 0 1px color-mix(in srgb,white 18%,transparent) inset}.button.secondary:hover,.button.secondary:focus-visible{transform:translateY(-2px);box-shadow:0 14px 28px color-mix(in srgb,var(--shadow) 16%,transparent)}.portal-stat:after,.plugin-card:after,.child-card:after,.pager-link:after,.sidebar-plugin-chip:after,.search-result:before,.table-scroll:before,.markdown-body blockquote:after,.markdown-body pre:after{inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--accent-soft) 0%,transparent),color-mix(in srgb,var(--accent-soft) 54%,transparent));transform:translateY(10px)}.portal-stat:hover,.plugin-card:hover,.child-card:hover,.pager-link:hover,.search-result:hover{transform:translateY(-3px)}.portal-stat:hover:after,.plugin-card:hover:after,.child-card:hover:after,.pager-link:hover:after,.sidebar-plugin-chip:hover:after,.search-result:hover:before,.table-scroll:hover:before,.markdown-body blockquote:hover:after,.markdown-body pre:hover:after{opacity:1;transform:translateY(0)}.portal-stat:hover,.plugin-card:hover,.child-card:hover,.pager-link:hover{box-shadow:0 22px 40px color-mix(in srgb,var(--shadow) 20%,transparent);border-color:color-mix(in srgb,var(--line-strong) 86%,var(--accent-soft) 14%)}.portal-stat:hover .portal-stat-value,.plugin-card:hover h2,.child-card:hover .child-card-title{color:color-mix(in srgb,var(--text-strong) 88%,var(--accent) 12%)}.sidebar-plugin-chip:hover,.sidebar-plugin-chip:focus-visible{border-color:color-mix(in srgb,var(--accent-soft) 52%,var(--line-strong) 48%);box-shadow:0 14px 28px color-mix(in srgb,var(--shadow) 14%,transparent)}.search-result:hover,.search-result:focus-visible{border-color:color-mix(in srgb,var(--accent-soft) 58%,var(--line-strong) 42%);box-shadow:0 18px 30px color-mix(in srgb,var(--shadow) 14%,transparent)}.portal-filter-chip{transition:transform .14s var(--ease-standard),box-shadow .18s var(--ease-standard),background-color .18s var(--ease-standard),color .18s var(--ease-standard),border-color .18s var(--ease-standard)}.portal-filter-chip:hover,.portal-filter-chip:focus-visible{box-shadow:0 12px 24px color-mix(in srgb,var(--shadow) 12%,transparent)}.portal-filter-chip.is-active{box-shadow:0 14px 26px color-mix(in srgb,var(--accent) 18%,transparent),0 0 0 1px color-mix(in srgb,white 8%,transparent) inset}.sidebar-group{transition:border-color .18s var(--ease-standard),background-color .18s var(--ease-standard),box-shadow .18s var(--ease-standard)}.sidebar-group-toggle{transform-origin:center}.sidebar-group:hover,.sidebar-group:focus-within{border-color:color-mix(in srgb,var(--accent-soft) 56%,var(--line-strong) 44%);background:color-mix(in srgb,var(--sidebar-group-bg) 86%,var(--accent-soft) 14%);box-shadow:var(--sidebar-group-shadow)}.sidebar-group:hover,.sidebar-group:focus-within{border-color:color-mix(in srgb,var(--accent-soft) 70%,var(--line-strong) 30%);background:color-mix(in srgb,var(--sidebar-group-bg) 72%,var(--accent-soft) 28%);box-shadow:var(--sidebar-group-shadow)}.sidebar-group:hover .sidebar-group-toggle,.sidebar-group:hover .sidebar-group-body,.sidebar-group:hover .sidebar-group-body-inner,.sidebar-group:focus-within .sidebar-group-toggle,.sidebar-group:focus-within .sidebar-group-body,.sidebar-group:focus-within .sidebar-group-body-inner{background:transparent}.sidebar-group.is-current:hover,.sidebar-group.is-current:focus-within{border-color:var(--interactive-border-strong);background:var(--sidebar-group-current-bg);box-shadow:var(--sidebar-group-current-shadow)}.sidebar-group-toggle:hover,.sidebar-group-toggle:focus-visible{background:transparent}.sidebar-group:hover .sidebar-group-arrow,.sidebar-group:focus-within .sidebar-group-arrow,.sidebar-group-toggle:hover .sidebar-group-arrow,.sidebar-group-toggle:focus-visible .sidebar-group-arrow{transform:rotate(45deg) scale(1.04)}.sidebar-group.is-expanded .sidebar-group-toggle{box-shadow:none}.sidebar-group:hover .sidebar-group-arrow,.sidebar-group:focus-within .sidebar-group-arrow,.sidebar-group-toggle:hover .sidebar-group-arrow,.sidebar-group-toggle:focus-visible .sidebar-group-arrow{transform:rotate(45deg) scale(1.06)}.sidebar-group-body{transform-origin:top center;will-change:grid-template-rows,opacity}.sidebar-group-body-inner{will-change:transform}.markdown-body pre{position:relative;box-sizing:border-box;width:100%;max-width:100%;overflow-x:auto;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.3) transparent;margin:1rem 0 1.2rem;padding:2.72rem 1rem .94rem;border:1px solid var(--code-block-border);border-radius:20px;background:var(--code-block-sheen),linear-gradient(180deg,var(--code-block-bg-top),var(--code-block-bg-bottom));color:var(--code-text);box-shadow:inset 0 1px #ffffff05,var(--code-block-shadow)}.markdown-body pre:before{content:"";position:absolute;inset:0 0 auto;height:2.34rem;border-bottom:1px solid var(--code-toolbar-divider);background:var(--code-toolbar-overlay);box-shadow:var(--code-toolbar-shadow);pointer-events:none}.markdown-body pre:after{content:none}.markdown-body pre code{display:block;padding:0;background:transparent;color:inherit;font-size:.88rem;line-height:1.68;white-space:pre;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0}.code-language-badge{position:absolute;top:var(--code-toolbar-top);left:1rem;z-index:1;display:inline-flex;align-items:center;max-width:calc(100% - 4.8rem);min-height:var(--code-toolbar-height);padding:0;border:0;background:transparent;color:var(--code-language-text);font-size:.7rem;font-weight:600;line-height:1;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.code-copy-button{position:absolute;top:var(--code-toolbar-top);right:.7rem;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:var(--code-toolbar-height);min-width:var(--code-toolbar-height);height:var(--code-toolbar-height);padding:0;border:1px solid var(--code-copy-border);border-radius:8px;background:var(--code-copy-bg);color:var(--code-copy-text);font-size:0;line-height:1;white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard),border-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard)}.code-copy-button:before{content:"⧉";font-size:.82rem;line-height:1}.code-copy-button:hover,.code-copy-button:focus-visible{background:#1e293bb8;border-color:#bfdbfe38;color:#f8fafcf5;transform:translateY(-1px);box-shadow:0 6px 16px #0206172e}.code-copy-button[data-state=success]{border-color:#10b98147;background:#10b98124;color:#a7f3d0}.code-copy-button[data-state=success]:before{content:"✓"}.code-copy-button[data-state=error]{border-color:#f871714d;background:#f8717124;color:#fecaca}.code-copy-button[data-state=error]:before{content:"!"}.markdown-body pre::-webkit-scrollbar,.table-scroll::-webkit-scrollbar{height:10px}.markdown-body pre::-webkit-scrollbar-thumb,.table-scroll::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:#94a3b85c;background-clip:padding-box}.markdown-body pre::-webkit-scrollbar-track,.table-scroll::-webkit-scrollbar-track{background:transparent}.markdown-body pre .hljs-comment,.markdown-body pre .hljs-quote{color:var(--code-token-comment)}.markdown-body pre .hljs-keyword,.markdown-body pre .hljs-selector-tag,.markdown-body pre .hljs-name,.markdown-body pre .hljs-tag,.markdown-body pre .hljs-attr,.markdown-body pre .hljs-attribute,.markdown-body pre .hljs-template-tag,.markdown-body pre .hljs-doctag,.markdown-body pre .hljs-literal{color:var(--code-token-keyword)}.markdown-body pre .hljs-title,.markdown-body pre .hljs-title.class_,.markdown-body pre .hljs-title.class_.inherited__,.markdown-body pre .hljs-section,.markdown-body pre .hljs-string,.markdown-body pre .hljs-regexp,.markdown-body pre .hljs-link,.markdown-body pre .hljs-selector-attr,.markdown-body pre .hljs-selector-pseudo{color:var(--code-token-string)}.markdown-body pre .hljs-number,.markdown-body pre .hljs-bullet,.markdown-body pre .hljs-symbol,.markdown-body pre .hljs-variable,.markdown-body pre .hljs-template-variable,.markdown-body pre .hljs-addition{color:var(--code-token-number)}.markdown-body pre .hljs-meta,.markdown-body pre .hljs-meta .hljs-keyword,.markdown-body pre .hljs-type,.markdown-body pre .hljs-built_in,.markdown-body pre .hljs-builtin-name,.markdown-body pre .hljs-class .hljs-title,.markdown-body pre .hljs-function .hljs-title,.markdown-body pre .hljs-params,.markdown-body pre .hljs-property{color:var(--code-token-meta)}.markdown-body pre .hljs-operator,.markdown-body pre .hljs-punctuation,.markdown-body pre .hljs-subst{color:var(--code-token-punctuation)}.markdown-body pre .hljs-selector-id,.markdown-body pre .hljs-selector-class,.markdown-body pre .hljs-deletion{color:var(--code-token-deletion)}.table-scroll{overflow-x:auto;width:100%;margin:1rem 0;scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.36) transparent;border:1px solid rgba(148,163,184,.18);border-radius:20px;background:var(--table-bg);box-shadow:0 14px 30px #0f172a0f}.table-scroll table{margin:0;min-width:680px}.markdown-body table.is-parameter-table tbody td:first-child,.markdown-body table.is-parameter-table thead th:first-child{font-weight:800;color:var(--text-strong)}.markdown-body table.is-parameter-table tbody td:nth-child(2){white-space:nowrap;color:var(--text-soft)}.markdown-body table{width:100%;border-collapse:collapse;overflow:hidden;border:0;border-radius:20px;background:transparent}.markdown-body th,.markdown-body td{padding:.94rem 1rem;border-bottom:1px solid rgba(148,163,184,.16);text-align:left;vertical-align:top}.markdown-body thead th{white-space:nowrap;background:linear-gradient(180deg,#0f172a0f,#0f172a08);color:var(--text);font-size:.92rem;font-weight:700}.markdown-body tbody tr{transition:background-color .2s ease}.markdown-body tbody tr:nth-child(2n){background:#0f172a05}.markdown-body table.is-parameter-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--interactive-soft-bg) 56%,transparent)}.markdown-body tbody tr:hover{background:#2563eb0d}.markdown-body pre:hover,.table-scroll:hover{border-color:#60a5fa38;box-shadow:0 22px 48px #0f172a2e}.markdown-body blockquote:hover{border-color:#2563eb38;background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 9%,transparent),color-mix(in srgb,var(--brand) 4%,transparent))}.markdown-body tbody tr:last-child td{border-bottom:0}.markdown-body hr{border:0;height:1px;margin:2rem 0;background:linear-gradient(90deg,transparent,rgba(148,163,184,.36),transparent)}.article{box-sizing:border-box;width:min(100%,1080px);max-width:100%;min-width:0;margin-left:auto;margin-right:auto;padding:clamp(1.25rem,1rem + .8vw,1.85rem)}.markdown-body{font-size:1.02rem;line-height:1.92;text-wrap:pretty}.markdown-body>p,.markdown-body>ul,.markdown-body>ol,.markdown-body>blockquote{max-width:100%}.markdown-body>p{color:var(--text)}.markdown-body>p:first-of-type{color:var(--text-soft);font-size:1.06rem}.markdown-body a{text-decoration:underline;text-decoration-color:#2563eb38;text-decoration-thickness:.08em;text-underline-offset:.2em}.markdown-body a:hover{text-decoration-color:currentColor}.markdown-body strong{color:var(--text);font-weight:800}.markdown-body h2{position:relative;margin-top:2.6rem;padding-bottom:.8rem;letter-spacing:-.03em}.markdown-body h2:after{content:"";position:absolute;left:0;bottom:-1px;width:3.25rem;height:3px;border-radius:999px;background:linear-gradient(90deg,#38bdf8,#2563eb)}.markdown-body h3{margin-top:1.95rem;letter-spacing:-.02em}.markdown-body ul,.markdown-body ol{display:grid;gap:.42rem;padding-left:1.35rem}.markdown-body li{padding-left:.14rem}.markdown-body li::marker{color:var(--brand-strong);font-weight:700}.markdown-body blockquote{position:relative;overflow:hidden;padding:1.05rem 1.15rem 1.05rem 1.2rem;border-radius:0 20px 20px 0;background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 7%,transparent),color-mix(in srgb,var(--brand) 3.5%,transparent))}.markdown-body blockquote:before{content:"“";position:absolute;top:.2rem;right:.78rem;color:color-mix(in srgb,var(--brand) 16%,transparent);font-size:3rem;font-weight:800;line-height:1;pointer-events:none}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body blockquote p strong:first-child:last-child{display:inline-flex;align-items:center;min-height:1.7rem;padding:.12rem .52rem;border-radius:999px;background:color-mix(in srgb,var(--brand-soft) 72%,transparent);color:var(--brand-strong);font-size:.76rem;letter-spacing:.04em}.article-origin-section{margin-top:2.75rem}.article-origin-section .heading-with-anchor{margin-top:0}.article-origin-card{position:relative;display:grid;gap:.95rem;margin-top:1.15rem;padding:1.25rem 1.25rem 1.35rem;border:1px solid color-mix(in srgb,var(--brand) 18%,var(--surface-border));border-radius:26px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--brand-soft) 22%,transparent),transparent 36%),linear-gradient(180deg,color-mix(in srgb,var(--brand) 5%,var(--surface)),color-mix(in srgb,var(--brand) 1.5%,var(--surface)));box-shadow:0 20px 38px color-mix(in srgb,var(--shadow) 10%,transparent);overflow:hidden}.article-origin-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:999px;background:linear-gradient(180deg,#38bdf8,#2563eb 72%,transparent);opacity:.92}.article-origin-card:after{content:"";position:absolute;inset:auto -8% -42% auto;width:15rem;height:15rem;border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 10%,transparent),transparent 68%);pointer-events:none}.article-origin-card>*{position:relative;z-index:1;margin:0}.article-origin-card>p,.article-origin-card>ul,.article-origin-card>ol,.article-origin-card>blockquote{max-width:72ch}.article-origin-card>p+p,.article-origin-card>p+ul,.article-origin-card>ul+p,.article-origin-card>blockquote+p{margin-top:.2rem}.article-origin-lead{font-size:1.06rem;line-height:1.96;color:color-mix(in srgb,var(--text) 92%,var(--brand))}.article-origin-tail{padding-top:.9rem;border-top:1px solid color-mix(in srgb,var(--brand) 12%,var(--surface-border));color:var(--text-soft)}.article-origin-card code{background:color-mix(in srgb,var(--brand-soft) 60%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand) 10%,transparent) inset}.markdown-body thead th{position:sticky;top:0;z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.markdown-body td code,.markdown-body th code,.markdown-body li code,.markdown-body p code{font-weight:700}.outline-panel{gap:.8rem;border-color:#60a5fa24}.outline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.outline-subtitle{margin-top:.35rem;color:var(--text-faint);font-size:.84rem;line-height:1.6}.outline-count{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:1.8rem;padding:.32rem .56rem;border-radius:999px;background:var(--interactive-soft-bg-hover);color:var(--brand-strong);font-size:.78rem;font-weight:800;line-height:1;white-space:nowrap}.outline-list{display:grid;gap:.45rem}.outline-link{position:relative;display:block;padding:.66rem .78rem .66rem 1rem;border:1px solid transparent;border-radius:14px;color:var(--text-soft);background:var(--surface-secondary);line-height:1.5}.outline-link:before{content:"";position:absolute;left:.42rem;top:50%;width:4px;height:.95rem;border-radius:999px;background:transparent;transform:translateY(-50%)}.outline-link:hover{color:var(--brand-strong);border-color:var(--interactive-border);background:var(--interactive-soft-bg-hover)}.outline-link.is-active{color:var(--brand-strong);border-color:var(--interactive-border-strong);background:var(--interactive-active-bg);box-shadow:inset 0 1px #ffffffa6;font-weight:700}.outline-link.is-active:before{background:var(--accent-gradient)}.outline-item.level-3{padding-left:.85rem}.pager{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.heading-with-anchor{scroll-margin-top:120px}.heading-anchor{opacity:0;transform:translate(-4px)}.heading-with-anchor:hover .heading-anchor,.heading-with-anchor:focus-within .heading-anchor{opacity:1;transform:translate(0)}.code-copy-button{box-shadow:var(--code-copy-shadow)}.code-copy-button:hover,.code-copy-button:focus-visible{transform:translateY(-1px);box-shadow:var(--code-copy-shadow-hover)}.code-copy-button[data-state=success],.code-copy-button[data-state=error]{animation:status-pop .22s var(--ease-standard)}.markdown-body blockquote,.markdown-body pre,.table-scroll{transition:border-color .18s var(--ease-standard),box-shadow .2s var(--ease-standard),background-color .18s var(--ease-standard),transform .18s var(--ease-standard)}.markdown-body blockquote:hover,.markdown-body pre:hover,.table-scroll:hover{border-color:color-mix(in srgb,var(--line-strong) 82%,var(--accent-soft) 18%);box-shadow:0 18px 34px color-mix(in srgb,var(--shadow) 12%,transparent)}.outline-link{transition:transform .16s var(--ease-standard),background-color .18s var(--ease-standard),color .18s var(--ease-standard),border-color .18s var(--ease-standard),box-shadow .18s var(--ease-standard)}.outline-link.is-active{box-shadow:0 10px 22px color-mix(in srgb,var(--accent) 14%,transparent)}.site-header{position:sticky;top:1rem;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(1440px,calc(100% - 2rem));margin:1rem auto 0;padding:.95rem 1rem;border:1px solid var(--header-border);border-radius:24px;background:var(--header-bg);box-shadow:var(--shadow-dark)}.header-main{display:flex;align-items:center;gap:.9rem;min-width:0}.brand-shell{position:relative;display:inline-flex;align-items:center}.brand{display:inline-flex;align-items:center;gap:.9rem;min-width:0;color:var(--text-inverse)}.brand:hover{transform:translateY(-1px);color:var(--text-inverse)}.brand-author-tip{position:absolute;top:calc(100% + .55rem);left:0;z-index:12;display:inline-flex;align-items:center;gap:.6rem;min-height:2rem;padding:.46rem .76rem;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:color-mix(in srgb,var(--header-bg) 92%,transparent);color:var(--text-inverse);box-shadow:0 14px 30px #02061738;font-size:.76rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;cursor:default;opacity:0;visibility:hidden;pointer-events:auto;transform:translateY(-6px) scale(.985);transition:opacity .18s ease,transform .24s ease,visibility .18s ease}.brand-author-tip-copy{user-select:text;-webkit-user-select:text;cursor:text;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .2s ease}.brand-author-copy{position:relative;display:inline-flex;align-items:center;gap:.34rem;flex:0 0 auto;min-height:1.85rem;padding:.28rem .62rem;border:1px solid rgba(148,163,184,.18);border-radius:999px;background:linear-gradient(180deg,#ffffff24,#ffffff14);color:var(--text-inverse);box-shadow:0 8px 18px #02061724;font-size:.72rem;font-weight:700;cursor:pointer;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease}.brand-author-copy-icon{font-size:.82rem;line-height:1;opacity:.88;transform:translateY(-.5px);transition:transform .18s ease,opacity .18s ease}.brand-author-copy:hover,.brand-author-copy:focus-visible{border-color:#93c5fd4d;background:linear-gradient(180deg,#fff3,#ffffff1f);box-shadow:0 12px 22px #2563eb2e;transform:translateY(-1px)}.brand-author-copy:focus-visible{outline:none}.brand-author-copy:active{transform:translateY(0) scale(.98);box-shadow:0 6px 14px #02061729}.brand-author-copy:focus-visible:after{content:"";position:absolute;inset:-3px;border-radius:inherit;box-shadow:0 0 0 2px #60a5fa3d}.brand-author-copy[data-state=success]{border-color:#10b98147;background:linear-gradient(180deg,#10b9813d,#10b98129);box-shadow:0 10px 20px #10b9812e}.brand-author-copy[data-state=error]{border-color:#f8717147;background:linear-gradient(180deg,#f8717138,#f8717124);box-shadow:0 10px 20px #f8717124}.brand-author-copy[data-state=success],.brand-author-copy[data-state=error]{opacity:1;transform:translateY(0)}.brand-author-copy[data-state=success] .brand-author-copy-icon,.brand-author-copy[data-state=error] .brand-author-copy-icon{opacity:1;transform:scale(1.08)}.brand-author-tip[data-copy-feedback=success]{animation:brand-author-tip-success .72s cubic-bezier(.22,1,.36,1)}.brand-author-tip[data-copy-feedback=error]{animation:brand-author-tip-error .6s cubic-bezier(.22,1,.36,1)}.brand-author-tip[data-copy-feedback=success] .brand-author-copy,.brand-author-tip[data-copy-feedback=error] .brand-author-copy{animation:brand-author-copy-burst .48s cubic-bezier(.22,1,.36,1)}.brand-author-tip[data-copy-feedback=success] .brand-author-copy:after,.brand-author-tip[data-copy-feedback=error] .brand-author-copy:after{content:"";position:absolute;inset:-4px;border-radius:inherit;pointer-events:none;animation:brand-author-copy-ring .56s cubic-bezier(.22,1,.36,1)}.brand-author-tip[data-copy-feedback=success] .brand-author-copy:after{box-shadow:0 0 #10b98161}.brand-author-tip[data-copy-feedback=error] .brand-author-copy:after{box-shadow:0 0 #f8717152}.brand-author-tip[data-copy-feedback=success]:after{opacity:.96}.brand-author-tip[data-copy-feedback=error]:after{opacity:.9;background:radial-gradient(circle at 20% 50%,rgba(248,113,113,.18),transparent 58%),radial-gradient(circle at 80% 50%,rgba(251,191,36,.16),transparent 62%)}.brand-author-tip:before{content:"";position:absolute;left:1rem;bottom:calc(100% - .34rem);width:.72rem;height:.72rem;border-left:1px solid rgba(148,163,184,.18);border-top:1px solid rgba(148,163,184,.18);background:color-mix(in srgb,var(--header-bg) 92%,transparent);transform:rotate(45deg)}.brand-author-tip:after{content:"";position:absolute;inset:-.3rem -.22rem;z-index:-1;border-radius:inherit;background:radial-gradient(circle at 20% 50%,color-mix(in srgb,var(--brand-soft) 86%,transparent),transparent 58%),radial-gradient(circle at 80% 50%,color-mix(in srgb,var(--warning-soft) 72%,transparent),transparent 62%);opacity:0;filter:blur(10px);transition:opacity .26s ease .08s}.brand-shell:hover .brand-author-tip,.brand-shell:focus-within .brand-author-tip{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.brand-shell:hover .brand-author-tip-copy,.brand-shell:focus-within .brand-author-tip-copy,.brand-shell:hover .brand-author-copy,.brand-shell:focus-within .brand-author-copy{opacity:1;transform:translateY(0)}.brand-shell:hover .brand-author-tip-copy,.brand-shell:focus-within .brand-author-tip-copy{transition-delay:.03s}.brand-shell:hover .brand-author-copy,.brand-shell:focus-within .brand-author-copy{transition-delay:.06s}.brand-shell:hover .brand-author-tip:after,.brand-shell:focus-within .brand-author-tip:after{opacity:.8}@keyframes brand-author-tip-success{0%{transform:translateY(0) scale(1);box-shadow:0 14px 30px #02061738}35%{transform:translateY(-1px) scale(1.018);box-shadow:0 18px 34px #10b98138}to{transform:translateY(0) scale(1);box-shadow:0 14px 30px #02061738}}@keyframes brand-author-tip-error{0%,to{transform:translateY(0) translate(0) scale(1)}25%{transform:translateY(0) translate(-2px) scale(1.01)}60%{transform:translateY(0) translate(2px) scale(1.01)}}@keyframes brand-author-copy-burst{0%{transform:translateY(0) scale(1)}45%{transform:translateY(-1px) scale(1.1)}to{transform:translateY(0) scale(1)}}@keyframes brand-author-copy-ring{0%{opacity:.55;transform:scale(.94)}to{opacity:0;transform:scale(1.16)}}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:2.85rem;height:2.85rem;border-radius:16px;border:1px solid var(--brand-mark-border);background:var(--brand-mark-bg);color:var(--brand-mark-text);box-shadow:var(--brand-mark-shadow);font-size:.98rem;font-weight:800;letter-spacing:.08em}.brand-copy{display:flex;flex-direction:column;min-width:0}.brand-copy strong{font-size:1rem;font-weight:700;letter-spacing:.01em}.brand-copy small{color:var(--text-inverse-faint);font-size:.78rem;line-height:1.4}.header-nav-shell{display:flex;flex:1 1 34rem;align-items:center;gap:.65rem;min-width:0;margin-left:auto}.header-nav-shell.is-portal:not(.is-engaged) .header-nav{opacity:.72}.header-nav-shell.is-portal:not(.is-engaged) .header-nav-indicator{opacity:.58}.header-nav-shell.is-portal:not(.is-engaged) .quick-link:not(.is-active):not(.is-centered){opacity:calc(.24 + (1 - var(--carousel-distance)) * .24);filter:saturate(calc(.78 + (1 - var(--carousel-distance)) * .16)) brightness(calc(.88 + (1 - var(--carousel-distance)) * .12))}.header-nav{position:relative;flex:1 1 28rem;min-width:0;overflow:hidden;transition:opacity .24s ease}.header-link-home{--carousel-distance: 0;--carousel-offset: 0;flex:0 0 auto;white-space:nowrap;opacity:1;filter:none;transform:none}.header-nav-step{position:absolute;top:.08rem;bottom:.08rem;z-index:6;display:inline-flex;align-items:center;width:clamp(6.2rem,10vw,8rem);padding:0;border:0;background:transparent;color:transparent;font-size:1rem;line-height:1;opacity:1;box-shadow:none;transition:transform .18s ease}.header-nav-step.is-prev{left:0;justify-content:flex-start;padding-left:.42rem}.header-nav-step.is-next{right:0;justify-content:flex-end;padding-right:.42rem}.header-nav-step:before{content:"";position:absolute;inset:-10% -16%;border-radius:999px;background:radial-gradient(circle at var(--header-step-pointer-x, 50%) var(--header-step-pointer-y, 50%),rgba(255,255,255,.72),rgba(191,219,254,.56) 12%,rgba(96,165,250,.18) 28%,transparent 52%),radial-gradient(ellipse at var(--header-step-pointer-x, 50%) calc(var(--header-step-pointer-y, 50%) + 6%),rgba(219,234,254,.34),transparent 42%);opacity:0;filter:blur(10px) saturate(1.24);transform:scale(.98);transition:opacity .22s ease,transform .22s ease;pointer-events:none;animation:header-step-frost-drift 6s ease-in-out infinite alternate}.header-nav-step:after{content:"";position:absolute;inset:8%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 34%,transparent 66%,rgba(255,255,255,.06)),linear-gradient(105deg,transparent 18%,rgba(255,255,255,.24) 36%,rgba(191,219,254,.18) 50%,transparent 72%),radial-gradient(circle at 50% 50%,rgba(219,234,254,.22),transparent 58%);opacity:.2;filter:blur(6px) saturate(1.14);transform:scale(1);transition:opacity .22s ease,transform .22s ease;pointer-events:none;animation:header-step-frost-flicker 3.4s ease-in-out infinite}.header-nav-step>span{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:1.2rem;height:1.2rem;border-radius:999px;background:transparent;color:#e2e8f02e;text-shadow:0 0 12px rgba(191,219,254,.28);transition:opacity .22s ease,transform .22s ease,color .22s ease}.header-nav-step:hover:before,.header-nav-step:focus-visible:before,.header-nav-shell.is-engaged .header-nav-step:before{opacity:1;transform:scale(1.01)}.header-nav-step:hover:after,.header-nav-step:focus-visible:after,.header-nav-shell.is-engaged .header-nav-step:after{opacity:1;transform:scale(1.02)}.header-nav-step:hover>span,.header-nav-step:focus-visible>span,.header-nav-shell.is-engaged .header-nav-step>span{color:#ffffff85;transform:scale(1.03)}.header-nav-step:active{transform:scale(.985)}.header-nav-step:active:before{transform:scale(.98)}.header-nav-step:active:after{transform:scale(.98)}.header-nav-step:active>span{transform:scale(.95)}.header-nav-shell.is-portal:not(.is-engaged) .header-nav-step:before{opacity:0}.header-nav-shell.is-portal:not(.is-engaged) .header-nav-step:after{opacity:.28}.header-nav-shell.is-portal:not(.is-engaged) .header-nav-step>span{color:#bfdbfe29}.header-nav:before,.header-nav:after{content:"";position:absolute;top:0;bottom:0;z-index:3;width:clamp(6rem,9.6vw,7.4rem);pointer-events:none;-webkit-backdrop-filter:blur(18px) saturate(1.16);backdrop-filter:blur(18px) saturate(1.16)}.header-nav:before{left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--header-bg) 97%,transparent),transparent 82%)}.header-nav:after{right:0;background:linear-gradient(270deg,color-mix(in srgb,var(--header-bg) 97%,transparent),transparent 82%)}.header-nav-indicator{position:absolute;top:.08rem;bottom:.08rem;left:50%;z-index:1;width:clamp(7.4rem,14vw,10.8rem);transform:translate(-50%);border:1px solid color-mix(in srgb,var(--header-chip-border-strong) 82%,transparent);border-radius:999px;background:linear-gradient(180deg,color-mix(in srgb,var(--header-chip-bg-hover) 90%,transparent),color-mix(in srgb,var(--header-chip-bg) 76%,transparent));box-shadow:inset 0 1px #ffffff1f,inset 0 -8px 18px #0f172a14,0 0 0 1px #ffffff08,0 12px 30px -18px #2563eb47;pointer-events:none;overflow:hidden;transition:opacity .24s ease,box-shadow .24s ease}.header-nav-indicator:before,.header-nav-indicator:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.header-nav-indicator:before{background:linear-gradient(180deg,rgba(255,255,255,.16),transparent 42%,transparent 58%,rgba(255,255,255,.06));opacity:.95}.header-nav-indicator:after{inset:10% 12%;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--brand-soft) 72%,transparent),transparent 72%);filter:blur(16px);opacity:.9}.header-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:0;min-width:0;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x;padding:.12rem var(--header-carousel-gutter-end, 6rem) .24rem var(--header-carousel-gutter-start, 6rem);scrollbar-width:none;scroll-snap-type:x mandatory;scroll-behavior:auto;perspective:1100px;transform-style:preserve-3d}.header-actions::-webkit-scrollbar{display:none}.header-carousel-group{display:flex;flex:0 0 auto;align-items:center;gap:.65rem}.header-tools{display:inline-flex;flex:0 0 auto;align-items:center;gap:.7rem}.header-link,.quick-link{--carousel-distance: 1;--carousel-offset: 0;position:relative;z-index:0;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:2.65rem;padding:.72rem 1rem;border:1px solid var(--header-chip-border);border-radius:999px;background:var(--header-chip-bg);color:var(--header-chip-text);font-size:.92rem;font-weight:600;letter-spacing:.01em;overflow:hidden;isolation:isolate;transform-style:preserve-3d;opacity:calc(.42 + (1 - var(--carousel-distance)) * .5);filter:saturate(calc(.88 + (1 - var(--carousel-distance)) * .22)) brightness(calc(.9 + (1 - var(--carousel-distance)) * .1));box-shadow:var(--header-chip-shadow);scroll-snap-align:center;scroll-snap-stop:always;transform:perspective(1100px) translateY(calc(var(--carousel-distance) * 2px)) translateZ(calc((1 - var(--carousel-distance)) * 18px)) rotateY(calc(var(--carousel-offset) * -26deg)) rotateX(calc(var(--carousel-distance) * 7deg)) scale(calc(.84 + (1 - var(--carousel-distance)) * .16));transition:transform .24s ease,opacity .24s ease,filter .24s ease,border-color .22s ease,background .22s ease,color .22s ease,box-shadow .22s ease}.header-link.is-wheel-landed,.quick-link.is-wheel-landed{animation:header-wheel-landed .38s cubic-bezier(.22,1,.36,1)}.header-link:before,.quick-link:before{content:"";position:absolute;left:20%;right:20%;bottom:.42rem;height:1.5px;border-radius:999px;background:var(--header-chip-highlight);box-shadow:var(--header-chip-highlight-shadow);transform:scaleX(.72);transform-origin:center;transition:transform .22s ease,opacity .22s ease;opacity:0}.header-link:after,.quick-link:after{content:"";position:absolute;inset:1px;border-radius:inherit;background:var(--header-chip-overlay);opacity:0;transition:opacity .22s ease;pointer-events:none}.header-link:hover,.quick-link:hover,.header-link.is-centered,.quick-link.is-centered{z-index:2;color:var(--header-chip-text-strong);border-color:var(--header-chip-border-strong);background:var(--header-chip-bg-hover);opacity:.98;transform:perspective(1100px) translateY(-2px) translateZ(calc(20px + (1 - var(--carousel-distance)) * 8px)) rotateY(calc(var(--carousel-offset) * -18deg)) rotateX(calc(var(--carousel-distance) * 4deg)) scale(calc(.96 + (1 - var(--carousel-distance)) * .08));filter:saturate(1.06) brightness(1.02)!important;box-shadow:var(--header-chip-shadow-hover)}.header-link:hover:after,.quick-link:hover:after,.header-link.is-centered:after,.quick-link.is-centered:after,.header-link.is-active:after,.quick-link.is-active:after,.header-link.is-wheel-landed:after,.quick-link.is-wheel-landed:after{opacity:1}.header-link:hover:before,.quick-link:hover:before,.header-link.is-centered:before,.quick-link.is-centered:before,.header-link.is-active:before,.quick-link.is-active:before{transform:scaleX(1);opacity:.94}.header-link:active,.quick-link:active{transform:perspective(1100px) translateY(0) translateZ(10px) rotateY(calc(var(--carousel-offset) * -12deg)) rotateX(calc(var(--carousel-distance) * 2deg)) scale(.97)}.header-link-primary{border-color:var(--header-chip-border);background:var(--header-chip-bg);color:var(--header-primary-text);box-shadow:var(--header-chip-shadow)}.header-link-primary:not(.is-active):before{opacity:0;transform:scaleX(.72)}.header-link-portal:not(.is-active){border-color:var(--header-portal-border);background:var(--header-portal-bg);color:var(--header-primary-text);box-shadow:var(--header-portal-shadow)}.header-link-portal:not(.is-active):hover{border-color:var(--header-chip-border-strong);background:var(--header-portal-bg-hover);box-shadow:var(--header-chip-shadow-hover)}.header-link.is-active,.quick-link.is-active{z-index:3;border-color:var(--header-chip-border-strong);background:var(--header-active-bg);color:var(--header-active-text);opacity:1;filter:saturate(1.08) brightness(1.04)!important;box-shadow:var(--header-active-shadow),0 10px 26px -18px #3b82f65c;font-weight:700;text-shadow:0 1px 10px rgba(255,255,255,.12);transform:perspective(1100px) translateY(-2px) translateZ(28px) rotateY(calc(var(--carousel-offset) * -12deg)) rotateX(calc(var(--carousel-distance) * 2deg)) scale(1.05)}.header-link-home,.header-link-home:hover,.header-link-home:active,.header-link-home.is-active,.header-link-home.is-centered{filter:none!important;opacity:1;transform:none}.quick-link.is-active,.quick-link.is-centered{opacity:1!important}.theme-toggle,.search-trigger{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:.55rem;min-height:2.65rem;padding:.7rem .95rem;border:1px solid var(--header-chip-border);border-radius:999px;background:var(--header-chip-bg);color:var(--header-chip-text);font-size:.9rem;font-weight:600;box-shadow:var(--header-tool-shadow)}.theme-toggle{min-width:4.85rem}.theme-toggle:hover,.search-trigger:hover{color:var(--header-chip-text-strong);border-color:var(--header-chip-border-strong);background:var(--header-chip-bg-hover);transform:translateY(-1px)}.theme-toggle-icon,.search-trigger-icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:999px;background:var(--header-trigger-icon-bg);color:var(--header-trigger-icon-color);font-size:.9rem;transition:transform .28s ease,background-color .28s ease,color .28s ease}.theme-toggle[aria-pressed=true] .theme-toggle-icon{transform:rotate(-18deg) scale(1.02)}.theme-toggle-label{white-space:nowrap}.theme-toggle[aria-pressed=true]{border-color:var(--header-chip-border-strong);background:var(--header-active-bg);color:var(--header-active-text);box-shadow:var(--header-active-shadow)}.search-trigger-shortcut{padding:.2rem .42rem;border:1px solid var(--header-shortcut-border);border-radius:999px;color:var(--text-inverse-faint);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.layout{position:relative;z-index:1;display:grid;grid-template-columns:290px minmax(0,1fr) 260px;gap:1.35rem;max-width:1440px;margin:0 auto;padding:1.5rem 1rem 2rem}.sidebar,.outline{position:sticky;top:6.5rem;align-self:start}.panel{padding:1.3rem;border-radius:var(--radius-xl)}.sidebar-panel,.outline-panel,.not-found-panel{box-sizing:border-box;width:100%;min-width:0;display:flex;flex-direction:column;gap:1rem}.sidebar-panel,.outline-panel{max-height:calc(100vh - 8rem);overflow-y:auto;overflow-x:hidden}.sidebar-panel{padding-right:1.3rem;-ms-overflow-style:none;scrollbar-width:none;background:linear-gradient(to bottom,var(--sidebar-scroll-fade-color),transparent) top / 100% 1.3rem no-repeat local,linear-gradient(to top,var(--sidebar-scroll-fade-color),transparent) bottom / 100% 1.3rem no-repeat local,radial-gradient(farthest-side at 50% 0,var(--sidebar-scroll-shadow-color),transparent 72%) top / 100% .8rem no-repeat scroll,radial-gradient(farthest-side at 50% 100%,var(--sidebar-scroll-shadow-color),transparent 72%) bottom / 100% .8rem no-repeat scroll,var(--panel-subtle-gradient)}.outline-panel{padding-right:.35rem;-ms-overflow-style:none;scrollbar-width:none;background:var(--panel-subtle-gradient)}.sidebar-panel::-webkit-scrollbar{width:0;height:0}.outline-panel::-webkit-scrollbar{width:0;height:0}.sidebar-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.panel-title,.section-title{color:var(--text-faint);font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.sidebar-subtitle{margin-top:.35rem;color:var(--text-soft);font-size:.92rem;line-height:1.7}.sidebar-count{flex-shrink:0;padding:.52rem .82rem;border-radius:999px;background:var(--brand-soft);color:var(--brand-strong);font-size:.84rem;font-weight:700}.sidebar-context-strip{display:grid;gap:.8rem;padding:.95rem 1rem;border:1px solid color-mix(in srgb,var(--header-chip-border-strong) 72%,transparent);border-radius:24px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--brand-soft) 82%,transparent),transparent 34%),radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--warning-soft) 68%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--surface-secondary) 96%,transparent),color-mix(in srgb,var(--surface-secondary) 82%,var(--brand-soft)) 56%,color-mix(in srgb,var(--surface-secondary) 78%,var(--warning-soft)));box-shadow:0 16px 36px -30px #2563eb61}.sidebar-context-orbit{display:inline-flex;align-items:center;gap:.4rem}.sidebar-context-orbit span{display:inline-flex;width:.52rem;height:.52rem;border-radius:999px;opacity:.95}.sidebar-context-orbit span:nth-child(1){background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 84%,white 16%),color-mix(in srgb,var(--brand) 58%,transparent));box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-soft) 48%,transparent)}.sidebar-context-orbit span:nth-child(2){width:.4rem;height:.4rem;background:linear-gradient(180deg,color-mix(in srgb,var(--success) 82%,white 18%),color-mix(in srgb,var(--success) 58%,transparent));box-shadow:0 0 0 4px color-mix(in srgb,var(--success-soft) 52%,transparent);opacity:.8}.sidebar-context-orbit span:nth-child(3){width:.32rem;height:.32rem;background:linear-gradient(180deg,color-mix(in srgb,var(--warning) 82%,white 18%),color-mix(in srgb,var(--warning) 58%,transparent));box-shadow:0 0 0 4px color-mix(in srgb,var(--warning-soft) 52%,transparent);opacity:.7}.sidebar-context-badges{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.sidebar-context-badge{display:grid;gap:.2rem;min-width:0;min-height:4.1rem;align-content:center;padding:.68rem .8rem;border:1px solid color-mix(in srgb,var(--header-chip-border) 88%,transparent);border-radius:18px;background:color-mix(in srgb,var(--surface) 78%,transparent);box-shadow:inset 0 1px #ffffff14}.sidebar-context-badge:last-child{grid-column:1 / -1}.sidebar-context-badge.is-scope{border-color:color-mix(in srgb,var(--brand) 24%,var(--line-strong) 76%);background:linear-gradient(180deg,color-mix(in srgb,var(--brand-soft) 92%,white 8%),color-mix(in srgb,var(--brand-soft) 56%,transparent))}.sidebar-context-badge.is-status{border-color:color-mix(in srgb,var(--success) 24%,var(--line-strong) 76%);background:linear-gradient(180deg,color-mix(in srgb,var(--success-soft) 92%,white 8%),color-mix(in srgb,var(--success-soft) 56%,transparent))}.sidebar-context-badge.is-groups{border-color:color-mix(in srgb,var(--warning) 24%,var(--line-strong) 76%);background:linear-gradient(180deg,color-mix(in srgb,var(--warning-soft) 92%,white 8%),color-mix(in srgb,var(--warning-soft) 56%,transparent))}.sidebar-context-badge.is-ready{border-color:#05966929;background:var(--success-soft)}.sidebar-context-badge.is-updated{border-color:#7c3aed33;background:#7c3aed24}.sidebar-context-badge.is-planned{border-color:#f9731638;background:#f9731624}.sidebar-context-badge-label{color:var(--text-faint);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-context-badge.is-scope .sidebar-context-badge-label,.sidebar-context-badge.is-scope .sidebar-context-badge-value{color:var(--brand-strong)}.sidebar-context-badge.is-status .sidebar-context-badge-label,.sidebar-context-badge.is-status .sidebar-context-badge-value,.sidebar-context-badge.is-ready .sidebar-context-badge-label,.sidebar-context-badge.is-ready .sidebar-context-badge-value{color:var(--success)}.sidebar-context-badge.is-groups .sidebar-context-badge-label,.sidebar-context-badge.is-groups .sidebar-context-badge-value,.sidebar-context-badge.is-updated .sidebar-context-badge-label,.sidebar-context-badge.is-updated .sidebar-context-badge-value{color:#7c3aed}.sidebar-context-badge.is-planned .sidebar-context-badge-label,.sidebar-context-badge.is-planned .sidebar-context-badge-value{color:#f97316}.sidebar-context-badge-value{color:var(--text);font-size:.86rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.sidebar-plugin-drawer{display:grid;gap:.72rem;padding-top:.15rem}.sidebar-plugin-drawer-toggle{display:flex;align-items:center;justify-content:space-between;gap:.85rem;width:100%;min-height:4.2rem;padding:.88rem .95rem;border:1px solid rgba(148,163,184,.16);border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-secondary) 92%,transparent),color-mix(in srgb,var(--surface-secondary) 84%,var(--brand-soft)));color:var(--text);text-align:left;cursor:pointer;box-shadow:0 18px 34px -28px #0f172a80;transition:border-color .22s ease,background .22s ease,box-shadow .22s ease,transform .22s ease}.sidebar-plugin-drawer-toggle:hover{border-color:#2563eb38;background:linear-gradient(180deg,color-mix(in srgb,var(--interactive-soft-bg-hover) 88%,transparent),color-mix(in srgb,var(--interactive-soft-bg-hover) 78%,var(--brand-soft)));box-shadow:0 20px 36px -28px #2563eb4d;transform:translateY(-1px)}.sidebar-plugin-drawer.is-open .sidebar-plugin-drawer-toggle{border-color:var(--interactive-border-strong);background:linear-gradient(180deg,var(--interactive-strong-bg),color-mix(in srgb,var(--interactive-soft-bg-hover) 86%,transparent));box-shadow:var(--sidebar-chip-active-shadow)}.sidebar-plugin-drawer-toggle-copy{display:grid;gap:.2rem;min-width:0}.sidebar-plugin-drawer-kicker{color:var(--text-faint);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.sidebar-plugin-drawer-title{color:var(--text);font-size:1rem;font-weight:800;line-height:1.35;word-break:break-word}.sidebar-plugin-drawer-meta{color:var(--text-soft);font-size:.78rem;line-height:1.45}.sidebar-plugin-drawer-toggle-side{display:grid;justify-items:end;gap:.46rem;flex:0 0 auto}.sidebar-plugin-drawer-count,.sidebar-plugin-option-state{display:inline-flex;align-items:center;justify-content:center;min-height:1.7rem;padding:.28rem .62rem;border-radius:999px;border:1px solid rgba(148,163,184,.16);background:#ffffff73;color:var(--text-faint);font-size:.72rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}.sidebar-plugin-option-state.is-current{border-color:#2563eb2e;background:color-mix(in srgb,var(--brand-soft) 90%,white);color:var(--brand-strong)}.sidebar-plugin-option-state.is-ready{border-color:#05966929;background:var(--success-soft);color:var(--success)}.sidebar-plugin-option-state.is-updated{border-color:#7c3aed33;background:#7c3aed24;color:#7c3aed}.sidebar-plugin-option-state.is-planned{border-color:#f9731638;background:#f9731624;color:#f97316}.sidebar-plugin-drawer-arrow{position:relative;width:1.95rem;height:1.95rem;border-radius:999px;border:1px solid rgba(148,163,184,.16);background:var(--sidebar-arrow-bg);color:var(--text-faint)}.sidebar-plugin-drawer-arrow:before{content:"";position:absolute;top:50%;left:50%;width:.48rem;height:.48rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translate(-50%,-62%) rotate(45deg);transition:transform .22s ease}.sidebar-plugin-drawer.is-open .sidebar-plugin-drawer-arrow:before{transform:translate(-50%,-38%) rotate(225deg)}.sidebar-plugin-drawer-body{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .24s var(--ease-standard),opacity .16s var(--ease-standard),visibility 0s linear .24s}.sidebar-plugin-drawer.is-open .sidebar-plugin-drawer-body{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .28s var(--ease-standard),opacity .2s var(--ease-standard),visibility 0s linear 0s}.sidebar-plugin-drawer-list{min-height:0;display:grid;gap:.56rem;overflow:auto;max-height:min(20rem,42vh);padding:.18rem .12rem .12rem}.sidebar-plugin-option{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-width:0;min-height:3.1rem;padding:.78rem .85rem;border:1px solid rgba(148,163,184,.14);border-radius:18px;background:color-mix(in srgb,var(--surface-secondary) 92%,transparent);color:var(--text-soft);transition:border-color .22s ease,background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease}.sidebar-plugin-option:hover{border-color:#2563eb2e;background:var(--interactive-soft-bg-hover);color:var(--brand-strong);transform:translateY(-1px)}.sidebar-plugin-option-copy{display:grid;gap:.18rem;min-width:0}.sidebar-plugin-option-name,.sidebar-plugin-option-meta{min-width:0}.sidebar-plugin-option-name{color:inherit;font-size:.9rem;font-weight:700;line-height:1.38;word-break:break-word}.sidebar-plugin-option-meta{color:var(--text-faint);font-size:.74rem;font-weight:700;letter-spacing:.04em}.sidebar-plugin-option:hover .sidebar-plugin-option-meta,.sidebar-plugin-option.is-active .sidebar-plugin-option-meta,.sidebar-plugin-option.is-active .sidebar-plugin-option-state{color:inherit}.sidebar-plugin-option.is-active{border-color:var(--interactive-border-strong);background:linear-gradient(180deg,var(--interactive-strong-bg),var(--interactive-soft-bg-hover));color:var(--brand-strong);box-shadow:var(--sidebar-chip-active-shadow)}.sidebar-plugin-drawer.is-open .sidebar-plugin-drawer-count{border-color:#2563eb38;background:#ffffff9e}.sidebar-group-list{display:grid;gap:.8rem}.sidebar-group{overflow:hidden;border:1px solid rgba(148,163,184,.14);border-radius:22px;background:var(--sidebar-group-bg);box-shadow:var(--sidebar-group-shadow);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.sidebar-group.is-current{border-color:var(--interactive-border-strong);background:var(--sidebar-group-current-bg);box-shadow:var(--sidebar-group-current-shadow)}.sidebar-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:.8rem;width:100%;padding:.9rem 1rem;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.sidebar-group-toggle:hover{background:#2563eb0f}.sidebar-group-copy{display:grid;gap:.2rem;min-width:0}.sidebar-group-title{font-size:.95rem;font-weight:800;line-height:1.4}.sidebar-group-meta{color:var(--text-faint);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-group-arrow{position:relative;flex:0 0 auto;width:1.95rem;height:1.95rem;border:1px solid rgba(148,163,184,.16);border-radius:999px;background:var(--sidebar-arrow-bg);color:var(--text-faint)}.sidebar-group-arrow:before{content:"";position:absolute;top:50%;left:50%;width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translate(-62%,-50%) rotate(-45deg);transition:transform .2s ease}.sidebar-group.is-expanded .sidebar-group-arrow:before{transform:translate(-50%,-62%) rotate(45deg)}.sidebar-group-body{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .24s var(--ease-standard),opacity .16s var(--ease-standard),visibility 0s linear .24s}.sidebar-group.is-expanded .sidebar-group-body{grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows .28s var(--ease-standard),opacity .2s var(--ease-standard),visibility 0s linear 0s}.sidebar-group-body-inner{min-height:0;overflow:hidden;padding:0 .85rem .85rem;transform:translateY(-4px);transition:transform .22s var(--ease-standard)}.sidebar-group.is-expanded .sidebar-group-body-inner{transform:translateY(0)}.sidebar-group-body-inner .tree-list{gap:.42rem}.sidebar-group-body-inner .tree-link{padding:.7rem .82rem;border-radius:16px;font-size:.92rem}.sidebar-group-body-inner .tree-item>.tree-list{margin-top:.45rem;margin-left:.62rem;padding-left:.62rem}.content{position:relative;z-index:1;display:grid;align-content:start;gap:0;min-width:0}.content>.breadcrumbs,.content>.hero,.content>.child-grid-section,.content>.pager{width:min(100%,1080px);margin-left:auto;margin-right:auto}.breadcrumbs{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:1rem;padding:.8rem 1rem;border-radius:20px;color:var(--text-soft);font-size:.92rem}.breadcrumb-current,.breadcrumbs a{font-weight:600}.breadcrumb-sep{color:#64748bb3}@keyframes header-wheel-landed{0%{box-shadow:var(--header-active-shadow),0 0 #60a5fa00}35%{box-shadow:var(--header-active-shadow),0 0 0 9px #60a5fa29,0 0 26px #7dd3fc3d}to{box-shadow:var(--header-active-shadow),0 0 #60a5fa00}}@keyframes header-step-frost-drift{0%{transform:translate3d(-1.5%,-.8%,0) scale(.985)}50%{transform:translate3d(1%,.4%,0) scale(1.005)}to{transform:translate3d(1.8%,-1%,0) scale(.992)}}@keyframes header-step-frost-flicker{0%,to{opacity:.14}45%{opacity:.22}55%{opacity:.16}}@media(prefers-reduced-motion:reduce){.brand-mark:after,.button:after,.portal-stat:after,.plugin-card:after,.child-card:after,.pager-link:after,.sidebar-plugin-chip:after,.search-result:before,.table-scroll:before,.markdown-body blockquote:after,.markdown-body pre:after,.header-nav-step:before,.header-nav-step:after{opacity:0!important;animation:none!important;transition:none!important}}@media(max-width:960px){.brand-author-tip{display:none}}@media(min-width:1600px){:root{--article-max-width: 100%;--article-measure: 100%}.content>.breadcrumbs,.content>.hero,.content>.child-grid-section,.content>.pager,.article{width:min(100%,1200px)}}@media(min-width:1800px){:root{--article-max-width: 100%;--article-measure: 100%}.portal-main{max-width:min(2080px,calc(100vw - 3rem))}.layout{grid-template-columns:300px minmax(0,1fr) 248px;gap:1.2rem;max-width:min(2080px,calc(100vw - 3rem))}.content>.breadcrumbs,.content>.hero,.content>.child-grid-section,.content>.pager,.article{width:min(100%,1360px);max-width:1360px}}@media(max-width:1180px){.layout{grid-template-columns:275px minmax(0,1fr)}.outline{display:none}.portal-hero,.portal-story-grid,.plugin-showcase,.hero,.portal-highlights,.portal-entry-list{grid-template-columns:1fr}.portal-hero-copy h1{max-width:14ch}}@media(max-width:960px){.menu-toggle{display:inline-flex}.site-header{top:.75rem;display:flex;width:calc(100% - 1.25rem);padding:.85rem .9rem;border-radius:20px;flex-wrap:wrap}.brand{flex:1 1 auto}.header-nav-shell{width:100%;order:3;gap:.42rem}.header-nav-shell.is-portal:not(.is-engaged) .header-nav{opacity:.82}.header-nav-step{width:5.2rem}.header-nav-step>span{width:1.42rem;height:1.42rem;font-size:.94rem}.header-nav{width:100%}.header-nav:before,.header-nav:after{width:5.4rem}.header-nav-indicator{width:clamp(6.6rem,32vw,9rem)}.header-actions{width:100%;padding-top:.3rem;padding-bottom:.15rem;padding-left:var(--header-carousel-gutter-start, max(.3rem, calc(50% - 5.4rem) ));padding-right:var(--header-carousel-gutter-end, max(.3rem, calc(50% - 5.4rem) ))}.header-carousel-group{gap:.55rem}.header-actions::-webkit-scrollbar{display:none}.header-tools{margin-left:auto;gap:.55rem}.theme-toggle,.search-trigger{padding:.68rem .86rem}.search-trigger-shortcut{display:none}.search-layer{padding-top:5.25rem}.search-dialog{width:min(100%,760px)}.search-scope-switcher{margin-bottom:.8rem}.search-results-head{flex-direction:column;align-items:flex-start}.search-results-tip{min-height:2rem}.layout{grid-template-columns:1fr;padding:1rem .75rem 1.5rem}.portal-main{padding:1rem .75rem 1.75rem}.portal-hero{padding:1.15rem;border-radius:28px}.portal-hero-copy h1{max-width:none;font-size:clamp(2.5rem,12vw,4rem)}.portal-stat-grid{grid-template-columns:1fr}.portal-entry-link{align-items:flex-start}.portal-entry-side{justify-items:start}.plugin-card-top,.portal-section-head,.sidebar-intro{flex-direction:column;align-items:flex-start}.portal-section-tools{width:100%;justify-items:start}.portal-tools-divider{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--line-strong) 78%,transparent),transparent)}.portal-filter-bar,.portal-sort-bar{justify-content:flex-start}.sidebar-plugin-drawer{width:100%}.sidebar-plugin-drawer-list{max-height:min(18rem,38vh)}.header-actions{justify-content:flex-start}.header-main{flex:1 1 auto;min-width:0}.sidebar-plugin-drawer-toggle,.sidebar-plugin-option{min-height:0}.sidebar-group-toggle{padding:.82rem .9rem}.sidebar-group-body-inner{padding:0 .72rem .72rem}.sidebar-panel,.outline-panel{max-height:none;padding-right:0}.sidebar{position:fixed;inset:6rem auto 1rem .85rem;z-index:45;width:min(84vw,340px);max-height:calc(100vh - 7rem);overflow:hidden;transform:translate(calc(-100% - 1rem));transition:transform .25s ease}.sidebar-backdrop{position:fixed;inset:0;z-index:35;display:block;padding:0;border:0;background:var(--mobile-sidebar-backdrop);opacity:0;pointer-events:none;transition:opacity .25s ease}#app[data-sidebar-open=true] .sidebar{transform:translate(0)}#app[data-sidebar-open=true] .sidebar-backdrop{opacity:1;pointer-events:auto}}@media(max-width:640px){.heading-anchor{opacity:1;transform:translateY(0)}.markdown-body{font-size:.99rem;line-height:1.84}.markdown-body>p:first-of-type{font-size:1.01rem}.markdown-body h2{margin-top:2.2rem}.markdown-body h3{margin-top:1.65rem}.markdown-body blockquote{padding:.95rem 1rem .95rem 1.05rem}.markdown-body pre{padding:2.62rem .9rem .9rem;border-radius:16px}.markdown-body pre{--code-toolbar-height: 1.44rem;--code-toolbar-top: .3rem}.code-language-badge{left:.9rem;max-width:calc(100% - 3.8rem);font-size:.6rem}.code-copy-button{right:.56rem;width:var(--code-toolbar-height);min-width:var(--code-toolbar-height);padding:0}.code-language-badge,.code-copy-button{height:var(--code-toolbar-height)}.table-scroll table{min-width:560px}.site-header{width:calc(100% - 1rem);margin-top:.5rem;padding:.75rem}.header-nav:before,.header-nav:after{width:4.6rem}.header-nav-step{width:4.2rem}.header-nav-step>span{width:1.26rem;height:1.26rem;font-size:.88rem}.header-nav-indicator{width:min(8.1rem,calc(100% - 4rem))}.header-actions{padding-left:var(--header-carousel-gutter-start, max(.25rem, calc(50% - 4.8rem) ));padding-right:var(--header-carousel-gutter-end, max(.25rem, calc(50% - 4.8rem) ))}.header-carousel-group{gap:.5rem}.theme-toggle,.search-trigger{padding:.66rem .82rem}.theme-toggle{min-width:2.9rem}.theme-toggle-label,.search-trigger-label{display:none}.search-dialog{padding:.85rem;border-radius:24px}.search-suggestion-list{grid-template-columns:1fr}.sidebar-plugin-drawer-toggle{padding:.8rem .82rem;border-radius:20px}.sidebar-plugin-drawer-list{max-height:min(16rem,36vh)}.sidebar-plugin-option{padding:.72rem .78rem;border-radius:16px}.search-result,.search-summary-card{border-radius:18px}.search-box{grid-template-columns:auto minmax(0,1fr)}.search-dismiss{display:none}.brand-mark{width:2.6rem;height:2.6rem}.brand-copy strong{font-size:.94rem}.brand-copy small{display:none}.header-link,.quick-link,.button{padding:.66rem .9rem;font-size:.88rem}.panel,.child-card,.pager-link,.plugin-card,.portal-story-intro,.portal-story-panel,.portal-overview-card,.portal-stat,.portal-start-intro,.portal-start-card,.hero{padding:1rem;border-radius:22px}.breadcrumbs{border-radius:18px}.hero h1{font-size:clamp(2rem,10vw,2.8rem)}.portal-hero-copy h1,.portal-section-head h2,.portal-story-intro h2,.not-found-panel h1{font-size:clamp(1.9rem,10vw,2.8rem)}.pager{grid-template-columns:1fr}.ambient-a,.ambient-b,.ambient-c{opacity:.6}}.site-header{justify-content:flex-start}.site-header .header-main{flex:0 0 auto}.site-header .header-nav-shell{display:flex;flex:0 1 auto;align-items:center;min-width:0;margin-left:1rem}.site-header .header-nav{display:flex;flex:0 1 auto;align-items:center;gap:.65rem;min-width:0;overflow:visible}.site-header .header-link{position:relative;z-index:0;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;gap:.45rem;box-sizing:border-box;min-height:2.65rem;max-width:100%;padding:.72rem 1rem;border:1px solid var(--header-chip-border);border-radius:999px;background:var(--header-chip-bg);color:var(--header-chip-text);font-size:.92rem;font-weight:600;line-height:1;letter-spacing:.01em;white-space:nowrap;opacity:1;filter:none!important;transform:none;box-shadow:var(--header-chip-shadow)}.site-header .header-link:before,.site-header .header-link:after{content:none;display:none}.site-header .header-link:hover,.site-header .header-link:focus-visible{color:var(--header-chip-text-strong);border-color:var(--header-chip-border-strong);background:var(--header-chip-bg-hover);transform:translateY(-1px);box-shadow:var(--header-chip-shadow-hover)}.header-plugin-menu.is-contextual .header-plugin-menu-toggle:hover,.header-plugin-menu.is-contextual .header-plugin-menu-toggle:focus-visible{background:color-mix(in srgb,var(--header-active-bg) 92%,transparent);color:var(--header-active-text)}.site-header .header-link:active{transform:translateY(0) scale(.985)}.site-header .header-link.is-active,.site-header .header-link-current{border-color:var(--header-chip-border-strong);background:var(--header-active-bg);color:var(--header-active-text);box-shadow:var(--header-active-shadow)}.site-header .header-link-home{padding-left:.88rem;padding-right:.88rem;letter-spacing:0}.site-header .header-link-current{max-width:min(16rem,32vw);overflow:hidden;text-overflow:ellipsis}.site-header .header-tools{margin-left:auto}.header-plugin-menu{position:relative;flex:0 0 auto;margin-left:0}.header-plugin-menu-toggle{box-sizing:border-box;font:inherit;line-height:1;cursor:pointer}.header-plugin-menu.is-contextual .header-plugin-menu-toggle{border-color:var(--header-chip-border-strong);background:color-mix(in srgb,var(--header-active-bg) 84%,transparent);color:var(--header-active-text);box-shadow:var(--header-active-shadow)}.header-plugin-menu-toggle-mark{display:inline-flex;flex:0 0 auto;width:.58rem;height:.58rem;border-radius:999px;background:linear-gradient(180deg,#60a5fa,#2563eb);box-shadow:0 0 0 4px #2563eb1f}.header-plugin-menu-toggle-arrow{width:.5rem;height:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:transform .18s var(--ease-standard)}.header-plugin-menu.is-open .header-plugin-menu-toggle-arrow{transform:rotate(-135deg) translate(-2px,-1px)}.header-plugin-menu-panel{position:absolute;top:calc(100% + .7rem);right:0;z-index:50;width:min(34rem,calc(100vw - 2.5rem));padding:1rem;border:1px solid color-mix(in srgb,var(--line-strong) 82%,transparent);border-radius:24px;background:color-mix(in srgb,var(--panel-bg) 88%,transparent);-webkit-backdrop-filter:blur(18px) saturate(1.18);backdrop-filter:blur(18px) saturate(1.18);box-shadow:0 24px 48px -28px #0f172a7a,var(--shadow-dark);opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;transition:opacity .18s var(--ease-standard),transform .18s var(--ease-standard)}.header-plugin-menu.is-open .header-plugin-menu-panel{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.header-plugin-menu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding-bottom:.75rem;border-bottom:1px solid color-mix(in srgb,var(--line-strong) 68%,transparent)}.header-plugin-menu-summary{margin-top:.28rem;color:var(--text-soft);font-size:.9rem;line-height:1.6}.header-plugin-menu-total,.header-plugin-menu-section-count,.header-plugin-option-state{display:inline-flex;align-items:center;justify-content:center;min-height:1.72rem;padding:.28rem .62rem;border-radius:999px;border:1px solid rgba(148,163,184,.16);background:#ffffff73;color:var(--text-faint);font-size:.72rem;font-weight:800;letter-spacing:.04em;white-space:nowrap}.header-plugin-menu-groups{display:grid;gap:.85rem;max-height:min(24rem,65vh);margin-top:.9rem;overflow:auto;padding-right:.1rem}.header-plugin-menu-section{display:grid;gap:.55rem}.header-plugin-menu-section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.header-plugin-menu-section-title{color:var(--text-faint);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.header-plugin-menu-list{display:grid;gap:.5rem}.header-plugin-option{display:flex;align-items:center;justify-content:space-between;gap:.8rem;min-width:0;padding:.82rem .9rem;border:1px solid rgba(148,163,184,.14);border-radius:18px;background:color-mix(in srgb,var(--surface-secondary) 92%,transparent);color:var(--text-soft)}.header-plugin-option:hover,.header-plugin-option:focus-visible{border-color:#2563eb2e;background:var(--interactive-soft-bg-hover);color:var(--brand-strong);transform:translateY(-1px)}.header-plugin-option-copy{display:grid;gap:.18rem;min-width:0}.header-plugin-option-name{color:inherit;font-size:.92rem;font-weight:700;line-height:1.38;word-break:break-word}.header-plugin-option-meta{color:var(--text-faint);font-size:.74rem;font-weight:700;letter-spacing:.04em}.header-plugin-option:hover .header-plugin-option-meta,.header-plugin-option.is-active .header-plugin-option-meta,.header-plugin-option.is-active .header-plugin-option-state{color:inherit}.header-plugin-option.is-active{border-color:var(--interactive-border-strong);background:linear-gradient(180deg,var(--interactive-strong-bg),var(--interactive-soft-bg-hover));color:var(--brand-strong);box-shadow:var(--sidebar-chip-active-shadow)}.header-plugin-option-state.is-current{border-color:#2563eb2e;background:color-mix(in srgb,var(--brand-soft) 90%,white);color:var(--brand-strong)}.header-plugin-option-state.is-ready{border-color:#05966929;background:var(--success-soft);color:var(--success)}.header-plugin-option-state.is-updated{border-color:#7c3aed33;background:#7c3aed24;color:#7c3aed}.header-plugin-option-state.is-planned{border-color:#f9731638;background:#f9731624;color:#f97316}@media(max-width:960px){.site-header{justify-content:space-between}.site-header .header-nav-shell{width:100%;order:3;margin-left:0}.site-header .header-tools{margin-left:auto}.site-header .header-nav{flex-wrap:wrap;align-items:stretch;width:100%;gap:.55rem}.site-header .header-link-home,.site-header .header-link-current{flex:0 1 auto}.header-plugin-menu{flex:1 1 100%;margin-left:0}.header-plugin-menu-toggle{width:100%;justify-content:space-between}.header-plugin-menu-panel{left:0;right:auto;width:min(100%,34rem)}}@media(max-width:640px){.site-header .header-nav{gap:.5rem}.site-header .header-link,.header-plugin-menu-toggle{max-width:100%;padding:.68rem .9rem;font-size:.88rem}.site-header .header-link-current{max-width:calc(100vw - 8.5rem)}.header-plugin-menu-panel{width:min(calc(100vw - 1rem),30rem);padding:.85rem;border-radius:22px}.header-plugin-menu-head{flex-direction:column;align-items:flex-start}.header-plugin-option{padding:.76rem .82rem;border-radius:16px}}
