@font-face{font-family:'Public Sans';font-style:normal;font-weight:100 900;font-display:swap;src:url('./public-sans.woff2') format('woff2')}
:root{color-scheme:light;--bg:#fdfdfd;--surface:#f7f8fa;--text:#202124;--muted:#666a72;--line:#e8e9ed;--accent:#216c9b;--active:#ecf5fb;--code:#f7f8fa;--header:rgba(253,253,253,.96);font-family:'Public Sans',-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif;font-synthesis:none}
:root[data-theme='dark']{color-scheme:dark;--bg:#151619;--surface:#1b1d21;--text:#eceef2;--muted:#a7abb5;--line:#30333a;--accent:#8ec9ee;--active:#1c2d39;--code:#1b1d21;--header:rgba(21,22,25,.96)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;cursor:pointer}button:disabled{cursor:wait}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,.table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:5px}
.skip-link{position:fixed;left:16px;top:-60px;background:var(--bg);border:1px solid var(--line);padding:12px 18px;z-index:3}.skip-link:focus{top:12px}
.site-header{height:68px;position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line);background:var(--header)}.header-inner{height:100%;max-width:1216px;padding:0 32px;margin:auto;display:flex;align-items:center;gap:25px}.brand{font-size:19px;letter-spacing:-.65px;font-weight:700;white-space:nowrap}.brand span{color:var(--muted);font-weight:450}.header-label{font-size:12px;color:var(--muted);padding-left:25px;border-left:1px solid var(--line)}.header-inner nav{display:flex;align-items:center;gap:18px;margin-left:auto}.console-link{font-size:12px;color:var(--muted)}#theme-toggle{border:1px solid var(--line);background:var(--bg);color:var(--text);padding:7px 11px;border-radius:7px;font-size:12px;white-space:nowrap}#theme-toggle:hover{background:var(--surface)}#theme-toggle:active,.copy-button:active{transform:translateY(1px)}
.page-layout{max-width:1216px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;padding:0 32px;margin:auto}.sidebar{border-right:1px solid var(--line)}.sidebar-inner{position:sticky;top:100px;padding:12px 22px 30px 0}.sidebar-label{font-size:11px;color:var(--muted);margin:0 0 7px}.sidebar-title{font-size:14px;font-weight:600}.toc-label{margin:36px 0 13px;font-size:11px;color:var(--muted)}.toc{display:grid;gap:5px}.toc a{display:block;color:var(--muted);font-size:12px;line-height:1.5;padding:8px 10px;border-radius:6px}.toc a:hover{color:var(--text);background:var(--surface)}.toc a[aria-current='location']{color:var(--accent);background:var(--active);font-weight:550}.sidebar-note{border-top:1px solid var(--line);margin-top:30px;padding:22px 10px 0;display:grid;gap:10px}.sidebar-note span{color:var(--muted);font-size:11px}.sidebar-note code{font-size:10px;color:var(--muted)}
.document{min-width:0;max-width:820px;padding:34px 0 44px}.breadcrumb{display:flex;gap:11px;color:var(--muted);font-size:11px;align-items:center;margin-bottom:36px}.breadcrumb a:hover{color:var(--accent)}.mobile-toc{display:none}article{font-size:13px;line-height:1.9;overflow-wrap:break-word}h1,h2,h3{line-height:1.5;color:var(--text);letter-spacing:-.02em}h1{font-size:32px;line-height:1.5;max-width:650px;margin:0 0 22px;font-weight:650}h2{font-size:21px;font-weight:600;margin:46px 0 20px;padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:94px;display:flex;align-items:center;gap:12px}h3{font-size:14px;font-weight:600;margin:28px 0 14px}p{margin:12px 0 18px}p strong{font-weight:600}blockquote{margin:0 0 25px;border-left:2px solid var(--line);padding:2px 0 2px 16px;color:var(--muted);font-size:11px}blockquote p{margin:0;line-height:1.95;white-space:pre-line}article>p:first-of-type{margin-top:24px}.anchor{font-size:14px;color:var(--muted);opacity:0;transition:opacity .15s}.anchor:focus-visible,h2:hover .anchor{opacity:1}
code{font-family:'SFMono-Regular',Consolas,'Liberation Mono',monospace;font-size:.9em}p code,li code,td code,blockquote code{color:var(--text);background:var(--surface);padding:3px 5px;border-radius:4px;box-decoration-break:clone}ul,ol{margin:16px 0 24px;padding-left:23px}li{padding-left:3px;margin:9px 0}li::marker{color:var(--muted)}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;margin:20px 0 25px;max-width:100%}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left;white-space:nowrap}th{font-weight:550;background:var(--surface);color:var(--muted);padding:12px 16px}td{padding:13px 16px;border-top:1px solid var(--line)}td:last-child{white-space:normal;min-width:220px}th:first-child{width:115px}tbody tr:hover{background:var(--surface)}
.code-block{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:18px 0 28px;background:var(--code)}.code-toolbar{height:40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 14px;color:var(--muted);font-size:10px}.copy-button{font-size:10px;padding:5px 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted)}.copy-button:hover{background:var(--bg);border-color:var(--line);color:var(--text)}.shiki{margin:0;padding:20px 18px;overflow-x:auto;font-size:11px;line-height:1.9;background:var(--code)!important;tab-size:2}.shiki code{font-size:inherit}.shiki span{color:var(--shiki-light)}[data-theme='dark'] .shiki span{color:var(--shiki-dark)}.document-footer{margin-top:44px;border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1440px){.page-layout{gap:80px}.document{padding-top:44px}.breadcrumb{margin-bottom:44px}}
@media(max-width:980px){.page-layout{gap:35px;grid-template-columns:185px minmax(0,1fr);padding:0 24px}.header-inner{padding:0 24px}.sidebar-inner{padding-right:15px}h1{font-size:28px}article{font-size:13px}.toc a{padding-left:7px}}
@media(max-width:720px){.site-header{height:60px}.header-inner{padding:0 20px;gap:15px}.brand{font-size:18px}.header-label{display:none}.header-inner nav{gap:12px}.page-layout{display:block;padding:0 20px}.sidebar{display:none}.document{padding:25px 0 32px}.breadcrumb{margin-bottom:22px}.mobile-toc{display:block;margin:0 0 27px;border:1px solid var(--line);border-radius:7px;font-size:12px}.mobile-toc summary{padding:11px 14px;cursor:pointer;color:var(--muted)}.mobile-toc nav{padding:0 14px 12px;display:grid;gap:0}.mobile-toc a{padding:8px 0;color:var(--muted)}h1{font-size:25px;line-height:1.55;text-wrap:balance;margin-bottom:20px}h2{font-size:19px;margin-top:34px;padding-top:24px}.anchor{opacity:1}article{font-size:13px;line-height:1.95}blockquote{font-size:11px}th,td{padding:10px 12px}.shiki{padding:16px 14px;font-size:10px}.code-toolbar{height:38px}.document-footer{margin-top:32px}.console-link{font-size:11px}}
@media(max-width:370px){.header-inner{padding:0 14px}.page-layout{padding:0 16px}.console-link{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.sidebar,.breadcrumb,.mobile-toc,.copy-button,.document-footer,.anchor{display:none}.page-layout{display:block;padding:0}.document{max-width:none;padding:0}.code-block,.table-scroll{break-inside:avoid}.shiki{white-space:pre-wrap}h2{break-after:avoid}}
