.site-header[data-astro-cid-nen7h5rs]{padding-top:28px}.nav[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:16px;display:flex}.brand[data-astro-cid-nen7h5rs]{color:var(--text-strong);font-family:var(--font-heading);font-size:.95rem;font-weight:600;text-decoration:none}.links[data-astro-cid-nen7h5rs]{align-items:center;gap:4px;display:flex}.links[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--muted);font-family:var(--font-heading);border-radius:999px;padding:5px 8px;font-size:.86rem;font-weight:600;text-decoration:none}.links[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.links[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{background:var(--faint);color:var(--text-strong)}@media (width<=560px){.nav[data-astro-cid-nen7h5rs]{flex-direction:row;align-items:flex-start;padding:0}.links[data-astro-cid-nen7h5rs]{width:100%;padding-bottom:2px;overflow-x:auto}}@media (width<=360px){.nav[data-astro-cid-nen7h5rs]{flex-direction:column;gap:10px}.links[data-astro-cid-nen7h5rs]{width:calc(100% + 16px);margin-inline:-8px}}.site-footer[data-astro-cid-jo6i4kqk]{color:var(--muted);font-family:var(--font-heading);padding:80px 0 48px;font-size:.9rem}.footer-inner[data-astro-cid-jo6i4kqk]{justify-content:flex-end;gap:16px;display:flex}.global-audio-player[data-astro-cid-bzi6rqev]{z-index:20;border:1px solid var(--line);backdrop-filter:blur(10px);background:#fffffff0;border-radius:8px;grid-template-columns:40px minmax(0,180px) 36px;align-items:center;gap:10px;width:min(320px,100vw - 32px);padding:8px;display:grid;position:fixed;bottom:18px;right:18px;overflow:hidden;box-shadow:0 10px 30px #11111114}.global-audio-player[data-astro-cid-bzi6rqev][hidden]{display:none}.global-audio-player[data-astro-cid-bzi6rqev] img[data-astro-cid-bzi6rqev]{z-index:1;aspect-ratio:1;object-fit:cover;border-radius:5px;width:40px;position:relative}.player-copy[data-astro-cid-bzi6rqev]{z-index:1;min-width:0;position:relative}.player-copy[data-astro-cid-bzi6rqev] strong[data-astro-cid-bzi6rqev],.player-copy[data-astro-cid-bzi6rqev] span[data-astro-cid-bzi6rqev]{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.player-copy[data-astro-cid-bzi6rqev] strong[data-astro-cid-bzi6rqev]{color:var(--text-strong);font-family:var(--font-heading);font-size:.9rem;font-weight:600;line-height:1.35}.player-copy[data-astro-cid-bzi6rqev] span[data-astro-cid-bzi6rqev]{color:var(--muted);font-family:var(--font-prose-latin);font-size:.78rem}.global-audio-player[data-astro-cid-bzi6rqev] button[data-astro-cid-bzi6rqev]{z-index:1;color:#a3a3a3;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:34px;height:34px;display:inline-grid;position:relative}.global-audio-player[data-astro-cid-bzi6rqev] button[data-astro-cid-bzi6rqev]:hover,.global-audio-player[data-astro-cid-bzi6rqev] button[data-astro-cid-bzi6rqev]:focus-visible{color:var(--accent)}.global-audio-player[data-astro-cid-bzi6rqev] [data-astro-cid-bzi6rqev][data-player-icon]{border-block:8px solid #0000;border-left:12px solid;width:0;height:0;margin-left:3px}.global-audio-player[data-astro-cid-bzi6rqev][data-playing=true] [data-astro-cid-bzi6rqev][data-player-icon]{background:linear-gradient(90deg,currentColor 0 38%,#0000 38% 62%,currentColor 62% 100%);border:0;width:12px;height:16px;margin-left:0}.player-progress[data-astro-cid-bzi6rqev]{z-index:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='260' height='48' viewBox='0 0 260 48' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 28 C42 37 70 42 112 34 C158 24 183 14 226 23 C241 26 251 29 260 30 L260 48 L0 48 Z' fill='%23e2e3e4'/%3E%3Cpath d='M0 33 C42 39 72 41 112 35 C159 28 184 19 226 26 C240 29 251 32 260 33 L260 48 L0 48 Z' fill='%23d8d9da' fill-opacity='0.62'/%3E%3C/svg%3E");background-position:0 100%;background-repeat:repeat-x;background-size:260px 48px;width:0%;height:34px;transition:width .12s linear;position:absolute;inset:auto auto 0 0;mask-image:linear-gradient(90deg,#000 calc(100% - 48px),#0000 100%)}.global-audio-player[data-astro-cid-bzi6rqev][data-playing=true] .player-progress[data-astro-cid-bzi6rqev]{min-width:96px}@media (width<=520px){.global-audio-player[data-astro-cid-bzi6rqev]{grid-template-columns:36px minmax(0,1fr) 34px;width:calc(100vw - 24px);bottom:12px;right:12px}.global-audio-player[data-astro-cid-bzi6rqev] img[data-astro-cid-bzi6rqev]{width:36px}}:root{color-scheme:light;--bg:#fff;--surface-2:#f6f7f7;--text:#2a2a2a;--text-strong:#111;--muted:oklch(56% .021 213.5);--faint:#f1f3f3;--line:#e8eaea;--accent:#7e6c79;--radius:8px;--font-body:"Bricolage Grotesque", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-prose:"LXGW WenKai", "霞鹜文楷", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", serif;--font-prose-latin:"Monda", "LXGW WenKai", "霞鹜文楷", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-heading:"Julius Sans One", "LXGW WenKai", "霞鹜文楷", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-caption:"PT Sans Narrow", "Fira Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:"Fira Code", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--container:820px;--content:68ch}*{box-sizing:border-box}html{background:var(--bg);font-family:var(--font-prose-latin);scroll-behavior:smooth}body{color:var(--text);background:var(--bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}body[data-lightbox-open=true] .global-audio-player{display:none}a{color:inherit;text-decoration:none}a:hover{color:var(--text-strong)}img{max-width:100%;display:block}button,input,textarea{font:inherit}.container{width:min(var(--container), calc(100% - 32px));margin-inline:auto}.narrow{width:min(var(--content), calc(100% - 32px));margin-inline:auto}.section{margin-top:64px;padding:0}.page-head{padding-top:64px}.page-head .muted{font-family:var(--font-prose-latin)}.eyebrow{color:var(--muted);font-family:var(--font-heading);margin:0 0 8px;font-size:.8rem;font-weight:500}.section-title{color:var(--text-strong);font-family:var(--font-heading);margin:0 0 8px;font-size:1.15rem;font-weight:600;line-height:1.35}.section-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:28px;display:flex}.section-heading h2{color:var(--text-strong);font-family:var(--font-heading);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.section-heading a{color:var(--muted);font-family:var(--font-heading);font-size:.88rem;font-weight:600}.muted{color:var(--muted);font-family:var(--font-prose-latin)}.muted a,.prose a{color:#3b74f2;text-decoration:none}.muted a:hover,.prose a:hover{color:#1d4fd7}.pill-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pill{border:1px solid var(--line);color:var(--muted);font-family:var(--font-prose-latin);border-radius:999px;padding:4px 9px;font-size:.82rem}.prose{color:#525252;font-family:var(--font-prose-latin);text-align:justify;hyphens:auto;font-size:16px;line-height:24px}.prose h2{color:#363636;font-family:var(--font-heading);text-align:left;margin:32px 0 16px;font-size:24px;font-weight:600;line-height:27px}.prose h3{color:#363636;font-family:var(--font-heading);text-align:left;margin:28px 0 14px;font-size:20px;font-weight:600;line-height:24px}.prose p,.prose ul,.prose ol,.prose blockquote{margin:0 0 16px}.prose img{width:min(var(--container), calc(100vw - 32px));border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);cursor:zoom-in;max-width:none;margin:2rem 50%;display:block;transform:translate(-50%)}.prose img[data-blog-lightbox-trigger]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.prose figure{width:min(var(--container), calc(100vw - 32px));max-width:none;margin:2rem 50%;transform:translate(-50%)}.prose figure img{width:100%;margin:0;transform:none}.prose figcaption{color:#777;font-family:var(--font-prose-latin);text-align:center;margin:10px auto 0;padding:0 10px;font-size:.92rem;line-height:1.45}.prose .footnote-button{color:#fff;cursor:pointer;background:#6e6e6e33;border:0;border-radius:.5em;place-items:center;margin:0 .2em;padding:.32em .48em;line-height:1;display:inline-grid;position:relative;top:-.12em}.prose .footnote-button:hover,.prose .footnote-button:focus-visible,.prose .footnote-button[aria-expanded=true]{background:#6e6e6ed9}.prose .footnote-button svg{width:1.55em;height:.35em}.prose .footnote-popover{visibility:hidden;z-index:10;color:#fff;width:260px;font-family:var(--font-prose-latin);text-align:center;white-space:normal;background:#6e6e6ef5;border-radius:6px;margin-left:-130px;padding:8px 10px;font-size:.8rem;font-weight:400;line-height:1.45;transition:transform 40ms;position:absolute;bottom:125%;left:50%;transform:scale(.7)}.prose .footnote-popover:after{content:"";border:5px solid #0000;border-top-color:#6e6e6ef5;margin-left:-5px;position:absolute;top:100%;left:50%}.prose .footnote-button[aria-expanded=true] .footnote-popover{visibility:visible;transform:scale(1)}.prose code{background:var(--surface-2);font-family:var(--font-mono);border-radius:5px;padding:.12em .34em;font-size:.9em}.prose pre{text-align:left;white-space:pre;border:0;border-radius:6px;margin:24px 0;padding:13px 17px;overflow-x:auto;color:#475569!important;background:#f8fafc!important}.prose pre code{color:inherit;font-family:var(--font-mono);white-space:inherit;overflow-wrap:normal;background:0 0;border-radius:0;padding:0;font-size:.92rem;line-height:1.6;display:block}.prose pre code span{color:inherit!important}.skip-link{z-index:100;background:var(--text);color:var(--bg);border-radius:6px;padding:8px 10px;position:absolute;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}@media (width<=780px){.section{margin-top:48px}}@media (width<=560px){.page-head{padding-top:48px}.prose img{width:100%;max-width:100%;margin:1.5rem 0;transform:none}.prose figure{width:100%;margin:1.5rem 0;transform:none}.prose .footnote-popover{background:#333333ed;border-radius:0;justify-content:center;align-items:center;width:auto;margin:0;padding:24px;font-size:.95rem;display:flex;position:fixed;inset:0;transform:none}.prose .footnote-popover:after{content:none}}
