:root{color-scheme:light;--bg:#f4f0e7;--bg-2:#ebe6da;--surface:#fbf9f3;--ink:#16171b;--ink-2:#45474f;--ink-3:#6b6c73;--line:#16171b21;--line-strong:#16171b4d;--accent:#ff4a1c;--accent-ink:#c7340c;--accent-soft:#ff4a1c1f;--ok:#1f9d55;--shadow:0 1px 0 #16171b0a, 0 18px 40px -24px #16171b59;--sans:var(--font-display);--serif:var(--font-serif);--mono:var(--font-mono);--step--1:clamp(.8rem, .78rem + .1vw, .875rem);--step-0:clamp(1rem, .96rem + .2vw, 1.125rem);--step-1:clamp(1.2rem, 1.1rem + .5vw, 1.5rem);--step-2:clamp(1.7rem, 1.35rem + 1.6vw, 2.75rem);--step-3:clamp(2.3rem, 1.6rem + 3.2vw, 4.25rem);--gutter:clamp(1.25rem, 4vw, 3rem);--max:1120px;--radius:14px;--header-h:60px;--ease:cubic-bezier(.2, .7, .2, 1)}:root:not([data-theme=light]){color-scheme:dark;--bg:#0b0b0d;--bg-2:#121316;--surface:#17181c;--ink:#edeae1;--ink-2:#b9b6ad;--ink-3:#8b8983;--line:#edeae121;--line-strong:#edeae152;--accent:#ff6b3d;--accent-ink:#ff8459;--accent-soft:#ff6b3d26;--ok:#3ecf7c;--shadow:0 1px 0 #0000004d, 0 18px 40px -24px #000c}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1.5rem);background:var(--bg)}body{background:var(--bg);min-height:100svh;color:var(--ink);font-family:var(--sans);font-size:var(--step-0);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.6;overflow-x:clip}:lang(zh-CN) body,body:lang(zh-CN){line-height:1.8}h1,h2,h3,h4{letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:650;line-height:1.08}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration-color:var(--line-strong);text-underline-offset:.22em;transition:color .2s var(--ease), text-decoration-color .2s var(--ease);text-decoration-thickness:1px}a:hover{color:var(--accent-ink);text-decoration-color:currentColor}img,video,svg{max-width:100%;display:block}img,video{height:auto}button{font:inherit;color:inherit;cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.mono{font-family:var(--mono);font-size:var(--step--1);letter-spacing:0;font-feature-settings:"zero" 1}.serif-i{font-family:var(--serif);letter-spacing:-.01em;font-style:italic;font-weight:400}:lang(zh-CN) .serif-i{font-family:var(--sans);font-style:normal}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--ink);color:var(--bg);border-radius:8px;padding:.5rem .9rem;text-decoration:none;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip:focus{color:var(--bg);transform:none}.arrow-link{border-bottom:1px solid var(--line-strong);align-items:baseline;gap:.35em;padding-bottom:.08em;font-weight:550;text-decoration:none;display:inline-flex}.arrow-link:after{content:"↗";font-family:var(--mono);transition:transform .2s var(--ease);font-size:.85em}.arrow-link[data-internal]:after{content:"→"}.arrow-link:hover{border-color:currentColor}.arrow-link:hover:after{transform:translate(2px,-2px)}.arrow-link[data-internal]:hover:after{transform:translate(3px)}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(18px)}.js [data-reveal].is-in{opacity:1;transform:none}@view-transition{navigation:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-motion:no-preference){.theme-fade,.theme-fade *,.theme-fade :before,.theme-fade :after{transition:background-color .35s var(--ease), color .35s var(--ease), border-color .35s var(--ease)!important}}.site-footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--line);font-family:var(--mono);color:var(--ink-3);padding-block:1.4rem;font-size:.8rem}.controls[data-astro-cid-7kpolzr2]{align-items:center;gap:.35rem;display:inline-flex}.tool[data-astro-cid-7kpolzr2]{border:1px solid var(--line);width:32px;height:32px;color:var(--ink-2);transition:border-color .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);background:0 0;border-radius:50%;place-items:center;padding:0;font-size:.76rem;font-weight:600;text-decoration:none;display:inline-grid}.tool[data-astro-cid-7kpolzr2]:hover{border-color:var(--ink);color:var(--ink);transform:rotate(-8deg)}.tool[data-astro-cid-7kpolzr2] svg[data-astro-cid-7kpolzr2]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.tool[data-astro-cid-7kpolzr2] .sun[data-astro-cid-7kpolzr2]{display:none}:root:not([data-theme=light]) .tool[data-astro-cid-7kpolzr2] .sun[data-astro-cid-7kpolzr2]{display:block}:root:not([data-theme=light]) .tool[data-astro-cid-7kpolzr2] .moon[data-astro-cid-7kpolzr2]{display:none}.site-header[data-astro-cid-nen7h5rs]{z-index:50;height:var(--header-h);background:color-mix(in srgb, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.3);transition:border-color .3s var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-astro-cid-nen7h5rs][data-scrolled]{border-bottom-color:var(--line)}.site-header__inner[data-astro-cid-nen7h5rs]{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;height:100%;display:grid}.site-header__right[data-astro-cid-nen7h5rs]{justify-self:end}.brand[data-astro-cid-nen7h5rs]{font-family:var(--mono);color:var(--ink);justify-self:start;align-items:center;gap:.55rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.brand__tld[data-astro-cid-nen7h5rs]{color:var(--ink-3)}.brand__dot[data-astro-cid-nen7h5rs]{background:var(--accent);width:9px;height:9px;animation:pulse 2.6s var(--ease) infinite;border-radius:50%}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 55%, transparent)}70%,to{box-shadow:0 0 0 9px #0000}}.nav[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:clamp(1.1rem,3.4vw,2.6rem);display:flex}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--ink-2);padding:.4rem 0;font-size:.98rem;text-decoration:none;position:relative}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .3s var(--ease);border-radius:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]{color:var(--ink)}.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover:after,.nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]:after{transform:scaleX(1)}@media (width<=560px){.brand__text[data-astro-cid-nen7h5rs]{display:none}.brand__dot[data-astro-cid-nen7h5rs]{width:11px;height:11px;margin:.6rem .2rem}}
