:root{--mono: ui-monospace, "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--measure: 68ch;--radius: 10px;--radius-sm: 6px}:root,:root[data-theme=dark]{color-scheme:dark;--bg: #0f131a;--bg-raised: #161b24;--bg-inset: #0b0e14;--line: #232c3a;--line-soft: #1a212c;--text: #dbe3ef;--text-dim: #8a97ab;--text-faint: #79869b;--accent: #8ab4ff;--accent-ink: #0d1220;--ok: #7ee2b8;--warn: #f5c877;--bad: #ff8b8b}:root[data-theme=light]{color-scheme:light;--bg: #fbfcfe;--bg-raised: #f2f5f9;--bg-inset: #eaeef4;--line: #d3dae4;--line-soft: #e4e9f0;--text: #1a2230;--text-dim: #55637a;--text-faint: #5f6a7f;--accent: #2f5fd0;--accent-ink: #ffffff;--ok: #157f52;--warn: #8a5a00;--bad: #c0392f}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:72px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit;background:none;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 22px;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-soft)}.wordmark{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.wordmark:hover{text-decoration:none;color:var(--accent)}.tag{flex:1;min-width:0;font-size:12.5px;color:var(--text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.theme{display:flex;gap:2px;flex-shrink:0}.theme button{padding:3px 8px;font-size:11.5px;color:var(--text-faint)}.theme button:hover{color:var(--text)}.theme button.on{background:var(--bg-raised);color:var(--text)}.repo{flex-shrink:0;font-size:12.5px;color:var(--text-faint)}.pull{display:none;padding:3px 9px;border-color:var(--line);font-size:11.5px;color:var(--text-dim)}.page{display:grid;grid-template-columns:210px minmax(0,1fr) 190px;gap:32px;max-width:1240px;margin:0 auto;padding:28px 22px 80px}.pages,.outline{display:flex;flex-direction:column;gap:2px;align-self:start;position:sticky;top:72px;font-size:13px}.group{margin:14px 0 4px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.group:first-child{margin-top:0}.pages a,.outline a{padding:3px 8px;border-radius:var(--radius-sm);color:var(--text-dim);border-left:2px solid transparent}.pages a:hover,.outline a:hover{color:var(--text);text-decoration:none;background:var(--bg-raised)}.pages a.on{color:var(--text);border-left-color:var(--accent);background:var(--bg-raised)}.outline a.deep{padding-left:20px;color:var(--text-faint)}.body{max-width:var(--measure)}.body h1{margin:0 0 6px;font-size:28px;line-height:1.2;letter-spacing:-.01em}.body h2{margin:40px 0 10px;padding-top:14px;border-top:1px solid var(--line-soft);font-size:19px;line-height:1.3}.body h3{margin:26px 0 6px;font-size:15px}.body p,.body li{color:var(--text-dim)}.body strong{color:var(--text);font-weight:600}.body code{padding:1px 5px;border-radius:4px;background:var(--bg-inset);border:1px solid var(--line-soft);font-family:var(--mono);font-size:.87em;color:var(--text)}.body div[class*=language-]{position:relative;margin:14px 0}.body div[class*=language-]>pre{margin:0}.body div[class*=language-]>.lang{position:absolute;top:7px;right:12px;z-index:1;font-family:var(--mono);font-size:10.5px;color:var(--text-faint);-webkit-user-select:none;user-select:none}.body div[class*=language-]>.copy{position:absolute;top:6px;right:46px;z-index:1;padding:2px 8px;border-color:var(--line);background:var(--bg-raised);font-size:10.5px;color:var(--text-faint);opacity:0;transition:opacity .12s ease}.body div[class*=language-]>.copy:after{content:"copy"}.body div[class*=language-]:hover>.copy,.body div[class*=language-]>.copy:focus-visible{opacity:1}.body div[class*=language-]>.copy.copied:after{content:"copied"}.body pre{margin:14px 0;padding:12px 14px;overflow-x:auto;border:1px solid var(--line-soft);border-radius:var(--radius);background:var(--bg-inset);font-size:13px;line-height:1.55}.body pre code{padding:0;border:0;background:none;font-size:inherit}.body .shiki span{color:var(--shiki-dark)}:root[data-theme=light] .body .shiki span{color:var(--shiki-light)}@media (prefers-color-scheme: light){:root:not([data-theme]) .body .shiki span{color:var(--shiki-light)}}.body blockquote{margin:14px 0;padding:2px 0 2px 14px;border-left:2px solid var(--line);color:var(--text-faint)}.body table{width:100%;margin:16px 0;border-collapse:collapse;font-size:13.5px}.body th{text-align:left;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:0 10px 6px 0;border-bottom:1px solid var(--line)}.body td{padding:7px 10px 7px 0;border-bottom:1px solid var(--line-soft);vertical-align:top;color:var(--text-dim)}.body td:first-child{color:var(--text);white-space:nowrap}.body hr{margin:32px 0;border:0;border-top:1px solid var(--line-soft)}.along{display:flex;justify-content:space-between;gap:16px;margin-top:48px;padding-top:16px;border-top:1px solid var(--line-soft);font-size:13.5px}.along a{display:flex;flex-direction:column;gap:1px;padding:8px 12px;border:1px solid var(--line-soft);border-radius:var(--radius);color:var(--text)}.along a:hover{border-color:var(--line);text-decoration:none}.along .on-to{margin-left:auto;text-align:right}.along span{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}@media (max-width: 1080px){.page{grid-template-columns:200px minmax(0,1fr)}.outline{display:none}}@media (max-width: 760px){.page{grid-template-columns:minmax(0,1fr);padding:20px 16px 64px}.pull{display:inline-block}.pages{display:none}.shell[data-drawer=true] .pages{display:flex;position:static;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line-soft)}.top{padding:10px 16px}}
