@font-face{font-family:Satoshi;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/satoshi-400.woff2) format("woff2")}@font-face{font-family:Satoshi;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/satoshi-400-italic.woff2) format("woff2")}@font-face{font-family:Satoshi;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/satoshi-700.woff2) format("woff2")}@font-face{font-family:Cabinet Grotesk;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/cabinet-grotesk-variable.woff2) format("woff2")}@font-face{font-family:Fira Code;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/fira-code-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--gray-0: #10141c;--gray-100: #171b24;--gray-200: #454d5f;--gray-300: #5c6577;--gray-400: #707a8e;--gray-600: #a8b0c0;--gray-700: #cdd3dd;--gray-800: #dde1e8;--gray-900: #ffffff;--gray-999-basis: 220, 20%, 97%;--gray-999_40: hsla(var(--gray-999-basis), .4);--gray-999: #f6f7f9;--accent-regular: #7611a6;--accent-dark: #4d0b6e;--accent-overlay: hsla(281, 81%, 37%, .12);--accent-text-over: #ffffff;--link-color: var(--accent-regular);--surface: var(--gray-900);--hairline: rgba(15, 25, 55, .14);--hairline-strong: rgba(15, 25, 55, .32);--grid-line: rgba(40, 60, 120, .06);--text-xs: .75rem;--text-sm: .875rem;--text-md: 1.125rem;--text-lg: 1.25rem;--text-xl: 1.625rem;--text-2xl: 2.125rem;--text-3xl: 2.625rem;--text-4xl: 3.5rem;--text-5xl: 4.5rem;--font-system: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-body: "Satoshi", var(--font-system);--font-brand: "Cabinet Grotesk", var(--font-system);--font-mono: "Fira Code", ui-monospace, "Cascadia Code", "Cascadia Mono", Consolas, "SF Mono", Menlo, monospace;--theme-transition: .2s ease-in-out;--hover-transition: .25s ease-out}:root.theme-dark{--gray-0: #f6f8fc;--gray-100: #e6eaf2;--gray-200: #a6aebd;--gray-300: #8993a6;--gray-400: #6b7488;--gray-600: #454d5f;--gray-700: #303748;--gray-800: #1e2431;--gray-900: #0d1118;--gray-999-basis: 220, 30%, 4%;--gray-999: #07090d;--accent-regular: #7611a6;--accent-dark: #c778ff;--accent-overlay: hsla(272, 100%, 74%, .25);--accent-text-over: var(--gray-0);--link-color: var(--accent-dark);--hairline: rgba(197, 214, 255, .14);--hairline-strong: rgba(197, 214, 255, .3);--grid-line: rgba(150, 170, 255, .05)}html,body{min-height:100%;overflow-x:hidden}@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}body{background-color:var(--gray-999);color:var(--gray-200);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5}*,*:after,*:before{box-sizing:border-box;margin:0}img{max-width:100%;height:auto}p{text-wrap:pretty}a{color:var(--link-color)}:focus-visible{outline:2px solid var(--link-color);outline-offset:2px}h1,h2,h3,h4,h5{line-height:1.1;font-family:var(--font-brand);font-weight:600;color:var(--gray-100);letter-spacing:-.01em;text-wrap:balance}h1{font-size:var(--text-5xl);font-weight:700;letter-spacing:-.025em}h2{font-size:var(--text-4xl);font-weight:700;letter-spacing:-.02em}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}.term-label{display:flex;align-items:center;gap:1rem;margin:0;font-family:var(--font-mono);font-size:.8125rem;font-weight:400;letter-spacing:.06em;line-height:1.4;color:var(--gray-400);text-transform:lowercase}.term-label:after{content:"";flex:1;height:1px;background:var(--hairline)}.term-label .hash{color:var(--link-color)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.wrapper{width:100%;max-width:83rem;margin-inline:auto;padding-inline:1.5rem}.stack{display:flex;flex-direction:column}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.gap-10{gap:2.5rem}.gap-15{gap:3.75rem}.gap-20{gap:5rem}svg[data-astro-cid-patnjmll]{vertical-align:middle;width:var(--size, 1em);height:var(--size, 1em)}button[data-astro-cid-x3pjskd3]{display:flex;border:1px solid var(--hairline-strong);border-radius:4px;padding:0;background-color:var(--gray-999);cursor:pointer}.icon[data-astro-cid-x3pjskd3]{z-index:1;position:relative;display:flex;padding:.5rem;width:2rem;height:2rem;font-size:1rem;color:var(--gray-300)}.icon[data-astro-cid-x3pjskd3].light:before{content:"";z-index:-1;position:absolute;inset:0;background-color:var(--accent-regular);border-radius:3px}.theme-dark .icon[data-astro-cid-x3pjskd3].light:before{transform:translate(100%)}.theme-dark .icon[data-astro-cid-x3pjskd3].dark,html:not(.theme-dark) .icon[data-astro-cid-x3pjskd3].light,button[data-astro-cid-x3pjskd3][aria-pressed=false] .icon[data-astro-cid-x3pjskd3].light{color:var(--accent-text-over)}@media (prefers-reduced-motion: no-preference){.icon[data-astro-cid-x3pjskd3],.icon[data-astro-cid-x3pjskd3].light:before{transition:transform var(--theme-transition),color var(--theme-transition)}}@media (forced-colors: active){.icon[data-astro-cid-x3pjskd3].light:before{background-color:SelectedItem}}nav[data-astro-cid-dmqpwcec]{z-index:9999;position:relative;font-family:var(--font-mono);margin-bottom:3.5rem;border-bottom:1px solid var(--hairline)}.menu-header[data-astro-cid-dmqpwcec]{display:flex;justify-content:space-between;gap:.5rem;padding:1.25rem 1.5rem}.site-title[data-astro-cid-dmqpwcec]{display:flex;gap:.625rem;align-items:center;line-height:1.1;font-size:.9375rem;letter-spacing:.04em;color:var(--gray-0);text-decoration:none}.site-title[data-astro-cid-dmqpwcec] .mark[data-astro-cid-dmqpwcec]{color:var(--link-color)}.menu-button[data-astro-cid-dmqpwcec]{display:none;border:1px solid var(--hairline-strong);border-radius:4px;padding:.5rem;font-size:1.5rem;color:var(--gray-300);background:var(--gray-999);transition:color var(--theme-transition),border-color var(--theme-transition)}.menu-button[data-astro-cid-dmqpwcec][aria-expanded=true]{color:var(--link-color);border-color:var(--link-color)}html.js .menu-button[data-astro-cid-dmqpwcec]{display:flex}html.js .menu-content[data-astro-cid-dmqpwcec]{display:none}html.js .menu-content[data-astro-cid-dmqpwcec].open{display:block;position:absolute;left:0;right:0}.nav-items[data-astro-cid-dmqpwcec]{margin:0;display:flex;flex-direction:column;gap:1rem;font-size:.9375rem;line-height:1.2;list-style:none;padding:2rem;background-color:var(--gray-999);border-bottom:1px solid var(--hairline);text-transform:lowercase}.link[data-astro-cid-dmqpwcec]{display:inline-block;color:var(--gray-400);text-decoration:none;transition:color var(--theme-transition)}.link[data-astro-cid-dmqpwcec]:hover,.link[data-astro-cid-dmqpwcec]:focus{color:var(--gray-0)}.link[data-astro-cid-dmqpwcec][aria-current]{color:var(--link-color)}.link[data-astro-cid-dmqpwcec][aria-current]:before{content:"["}.link[data-astro-cid-dmqpwcec][aria-current]:after{content:"]"}.menu-footer[data-astro-cid-dmqpwcec]{--icon-size: var(--text-xl);--icon-padding: .5rem;display:flex;justify-content:space-between;gap:.75rem;padding:1.5rem 2rem 1.5rem 1.5rem;background-color:var(--gray-999);border-bottom:1px solid var(--hairline)}.socials[data-astro-cid-dmqpwcec]{display:flex;flex-wrap:wrap;gap:.625rem;font-size:var(--icon-size)}.social[data-astro-cid-dmqpwcec]{display:flex;padding:var(--icon-padding);text-decoration:none;color:var(--gray-400);transition:color var(--theme-transition)}.social[data-astro-cid-dmqpwcec]:hover,.social[data-astro-cid-dmqpwcec]:focus{color:var(--link-color)}.theme-toggle[data-astro-cid-dmqpwcec]{display:flex;align-items:center;height:calc(var(--icon-size) + 2 * var(--icon-padding))}html:not(.js) .theme-toggle[data-astro-cid-dmqpwcec]{display:none}@media (min-width: 50em){nav[data-astro-cid-dmqpwcec]{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.25rem 2rem;gap:1rem}.menu-header[data-astro-cid-dmqpwcec]{padding:0}.menu-content[data-astro-cid-dmqpwcec],html.js .menu-content[data-astro-cid-dmqpwcec],html.js .menu-content[data-astro-cid-dmqpwcec].open{display:contents;position:static}html.js .menu-button[data-astro-cid-dmqpwcec]{display:none}.nav-items[data-astro-cid-dmqpwcec]{flex-direction:row;gap:1.75rem;font-size:.8125rem;border:0;padding:0;background:transparent}.link[data-astro-cid-dmqpwcec]{padding:.25rem 0}.menu-footer[data-astro-cid-dmqpwcec]{--icon-padding: .375rem;justify-self:flex-end;align-items:center;padding:0;background-color:transparent;border-bottom:0}.socials[data-astro-cid-dmqpwcec]{display:none}}@media (min-width: 60em){.socials[data-astro-cid-dmqpwcec]{display:flex;justify-content:flex-end;gap:0}}@media (forced-colors: active){.link[data-astro-cid-dmqpwcec][aria-current]{color:SelectedItem}}footer[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:1rem;margin-top:auto;padding:1.5rem 2rem 2rem;border-top:1px solid var(--hairline);text-align:center;color:var(--gray-400);font-family:var(--font-mono);font-size:.8125rem}footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--gray-400);text-decoration:none;transition:color var(--theme-transition)}footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover,footer[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:focus{color:var(--link-color)}.socials[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap}@media (min-width: 50em){footer[data-astro-cid-sz7xmlte]{flex-direction:row;justify-content:space-between}.socials[data-astro-cid-sz7xmlte]{justify-content:flex-end}}.skip-link[data-astro-cid-37fxchfa]{position:absolute;z-index:10000;top:.5rem;left:.5rem;padding:.5rem 1rem;border-radius:4px;background-color:var(--accent-regular);color:var(--accent-text-over);font-family:var(--font-mono);font-size:.875rem;text-decoration:none;transform:translateY(-200%)}.skip-link[data-astro-cid-37fxchfa]:focus{transform:none}#main-content[data-astro-cid-37fxchfa]{outline:none}.backgrounds[data-astro-cid-37fxchfa]{min-height:100%;background:linear-gradient(var(--grid-line) 1px,transparent 1px) 0 0 / 100% 32px,linear-gradient(90deg,var(--grid-line) 1px,transparent 1px) 0 0 / 32px 100%,var(--gray-999)}@media (forced-colors: active){.backgrounds[data-astro-cid-37fxchfa]{background:none}}
