@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}img,svg,video{block-size:auto;max-inline-size:100%;display:block}input,button,textarea,select{font:inherit}}@layer tokens{:root{--bg-light:oklch(99% .005 285);--bg-dark:oklch(17% .02 285);--surface-light:oklch(96.5% .012 285);--surface-dark:oklch(22% .025 285);--text-light:oklch(22% .03 285);--text-dark:oklch(94% .01 285);--muted-light:oklch(45% .03 285);--muted-dark:oklch(76% .02 285);--border-light:oklch(62% .03 285);--border-dark:oklch(52% .03 285);--brand-light:oklch(48% .2 285);--brand-dark:oklch(78% .13 285);--on-brand-light:oklch(99% 0 0);--on-brand-dark:oklch(18% .04 285);--accent-light:oklch(53% .16 45);--accent-dark:oklch(80% .13 60);--bg:var(--bg-light);--surface:var(--surface-light);--text:var(--text-light);--muted:var(--muted-light);--border:var(--border-light);--brand:var(--brand-light);--on-brand:var(--on-brand-light);--accent:var(--accent-light);@media (prefers-color-scheme:dark){--bg:var(--bg-dark);--surface:var(--surface-dark);--text:var(--text-dark);--muted:var(--muted-dark);--border:var(--border-dark);--brand:var(--brand-dark);--on-brand:var(--on-brand-dark);--accent:var(--accent-dark)}@supports (color:light-dark(white, black)){--bg:light-dark(var(--bg-light),var(--bg-dark));--surface:light-dark(var(--surface-light),var(--surface-dark));--text:light-dark(var(--text-light),var(--text-dark));--muted:light-dark(var(--muted-light),var(--muted-dark));--border:light-dark(var(--border-light),var(--border-dark));--brand:light-dark(var(--brand-light),var(--brand-dark));--on-brand:light-dark(var(--on-brand-light),var(--on-brand-dark));--accent:light-dark(var(--accent-light),var(--accent-dark))}--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace;--step--1:clamp(.875rem, .85rem + .1vw, .9375rem);--step-0:clamp(1rem, .96rem + .2vw, 1.125rem);--step-1:clamp(1.2rem, 1.1rem + .45vw, 1.45rem);--step-2:clamp(1.45rem, 1.25rem + .9vw, 1.95rem);--step-3:clamp(1.75rem, 1.4rem + 1.6vw, 2.75rem);--step-4:clamp(2.1rem, 1.5rem + 2.8vw, 4rem);--space-2xs:.25rem;--space-xs:.5rem;--space-s:1rem;--space-m:1.5rem;--space-l:2.5rem;--space-xl:clamp(3rem, 2rem + 4vw, 6rem);--radius-s:.375rem;--radius-m:.75rem;--radius-l:1.25rem;--content-max:72rem;--prose-max:65ch;color-scheme:light dark;accent-color:var(--brand)}@media (forced-colors:active){:root{--bg:Canvas;--surface:Canvas;--text:CanvasText;--muted:CanvasText;--border:CanvasText;--brand:LinkText;--on-brand:Canvas;--accent:Highlight}}}@layer base{html{-webkit-text-size-adjust:none;text-size-adjust:none;scrollbar-gutter:stable}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@view-transition{navigation:auto}}body{background-color:var(--bg);min-block-size:100dvh;color:var(--text);font-family:var(--font-sans);font-size:var(--step-0);overflow-wrap:break-word;grid-template-rows:auto 1fr auto;line-height:1.6;display:grid}h1,h2,h3,h4{text-wrap:balance;letter-spacing:-.015em;line-height:1.15}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-1)}p,li,dd{text-wrap:pretty}a{color:var(--brand);text-underline-offset:.18em;text-decoration-thickness:.08em;&:hover{text-decoration-thickness:.14em}}:where(a:any-link,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--brand);outline-offset:3px;border-radius:var(--radius-s)}::selection{background-color:var(--brand);color:var(--on-brand)}code{font-family:var(--font-mono);font-size:.9em}hr{border:0;border-block-start:1px solid var(--border)}}@layer layout{.wrapper{inline-size:min(100% - 2 * var(--space-m), var(--content-max));margin-inline:auto}.section{padding-block:var(--space-xl)}.section--surface{background-color:var(--surface)}.stack>*+*{margin-block-start:var(--stack-space,var(--space-s))}.stack--l{--stack-space:var(--space-l)}.prose{max-inline-size:var(--prose-max);&>*+*{margin-block-start:var(--space-s)}& :is(h2,h3){margin-block-start:var(--space-l)}& h2{font-size:var(--step-2)}}.grid{gap:var(--space-m);grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--grid-min,17rem)), 1fr));display:grid}.grid--wide{--grid-min:22rem}.cluster{gap:var(--space-xs) var(--space-s);flex-wrap:wrap;align-items:center;display:flex}}@layer components{.skip-link{z-index:10;padding:var(--space-xs) var(--space-s);background-color:var(--bg);color:var(--text);border:2px solid var(--brand);border-radius:var(--radius-s);position:absolute;inset-block-start:var(--space-s);inset-inline-start:var(--space-s);translate:0 -200%;&:focus-visible{translate:0}}.button{align-items:center;gap:var(--space-xs);border:2px solid var(--brand);background-color:var(--brand);min-block-size:2.75rem;color:var(--on-brand);border-radius:999px;padding:.6em 1.2em;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;&:hover{background-color:color-mix(in oklch, var(--brand), var(--text) 15%);border-color:color-mix(in oklch, var(--brand), var(--text) 15%)}}.button--ghost{color:var(--brand);background-color:#0000;&:hover{background-color:color-mix(in oklch, var(--brand) 10%, transparent);color:var(--brand)}}.eyebrow{color:var(--accent);font-size:var(--step--1);letter-spacing:.06em;font-weight:700}.lead{font-size:var(--step-1);color:var(--muted);max-inline-size:55ch}.card{gap:var(--space-xs);padding:var(--space-m);background-color:var(--bg);border:1px solid var(--border);border-radius:var(--radius-m);flex-direction:column;display:flex;position:relative;container-type:inline-size;& h3 a{color:inherit;text-decoration:none;&:after{content:"";border-radius:inherit;position:absolute;inset:0}}&:has(h3 a){&:hover{border-color:var(--brand)}&:focus-within{outline:3px solid var(--brand);outline-offset:3px}& :focus-visible{outline:none}}&>:last-child{margin-block-start:auto}}.section--surface .card{background-color:var(--bg)}.meta{color:var(--muted);font-size:var(--step--1)}.tags{gap:var(--space-2xs) var(--space-xs);font-size:var(--step--1);flex-wrap:wrap;padding:0;list-style:none;display:flex;& li{border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.1em .65em}}.badge{border-radius:var(--radius-s);color:var(--accent);font-size:var(--step--1);border:1px solid;align-self:start;padding:.1em .6em;font-weight:600}.note{padding:var(--space-s) var(--space-m);border-inline-start:4px solid var(--accent);background-color:var(--surface);border-radius:var(--radius-s)}.page-header{padding-block:var(--space-xl) var(--space-l);&>*+*{margin-block-start:var(--space-s)}}}@layer utilities{.visually-hidden:not(:focus,:active){clip-path:inset(50%);white-space:nowrap;block-size:1px;inline-size:1px;position:absolute;overflow:hidden}}.site-header[data-astro-cid-nen7h5rs]{view-transition-name:site-header;border-block-end:1px solid var(--border);background-color:var(--bg)}.header-inner[data-astro-cid-nen7h5rs]{justify-content:space-between;align-items:center;gap:var(--space-m);padding-block:var(--space-s);display:flex;&>[data-astro-cid-nen7h5rs]{white-space:nowrap;flex-shrink:0}}.header-end[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-xs);display:flex}.site-header[data-astro-cid-nen7h5rs]:not(.is-wide) .header-inner[data-astro-cid-nen7h5rs]{row-gap:var(--space-xs);flex-wrap:wrap}.lang-switch[data-astro-cid-nen7h5rs]{border-radius:var(--radius-s);min-block-size:2.75rem;min-inline-size:2.75rem;color:var(--text);justify-content:center;align-items:center;padding-inline:.5em;font-weight:700;text-decoration:none;display:inline-flex;&:hover{background-color:var(--surface);text-decoration:underline}}.is-measuring[data-astro-cid-nen7h5rs] [data-astro-cid-nen7h5rs]{transition:none!important}.site-logo[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--space-xs);color:var(--text);font-size:var(--step-1);letter-spacing:-.02em;font-weight:800;text-decoration:none;display:inline-flex;& .logo-mark{color:var(--brand)}}.menu-button[data-astro-cid-nen7h5rs]{anchor-name:--menu-button;align-items:center;gap:var(--space-xs);border:2px solid var(--border);min-block-size:2.75rem;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:.5em 1em;font-weight:600;display:inline-flex;&:hover{border-color:var(--brand)}}.site-menu[data-astro-cid-nen7h5rs]{padding:0;list-style:none;& a{border-radius:var(--radius-s);color:var(--text);padding:.6em .9em;font-weight:500;text-decoration:none;display:block;&:hover{background-color:var(--surface)}&[aria-current=page]{color:var(--brand);text-underline-offset:.35em;text-decoration:underline .14em}}}@supports selector(:popover-open){.site-menu[data-astro-cid-nen7h5rs][popover]{inset:auto;inset-block-start:4.5rem;margin:0;block-size:fit-content;max-block-size:calc(100dvh - 6rem);inline-size:min(80dvw,20rem);max-inline-size:calc(100dvw - 2rem);padding:var(--space-xs);border:1px solid var(--border);border-radius:var(--radius-m);background-color:var(--bg);color:var(--text);margin-block-start:.5rem;position:fixed;inset-block-start:anchor(--menu-button bottom);inset-inline-end:var(--space-m);overflow:auto;box-shadow:0 1rem 2.5rem -1rem oklch(0% 0 0/.35)}@media (prefers-reduced-motion:no-preference){.site-menu[data-astro-cid-nen7h5rs][popover]{transition-behavior:allow-discrete;opacity:0;transition:opacity .18s ease-out,translate .18s ease-out,display .18s,overlay .18s;translate:0 -.5rem;&:is(:popover-open,.\:popover-open){opacity:1;translate:0;@starting-style{opacity:0;translate:0 -.5rem}}}}}.site-header[data-astro-cid-nen7h5rs].is-wide{& .menu-button{display:none}& .site-menu{align-items:center;gap:var(--space-2xs);block-size:auto;max-block-size:none;inline-size:auto;max-inline-size:none;box-shadow:none;opacity:1;background:0 0;border:0;margin:0;padding:0;display:flex;position:static;overflow:visible;translate:none}}.site-header[data-astro-cid-nen7h5rs].no-popover{& .header-inner,& .header-inner>[data-astro-cid-nen7h5rs]{white-space:normal;flex-wrap:wrap}& .site-menu{flex-wrap:wrap}}@media (forced-colors:active){.site-menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:linktext}}.site-footer[data-astro-cid-jo6i4kqk]{padding-block:var(--space-l) var(--space-m);border-block-start:1px solid var(--border);background-color:var(--surface);font-size:var(--step--1);color:var(--muted);& a{color:var(--text)}& ul{padding:0;list-style:none}& li a{align-items:center;min-block-size:1.5rem;display:inline-flex}}.footer-grid[data-astro-cid-jo6i4kqk]{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));display:grid}.footer-title[data-astro-cid-jo6i4kqk]{font-size:var(--step-0);color:var(--text);margin-block-end:var(--space-xs)}.footer-bottom[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:var(--space-s);border-block-start:1px solid var(--border);flex-wrap:wrap;margin-block-start:var(--space-l);padding-block-start:var(--space-m);display:flex}
