.page-head{padding:calc(var(--topbar-h) + clamp(48px, 7vw, 96px)) 0 clamp(40px, 5vw, 72px)}.crumbs{color:var(--text-muted);gap:8px;margin-bottom:28px;font-size:14px;display:flex}.crumbs a:hover{color:var(--text);text-decoration:underline}.page-head h1{letter-spacing:-.035em;font-size:clamp(40px,6.4vw,88px);line-height:1.05}:lang(zh) .page-head h1{letter-spacing:-.02em;line-height:1.1}.page-head .dek{font-size:var(--fs-lead);color:var(--text-muted);max-width:30em;margin-top:24px;line-height:1.4}:lang(zh) .page-head .dek{line-height:1.55}.page-head .meta{color:var(--text-faint);margin-top:24px;font-size:14px}.guide{padding-block:0 var(--section-y);grid-template-columns:252px minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.doc-foot{margin-top:calc(-1 * var(--section-y) + 24px);padding-bottom:var(--section-y)}.doc-foot .page-nav{max-width:var(--wrap-narrow);margin-top:0;margin-left:calc(252px + clamp(32px,6vw,96px))}.toc{top:calc(var(--topbar-h) + 24px);background:var(--bg-alt);border-radius:var(--r-lg);padding:24px 22px 22px;font-size:14.5px;position:sticky}.toc summary{color:var(--text-muted);cursor:default;margin-bottom:12px;font-size:13px;font-weight:600;list-style:none}.toc summary::-webkit-details-marker{display:none}.toc ol{margin:0;padding:0;list-style:none}.toc a{color:var(--text-muted);transition:color var(--dur-fast);padding:6px 0;line-height:1.4;display:block}.toc a:hover{color:var(--text)}.toc a.on{color:var(--text);font-weight:600}.toc ol ol{padding-left:14px}.toc ol ol a{font-size:13.5px}.prose{max-width:var(--wrap-narrow);color:var(--text);counter-reset:sec;font-size:18px;line-height:1.75}:lang(zh) .prose{line-height:1.85}.prose h2{letter-spacing:-.025em;margin:96px 0 24px;font-size:clamp(30px,3.4vw,44px);line-height:1.1}.prose h2:first-child{margin-top:0}.prose.numbered h2{counter-increment:sec}.prose.numbered h2:before{content:counter(sec, decimal-leading-zero);letter-spacing:0;color:var(--text-faint);margin-bottom:12px;font-size:14px;font-weight:600;display:block}.prose h3{letter-spacing:-.015em;margin:48px 0 14px;font-size:24px}.prose p{margin:0 0 20px}.prose a{text-underline-offset:4px;text-decoration:underline 1px}.prose ul,.prose ol{margin:0 0 24px;padding-left:0;list-style:none}.prose ul li{margin-bottom:10px;padding-left:24px;position:relative}.prose ul li:before{content:"";background:var(--text-faint);border-radius:50%;width:6px;height:6px;position:absolute;top:.85em;left:6px}.prose ol{counter-reset:o}.prose ol>li{counter-increment:o;margin:0;padding:0 0 18px 48px;position:relative}.prose ol>li:before{content:counter(o);background:var(--bg-alt);width:30px;height:30px;color:var(--text);border-radius:50%;place-items:center;font-size:14px;font-weight:600;line-height:1;display:grid;position:absolute;top:.2em;left:0}.prose code{font-family:var(--font-mono);background:var(--bg-alt);color:var(--text);border-radius:6px;padding:2px 7px;font-size:.85em}.prose pre{border-radius:var(--r-md);color:#f5f5f7;font-family:var(--font-mono);background:#1d1d1f;margin:0 0 28px;padding:22px 26px;font-size:14.5px;line-height:1.7;overflow-x:auto}[data-theme=dark] .prose pre{background:#1c1c1e;box-shadow:0 0 0 1px #ffffff1a}.prose pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.prose pre .c{color:#86868b}.prose pre .k{color:#ffb340}.prose kbd{font-family:var(--font-sans);background:var(--bg);color:var(--text);border:1px solid var(--line);border-bottom-width:2px;border-radius:6px;padding:1px 8px 2px;font-size:.82em;font-weight:500}[data-theme=dark] .prose kbd{background:var(--tile-2);border-color:#48484a}.callout{border-radius:var(--r-lg);background:var(--bg-alt);margin:32px 0;padding:24px 28px;font-size:16.5px;line-height:1.65}.callout>b:first-child{color:var(--text);margin-bottom:6px;font-size:14px;font-weight:600;display:block}.callout p{color:var(--text-muted);margin:0 0 8px}.callout p:last-child{margin:0}.callout.warn>b:first-child{color:#c4261d}[data-theme=dark] .callout.warn>b:first-child{color:#ff6b61}.prose table{border-collapse:collapse;width:100%;margin:0 0 28px;font-size:16px;line-height:1.6}.prose th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--line);padding:10px 16px 10px 0;font-size:13px;font-weight:600}.prose td{border-bottom:1px solid var(--line-soft);vertical-align:top;padding:16px 16px 16px 0}.prose td:first-child{font-weight:600}.prose td code{white-space:nowrap}.prose .rel-date{color:var(--text-muted);margin-bottom:20px;font-size:15px}.page-nav{grid-template-columns:1fr 1fr;gap:16px;margin-top:96px;display:grid}.page-nav a{background:var(--bg-alt);border-radius:var(--r-lg);transition:background var(--dur-fast);padding:24px 28px;text-decoration:none}.page-nav a:hover{background:var(--line-soft)}.page-nav small{color:var(--text-muted);margin-bottom:4px;font-size:13px;display:block}.page-nav a:last-child{text-align:right}.page-nav b{letter-spacing:-.01em;font-size:20px}.nf{text-align:center;min-height:70vh;padding:calc(var(--topbar-h) + 64px) 0 96px;align-content:center;justify-items:center;gap:40px;display:grid}.nf h1,.nf h2{letter-spacing:-.03em;font-size:clamp(36px,5vw,64px);line-height:1.1}.nf p{font-size:var(--fs-lead);color:var(--text-muted);margin-top:16px}@media (width<=860px){.guide{grid-template-columns:1fr}.toc{position:static}.toc summary{cursor:pointer;margin-bottom:0}.toc details[open] summary{margin-bottom:12px}.doc-foot{margin-top:0}.doc-foot .page-nav{margin-left:0}}@media (width<=640px){.prose table{display:block;overflow-x:auto}.page-nav{grid-template-columns:1fr}}
