.theme-toggle[data-astro-cid-x3pjskd3]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:none;color:var(--muted);cursor:pointer;transition:color .2s ease,border-color .2s ease}.theme-toggle[data-astro-cid-x3pjskd3]:hover{color:var(--text);border-color:var(--text)}.icon-moon[data-astro-cid-x3pjskd3],html[data-theme=dark] .icon-sun[data-astro-cid-x3pjskd3]{display:none}html[data-theme=dark] .icon-moon[data-astro-cid-x3pjskd3]{display:block}.lang[data-astro-cid-r2b4e7hz]{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-pill);overflow:hidden}.lang-btn[data-astro-cid-r2b4e7hz]{background:none;border:none;color:var(--muted);font-family:var(--font);font-size:.78rem;font-weight:500;padding:.25rem .6rem;cursor:pointer;line-height:1.4}.lang-btn[data-astro-cid-r2b4e7hz]:hover{text-decoration:none;color:var(--text)}.lang-btn[data-astro-cid-r2b4e7hz].on{background:var(--text);color:var(--bg)}.lang-btn[data-astro-cid-r2b4e7hz].disabled{opacity:.4;cursor:not-allowed}header[data-astro-cid-3ef6ksr2].site{position:sticky;top:0;z-index:20;background:var(--header-bg);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--border)}.nav[data-astro-cid-3ef6ksr2]{max-width:var(--maxw);margin-inline:auto;padding:0 1.5rem;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand[data-astro-cid-3ef6ksr2]{font-weight:600;font-size:1.05rem;letter-spacing:-.02em;color:var(--text)}.brand[data-astro-cid-3ef6ksr2]:hover{text-decoration:none}.brand[data-astro-cid-3ef6ksr2] .tld[data-astro-cid-3ef6ksr2]{color:var(--accent)}.nav-links[data-astro-cid-3ef6ksr2]{display:flex;gap:.15rem;list-style:none;margin:0;padding:0;align-items:center}.nav-link[data-astro-cid-3ef6ksr2]{font-family:var(--font);font-size:.92rem;font-weight:400;color:var(--body);background:none;border:none;padding:.4rem .85rem;border-radius:var(--radius-pill);cursor:pointer;transition:color .2s ease;display:inline-block}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--text);text-decoration:none}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--text);font-weight:500}.nav-search-item[data-astro-cid-3ef6ksr2]{display:none}.nav-right[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:.75rem}.search-icon[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--muted)}.search-icon[data-astro-cid-3ef6ksr2]:hover{color:var(--text);text-decoration:none}.menu-toggle[data-astro-cid-3ef6ksr2]{display:none;background:none;border:none;color:var(--text);cursor:pointer;padding:.25rem}@media(max-width:720px){.nav[data-astro-cid-3ef6ksr2]{flex-wrap:wrap}.menu-toggle[data-astro-cid-3ef6ksr2]{display:inline-flex;order:3}.nav-right[data-astro-cid-3ef6ksr2]{order:2;margin-left:auto}.search-icon[data-astro-cid-3ef6ksr2]{display:none}.nav-search-item[data-astro-cid-3ef6ksr2]{display:block}.nav-links[data-astro-cid-3ef6ksr2]{order:4;flex-basis:100%;flex-direction:column;align-items:flex-start;gap:0;max-height:0;overflow:hidden;transition:max-height .25s ease}.nav-links[data-astro-cid-3ef6ksr2].open{max-height:22rem;padding-bottom:.75rem}.nav-link[data-astro-cid-3ef6ksr2]{display:block;width:100%;padding:.65rem 0;font-size:1rem}}footer[data-astro-cid-sz7xmlte].site{border-top:1px solid var(--border);margin-top:4rem;padding-block:2.5rem 2rem;flex-shrink:0}.foot-inner[data-astro-cid-sz7xmlte]{max-width:var(--maxw);margin-inline:auto;padding-inline:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--dim);font-size:.85rem}.socials[data-astro-cid-sz7xmlte]{display:flex;gap:1.5rem}.socials[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--muted);font-size:.9rem}.socials[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.disclaimer[data-astro-cid-sz7xmlte]{max-width:var(--maxw);margin:1.5rem auto 0;padding-inline:1.5rem}.disclaimer[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{color:var(--dim);font-size:.8rem;margin:0}:root{--bg: #ffffff;--bg-soft: #fbfbfd;--surface: #f5f5f7;--border: #e8e8ed;--border-strong: #d2d2d7;--text: #1d1d1f;--body: #424245;--muted: #6e6e73;--dim: #86868b;--accent: #0071e3;--accent-hover: #0077ed;--accent-soft: rgba(0, 113, 227, .1);--selection: rgba(0, 113, 227, .18);--header-bg: rgba(255, 255, 255, .72);--code-bg: #f5f5f7;--shiki-bg: #f6f8fa;--maxw: 60rem;--maxw-prose: 72ch;--radius: 8px;--radius-lg: 12px;--radius-pill: 980px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--mono: "SF Mono", ui-monospace, SFMono-Regular, "JetBrains Mono", Menlo, Consolas, monospace}html[data-theme=dark]{--bg: #000000;--bg-soft: #0a0a0c;--surface: #1c1c1e;--border: #2c2c2e;--border-strong: #3a3a3c;--text: #f5f5f7;--body: #c7c7cc;--muted: #98989d;--dim: #6e6e73;--accent: #2997ff;--accent-hover: #409cff;--accent-soft: rgba(41, 151, 255, .14);--selection: rgba(41, 151, 255, .26);--header-bg: rgba(0, 0, 0, .72);--code-bg: #1c1c1e;--shiki-bg: #161618}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:5rem;color-scheme:light}html[data-theme=dark]{color-scheme:dark}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}body{margin:0;background:var(--bg);color:var(--body);font-family:var(--font);font-size:17px;line-height:1.6;letter-spacing:-.01em;text-rendering:optimizeLegibility;min-height:100svh;display:flex;flex-direction:column;transition:background .3s ease,color .3s ease}::selection{background:var(--selection)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}h1,h2,h3,h4{color:var(--text);line-height:1.1;letter-spacing:-.03em;font-weight:600;margin:0 0 .5em}h1{font-size:clamp(2.4rem,6vw,3.6rem);font-weight:700}h2{font-size:clamp(1.6rem,3.5vw,2.2rem)}h3{font-size:1.25rem}h4{font-size:1.05rem}p{margin:0 0 1rem}.container{max-width:var(--maxw);margin-inline:auto;padding-inline:1.5rem;width:100%}main{flex:1 0 auto}.muted{color:var(--muted)}.dim{color:var(--dim)}.eyebrow{font-size:.82rem;font-weight:600;letter-spacing:.01em;color:var(--accent);margin:0 0 .75rem}.section{padding-block:4rem}.section.tight{padding-block:2.5rem}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:2rem}.section-head h2{margin:0}.section-head .more{font-size:.92rem;color:var(--accent);background:none;border:none;cursor:pointer;font-family:var(--font)}.section-head .more:hover{text-decoration:underline}.band{background:var(--bg-soft);border-block:1px solid var(--border)}.btn{display:inline-flex;align-items:center;gap:.4rem;font-weight:400;font-size:1.02rem;padding:.7rem 1.4rem;border-radius:var(--radius-pill);background:var(--accent);color:#fff;border:none;cursor:pointer;font-family:var(--font);transition:background .2s ease}.btn:hover{background:var(--accent-hover);text-decoration:none;color:#fff}.btn-text{background:none;color:var(--accent);padding:.7rem .4rem;font-size:1.02rem;border:none;cursor:pointer;font-family:var(--font)}.btn-text:hover{background:none;text-decoration:underline}.btn-text:after{content:" ›"}.tags{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.tag{font-size:.82rem;color:var(--muted);background:var(--surface);border-radius:var(--radius-pill);padding:.2rem .7rem}a.tag:hover{color:var(--accent);text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.skip-link{position:absolute;left:-999px;top:.5rem;z-index:100;background:var(--accent);color:#fff;padding:.6rem 1rem;border-radius:var(--radius)}.skip-link:focus{left:.5rem;text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
