pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}:root,[data-theme=light]{--bg:#f7f5f1;--surface:#fff;--sidebar-bg:#f3f0ea;--border:#e4dfd6;--text:#1c2430;--text-secondary:#4a5565;--text-muted:#7a8494;--accent:#0f5c4c;--accent-soft:#0f5c4c1a;--hover:#1c24300d;--code-bg:#f0ece4;--code-inline:#8a3b12;--callout-bg:#eef6f3;--callout-border:#0f5c4c;--table-stripe:#ffffff73;--glow-1:#0f5c4c14;--glow-2:#1a3a5c0f;--sidebar-width:260px;--font-sans:"Source Sans 3", "Segoe UI", sans-serif;--font-display:"Source Sans 3", Georgia, serif;--font-mono:"IBM Plex Mono", "Consolas", monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#000;--surface:#1a2029;--sidebar-bg:#000;--border:#2a3340;--text:#e8edf5;--text-secondary:#a8b3c2;--text-muted:#7d8898;--accent:#5ecfaf;--accent-soft:#5ecfaf24;--hover:#e8edf50f;--code-bg:#242b36;--code-inline:#f0b27a;--callout-bg:#5ecfaf1a;--callout-border:#5ecfaf;--table-stripe:#ffffff08;--glow-1:transparent;--glow-2:transparent;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:radial-gradient(1200px 500px at 80% -10%, var(--glow-1), transparent 55%), radial-gradient(900px 400px at -10% 20%, var(--glow-2), transparent 50%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6;transition:background-color .2s,color .2s}#app{min-height:100vh}a{color:var(--accent)}.prose{font-size:1rem;line-height:1.7}.prose>:first-child{margin-top:0}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-display);letter-spacing:-.02em;scroll-margin-top:5rem;line-height:1.25;position:relative}.prose h1{margin:0 0 1rem;font-size:2.15rem;font-weight:650}.prose h2{border-bottom:1px solid var(--border);margin:2.25rem 0 .85rem;padding-bottom:.4rem;font-size:1.45rem;font-weight:620}.prose h3{margin:1.75rem 0 .65rem;font-size:1.15rem;font-weight:600}.prose p{margin:.85rem 0}.prose ul,.prose ol{margin:.75rem 0;padding-left:1.35rem}.prose li{margin:.3rem 0}.prose li>p{margin:.25rem 0}.prose strong{color:var(--text);font-weight:650}.prose hr{border:none;border-top:1px solid var(--border);margin:2rem 0}.prose blockquote{border-left:3px solid var(--accent);color:var(--text-secondary);margin:1rem 0;padding:.15rem 0 .15rem 1rem}.prose :not(pre)>code{font-family:var(--font-mono);background:var(--code-bg);color:var(--code-inline);border-radius:.3rem;padding:.12em .4em;font-size:.86em}.prose table{border-collapse:collapse;width:100%;margin:1.25rem 0;font-size:.9rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.55rem .75rem}.prose th{background:var(--sidebar-bg);font-weight:600}.prose tr:nth-child(2n) td{background:var(--table-stripe)}[data-theme=dark] .code-block{background:#0f1319;border-color:#2f3848}[data-theme=dark] .code-block__header{background:#0b0e13}.heading-anchor{opacity:0;color:var(--text-muted);font-size:.9em;font-weight:400;text-decoration:none;position:absolute;left:-1.1rem}.prose h2:hover .heading-anchor,.prose h3:hover .heading-anchor{opacity:1}.code-block{border:1px solid var(--border);background:#1e2430;border-radius:.6rem;margin:1.15rem 0;overflow:hidden}.code-block__header{color:#9aa4b2;font-family:var(--font-mono);text-transform:lowercase;background:#161b24;justify-content:space-between;align-items:center;padding:.4rem .75rem;font-size:.72rem;display:flex}.copy-btn{color:#c5ccd8;font:inherit;cursor:pointer;background:0 0;border:1px solid #2c3444;border-radius:.3rem;padding:.15rem .45rem;font-size:.7rem}.copy-btn:hover{background:#2c3444}.code-block pre{margin:0;padding:1rem 1.1rem;overflow-x:auto}.code-block code{font-family:var(--font-mono);color:#e8edf5;font-size:.82rem;line-height:1.55;background:0 0!important;padding:0!important}.code-block .hljs{color:#e8edf5;background:0 0}.code-block .hljs-keyword,.code-block .hljs-selector-tag,.code-block .hljs-built_in{color:#7dd3c0}.code-block .hljs-string,.code-block .hljs-attr{color:#f0b27a}.code-block .hljs-number,.code-block .hljs-literal{color:#9ecbff}.code-block .hljs-comment{color:#7a8494;font-style:italic}.code-block .hljs-title,.code-block .hljs-section{color:#c4b5fd}.code-block .hljs-name,.code-block .hljs-tag{color:#fda4af}.callout{border-left:3px solid var(--callout-border);background:var(--callout-bg);color:var(--text-secondary);border-radius:.55rem;margin:1.25rem 0;padding:.9rem 1rem}.callout p{margin:.35rem 0}.callout p:first-child{margin-top:0}.callout p:last-child{margin-bottom:0}@media (width<=860px){.prose h1{font-size:1.75rem}.heading-anchor{display:none}}.backdrop.svelte-181dlmc{display:none}.sidebar.svelte-181dlmc{height:100vh;width:var(--sidebar-width);border-right:1px solid var(--border);background:var(--sidebar-bg);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0;overflow:hidden}.sidebar__brand.svelte-181dlmc{border-bottom:1px solid var(--border);padding:1.25rem 1.25rem 1rem}.logo.svelte-181dlmc{color:var(--text);align-items:center;gap:.65rem;text-decoration:none;display:flex}.logo__mark.svelte-181dlmc{object-fit:contain;border-radius:.4rem;flex-shrink:0;width:1.75rem;height:1.75rem;display:block}.logo__text.svelte-181dlmc{font-family:var(--font-display);letter-spacing:-.02em;font-size:1rem;font-weight:600}.sidebar__nav.svelte-181dlmc{flex-direction:column;gap:.15rem;padding:1rem .75rem 2rem;display:flex;overflow-y:auto}.nav-group.svelte-181dlmc{margin-top:.75rem}.nav-group__label.svelte-181dlmc{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:.35rem .65rem;font-size:.7rem;font-weight:600}.nav-group__children.svelte-181dlmc{flex-direction:column;gap:.1rem;display:flex}.nav-link.svelte-181dlmc{color:var(--text-secondary);border-radius:.4rem;padding:.4rem .65rem;font-size:.9rem;line-height:1.35;text-decoration:none;transition:background .15s,color .15s;display:block}.nav-link.svelte-181dlmc:hover{background:var(--hover);color:var(--text)}.nav-link.active.svelte-181dlmc{background:var(--accent-soft);color:var(--accent);font-weight:560}.nav-link--top.svelte-181dlmc{font-weight:500}@media (width<=860px){.backdrop.svelte-181dlmc{z-index:40;cursor:pointer;background:#0f172073;border:none;display:block;position:fixed;inset:0}.sidebar.svelte-181dlmc{z-index:50;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:8px 0 32px #0000001f}.sidebar.open.svelte-181dlmc{transform:translate(0)}}.search-trigger.svelte-1wah7ro{border:1px solid var(--border);background:var(--surface);width:min(280px,42vw);color:var(--text-muted);font:inherit;cursor:pointer;border-radius:.5rem;align-items:center;gap:.5rem;padding:.45rem .65rem;font-size:.85rem;transition:border-color .15s,box-shadow .15s;display:flex}.search-trigger.svelte-1wah7ro:hover{border-color:var(--accent)}.search-trigger.svelte-1wah7ro span:where(.svelte-1wah7ro){text-align:left;flex:1}kbd.svelte-1wah7ro{font-family:var(--font-mono);border:1px solid var(--border);background:var(--bg);color:var(--text-muted);border-radius:.25rem;padding:.1rem .35rem;font-size:.7rem}.overlay.svelte-1wah7ro{z-index:100;place-items:start center;padding:12vh 1rem 1rem;display:grid;position:fixed;inset:0}.overlay__backdrop.svelte-1wah7ro{cursor:pointer;background:#0c121c8c;border:none;position:absolute;inset:0}.panel.svelte-1wah7ro{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;width:min(560px,100%);position:relative;overflow:hidden;box-shadow:0 24px 64px #0003}.panel__input.svelte-1wah7ro{border-bottom:1px solid var(--border);color:var(--text-muted);align-items:center;gap:.65rem;padding:.9rem 1rem;display:flex}.panel__input.svelte-1wah7ro input:where(.svelte-1wah7ro){font:inherit;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:1rem}.panel__results.svelte-1wah7ro{max-height:360px;padding:.4rem;overflow-y:auto}.result.svelte-1wah7ro{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:none;border-radius:.45rem;flex-direction:column;gap:.15rem;padding:.7rem .75rem;display:flex}.result.svelte-1wah7ro:hover{background:var(--accent-soft)}.result__title.svelte-1wah7ro{color:var(--text);font-size:.95rem;font-weight:600}.result__desc.svelte-1wah7ro{color:var(--text-muted);font-size:.8rem}.empty.svelte-1wah7ro{text-align:center;color:var(--text-muted);margin:0;padding:1.5rem}@media (width<=860px){kbd.svelte-1wah7ro{display:none}}.theme-toggle.svelte-1kenrq5{border:1px solid var(--border);background:var(--surface);width:2.25rem;height:2.25rem;color:var(--text-secondary);cursor:pointer;border-radius:.45rem;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.theme-toggle.svelte-1kenrq5:hover{color:var(--text);border-color:var(--accent);background:var(--hover)}.locale-toggle.svelte-dfisee{border:1px solid var(--border);background:var(--surface);border-radius:.45rem;flex-shrink:0;align-items:center;display:inline-flex;overflow:hidden}.header.svelte-oiwvqb{z-index:20;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:.75rem;height:3.5rem;padding:0 1.25rem;display:flex;position:sticky;top:0}.menu-btn.svelte-oiwvqb{border:1px solid var(--border);background:var(--surface);width:2.25rem;height:2.25rem;color:var(--text);cursor:pointer;border-radius:.45rem;justify-content:center;align-items:center;display:none}.header__search.svelte-oiwvqb{flex:1;justify-content:flex-start;display:flex}@media (width<=860px){.menu-btn.svelte-oiwvqb{display:inline-flex}}.doc.svelte-yxdlzd{flex:1;min-width:0}.doc__lead.svelte-yxdlzd{color:var(--text-secondary);margin:0 0 1.5rem;font-size:1.05rem;line-height:1.55}.toc.svelte-yxdlzd{flex-shrink:0;align-self:start;width:200px;max-height:calc(100vh - 6rem);padding-left:1rem;display:none;position:sticky;top:5rem;overflow-y:auto}.toc__title.svelte-yxdlzd{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.65rem;font-size:.7rem;font-weight:650}.toc.svelte-yxdlzd ul:where(.svelte-yxdlzd){border-left:1px solid var(--border);flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.toc.svelte-yxdlzd li:where(.svelte-yxdlzd){margin:0}.toc.svelte-yxdlzd a:where(.svelte-yxdlzd){color:var(--text-muted);padding:.15rem 0 .15rem .75rem;font-size:.8rem;line-height:1.35;text-decoration:none;display:block}.toc.svelte-yxdlzd a:where(.svelte-yxdlzd):hover{color:var(--accent)}.toc.svelte-yxdlzd li.depth-3:where(.svelte-yxdlzd) a:where(.svelte-yxdlzd){padding-left:1.25rem}@media (width>=1100px){.toc.svelte-yxdlzd{display:block}}.shell.svelte-1n46o8q{min-height:100vh;display:flex}.main.svelte-1n46o8q{flex-direction:column;flex:1;min-width:0;display:flex}.content.svelte-1n46o8q{gap:2rem;width:min(1100px,100%);margin:0 auto;padding:2rem 1.5rem 4rem;display:flex}.not-found.svelte-1n46o8q{padding:3rem 0}.not-found.svelte-1n46o8q h1:where(.svelte-1n46o8q){font-family:var(--font-display);margin:0 0 .5rem}.not-found.svelte-1n46o8q p:where(.svelte-1n46o8q){color:var(--text-secondary)}.not-found.svelte-1n46o8q a:where(.svelte-1n46o8q){color:var(--accent)}
