@layer base{*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,pre,figure,blockquote,dl,dd,hr{margin:0}ul[role=list],ol[role=list]{margin:0;padding:0;list-style:none}html:focus-within{scroll-behavior:smooth}body{text-rendering:optimizespeed;min-height:100dvh;line-height:1.5}a{text-underline-offset:.15em;text-decoration-thickness:max(.08em,1px)}img,svg,video,canvas,picture{object-fit:cover;block-size:auto;max-inline-size:100%;display:block}input,button,textarea,select,h1,h2,h3,h4,h5,h6,small{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#root{min-height:inherit;isolation:isolate}:root{--color-accent:oklch(45% .09 160);--color-bg:oklch(97% .006 65);--color-bg-raised:oklch(95% .006 65);--color-border:oklch(88% .006 65);--color-border-darker:oklch(80% .006 65);--color-text:oklch(18% .006 65);--color-text-muted:oklch(45% .006 65);--color-text-link:var(--color-accent);--font-family-display:var(--font-family-serif);--font-family-body:ui-sans-serif, Inter, system-ui, sans-serif;--font-family-code:ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;--font-weight-regular:400;--font-weight-bold:700;--font-size-xs:clamp(.6944rem, .684rem + .0465vw, .72rem);--font-size-s:clamp(.8333rem, .8061rem + .1212vw, .9rem);--font-size-m:clamp(1rem, .9489rem + .2273vw, 1.125rem);--font-size-l:clamp(1.2rem, 1.1156rem + .375vw, 1.4063rem);--font-size-xl:clamp(1.44rem, 1.31rem + .5778vw, 1.7578rem);--font-size-2xl:clamp(1.728rem, 1.536rem + .8532vw, 2.1973rem);--font-size-3xl:clamp(2.0736rem, 1.7983rem + 1.2236vw, 2.7466rem);--font-size-4xl:clamp(2.4883rem, 2.1018rem + 1.718vw, 3.4332rem);--leading-tight:1.2;--leading-normal:1.5;--space-3xs:clamp(.25rem, .2244rem + .1136vw, .3125rem);--space-2xs:clamp(.5rem, .4744rem + .1136vw, .5625rem);--space-xs:clamp(.75rem, .6989rem + .2273vw, .875rem);--space-s:clamp(1rem, .9489rem + .2273vw, 1.125rem);--space-m:clamp(1.5rem, 1.4233rem + .3409vw, 1.6875rem);--space-l:clamp(2rem, 1.8977rem + .4545vw, 2.25rem);--space-xl:clamp(3rem, 2.8466rem + .6818vw, 3.375rem);--space-2xl:clamp(4rem, 3.7955rem + .9091vw, 4.5rem);--space-3xl:clamp(6rem, 5.6932rem + 1.3636vw, 6.75rem);--measure-layout:80rem;--measure-prose:65ch;--radius-s:.25em;--radius-m:.5em}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family-body);font-size:var(--font-size-m);--cover-gap:var(--space-m);max-inline-size:var(--measure-prose);padding-block:var(--space-s);padding-inline:var(--space-m);margin-inline:auto}main{padding-block-start:var(--space-l)}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);line-height:var(--leading-tight);overflow-wrap:break-word;text-wrap:balance}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}p{line-height:var(--leading-normal);overflow-wrap:break-word;text-wrap:pretty}a{color:var(--color-text-link);&:hover,&:focus-visible{text-decoration:none}}pre,code{font-family:var(--font-family-code);font-size:var(--font-size-s);font-variant-numeric:tabular-nums}}@layer composition{.center{place-items:center;display:grid}.cluster{justify-content:var(--cluster-halign,start);align-items:var(--cluster-valign,stretch);gap:var(--cluster-gap,var(--space-s));flex-wrap:wrap;display:flex;&>*{--cluster-gap:initial;--cluster-halign:initial;--cluster-valign:initial}}.cover{gap:var(--cover-gap,var(--space-s));min-block-size:var(--cover-min-height,100dvh);flex-direction:column;display:flex;&>.cover_target{flex-grow:1}&>*{--cover-gap:initial;--cover-min-height:initial}}.repel{justify-content:space-between;align-items:var(--repel-valign,center);gap:var(--repel-gap,var(--space-s));flex-wrap:wrap;display:flex;&[data-repel-nowrap]{flex-wrap:nowrap}&>*{--repel-gap:initial;--repel-valign:initial}}.sidebar{gap:var(--sidebar-gap,var(--space-s));flex-wrap:wrap;align-items:start;display:flex;&>*{--sidebar-gap:initial}}.sidebar>:first-child{flex-grow:1;flex-basis:var(--sidebar-width,content);&>*{--sidebar-width:initial}}.sidebar>:first-child+*{flex-grow:999;flex-basis:0;min-inline-size:50%}.stack{flex-direction:column;justify-content:start;display:flex}.stack>*+*{margin-block-start:var(--stack-gap,var(--space-s));&>*{--stack-gap:initial}}.stack>[data-grow]{margin-block-start:auto}}@layer utility{.region{padding-block:var(--region-space,var(--space-s));&>*{--region-space:initial}}.text-label{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);line-height:var(--leading-tight)}.sr-only{clip-path:inset(50%);height:1px;position:absolute;overflow:hidden}}@layer block{.icon{width:round(1em,2px);height:round(1em,2px);display:inline-block}.prose{--prose-gap-loose:var(--space-m);--prose-gap-normal:var(--space-s);--prose-gap-tight:var(--space-2xs);&>*+*{margin-block-start:var(--prose-gap,var(--prose-gap-normal))}& header:has(h1){&>*+*{margin-block-start:var(--prose-gap,var(--prose-gap-tight))}&+*{--prose-gap:var(--prose-gap-loose)}}& :is(h2,h3,h4){--prose-gap:var(--prose-gap-loose);&+*{--prose-gap:var(--prose-gap-tight)}}& :is(ul,ol){--prose-gap:var(--prose-gap-tight)}& li>*+*{margin-block-start:var(--prose-gap,var(--prose-gap-tight))}& :not(pre)>code{background-color:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-s);padding:.2em .4em}& .lede{color:var(--color-text-muted);font-size:var(--font-size-l);&+:is(h2,h3,h4){--prose-gap:var(--prose-gap-tight)}}& hr{background-color:var(--color-border);border:none;height:1px;&,&+*{--prose-gap:var(--prose-gap-loose)}}& figcaption{font-size:var(--font-size-s);text-align:center;margin-block-start:var(--prose-gap-tight)}& figure:has(blockquote),& blockquote:not(figure blockquote){border-left:4px solid var(--color-border-darker);padding-inline-start:var(--space-s);& figcaption{color:var(--color-text-muted);font-size:var(--font-size-s);text-align:start;&:before{content:"— "}& p:only-child{display:contents}}}& pre{background-color:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:var(--radius-m);padding:var(--space-xs);tab-size:4;overflow-x:auto}& table{border-collapse:collapse;width:100%}& thead{border-block-end:2px solid var(--color-border)}& tr{border-block-end:1px solid var(--color-border)}& th,& td{padding-block:var(--prose-gap-tight);padding-inline:var(--space-s);text-align:start}& th{font-weight:var(--font-weight-bold);font-family:var(--font-family-display)}& caption{caption-side:bottom;font-size:var(--font-size-s);text-align:center;margin-block-start:var(--prose-gap-tight)}& .footnotes{border-block-start:1px solid var(--color-border)}}}footer[data-astro-cid-6vrjc4vz]{color:var(--color-text-muted);font-family:var(--font-family-display)}header[data-astro-cid-ruxlch7s]{font-family:var(--font-family-display)}.logo[data-astro-cid-ruxlch7s]{color:currentColor;font-size:var(--font-size-l);font-style:italic;font-weight:500;text-decoration:none}a[data-astro-cid-ruxlch7s]{text-decoration-line:none;&:hover{text-decoration-line:underline}}
