:root{--bg: #0d0d0c;--bg-2: #111110;--card: #151513;--card-2: #1a1a17;--line: rgb(236 233 224 / .09);--line-strong: rgb(236 233 224 / .18);--text: #ecebe4;--muted: #a6a49b;--faint: #75736b;--accent: #f0a43a;--accent-hover: #f6b65c;--accent-ink: #1c1306;--accent-soft: rgb(240 164 58 / .1);--steel: #8fb0c4;--radius: 6px;--radius-sm: 4px;--maxw: 1240px;--gutter: clamp(16px, 4vw, 40px);--font-sans: "IBM Plex Sans", "Noto Sans SC", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Newsreader", Georgia, "Noto Serif SC", "Times New Roman", serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-block-start:80px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}body{margin:0;min-block-size:100vh;background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}:lang(zh-CN) body,body:lang(zh-CN){--font-sans: "Noto Sans SC", "IBM Plex Sans", system-ui, sans-serif}img,svg{max-inline-size:100%}a{color:var(--text);text-decoration-color:var(--line-strong);text-underline-offset:3px;transition:color .15s ease,text-decoration-color .15s ease}a:hover{color:var(--accent);text-decoration-color:currentColor}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}::selection{background:var(--accent);color:var(--accent-ink)}h1,h2,h3{line-height:1.1;margin-block:0 .5em;font-weight:500;text-wrap:balance}h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em}p{margin-block:0 1em}code{font-family:var(--font-mono);font-size:.9em}.grad{font-style:italic;color:inherit}.container{inline-size:100%;max-inline-size:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.skip-link{position:absolute;inset-inline-start:12px;inset-block-start:-60px;z-index:100;padding:10px 16px;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);font-weight:600;text-decoration:none}.skip-link:focus{inset-block-start:12px}.visually-hidden{position:absolute!important;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-block-size:44px;padding-block:10px;padding-inline:20px;border-radius:var(--radius-sm);border:1px solid transparent;font-family:var(--font-sans);font-weight:500;font-size:.95rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{color:var(--accent-ink);background:var(--accent-hover)}.btn-ghost{background:transparent;color:var(--text);border-color:var(--line-strong)}.btn-ghost:hover{color:var(--text);border-color:var(--text)}.btn-sm{min-block-size:36px;padding-inline:14px;font-size:.875rem}.section{position:relative;padding-block-end:clamp(72px,10vw,128px)}.section>.container{position:relative;padding-block-start:clamp(56px,7vw,88px);border-block-start:1px solid var(--line)}.section>.container:before,.section>.container:after{content:"+";position:absolute;inset-block-start:-.82em;font-family:var(--font-mono);font-size:15px;font-weight:300;line-height:1.6;color:var(--faint);background:var(--bg);padding-inline:4px}.section>.container:before{inset-inline-start:calc(var(--gutter) - 12px)}.section>.container:after{inset-inline-end:calc(var(--gutter) - 12px)}.eyebrow{display:inline-block;margin-block-end:20px;color:var(--muted);font-family:var(--font-mono);font-size:.78rem;font-weight:400;letter-spacing:.02em}.eyebrow:before{content:"/ ";color:var(--accent)}.section-title{font-size:clamp(2rem,4.4vw,3.4rem);line-height:1.04;max-inline-size:20ch;overflow-wrap:break-word}.section-lead{color:var(--muted);font-size:1.05rem;max-inline-size:58ch}.section-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(24px,5vw,80px);align-items:end;margin-block-end:clamp(40px,5vw,64px)}.section-head .section-title,.section-head .section-lead{margin-block-end:0}@media(max-width:960px){.section-head{grid-template-columns:minmax(0,1fr)}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.mono{font-family:var(--font-mono);font-size:.78rem;color:var(--faint);letter-spacing:.01em}main:focus{outline:none}.logo[data-astro-cid-tvrurpns]{display:inline-flex;align-items:center;gap:10px}.logo[data-astro-cid-tvrurpns] svg[data-astro-cid-tvrurpns]{flex-shrink:0}.logo-name[data-astro-cid-tvrurpns]{font-family:var(--font-display);font-weight:500;font-size:1.35rem;letter-spacing:-.01em;line-height:1;color:var(--text)}.lang[data-astro-cid-a2mxz4y6]{position:relative}summary[data-astro-cid-a2mxz4y6]{display:inline-flex;align-items:center;gap:8px;min-block-size:36px;padding-inline:10px;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--muted);font-size:.875rem;cursor:pointer;list-style:none;user-select:none}summary[data-astro-cid-a2mxz4y6]::-webkit-details-marker{display:none}summary[data-astro-cid-a2mxz4y6]:hover{color:var(--text);border-color:var(--line-strong)}ul[data-astro-cid-a2mxz4y6]{position:absolute;inset-block-start:calc(100% + 8px);inset-inline-end:0;z-index:30;min-inline-size:180px;margin:0;padding:6px;list-style:none;background:var(--card-2);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 20px 40px -12px #000000b3}.up[data-astro-cid-a2mxz4y6] ul[data-astro-cid-a2mxz4y6]{inset-block-start:auto;inset-block-end:calc(100% + 8px);inset-inline-end:auto;inset-inline-start:0}a[data-astro-cid-a2mxz4y6]{display:block;padding-block:8px;padding-inline:12px;border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-size:.9rem}a[data-astro-cid-a2mxz4y6]:hover{background:#ece9e00d;color:var(--text)}a[data-astro-cid-a2mxz4y6][aria-current=true]{color:var(--accent)}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;inset-block-start:0;z-index:50;background:#0d0d0ceb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-block-end:1px solid var(--line)}.bar[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:24px;min-block-size:64px}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;text-decoration:none;flex-shrink:0}.nav[data-astro-cid-3ef6ksr2]{margin-inline-start:auto}.nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2],.menu[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{display:flex;gap:28px;margin:0;padding:0;list-style:none}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2],.signin[data-astro-cid-3ef6ksr2]{color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:400}.nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover,.signin[data-astro-cid-3ef6ksr2]:hover{color:var(--text)}.actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:16px}.menu[data-astro-cid-3ef6ksr2]{display:none;position:relative}.menu[data-astro-cid-3ef6ksr2] summary[data-astro-cid-3ef6ksr2]{display:grid;place-items:center;inline-size:42px;block-size:42px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;list-style:none}.menu[data-astro-cid-3ef6ksr2] summary[data-astro-cid-3ef6ksr2]::-webkit-details-marker{display:none}.menu-panel[data-astro-cid-3ef6ksr2]{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + 10px);inline-size:min(280px,calc(100vw - 32px));padding:16px;display:grid;gap:16px;background:var(--card-2);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 24px 48px -16px #000c}.menu[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{flex-direction:column;gap:4px}.menu[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{display:block;padding-block:10px;padding-inline:8px;color:var(--text);text-decoration:none;border-radius:var(--radius-sm)}.menu[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{background:#ece9e00d}@media(max-width:960px){.nav[data-astro-cid-3ef6ksr2],.desktop-only[data-astro-cid-3ef6ksr2]{display:none}.actions[data-astro-cid-3ef6ksr2]{margin-inline-start:auto;gap:10px}.menu[data-astro-cid-3ef6ksr2]{display:block}}@media(max-width:400px){.bar[data-astro-cid-3ef6ksr2]{gap:12px}.actions[data-astro-cid-3ef6ksr2] .btn-sm[data-astro-cid-3ef6ksr2]{padding-inline:14px;font-size:.8rem}}.site-footer[data-astro-cid-sz7xmlte]{border-block-start:1px solid var(--line);padding-block:56px 32px;background:var(--bg-2)}.grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:40px}.about[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{color:var(--muted);max-inline-size:32ch;margin-block:16px 20px}.brand[data-astro-cid-sz7xmlte]{text-decoration:none}.cols[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}h2[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:.78rem;font-weight:400;letter-spacing:.01em;color:var(--faint);margin-block-end:14px}ul[data-astro-cid-sz7xmlte]{margin:0;padding:0;list-style:none;display:grid;gap:8px}.cols[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--muted);text-decoration:none;font-size:.925rem;overflow-wrap:anywhere}.cols[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--text)}.fine[data-astro-cid-sz7xmlte]{margin-block-start:40px;padding-block-start:20px;border-block-start:1px solid var(--line);color:var(--faint);font-size:.825rem}.fine[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin-block-end:4px}@media(max-width:860px){.grid[data-astro-cid-sz7xmlte]{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.cols[data-astro-cid-sz7xmlte]{grid-template-columns:minmax(0,1fr)}}
