:root{--paper: #f7f5f1;--paper-2: #ffffff;--ink: #14120f;--ink-soft: #3a352e;--muted: #6f685d;--line: #e2dcd2;--line-strong: #cdc5b8;--accent: #e8460c;--accent-ink: #ffffff;--term-bg: #16140f;--term-ink: #ece7dd;--term-dim: #7d766a;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Code", Menlo, Consolas, monospace;--w: 1120px;--pad: clamp(20px, 5vw, 48px);--radius: 4px;color-scheme:light}:root[data-theme=dark]{--paper: #0f0e0c;--paper-2: #171512;--ink: #f2efe8;--ink-soft: #d8d2c6;--muted: #948c7e;--line: #2a2621;--line-strong: #3d3830;--accent: #ff5a1f;--accent-ink: #14120f;--term-bg: #080706;--term-ink: #ece7dd;--term-dim: #6f695e;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #0f0e0c;--paper-2: #171512;--ink: #f2efe8;--ink-soft: #d8d2c6;--muted: #948c7e;--line: #2a2621;--line-strong: #3d3830;--accent: #ff5a1f;--accent-ink: #14120f;--term-bg: #080706;--term-ink: #ece7dd;--term-dim: #6f695e;color-scheme:dark}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.mono{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500}.display{font-weight:750;letter-spacing:-.045em;line-height:1.02;margin:0;text-wrap:balance}.lede{font-size:clamp(1.02rem,1.6vw,1.18rem);line-height:1.65;color:var(--muted);max-width:54ch;margin:0;text-wrap:pretty}.wrap{width:100%;max-width:var(--w);margin-inline:auto;padding-inline:var(--pad)}.section{padding-block:clamp(48px,7.5vw,88px);border-top:1px solid var(--line)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:clamp(28px,4vw,44px)}.section-head .idx{color:var(--muted)}.section-head h2{font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:700;letter-spacing:-.03em;margin:0;line-height:1.2}.section-head .hint{color:var(--muted);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-align:right}.btn{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:var(--radius);border:1px solid var(--ink);background:var(--ink);color:var(--paper);font-size:.88rem;font-weight:600;letter-spacing:.01em;transition:transform .18s ease,opacity .18s ease,background .18s ease}.btn:hover{transform:translateY(-1px);opacity:.88}.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line-strong)}.btn.ghost:hover{border-color:var(--ink);opacity:1}.btn .arrow{transition:transform .18s ease}.btn:hover .arrow{transform:translate(3px)}.term{background:var(--term-bg);color:var(--term-ink);border-radius:8px;padding:18px 20px;font-family:var(--font-mono);font-size:.82rem;line-height:1.75;overflow-x:auto;border:1px solid rgba(255,255,255,.08)}.term .prompt{color:var(--accent);user-select:none;margin-right:8px}.term .dim{color:var(--term-dim)}.prose pre{background:var(--term-bg);color:var(--term-ink);border-radius:8px;padding:18px 20px;overflow-x:auto;font-family:var(--font-mono);font-size:.82rem;line-height:1.75;border:1px solid rgba(255,255,255,.08);margin:22px 0}.prose pre code{background:none;padding:0;font-size:inherit;color:inherit}.prose{max-width:66ch;font-size:1.02rem;line-height:1.8;color:var(--ink-soft)}.prose>*+*{margin-top:1.1em}.prose h2{font-size:clamp(1.15rem,2vw,1.35rem);font-weight:700;letter-spacing:-.02em;line-height:1.3;color:var(--ink);margin-top:2.4em;margin-bottom:.2em;display:flex;align-items:baseline;gap:10px}.prose h2:before{content:"";width:18px;height:2px;background:var(--accent);flex:none;transform:translateY(-5px)}.prose h3{font-size:1rem;font-weight:650;color:var(--ink);margin-top:1.8em;margin-bottom:.2em}.prose strong{color:var(--ink);font-weight:650}.prose ul,.prose ol{padding-left:1.2em}.prose li{margin-block:.4em}.prose li::marker{color:var(--accent)}.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;transition:text-decoration-color .18s ease}.prose a:hover{text-decoration-color:var(--accent)}.prose code:not(pre code){font-family:var(--font-mono);font-size:.86em;background:var(--paper-2);border:1px solid var(--line);border-radius:3px;padding:.1em .36em}.prose blockquote{margin:1.6em 0;padding-left:18px;border-left:2px solid var(--accent);color:var(--ink);font-size:1.05em}.rule{height:1px;background:var(--line);border:0;margin:0}.tag{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid var(--line-strong);border-radius:999px;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:100;background:var(--ink);color:var(--paper);padding:8px 14px;border-radius:var(--radius)}.site-head[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:saturate(160%) blur(12px);-webkit-backdrop-filter:saturate(160%) blur(12px);border-bottom:1px solid var(--line)}.head-inner[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;gap:20px;height:58px}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.04em;font-weight:500}.mark[data-astro-cid-3ef6ksr2]{width:9px;height:9px;background:var(--accent);border-radius:1px;transform:rotate(45deg)}.brand-name[data-astro-cid-3ef6ksr2]{color:var(--ink)}.nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:22px;margin-left:auto;margin-right:8px}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{font-size:.84rem;color:var(--muted);transition:color .16s ease}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--ink)}.theme-btn[data-astro-cid-3ef6ksr2]{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);cursor:pointer;transition:color .16s ease,border-color .16s ease}.theme-btn[data-astro-cid-3ef6ksr2]:hover{color:var(--ink);border-color:var(--line-strong)}.icon-moon[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=dark] .icon-sun[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=dark] .icon-moon[data-astro-cid-3ef6ksr2]{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun[data-astro-cid-3ef6ksr2]{display:none}:root:not([data-theme=light]) .icon-moon[data-astro-cid-3ef6ksr2]{display:block}}@media(max-width:520px){.nav[data-astro-cid-3ef6ksr2]{gap:14px}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{font-size:.8rem}}.site-foot[data-astro-cid-sz7xmlte]{border-top:1px solid var(--line);padding-block:28px}.foot-inner[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.foot-left[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:10px}.dim[data-astro-cid-sz7xmlte]{color:var(--muted)}.sep[data-astro-cid-sz7xmlte]{color:var(--line-strong)}.foot-links[data-astro-cid-sz7xmlte]{display:flex;gap:20px}.foot-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);transition:color .16s ease}.foot-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--ink)}
