.icon[data-astro-cid-zgufigjl]{vertical-align:-.2em;flex-shrink:0}.button[data-astro-cid-rsz4deap]{align-items:center;gap:var(--space-2);min-height:2.75rem;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:var(--border-width) solid transparent;font-size:var(--text-sm);font-weight:550;text-decoration:none;display:inline-flex}.button--primary[data-astro-cid-rsz4deap]{background:var(--color-accent);color:var(--color-bg)}.button--primary[data-astro-cid-rsz4deap]:hover{background:var(--color-accent-hover);color:var(--color-bg)}.button--secondary[data-astro-cid-rsz4deap]{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button--secondary[data-astro-cid-rsz4deap]:hover{border-color:var(--color-border-strong);color:var(--color-text)}:root{color-scheme:dark;--color-bg:light-dark(#f6f5f1,#0f141a);--color-surface:light-dark(#fbfaf7,#151c24);--color-surface-2:light-dark(#eeece6,#1c252f);--color-border:light-dark(#d8d5cc,#2a3541);--color-border-strong:light-dark(#b9b5aa,#3b4855);--color-text:light-dark(#1b2229,#e3e8ee);--color-text-muted:light-dark(#525d68,#9ba8b5);--color-accent:light-dark(#0b6b74,#5fbfca);--color-accent-hover:light-dark(#084f56,#86d3db);--color-accent-soft:light-dark(#dcecec,#16303a);--color-warm:light-dark(#8f5410,#e2a85c);--color-warm-soft:light-dark(#f4e6d2,#33271a);--color-backdrop:#080b0fd9;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:clamp(1.375rem, 1.2rem + .8vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.4rem + 1.6vw, 2.5rem);--leading-tight:1.25;--leading-normal:1.65;--measure:70ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--gutter:clamp(1rem, 4vw, 2rem);--content-width:72rem;--radius-sm:4px;--radius-md:8px;--radius-pill:999px;--border-width:1px;--focus-ring:2px solid var(--color-accent)}:root[data-theme=light]{color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);flex-direction:column;margin:0;display:flex}main{flex:1}img,svg{max-width:100%;height:auto}h1,h2,h3{line-height:var(--leading-tight);text-wrap:balance;margin:0 0 var(--space-4);font-weight:650}h1{font-size:var(--text-2xl);letter-spacing:-.01em}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p,ul,ol{margin:0 0 var(--space-4)}a{color:var(--color-accent);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--color-accent-hover);text-decoration-thickness:2px}:focus-visible{outline:var(--focus-ring);outline-offset:2px}code,kbd,samp{font-family:var(--font-mono);background:var(--color-surface-2);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);padding:.05em .35em;font-size:.9em}hr{border:0;border-top:var(--border-width) solid var(--color-border);margin:var(--space-6) 0}.container{width:100%;max-width:var(--content-width);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--space-7)}.section+.section{border-top:var(--border-width) solid var(--color-border)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.section-head h2{margin:0}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2);display:block}.lead{font-size:var(--text-lg);color:var(--color-text-muted);max-width:var(--measure)}.grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));margin:0;padding:0;list-style:none;display:grid}.grid--narrow{grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr))}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.prose{max-width:var(--measure)}.prose h2{margin-top:var(--space-6)}.prose h3{margin-top:var(--space-5)}.prose li+li{margin-top:var(--space-2)}.prose ul,.prose ol{padding-left:1.25rem}.prose :first-child{margin-top:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.site-footer[data-astro-cid-oenwriqq]{margin-top:var(--space-8);border-top:var(--border-width) solid var(--color-border);background:var(--color-surface);font-size:var(--text-sm);color:var(--color-text-muted);padding-block:var(--space-6) var(--space-5)}.columns[data-astro-cid-oenwriqq]{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));display:grid}h2[data-astro-cid-oenwriqq]{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;margin-bottom:var(--space-3);color:var(--color-text-muted);font-weight:500}ul[data-astro-cid-oenwriqq]{margin:0;padding:0;list-style:none}li[data-astro-cid-oenwriqq]+li[data-astro-cid-oenwriqq]{margin-top:var(--space-1)}a[data-astro-cid-oenwriqq]{color:var(--color-text);overflow-wrap:anywhere;text-decoration:none}a[data-astro-cid-oenwriqq]:hover{color:var(--color-accent-hover);text-decoration:underline}address[data-astro-cid-oenwriqq]{font-style:normal}.copyright[data-astro-cid-oenwriqq]{margin:var(--space-6) 0 0;padding-top:var(--space-4);border-top:var(--border-width) solid var(--color-border);font-size:var(--text-xs)}.logo[data-astro-cid-qmbhzs4e]{flex:none;width:2.25rem;height:2.25rem;display:block}.tile[data-astro-cid-qmbhzs4e]{fill:var(--color-surface-2);stroke:var(--color-border-strong);stroke-width:1px}.pulse[data-astro-cid-qmbhzs4e]{fill:none;stroke:var(--color-accent);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.node[data-astro-cid-qmbhzs4e]{fill:var(--color-accent);transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.logo--animate[data-astro-cid-qmbhzs4e] .pulse[data-astro-cid-qmbhzs4e]{stroke-dasharray:1;animation:1.1s cubic-bezier(.4,0,.2,1) .25s both logo-draw}.logo--animate[data-astro-cid-qmbhzs4e] .node--a[data-astro-cid-qmbhzs4e]{animation:.35s ease-out both logo-node}.logo--animate[data-astro-cid-qmbhzs4e] .node--b[data-astro-cid-qmbhzs4e]{animation:.35s ease-out 1.2s both logo-node}}@keyframes logo-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes logo-node{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}ul[data-astro-cid-3yci74kx]{gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}a[data-astro-cid-3yci74kx]{min-width:2.5rem;height:2.5rem;padding-inline:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted);place-items:center;text-decoration:none;display:inline-grid}a[data-astro-cid-3yci74kx]:hover{color:var(--color-text);background:var(--color-surface-2)}a[data-astro-cid-3yci74kx][aria-current]{color:var(--color-text);background:var(--color-surface-2);box-shadow:inset 0 0 0 var(--border-width) var(--color-border)}.theme-toggle[data-astro-cid-6lp36acm]{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:2.5rem;height:2.5rem;color:var(--color-text-muted);cursor:pointer;place-items:center;padding:0;display:inline-grid}.theme-toggle[data-astro-cid-6lp36acm]:hover{color:var(--color-text);border-color:var(--color-border-strong)}.theme-toggle[data-astro-cid-6lp36acm] .icon-moon,:root[data-theme=light] .theme-toggle[data-astro-cid-6lp36acm] .icon-sun{display:none}:root[data-theme=light] .theme-toggle[data-astro-cid-6lp36acm] .icon-moon{display:block}.site-header[data-astro-cid-isef26zo]{border-bottom:var(--border-width) solid var(--color-border);background:var(--color-bg)}.inner[data-astro-cid-isef26zo]{align-items:center;gap:var(--space-3) var(--space-4);padding-block:var(--space-3);grid-template-columns:1fr auto;grid-template-areas:"brand tools""nav nav";display:grid}.brand[data-astro-cid-isef26zo]{align-items:center;gap:var(--space-3);color:var(--color-text);line-height:var(--leading-tight);grid-area:brand;text-decoration:none;display:flex}.brand-text[data-astro-cid-isef26zo]{flex-direction:column;display:flex}.brand-name[data-astro-cid-isef26zo]{font-weight:650}.brand-tagline[data-astro-cid-isef26zo]{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted)}.tools[data-astro-cid-isef26zo]{align-items:center;gap:var(--space-2);grid-area:tools;display:flex}.main-nav[data-astro-cid-isef26zo]{grid-area:nav}.main-nav[data-astro-cid-isef26zo] ul[data-astro-cid-isef26zo]{gap:var(--space-1);margin:0 calc(-1 * var(--space-3));flex-wrap:wrap;padding:0;list-style:none;display:flex}.main-nav[data-astro-cid-isef26zo] a[data-astro-cid-isef26zo]{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);text-decoration:none;display:block}.main-nav[data-astro-cid-isef26zo] a[data-astro-cid-isef26zo]:hover{color:var(--color-text);background:var(--color-surface-2)}.main-nav[data-astro-cid-isef26zo] a[data-astro-cid-isef26zo][aria-current=page]{color:var(--color-text);box-shadow:inset 0 -2px 0 var(--color-accent);border-radius:var(--radius-md) var(--radius-md) 0 0}@media (width>=48rem){.inner[data-astro-cid-isef26zo]{grid-template-columns:auto 1fr auto;grid-template-areas:"brand nav tools"}.main-nav[data-astro-cid-isef26zo] ul[data-astro-cid-isef26zo]{justify-content:flex-end;margin:0}}.skip-link[data-astro-cid-z4jru4n3]{left:var(--space-4);z-index:10;padding:var(--space-2) var(--space-4);background:var(--color-accent);color:var(--color-bg);border-radius:var(--radius-md);position:absolute;top:-10rem}.skip-link[data-astro-cid-z4jru4n3]:focus{top:var(--space-4)}main[data-astro-cid-z4jru4n3]:focus{outline:none}
