:root{--breakpoint-md: 768px;--breakpoint-lg: 1440px}:root{color-scheme:light dark;--white: oklch(100% 0 0);--black: oklch(0% 0 0);--gray-50: oklch(98% 0 0);--gray-100: oklch(97% 0 0);--gray-150: oklch(94% 0 0);--gray-200: oklch(92% 0 0);--gray-300: oklch(87% 0 0);--gray-400: oklch(70% 0 0);--gray-500: oklch(55% 0 0);--gray-550: oklch(50% 0 0);--gray-600: oklch(45% 0 0);--gray-700: oklch(35% 0 0);--gray-800: oklch(25% 0 0);--gray-900: oklch(19% 0 1);--gray-950: oklch(13% 0 0);--green-50: oklch(97% .02 155);--green-100: oklch(94% .04 155);--green-200: oklch(89% .08 155);--green-300: oklch(81% .13 155);--green-400: oklch(70% .17 155);--green-500: oklch(62% .19 155);--green-600: oklch(53% .17 155);--green-700: oklch(46% .14 155);--green-800: oklch(39% .11 155);--green-900: oklch(34% .09 155);--green-950: oklch(20% .06 155);--blue-50: oklch(97% .01 250);--blue-100: oklch(94% .03 250);--blue-200: oklch(88% .06 250);--blue-300: oklch(79% .11 250);--blue-400: oklch(69% .15 250);--blue-500: oklch(60% .18 250);--blue-600: oklch(53% .2 250);--blue-700: oklch(47% .19 250);--blue-800: oklch(41% .16 250);--blue-900: oklch(37% .13 250);--blue-950: oklch(26% .1 250);--blue-975: oklch(18% .06 250);--sky-500: oklch(71% .16 237);--sky-700: oklch(48% .22 237);--amber-50: oklch(98% .03 85);--amber-100: oklch(94% .07 85);--amber-200: oklch(89% .12 85);--amber-300: oklch(83% .16 80);--amber-400: oklch(78% .17 70);--amber-500: oklch(73% .17 60);--amber-600: oklch(64% .17 50);--amber-700: oklch(53% .15 50);--amber-800: oklch(45% .12 50);--amber-900: oklch(39% .1 50);--amber-950: oklch(25% .07 50);--red-50: oklch(97% .01 25);--red-100: oklch(94% .03 25);--red-200: oklch(89% .06 25);--red-300: oklch(81% .11 25);--red-400: oklch(70% .17 25);--red-500: oklch(62% .21 25);--red-600: oklch(54% .22 25);--red-700: oklch(47% .19 25);--red-800: oklch(40% .16 25);--red-900: oklch(36% .13 25);--red-950: oklch(22% .09 25);--color-bg-primary: light-dark(var(--white), var(--black));--color-bg-secondary: light-dark(var(--gray-50), var(--gray-900));--color-bg-tertiary: light-dark(var(--gray-150), var(--gray-800));--color-bg-inverse: light-dark(var(--gray-900), var(--gray-100));--color-bg-inverse-secondary: light-dark(var(--gray-800), var(--gray-200));--color-bg-mute: light-dark(var(--gray-200), var(--gray-600));--color-bg-info: light-dark(var(--blue-50), var(--blue-975));--color-bg-success: light-dark(var(--green-50), var(--green-950));--color-bg-warning: light-dark(var(--amber-50), var(--amber-950));--color-bg-error: light-dark(var(--red-50), var(--red-950));--color-border-primary: light-dark(var(--gray-300), var(--gray-500));--color-border-secondary: light-dark(var(--gray-200), var(--gray-800));--color-border-tertiary: light-dark(var(--gray-400), var(--gray-400));--color-border-mute: light-dark(var(--gray-300), var(--gray-700));--color-border-inverse: light-dark(var(--gray-700), var(--gray-200));--color-border-info: light-dark(var(--blue-200), var(--blue-950));--color-border-success: light-dark(var(--green-200), var(--green-800));--color-border-warning: light-dark(var(--amber-200), var(--amber-800));--color-border-error: light-dark(var(--red-200), var(--red-800));--color-text-primary: light-dark(var(--gray-900), var(--gray-100));--color-text-secondary: light-dark(var(--gray-600), var(--gray-150));--color-text-tertiary: var(--gray-500, var(--gray-550));--color-text-inverse: light-dark(var(--gray-100), var(--gray-900));--color-text-mute: var(--gray-500, var(--gray-550));--color-text-info: light-dark(var(--blue-700), var(--blue-400));--color-text-success: light-dark(var(--green-700), var(--green-400));--color-text-warning: light-dark(var(--amber-700), var(--amber-400));--color-text-error: light-dark(var(--red-700), var(--red-400));--color-icon-primary: light-dark(var(--gray-900), var(--gray-50));--color-icon-secondary: light-dark(var(--gray-500), var(--gray-400));--color-button-primary-bg: light-dark(var(--gray-900), var(--white));--color-button-primary-text: light-dark(var(--white), var(--black));--color-button-primary-bg-hover: light-dark(var(--gray-800), var(--gray-200));--color-link: light-dark(var(--sky-500), var(--sky-500));--color-link-hover: light-dark(var(--sky-500), var(--sky-700));--color-link-visited: light-dark(var(--sky-700), var(--sky-700));--color-focus-ring: light-dark(var(--gray-900), var(--white));--color-overlay: color-mix(in oklch, var(--color-bg-secondary) 90%, transparent)}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}:root{--font-family-sans: "Helvetica Neue", Helvetica, Arial, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;--font-family-mono: "JetBrains Mono", ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;--font-size-xxs: 1rem;--font-size-xs: 1.2rem;--font-size-sm: 1.4rem;--font-size-base: 1.6rem;--font-size-lg: 1.8rem;--font-size-xl: 2rem;--font-size-2xl: 2.4rem;--font-size-3xl: 3rem;--font-size-4xl: 3.6rem;--font-size-5xl: 4.5rem;--font-size-6xl: 5.4rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-none: 1;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tighter: -.05em;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0em;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--font-family-body: var(--font-family-sans);--font-size-body: var(--font-size-base);--line-height-body: var(--line-height-normal);--letter-spacing-body: var(--letter-spacing-tight);--font-family-heading: var(--font-family-sans);--font-weight-heading: var(--font-weight-bold);--font-line-height-heading: var(--line-height-tight);--font-size-h1: var(--font-size-4xl);--font-size-h2: var(--font-size-2xl);--font-size-h2-docs: var(--font-size-2xl);--font-size-h3: var(--font-size-xl);--font-size-h4: var(--font-size-lg);--font-family-code: var(--font-family-mono);--font-size-code: .9em}@media(768px<=width<1440px){:root{--font-size-h1: var(--font-size-5xl);--font-size-h2: var(--font-size-5xl);--font-size-h2-docs: var(--font-size-3xl);--font-size-h3: var(--font-size-2xl);--font-size-h4: var(--font-size-lg) }}@media(width>=1440px){:root{--font-size-h1: var(--font-size-6xl);--font-size-h2: var(--font-size-5xl);--font-size-h2-docs: var(--font-size-3xl);--font-size-h3: var(--font-size-2xl);--font-size-h4: var(--font-size-xl) }}:root{--space-0: 0;--space-px: 1px;--space-0-5: .2rem;--space-1: .4rem;--space-1-5: .6rem;--space-2: .8rem;--space-2-5: 1rem;--space-3: 1.2rem;--space-3-5: 1.4rem;--space-4: 1.6rem;--space-5: 2rem;--space-6: 2.4rem;--space-7: 2.8rem;--space-8: 3.2rem;--space-9: 3.6rem;--space-10: 4rem;--space-11: 4.4rem;--space-12: 4.8rem;--space-14: 5.6rem;--space-16: 6.4rem;--space-18: 7.2rem;--space-20: 8rem;--space-24: 9.6rem;--space-28: 11.2rem;--space-32: 12.8rem;--space-36: 14.4rem;--space-40: 16rem;--space-44: 17.6rem;--space-48: 19.2rem;--space-52: 20.8rem;--space-56: 22.4rem;--space-60: 24rem;--space-64: 25.6rem;--space-h1: var(--space-12);--space-h2: var(--space-10);--space-h3: var(--space-6);--space-h4: var(--space-6);--space-body: var(--space-5)}:root{--size-0: 0;--size-px: 1px;--size-0-5: .2rem;--size-1: .4rem;--size-1-5: .6rem;--size-2: .8rem;--size-2-5: 1rem;--size-3: 1.2rem;--size-3-5: 1.4rem;--size-4: 1.6rem;--size-5: 2rem;--size-6: 2.4rem;--size-7: 2.8rem;--size-8: 3.2rem;--size-9: 3.6rem;--size-10: 4rem;--size-11: 4.4rem;--size-12: 4.8rem;--size-14: 5.6rem;--size-16: 6.4rem;--size-20: 8rem;--size-24: 9.6rem;--size-28: 11.2rem;--size-32: 12.8rem;--size-36: 14.4rem;--size-40: 16rem;--size-44: 17.6rem;--size-48: 19.2rem;--size-52: 20.8rem;--size-56: 22.4rem;--size-60: 24rem;--size-64: 25.6rem;--size-68: 27.2rem;--size-72: 28.8rem;--size-76: 30.4rem;--size-80: 32rem;--size-84: 33.6rem;--size-88: 35.2rem;--size-92: 36.8rem;--size-96: 38.4rem;--size-100: 40rem}:root{--z-index-sidebar-backdrop: 10;--z-index-header: 20;--z-index-sidebar: 30;--z-index-modal-overlay: 40}:root{--border-width-0: 0px;--border-width-1: 1px;--border-width-2: 2px;--border-width-4: 4px;--border-width-8: 8px;--radius-none: 0;--radius-sm: .2rem;--radius-base: .4rem;--radius-md: .6rem;--radius-lg: .8rem;--radius-xl: 1.2rem;--radius-2xl: 1.6rem;--radius-3xl: 2.4rem;--radius-full: 9999px;--radius-button: var(--radius-md);--radius-input: var(--radius-md);--radius-card: var(--radius-lg);--radius-badge: var(--radius-full)}:root{--duration-75: 75ms;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-500: .5s;--duration-700: .7s;--duration-1000: 1s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--transition-fast: var(--duration-150) var(--ease-out);--transition-base: var(--duration-200) var(--ease-out);--transition-slow: var(--duration-300) var(--ease-out);--transition-colors: color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);--transition-transform: transform var(--transition-base);--transition-opacity: opacity var(--transition-base);--transition-shadow: box-shadow var(--transition-base)}@media(prefers-reduced-motion:reduce){:root{--duration-75: 0ms;--duration-100: 0ms;--duration-150: 0ms;--duration-200: 0ms;--duration-300: 0ms;--duration-500: 0ms;--duration-700: 0ms;--duration-1000: 0ms}}@layer base{*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}body{min-height:100vh;-webkit-font-smoothing:antialiased}ul[role=list],ol[role=list]{list-style:none}button,input,label{line-height:1.1}h1,h2,h3,h4,h5,h6{text-wrap:balance}p,li,blockquote,figcaption{text-wrap:pretty}a{text-decoration-skip-ink:auto}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}textarea:not([rows]){min-height:10em}:target{scroll-margin-block:5ex}}@layer base{@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}}@layer base{html{font-family:var(--font-family-body);font-size:62.5%;color:var(--color-text-primary);background-color:var(--color-bg-primary);scroll-behavior:smooth;-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none;box-sizing:border-box}html *,html *:before,html *:after{box-sizing:inherit}body{font-family:var(--font-family-body);font-size:var(--font-size-body);line-height:var(--line-height-body);background-color:var(--color-bg-primary);text-rendering:optimizeLegibility}h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);margin:0}h1,.h1{font-size:var(--font-size-h1);margin:0}h2{font-size:var(--font-size-h2-docs);margin:var(--space-h2) 0}.h2{font-size:var(--font-size-h2);margin:var(--space-h2) 0}h3,.h3{font-size:var(--font-size-h3);margin:var(--space-h3) 0}h4,.h4{font-size:var(--font-size-h4);margin:var(--space-h4) 0}h5,.h5{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:var(--line-height-relaxed);margin:var(--space-body) 0}h6,.h6{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin:var(--space-body) 0}p,.body{font-family:var(--font-family-body);font-size:var(--font-size-body);font-weight:var(--font-weight-normal);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);margin:var(--space-body) 0}span,.body-md{font-family:var(--font-family-body);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal)}.body-md{margin:var(--space-body) 0;font-size:var(--font-size-sm)}small,.body-sm{font-family:var(--font-family-body);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);margin:var(--space-body) 0}.body-sm{font-size:var(--font-size-xs)}.body-xs{font-family:var(--font-family-body);font-size:var(--font-size-xxs);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);margin:var(--space-body) 0}h1>a,h2>a,h3>a,h4>a,h5>a,h6>a{color:inherit;text-decoration:none}h1>a:hover,h2>a:hover,h3>a:hover,h4>a:hover,h5>a:hover,h6>a:hover{color:inherit;text-decoration:underline}a{color:var(--color-link);text-decoration:underline;text-underline-offset:.15em;transition:var(--transition-colors);overflow-wrap:break-word}a:hover{color:var(--color-link-hover)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:1px solid var(--color-focus-ring);outline-offset:-2px}code,kbd,samp,pre{font-family:var(--font-family-code);font-size:var(--font-size-code)}code *,code *:before,code *:after,kbd *,kbd *:before,kbd *:after,samp *,samp *:before,samp *:after,pre *,pre *:before,pre *:after{font-family:inherit}code,.code{font-family:var(--font-family-code);font-size:var(--font-size-code);font-weight:var(--font-weight-normal);line-height:var(--line-height-snug);background-color:var(--color-bg-tertiary);padding:var(--space-0-5) var(--space-1);border-radius:var(--radius-base);letter-spacing:var(--letter-spacing-normal)}pre{padding:var(--space-4);background-color:var(--color-pre-bg);color:var(--color-pre-fg);border-radius:var(--radius-lg);overflow-x:auto}pre code{padding:0;background:none;border-radius:0}blockquote{padding:var(--space-4) var(--space-6);border-left:var(--border-width-4) solid var(--color-border-primary);background-color:var(--color-bg-secondary);font-style:italic;margin:var(--space-4) 0}hr{border:none;border-top:var(--border-width-1) solid var(--color-border-primary);margin:var(--space-8) 0}.table-scroller{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:var(--space-body) 0}.table-scroller table{margin:0}table{width:100%;border-collapse:collapse;margin:var(--space-body) 0}th,td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:var(--border-width-1) solid var(--color-border-primary)}th{font-weight:var(--font-weight-semibold)}ul,ol{margin:var(--space-body) 0;padding-left:var(--space-6)}:is(ul,ol) :is(ul,ol){margin:var(--space-1) 0}ul{list-style-type:disc}ol{list-style-type:decimal}main{flex-grow:1;padding-bottom:var(--space-16)}@media(width>=768px){main{padding-top:var(--space-16);padding-bottom:var(--space-32)}}@media(width>=768px){.layout-wrapper{background-color:var(--color-bg-secondary)}.layout-content{background-color:var(--color-bg-primary)}}.layout-content{min-width:0}}@layer base{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.contents{display:contents}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.w-full{width:100%}.h-full{height:100%}.max-w-prose{max-width:var(--content-width)}.mx-auto{margin-inline:auto}.my-auto{margin-block:auto}.p-0{padding:var(--space-0)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-0{margin:var(--space-0)}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.disable-transitions *,.disable-transitions *:before,.disable-transitions *:after{transition:none!important}}.expressive-code.expressive-code{margin:var(--space-6) 0}.expressive-code.expressive-code .copy{top:var(--space-3);right:var(--space-3);height:var(--size-5)}.expressive-code.expressive-code .copy button{width:var(--size-6);height:var(--size-6)}.expressive-code.expressive-code figcaption:not(:empty)~.copy{top:var(--space-10)}.expressive-code.expressive-code .feedback{line-height:var(--line-height-snug);font-family:var(--font-family-body)}
