@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-Regular.ttf)}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf)}*,*:before,*:after{box-sizing:border-box}*{margin:0}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{max-width:100%;height:auto;vertical-align:middle;font-style:italic}input,button,textarea,select{font:inherit}#root,#__next{isolation:isolate}:root{--_hue-primary: 257;--bg--light: var(--_hue-primary) 30% 95%;--txt--light: var(--_hue-primary) 15% 10%;--muted--light: var(--_hue-primary) 5% 50%;--accent--light: var(--_hue-primary) 40% 45%;--bg--dark: var(--_hue-secondary) 20% 15%;--txt--dark: var(--_hue-primary) 30% 95%;--muted--dark: var(--_hue-primary) 5% 55%;--accent--dark: var(--_hue-primary) 50% 70%;--bg: var(--bg--light);--txt: var(--txt--light);--muted: var(--muted--light);--accent: var(--accent--light);color-scheme:light;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono: "IBM Plex Mono", Menlo, Monaco, "Lucida Console", "Liberation Mono", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace;--step--2: clamp(.7901rem, .7558rem + .1718vi, .8889rem);--step--1: clamp(.8889rem, .8502rem + .1932vi, 1rem);--step-0: clamp(1rem, .9565rem + .2174vi, 1.125rem);--step-1: clamp(1.125rem, 1.0761rem + .2446vi, 1.2656rem);--step-2: clamp(1.2656rem, 1.2106rem + .2751vi, 1.4238rem);--step-3: clamp(1.4238rem, 1.3619rem + .3095vi, 1.6018rem);--step-4: clamp(1.6018rem, 1.5322rem + .3482vi, 1.802rem);--step-5: clamp(1.802rem, 1.7237rem + .3917vi, 2.0273rem);--_padding-base: 1rem;--padding-min: var(--_padding-base);--wide-max-width: 70rem;--narrow-max-width: 60ch;--space-3xs: clamp(.25rem, .225rem + .125vi, .3125rem);--space-2xs: clamp(.5rem, .475rem + .125vi, .5625rem);--space-xs: clamp(.75rem, .7rem + .25vi, .875rem);--space-s: clamp(1rem, .95rem + .25vi, 1.125rem);--space-m: clamp(1.5rem, 1.425rem + .375vi, 1.6875rem);--space-l: clamp(2rem, 1.9rem + .5vi, 2.25rem);--space-xl: clamp(3rem, 2.85rem + .75vi, 3.375rem);--space-2xl: clamp(4rem, 3.8rem + 1vi, 4.5rem);--space-3xl: clamp(6rem, 5.7rem + 1.5vi, 6.75rem);--space-3xs-2xs: clamp(.25rem, .125rem + .625vi, .5625rem);--space-2xs-xs: clamp(.5rem, .35rem + .75vi, .875rem);--space-xs-s: clamp(.75rem, .6rem + .75vi, 1.125rem);--space-s-m: clamp(1rem, .725rem + 1.375vi, 1.6875rem);--space-m-l: clamp(1.5rem, 1.2rem + 1.5vi, 2.25rem);--space-l-xl: clamp(2rem, 1.45rem + 2.75vi, 3.375rem);--space-xl-2xl: clamp(3rem, 2.4rem + 3vi, 4.5rem);--space-2xl-3xl: clamp(4rem, 2.9rem + 5.5vi, 6.75rem)}@media (prefers-color-scheme: dark){:root{--bg: var(--bg--dark);--txt: var(--txt--dark);--accent: var(--accent--dark);--muted: var(--muted--dark);color-scheme:dark}}.content-grid{--wide-size: calc((var(--wide-max-width) - var(--narrow-max-width)) / 2);display:grid;grid-template-columns:[bleed-start] minmax(var(--padding-min),1fr) [wide-start] minmax(0,var(--wide-size)) [narrow-start] min(100% - (var(--padding-min)) * 2,var(--narrow-max-width)) [narrow-end] minmax(0,var(--wide-size)) [wide-end] minmax(var(--padding-min),1fr) [bleed-end]}.content-grid>:not(.bleed,.narrow){grid-column:wide}.content-grid>.narrow{grid-column:narrow}.content-grid>.bleed{grid-column:bleed;display:grid;grid-template-columns:inherit}body{font-family:var(--font-sans);font-size:var(--step-0);line-height:1.6;color:hsl(var(--txt));background-color:hsl(var(--bg));min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:none;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-size:var(--step-0)}ul{list-style-type:"-  ";padding-inline-start:1em}li::marker{margin-right:1em}a{color:hsl(var(--txt));text-underline-offset:4px;text-decoration-color:hsl(var(--muted));&:hover{text-decoration-color:hsl(var(--accent))}}code{font-family:var(--font-mono);font-size:var(--step-0)}:not(pre)>code{color:hsl(var(--accent));background-color:hsl(var(--muted) / .15);border-radius:3px;padding:1px 4px}pre{padding:1.5rem 1rem;border-radius:.25rem;line-height:1.3}.muted{color:hsl(var(--muted))}.flow{& p{margin-block-end:1.5em}h1,h2,h3,h4{margin-block-end:1em;line-height:1.1em;text-wrap:pretty;&:not(:first-child){margin-block-start:2em}}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-2)}& strong{font-weight:700}& em{font-style:oblique}& ol,ul{padding-inline-start:1em;margin-block-start:-1em;margin-block-end:1em;margin-inline-start:0px;margin-inline-end:0px}& figcaption{font-size:var(--fs-xs)}& blockquote{font-style:oblique;margin-block-end:1.5em;padding:.5rem 2rem;color:hsl(var(--accent));background-color:hsl(var(--muted) / .05);border-left:.25rem solid hsl(var(--accent));& p{margin-block-end:0}}& pre{margin-block-end:1.5em}}main[data-astro-cid-37fxchfa]{padding:6rem 0}
