@font-face{font-family:Inter Core;font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/inter-core-latin.woff2) format("woff2");unicode-range:U+0-7D,U+7F-B6,U+B8-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-2012,U+2016-2017,U+201A-201B,U+201E-2025,U+2027-203A,U+203C-206F,U+20AC,U+2122,U+2191,U+2193,U+21A9,U+2212,U+2215,U+2318,U+FEFF,U+FFFD}:root{--font-base:"Inter Core","PingFang SC","Microsoft YaHei","Noto Sans CJK SC",-apple-system,BlinkMacSystemFont,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,"Menlo","Monaco","Consolas","Liberation Mono","Courier New",monospace;--brand:#cc2a3d;--text:#3c3c43;--muted:#67676c;--line:#e2e2e3;--soft:#f6f6f7;--header:64px;--left:272px;--right:256px;scrollbar-gutter:stable;font-family:var(--font-base);font-size:16px;color:var(--text);background:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{color:inherit;cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}a,button,input{-webkit-tap-highlight-color:transparent}a:hover,button:hover{color:var(--brand)}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--brand);outline-offset:3px}svg{vertical-align:middle;flex:none}::selection{background:#ef304626}[hidden]{display:none!important}.help-app{padding-top:var(--header)}.site-header{position:fixed;inset:0 0 auto;height:var(--header);background:#fff;border-bottom:1px solid var(--line);z-index:40;display:flex;align-items:center;padding:0 32px;gap:28px}.brand{display:flex;align-items:center;flex:none}.brand img{width:148px;height:auto;display:block}.header-nav{display:flex;align-items:stretch;gap:24px;height:100%;font-size:16px;font-weight:500}.header-nav>a{display:flex;align-items:center;position:relative;padding:0 10px}.header-nav>a.active{color:var(--brand);font-weight:600}.header-nav>a.active:after{content:"";position:absolute;bottom:0;left:10px;right:10px;height:2px;background:var(--brand)}.search-trigger{margin-left:auto;display:flex;align-items:center;gap:8px;padding:0 12px;height:38px;border-radius:6px;background:var(--soft);color:var(--muted);font-size:13px}.search-trigger kbd{border:1px solid var(--line);border-radius:3px;padding:0 5px;line-height:20px;font-family:inherit;font-size:12px;background:#fff}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:7px;border-radius:4px}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;padding:12px;background:var(--text);color:#fff}.skip-link:focus{top:12px}.sidebar{position:fixed;top:var(--header);left:0;bottom:0;width:var(--left);background:var(--soft);z-index:25}.sidebar-scroll{height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bbb transparent;padding:10px 32px 96px}.document-nav>.nav-node+.nav-node{margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.nav-row{min-height:32px}.nav-row>a,.nav-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:32px;padding:4px 6px;font-size:14px;line-height:24px;font-weight:500;color:var(--muted);text-align:left;white-space:nowrap}.depth-0>.nav-row>.nav-group-toggle{font-weight:700;color:var(--text)}.nav-group-toggle>svg{color:#929295;transition:transform .16s}.nav-group-toggle>svg.collapsed{transform:rotate(-90deg)}.nav-node .nav-node{margin-top:3px}.nav-children>.nav-node:first-child{margin-top:0}.depth-2>.nav-row>a,.depth-2>.nav-row>.nav-group-toggle{padding-left:22px}.nav-row.selected>a,.nav-row.selected>.nav-group-toggle{color:var(--brand)}.nav-row.selected>a{background:#fff;border-radius:6px}.nav-row>a:hover,.nav-group-toggle:hover{color:var(--brand)}.mobile-sidebar-header{display:none}.main-content{margin-left:var(--left);margin-right:var(--right);padding:48px 64px 32px;min-height:calc(100dvh - var(--header));outline:none!important}.article{max-width:688px;margin:0 auto}.article>h1{margin:0;font-size:32px;line-height:40px;letter-spacing:-.02em;font-weight:600;scroll-margin-top:96px}.article-intro{font-size:16px;line-height:28px;margin:16px 0}.markdown{font-size:16px;line-height:28px;overflow-wrap:anywhere}.markdown p{margin:16px 0}.markdown strong{font-weight:600}.markdown a,.footer-links a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.markdown a:hover{color:#c92339}.markdown ul,.markdown ol{padding-left:20px;margin:16px 0}.markdown li+li{margin-top:8px}.markdown li{padding-left:0}.markdown li p{margin:8px 0}.markdown h2,.chapter-index h2,.faq-item>h2{margin:48px 0 16px;padding-top:24px;border-top:1px solid var(--line);font-size:24px;line-height:32px;letter-spacing:-.02em;font-weight:600;scroll-margin-top:88px;position:relative}.markdown h3{font-size:20px;line-height:28px;font-weight:600;margin:32px 0 0;scroll-margin-top:88px;position:relative}.markdown h4{font-size:16px;line-height:24px;font-weight:600;margin:24px 0 0;scroll-margin-top:88px;position:relative}.heading-anchor{position:absolute;left:-23px;top:auto;color:var(--brand)!important;font-weight:500;text-decoration:none!important;opacity:0}.markdown :is(h2,h3,h4):hover .heading-anchor,.faq-item>h2:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.markdown hr{border:0;border-top:1px solid var(--line);margin:32px 0}.markdown code{font-family:var(--font-mono);font-size:14px;padding:3px 6px;background:#f1f1f3;border-radius:4px;color:var(--brand)}.table-scroll{max-width:100%;overflow-x:auto;margin:20px 0;scrollbar-width:thin;border:1px solid var(--line)}.markdown table{border-collapse:collapse;width:100%;min-width:500px;font-size:14px;line-height:24px}.markdown th,.markdown td{padding:8px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.markdown th{font-weight:600;background:var(--soft)}.markdown tr:last-child td{border-bottom:0}.markdown td:last-child,.markdown th:last-child{border-right:0}.code-block{position:relative;background:var(--soft);border-radius:8px;margin:16px 0}.code-block pre{padding:40px 24px 20px;margin:0;font:14px/24px var(--font-base);white-space:pre-wrap;overflow-wrap:anywhere}.code-block pre code{padding:0;background:none;color:var(--text);font:inherit}.command-block pre{font-family:var(--font-mono);white-space:pre;overflow-x:auto}.copy-button{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);padding:6px 8px;border:1px solid var(--line);border-radius:4px;background:#fff;min-height:30px}.code-block>.copy-button{position:absolute;right:8px;top:7px}.custom-block{margin:16px 0;padding:16px;border-radius:6px;background:#f6f7f9;border-left:4px solid var(--brand);font-size:14px;line-height:24px}.custom-block-title{margin:0 0 8px!important;font-weight:600}.custom-block p:last-child{margin-bottom:0}.guide-figure{margin:16px 0;max-width:100%}.figure-preview{display:block;position:relative;max-width:100%;padding:0;cursor:zoom-in}.figure-preview img{display:block;width:auto;max-width:100%;height:auto;max-height:700px;object-fit:contain;border-radius:4px}.figure-zoom{position:absolute;right:8px;bottom:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:4px;background:#fffffff0;color:var(--muted);opacity:0;transition:opacity .15s}.figure-preview:hover .figure-zoom,.figure-preview:focus-visible .figure-zoom{opacity:1}.guide-figure figcaption{font-size:13px;line-height:22px;color:var(--muted);margin-top:8px}.compact-figure .figure-preview{max-width:440px}.image-dialog{padding:0;border:0;border-radius:8px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);background:#fff;color:var(--text);box-shadow:0 20px 80px #0004}.image-dialog::backdrop{background:#16191dcc}.image-dialog-content{padding:0 20px 16px}.image-dialog-toolbar{height:52px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--muted);font-size:13px}.image-dialog-toolbar>div{display:flex;gap:12px;align-items:center}.image-size-toggle{padding:4px 6px;border:1px solid var(--line);border-radius:4px;font-size:13px;line-height:22px;white-space:nowrap}.image-dialog-toolbar a{color:var(--muted);text-decoration:none}.image-stage{max-width:calc(100vw - 88px);overflow:auto;overscroll-behavior:contain}.image-stage>img{display:block;max-width:100%;max-height:calc(100dvh - 175px);width:auto;height:auto;object-fit:contain;margin:auto}.image-stage.is-zoomed{width:min(1000px,calc(100vw - 88px));height:calc(100dvh - 220px);touch-action:none;cursor:grab}.image-stage.is-zoomed:active{cursor:grabbing}.image-stage.is-zoomed>img{max-width:none;max-height:none;margin:0}.image-dialog-content>p{max-width:900px;margin:14px 0 0;font-size:13px;line-height:22px}.chapter-index h2>a{display:flex;justify-content:space-between;align-items:center;color:var(--text)}.chapter-index h2>a:hover{color:var(--brand)}.chapter-index ul{padding-left:20px;line-height:28px;font-size:16px;margin:16px 0}.chapter-index li+li{margin-top:8px}.chapter-index li a{color:var(--brand)}.document-footer{margin-top:64px}.footer-meta{font-size:14px;line-height:24px;display:flex;justify-content:space-between;gap:16px;align-items:center;color:var(--muted)}.copy-page{border:0;padding:0;background:none}.page-pagination{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:24px;margin-top:24px;border-top:1px solid var(--line)}.page-pagination>a{display:flex;flex-direction:column;border:1px solid var(--line);padding:11px 16px 12px;border-radius:4px;min-width:0;font-size:14px;line-height:24px}.page-pagination>a:hover{border-color:var(--brand)}.page-pagination>a>span{font-size:12px;color:var(--muted)}.page-pagination strong{font-weight:500;color:var(--brand)}.next-page{text-align:right}.footer-links{display:flex;gap:20px;margin-top:28px;font-size:13px;color:var(--muted)}.footer-links a{color:var(--muted);text-decoration:none}.right-sidebar{position:fixed;right:0;top:var(--header);bottom:0;width:var(--right);padding:48px 32px 24px 0;overflow-y:auto;scrollbar-width:thin}.toc{border-left:1px solid var(--line);padding-left:16px}.toc>h2{font-size:14px;line-height:32px;font-weight:600;margin:0}.outline{display:flex;flex-direction:column}.toc-link{position:relative;display:block;width:100%;text-align:left;font-size:14px;line-height:32px;color:var(--muted);padding:0;min-width:0;white-space:nowrap;overflow:visible}.toc-link>span{display:block;overflow:hidden;text-overflow:ellipsis}.toc-link.level-3{padding-left:16px}.toc-link.level-4{padding-left:32px}.toc-link.active{color:var(--brand)}.toc-link.active:before{content:"";position:absolute;left:-17px;top:7px;height:18px;width:2px;background:var(--brand)}.mobile-docbar,.mobile-toc{display:none}.not-found{max-width:688px;margin:auto;line-height:28px}.not-found a{color:var(--brand)}.search-dialog{border:0;padding:0;margin:64px auto 0;width:900px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 96px);border-radius:6px;background:#fff;color:var(--text);box-shadow:0 16px 50px #0003}.search-dialog::backdrop{background:#0009}.search-modal-content{padding:12px 12px 0}.search-input-row{height:44px;border:1px solid var(--brand);border-radius:4px;display:flex;align-items:center;gap:12px;padding:0 12px}.search-input-row input{width:100%;flex:1;min-width:0;border:0;padding:0;font-size:16px;line-height:24px;outline:none!important;background:none;color:var(--text)}.search-input-row input::-webkit-search-cancel-button{display:none}.search-escape{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 4px}.search-results{margin-top:12px;overflow-y:auto;max-height:min(550px,calc(100dvh - 210px))}.search-results>a{position:relative;display:block;padding:12px 40px 12px 14px;margin:4px 0;border:1px solid var(--line);border-radius:4px;line-height:24px}.search-results>a.result-active{border-color:var(--brand);background:#ef304606}.result-category{display:block;font-size:12px;color:var(--muted)}.search-results strong{font-size:16px;font-weight:600}.search-results p{font-size:13px;line-height:22px;color:var(--muted);margin:4px 0 0}.search-results>a>svg{position:absolute;right:12px;top:40%}.search-results mark{color:var(--brand);background:#ef304612}.search-hint{display:flex;align-items:center;gap:16px;padding:16px 0 12px;font-size:12px;color:var(--muted)}.search-hint kbd{font-family:inherit;font-size:12px;line-height:22px;padding:1px 4px;background:var(--soft);border:1px solid var(--line);border-radius:3px;margin-right:3px}.search-empty{padding:32px 16px;text-align:center;font-size:14px;line-height:24px}.search-empty p{font-weight:600}.search-empty span{color:var(--muted)}@media(max-width:1279px){:root{--right:224px}.main-content{padding:48px 32px 32px}.right-sidebar{padding-right:24px}.site-header{gap:20px}}@media(max-width:1100px){:root{--right:0px}.right-sidebar{display:none}.main-content{padding:40px 48px 32px}.mobile-docbar{display:flex;position:sticky;top:var(--header);z-index:30;height:48px;background:#fff;border-bottom:1px solid var(--line);align-items:center;justify-content:flex-end;padding:0 24px;font-size:12px;color:var(--muted)}.mobile-docbar>button:first-child{display:none}.mobile-docbar>button{display:flex;align-items:center;gap:7px;height:44px}.mobile-toc{display:block;position:fixed;top:112px;right:24px;width:320px;max-width:calc(100vw - 48px);max-height:calc(100dvh - 150px);overflow:auto;z-index:35;background:#fff;border:1px solid var(--line);border-radius:4px;padding:10px 16px;box-shadow:0 8px 25px #0001}.mobile-toc .toc-link{white-space:normal;min-height:40px;line-height:24px;padding-top:8px;padding-bottom:8px}}@media(max-width:959px){:root{--left:0px}.site-header{padding:0 24px;gap:20px}.brand img{width:132px}.header-nav{font-size:14px;gap:12px}.main-content{padding:32px 24px}.article>h1{font-size:28px;line-height:40px}.mobile-docbar{justify-content:space-between}.mobile-docbar>button:first-child{display:flex}.sidebar{top:0;width:320px;max-width:calc(100vw - 32px);transform:translate(-100%);visibility:hidden;transition:transform .18s,visibility .18s;z-index:70;box-shadow:4px 0 20px #0001}.sidebar.is-open{transform:translate(0);visibility:visible}.mobile-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:14px 26px;height:64px;font-size:14px;font-weight:600;border-bottom:1px solid var(--line)}.sidebar-scroll{height:calc(100% - 64px);padding:16px 26px 48px}.nav-row>a,.nav-group-toggle{min-height:40px}.nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:60}.article h2,.markdown h3,.markdown h4{scroll-margin-top:132px}.article>h1{scroll-margin-top:132px}.heading-anchor{left:-18px}.document-footer{margin-top:48px}}@media(max-width:599px){.site-header{padding:0 24px;gap:16px}.header-nav>a:nth-child(2){display:none}.header-nav{gap:0;font-size:14px}.header-nav>a{padding:0}.header-nav>a.active:after{left:0;right:0}.brand img{width:120px}.search-trigger{padding:7px;background:none}.search-trigger span,.search-trigger kbd{display:none}.search-trigger svg{width:21px;height:21px}.mobile-toc{left:24px;right:24px;width:auto}.table-scroll{margin:16px 0}.markdown table{min-width:480px}.markdown th,.markdown td{padding:8px 12px}.figure-zoom{opacity:1}.guide-figure figcaption{font-size:12px;line-height:20px}.code-block pre{padding:42px 16px 16px}.footer-meta{align-items:flex-start;flex-direction:column;gap:8px}.footer-links{font-size:12px}.page-pagination{gap:12px}.page-pagination>a{padding:10px 12px;font-size:14px}.search-dialog{margin:16px auto 0;max-height:calc(100dvh - 32px)}.search-hint{gap:12px;font-size:11px}.search-results{max-height:calc(100dvh - 160px)}.search-hint kbd{font-size:11px}.image-dialog{max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.image-dialog-content{padding:0 12px 14px}.image-stage{max-width:calc(100vw - 44px)}.image-stage.is-zoomed{width:calc(100vw - 44px)}.image-dialog-toolbar{gap:12px}.image-dialog-toolbar>div{gap:8px}.image-dialog-content>p{font-size:12px;line-height:20px}}@media(max-width:359px){.site-header{padding:0 16px;gap:14px}.brand img{width:110px}.main-content{padding:28px 20px}.mobile-docbar{padding:0 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.faq-item .markdown h3{font-size:16px;line-height:24px;margin-top:24px}.faq-item>h2{font-size:20px;line-height:28px}.faq-item>h2>.heading-anchor{top:24px}.article:has(>#sec-9-2) .table-scroll td:last-child a{white-space:nowrap}.article:has(>#sec-8-4) .table-scroll:has(code) :is(th,td):nth-child(-n+2){white-space:nowrap}@media(max-width:599px){.article>h1:is(#sec-1,[id^=sec-1-],#sec-2,[id^=sec-2-],#sec-3,[id^=sec-3-]){text-wrap:balance}}
