:root{--ground:#f2f2f0;--surface:#fff;--sunken:#e9e9e6;--ink:#111214;--ink-2:#3b3e43;--muted:#666a71;--rule:#1112141a;--rule-strong:#11121433;--hud:#0b0b0c;--on-ink:#fff;--header:#f2f2f0d1;--q-green:#36db68;--q-yellow:#e9cd43;--q-red:#f34f39;--shadow:0 1px 2px #1112140f, 0 12px 32px #11121414;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI Variable Display", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--gutter:max(20px, env(safe-area-inset-left,0px));--gutter-r:max(20px, env(safe-area-inset-right,0px));--edge-x:max(clamp(20px, 3.2vw, 56px), env(safe-area-inset-left,0px));--edge-x-r:max(clamp(20px, 3.2vw, 56px), env(safe-area-inset-right,0px));--measure:680px;--wide:1080px;--header-h:52px;--section:clamp(96px, 14vw, 168px);color-scheme:light}@media (prefers-color-scheme:dark){:root{--ground:#0a0a0b;--surface:#141517;--sunken:#1b1c1f;--ink:#edeef0;--ink-2:#c4c7cc;--muted:#8c9198;--rule:#ffffff17;--rule-strong:#ffffff2e;--hud:#000;--on-ink:#0a0a0b;--header:#0a0a0bc7;--shadow:0 1px 2px #0006, 0 12px 32px #00000059;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 24px)}body{background:var(--ground);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.55}:lang(zh) body,body:lang(zh){font-size:16px;line-height:1.75}h1,h2,h3,h4{font-family:var(--font-display);text-wrap:balance;margin:0;font-weight:650}h1{letter-spacing:-.03em;font-size:clamp(40px,6.4vw,76px);font-weight:700;line-height:1.04}h2{letter-spacing:-.022em;font-size:clamp(30px,3.6vw,42px);line-height:1.12}h3{letter-spacing:-.01em;font-size:20px;line-height:1.3}:lang(zh) h1,:lang(zh) h2,:lang(zh) h3{letter-spacing:0}p{margin:0}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--rule-strong)}a:hover{text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:6px}img,svg,video{max-width:100%}.mono,code,kbd{font-family:var(--mono);font-variant-numeric:tabular-nums}code{background:var(--sunken);border-radius:5px;padding:.1em .35em;font-size:.88em}[hidden]{display:none!important}.page{padding-left:var(--gutter);padding-right:var(--gutter-r)}.wide{max-width:var(--wide);margin-inline:auto}.measure{max-width:var(--measure);margin-inline:auto}.section{padding-block:var(--section) 0}.lede{color:var(--ink-2);font-size:clamp(18px,1.6vw,21px);line-height:1.5}:lang(zh) .lede{line-height:1.7}.eyebrow{letter-spacing:.02em;color:var(--muted);font-size:13px;font-weight:600}.muted{color:var(--muted)}.vh{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{min-height:44px;font:600 15px/1 var(--font);white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 22px;text-decoration:none;transition:transform .15s,background-color .15s,border-color .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--ink);color:var(--on-ink)}.btn-primary:hover{background:color-mix(in srgb, var(--ink) 86%, var(--ground))}.btn-secondary{color:var(--ink);border-color:var(--rule-strong);background:0 0}.btn-secondary:hover{border-color:var(--ink)}.btn-small{min-height:34px;padding:0 14px;font-size:14px}.btn svg{flex:none;width:16px;height:16px}.text-link{text-decoration:underline;text-decoration-color:var(--rule-strong);font-weight:500}.text-link:hover{text-decoration-color:currentColor}.sample{font-family:var(--mono);color:var(--muted);letter-spacing:.01em;font-size:12px}@media (prefers-reduced-motion:reduce){html:not([data-motion=on]) *,html:not([data-motion=on]) :before,html:not([data-motion=on]) :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html[data-motion=off] *,html[data-motion=off] :before,html[data-motion=off] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.door[data-astro-cid-sodkgh6f]{flex-direction:column;align-items:center;gap:10px;display:inline-flex}.door-note[data-astro-cid-sodkgh6f]{color:var(--muted);font-size:12.5px}.bar[data-astro-cid-nen7h5rs]{z-index:40;background:var(--header);backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid var(--rule);padding-top:env(safe-area-inset-top,0px);position:sticky;top:0}@supports not (backdrop-filter:blur(1px)){.bar[data-astro-cid-nen7h5rs]{-webkit-backdrop-filter:saturate(1.4)blur(14px)}}.bar[data-astro-cid-nen7h5rs]{padding-left:var(--edge-x);padding-right:var(--edge-x-r)}.bar-inner[data-astro-cid-nen7h5rs]{height:var(--header-h);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;display:grid}.brand[data-astro-cid-nen7h5rs]{letter-spacing:-.01em;justify-self:start;align-items:center;gap:10px;font-size:16px;font-weight:650;text-decoration:none;display:inline-flex}.brand[data-astro-cid-nen7h5rs] img[data-astro-cid-nen7h5rs]{width:30px;height:30px;margin:-4px -2px}.bar-center[data-astro-cid-nen7h5rs]{min-width:0}.bar-nav[data-astro-cid-nen7h5rs]{justify-self:end;align-items:center;gap:18px;display:flex}.nav-link[data-astro-cid-nen7h5rs]{white-space:nowrap;color:var(--ink-2);font-size:14px;font-weight:500;text-decoration:none}.nav-link[data-astro-cid-nen7h5rs]:hover{color:var(--ink)}.nav-icon[data-astro-cid-nen7h5rs]{color:var(--ink-2);display:inline-flex}.nav-icon[data-astro-cid-nen7h5rs]:hover{color:var(--ink)}.nav-icon[data-astro-cid-nen7h5rs]{align-items:center}.stars[data-astro-cid-nen7h5rs]{opacity:0;grid-template-columns:0fr;transition:grid-template-columns .35s cubic-bezier(.2,.8,.2,1),opacity .35s;display:inline-grid}.stars[data-astro-cid-nen7h5rs].is-in{opacity:1;grid-template-columns:1fr}.stars-inner[data-astro-cid-nen7h5rs]{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:4px;min-width:0;padding-left:7px;font-size:13px;font-weight:500;display:inline-flex;overflow:hidden}.stars[data-astro-cid-nen7h5rs] svg[data-astro-cid-nen7h5rs]{flex:none}@media (prefers-reduced-motion:reduce){.stars[data-astro-cid-nen7h5rs]{transition:none}}@media (width<=760px){.wide-only[data-astro-cid-nen7h5rs],.nav-icon[data-astro-cid-nen7h5rs]{display:none}.bar-nav[data-astro-cid-nen7h5rs]{gap:14px}.bar-inner[data-astro-cid-nen7h5rs]{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.brand[data-astro-cid-nen7h5rs]{white-space:nowrap}}@media (width<=359px){.brand[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{display:none}}.foot[data-astro-cid-jo6i4kqk]{margin-top:var(--section);border-top:1px solid var(--rule);padding-block:40px calc(40px + env(safe-area-inset-bottom,0px));color:var(--muted);font-size:14px}.foot-inner[data-astro-cid-jo6i4kqk]{grid-template-columns:auto 1fr auto;align-items:center;gap:16px 32px;display:grid}.foot-brand[data-astro-cid-jo6i4kqk]{color:var(--ink);align-items:center;gap:8px;font-weight:600;display:inline-flex}.foot-links[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:8px 22px;display:flex}.foot-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{text-decoration:none}.foot-links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink)}.foot-meta[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.motion-toggle[data-astro-cid-jo6i4kqk]{font:inherit;color:inherit;border:1px solid var(--rule-strong);cursor:pointer;background:0 0;border-radius:999px;padding:3px 12px}.marks[data-astro-cid-jo6i4kqk]{grid-column:1/-1;margin:0;font-size:12px;line-height:1.5}.icp[data-astro-cid-jo6i4kqk]{text-align:center;grid-column:1/-1;font-size:13px}.icp[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{text-decoration:none}@media (width<=760px){.foot-inner[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}}.skip{z-index:100;background:var(--ink);color:var(--on-ink);border-radius:8px;padding:10px 14px;text-decoration:none;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.suggest{background:var(--sunken);color:var(--ink-2);justify-content:center;gap:12px;padding-block:8px;font-size:14px;display:flex}.suggest[hidden]{display:none}.suggest a{font-weight:600}
