/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-outline-style:solid}}}@layer theme{:root,:host{--font-sans:"Geist Sans", system-ui, sans-serif;--font-mono:"Geist Mono", "SFMono-Regular", Consolas, monospace;--color-green-50:#344e34;--color-green-100:#cbe0b5;--color-cyan-100:#c6f8f9;--spacing:.25rem;--container-6xl:72rem;--text-xs:1.2rem;--text-xs--line-height:calc(1 / .75);--text-sm:1.3rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1.4rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.6rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.8rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:2rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:2.4rem;--text-3xl--line-height:calc(2.25 / 1.875);--leading-tight:1.15;--leading-snug:1.35;--radius-sm:.25rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-dark-30:#060914;--color-dark-60:#242630;--color-dark-90:#5c5e66;--color-light-20:#8e9099;--color-light-60:#cecfd8;--color-light-100:#fff;--color-red-90:#f35b4b;--color-green-10:#08180d;--color-green-30:#172d23;--color-green-90:#aadb71;--color-blue-30:#0b223e;--color-blue-40:#0d2c4e;--color-blue-90:#7088e5;--color-yellow-30:#3a2d07;--color-yellow-90:#e3b352;--color-magenta-30:#3a0d2c;--color-magenta-90:#df7caa;--color-cyan-30:#05323b;--color-cyan-90:#6ddbdd;--font-proto:"Proto Mono", "Geist Mono", "SFMono-Regular", Consolas, monospace;--font-headings:"Proto Mono", "Geist Mono", "SFMono-Regular", Consolas, monospace;--spacing-shell:7.2rem;--spacing-podcast-progress-width:1.2rem;--spacing-podcast-progress-height:2rem;--spacing-podcast-title-gap:4.8rem;--motion-ease:cubic-bezier(.2, .8, .2, 1);--motion-duration:.22s;--motion-stagger:80ms;--animate-podcast-marquee:podcast-marquee 12s linear infinite;--aspect-support-banner:5 / 1;--color-bg:var(--color-dark-30);--color-fg:var(--color-light-60);--color-subtext:var(--color-light-20);--color-ghost:var(--color-dark-90);--color-dim-fg:var(--color-light-20);--color-dim-bg:var(--color-dark-60);--color-accent-fg:var(--color-cyan-100);--color-yellow-fg:var(--color-yellow-90);--color-yellow-bg:var(--color-yellow-30);--color-green-fg:var(--color-green-90);--color-green-bg:var(--color-green-30);--color-blue-fg:var(--color-blue-90);--color-blue-bg:var(--color-blue-30);--color-magenta-fg:var(--color-magenta-90);--color-magenta-bg:var(--color-magenta-30);--color-cyan-fg:var(--color-cyan-90)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:where(.content) a{color:var(--color-cyan-fg);text-underline-offset:2px;text-decoration-line:none}@media (hover:hover){:where(.content) a:hover{color:var(--color-accent-fg);text-decoration-line:underline}}:where(.blog-prose) a{color:var(--color-cyan-fg);text-underline-offset:2px;text-decoration-line:none}@media (hover:hover){:where(.blog-prose) a:hover{color:var(--color-accent-fg);text-decoration-line:underline}}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-0{top:calc(var(--spacing) * 0)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-\[-1\.25rem\]{right:-1.25rem}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-\[6\.1rem\]{bottom:6.1rem}.bottom-full{bottom:100%}.-left-5{left:calc(var(--spacing) * -5)}.left-0{left:calc(var(--spacing) * 0)}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-50{z-index:50}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.aspect-support-banner{aspect-ratio:var(--aspect-support-banner)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-\[1\.6rem\]{width:1.6rem;height:1.6rem}.size-\[1\.8rem\]{width:1.8rem;height:1.8rem}.h-14{height:calc(var(--spacing) * 14)}.h-auto{height:auto}.h-fit{height:fit-content}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[85dvh\]{max-height:85dvh}.min-h-dvh{min-height:100dvh}.w-\[356px\]{width:356px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-screen{width:100vw}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[90vw\]{max-width:90vw}.max-w-prose{max-width:65ch}.min-w-60{min-width:calc(var(--spacing) * 60)}.min-w-fit{min-width:fit-content}.shrink-0{flex-shrink:0}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.place-content-around{place-content:space-around}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-12{gap:calc(var(--spacing) * 12)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x{border-inline-style:var(--tw-border-style);border-inline-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-accent-fg{border-color:var(--color-accent-fg)}.border-fg{border-color:var(--color-fg)}.border-ghost{border-color:var(--color-ghost)}.border-green-50{border-color:var(--color-green-50)}.border-green-fg{border-color:var(--color-green-fg)}.border-yellow-fg{border-color:var(--color-yellow-fg)}.bg-bg{background-color:var(--color-bg)}.bg-blue-bg{background-color:var(--color-blue-bg)}.bg-dim-bg{background-color:var(--color-dim-bg)}.bg-fg{background-color:var(--color-fg)}.bg-green-10{background-color:var(--color-green-10)}.bg-green-bg{background-color:var(--color-green-bg)}.bg-green-fg{background-color:var(--color-green-fg)}.bg-magenta-bg{background-color:var(--color-magenta-bg)}.bg-transparent{background-color:#0000}.bg-yellow-bg{background-color:var(--color-yellow-bg)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-12{padding-inline:calc(var(--spacing) * 12)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-24{padding-block:calc(var(--spacing) * 24)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.pl-1{padding-left:calc(var(--spacing) * 1)}.text-center{text-align:center}.font-headings{font-family:var(--font-headings)}.font-mono{font-family:var(--font-mono)}.font-proto{font-family:var(--font-proto)}.font-sans{font-family:var(--font-sans)}.\!text-base{font-size:var(--text-base)!important;line-height:var(--tw-leading,var(--text-base--line-height))!important}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.\!text-fg{color:var(--color-fg)!important}.text-accent-fg{color:var(--color-accent-fg)}.text-bg{color:var(--color-bg)}.text-blue-fg{color:var(--color-blue-fg)}.text-dim-fg{color:var(--color-dim-fg)}.text-fg{color:var(--color-fg)}.text-green-100{color:var(--color-green-100)}.text-red-90{color:var(--color-red-90)}.text-subtext{color:var(--color-subtext)}.text-yellow-fg{color:var(--color-yellow-fg)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline-offset-4{text-underline-offset:4px}.accent-fg{accent-color:var(--color-fg)}.opacity-90{opacity:.9}.mix-blend-lighten{mix-blend-mode:lighten}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-shell{--tw-shadow:0 .5rem 1.5rem var(--tw-shadow-color,#060914e0);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-bg{--tw-shadow-color:#060914}@supports (color:color-mix(in lab, red, red)){.shadow-bg{--tw-shadow-color:color-mix(in oklab, var(--color-bg) var(--tw-shadow-alpha), transparent)}}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}:is(.\*\:w-fit>*){width:fit-content}:is(.\*\:cursor-pointer>*){cursor:pointer}:is(.\*\:px-4>*){padding-inline:calc(var(--spacing) * 4)}:is(.\*\:py-2>*){padding-block:calc(var(--spacing) * 2)}:is(.\*\:text-3xl>*){font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}@media (hover:hover){.group-hover\:translate-x-0\.5:is(:where(.group):hover *){--tw-translate-x:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:bg-blue-bg:hover{background-color:var(--color-blue-bg)}.hover\:bg-dim-bg:hover{background-color:var(--color-dim-bg)}.hover\:bg-ghost:hover{background-color:var(--color-ghost)}.hover\:bg-green-bg:hover{background-color:var(--color-green-bg)}.hover\:\!text-fg:hover{color:var(--color-fg)!important}.hover\:text-accent-fg:hover{color:var(--color-accent-fg)}.hover\:text-blue-fg:hover{color:var(--color-blue-fg)}.hover\:text-dim-fg:hover{color:var(--color-dim-fg)}.hover\:text-fg:hover{color:var(--color-fg)}.hover\:text-light-100:hover{color:var(--color-light-100)}.hover\:text-magenta-fg:hover{color:var(--color-magenta-fg)}.hover\:text-red-90:hover{color:var(--color-red-90)}.hover\:text-yellow-fg:hover{color:var(--color-yellow-fg)}.hover\:no-underline:hover{text-decoration-line:none}.hover\:underline:hover{text-decoration-line:underline}}.focus\:border-accent-fg:focus{border-color:var(--color-accent-fg)}@media (width>=40rem){.sm\:flex-row{flex-direction:row}.sm\:items-baseline{align-items:baseline}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:gap-4{gap:calc(var(--spacing) * 4)}.sm\:p-8{padding:calc(var(--spacing) * 8)}}@media (width>=48rem){.md\:w-fit{width:fit-content}.md\:flex-row{flex-direction:row}.md\:justify-start{justify-content:flex-start}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:text-right{text-align:right}}@media (width>=64rem){.lg\:flex{display:flex}.lg\:justify-between{justify-content:space-between}}@media print{.print\:static{position:static}.print\:mt-8{margin-top:calc(var(--spacing) * 8)}.print\:hidden{display:none}.print\:shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}}@font-face{font-family:Geist Sans;src:url(./GeistVF.DFmrvcb_.woff)format("woff");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(./GeistMonoVF.BHyMa335.woff)format("woff");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Proto Mono;src:url(./ProtoMono.BZR_5UBZ.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-size:10px}*{scroll-behavior:smooth;scroll-margin-top:var(--spacing-shell)}::selection{background-color:var(--color-blue-40);color:var(--color-fg)}::-moz-selection{background-color:var(--color-ghost);color:var(--color-accent-fg)}html{background-color:var(--color-bg);scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--color-ghost) transparent;min-height:100dvh;overflow-y:scroll}html.scroll-locked{overflow:hidden}html::-webkit-scrollbar{width:6px;height:6px}.scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.toc::-webkit-scrollbar{width:6px;height:6px}html::-webkit-scrollbar-track{background:0 0}.scrollbar-thin::-webkit-scrollbar-track{background:0 0}.toc::-webkit-scrollbar-track{background:0 0}html::-webkit-scrollbar-thumb{background:var(--color-ghost);border-radius:0}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--color-ghost);border-radius:0}.toc::-webkit-scrollbar-thumb{background:var(--color-ghost);border-radius:0}html::-webkit-scrollbar-thumb:hover{background:var(--color-dim-fg)}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:var(--color-dim-fg)}.toc::-webkit-scrollbar-thumb:hover{background:var(--color-dim-fg)}.toc{scrollbar-width:thin;scrollbar-color:var(--color-ghost) transparent}body{font-optical-sizing:auto;margin:calc(var(--spacing) * 0);background-color:var(--color-bg);min-height:100dvh;font-family:Geist Mono,monospace;font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--color-fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;display:flex}button,input,select,textarea{font-family:inherit}:where(button,[role=button]){-webkit-user-select:none;user-select:none}:where(a,button,[role=button]){transition-property:color,background-color,border-color,opacity,box-shadow;transition-duration:var(--motion-duration);transition-timing-function:var(--motion-ease)}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-style:var(--tw-outline-style);outline-offset:2px;outline-width:2px;outline-color:var(--color-cyan-fg)}img{max-width:100%}main{width:100%;max-width:var(--container-6xl);gap:calc(var(--spacing) * 15);padding-block:calc(var(--spacing) * 4);flex-direction:column;flex:1;margin-inline:auto;display:flex}.site-shell>header,.site-shell>footer{animation:motion-fade var(--motion-duration) var(--motion-ease) backwards}.site-shell>main{animation:motion-fade-up var(--motion-duration) var(--motion-ease) backwards}main>*{animation:motion-fade-up var(--motion-duration) var(--motion-ease) backwards;animation-delay:var(--motion-stagger)}main>:first-child,main>:active,main>:focus-within{animation-delay:0s}.motion-backdrop{animation:motion-fade var(--motion-duration) var(--motion-ease) both}.motion-panel{animation:motion-pop var(--motion-duration) var(--motion-ease) both;transform-origin:100% 0;will-change:transform, opacity}section{gap:calc(var(--spacing) * 2.5);flex-direction:column;display:flex}h1{margin:calc(var(--spacing) * 0);font-family:var(--font-headings);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-leading:var(--leading-tight);line-height:var(--leading-tight);color:var(--color-accent-fg);text-transform:capitalize}p{margin:calc(var(--spacing) * 0);--tw-leading:var(--leading-snug);line-height:var(--leading-snug);color:var(--color-subtext)}ul,ol{margin:calc(var(--spacing) * 0);padding:calc(var(--spacing) * 0);list-style-type:none}li:before{content:"- ";color:var(--color-dim-fg)}code,kbd,pre{font-family:var(--font-mono)}code{border-radius:var(--radius-sm);background-color:var(--color-dim-bg);padding-inline:calc(var(--spacing) * 1);color:var(--color-accent-fg)}pre{margin-block:calc(var(--spacing) * 4);gap:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-blue-fg);background-color:var(--color-bg);flex-direction:column;display:flex;overflow:hidden}pre code{padding:calc(var(--spacing) * 4);color:var(--color-fg);background-color:#0000;overflow-x:auto}blockquote{margin-block:calc(var(--spacing) * 2);border-left-style:var(--tw-border-style);--tw-border-style:dashed;border-style:dashed;border-left-width:2px;border-color:var(--color-blue-fg);background-color:var(--color-blue-bg);padding-block:calc(var(--spacing) * 2);padding-right:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 4);color:var(--color-subtext)}blockquote p{flex-direction:column;display:flex}blockquote cite{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-accent-fg);font-style:normal}blockquote cite:before{content:"- ";color:var(--color-accent-fg)}table{margin-block:calc(var(--spacing) * 4);table-layout:auto;border-collapse:collapse;width:100%}thead tr{border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-color:var(--color-ghost)}th{padding-inline:calc(var(--spacing) * 2);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:nowrap;color:var(--color-accent-fg)}tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--color-ghost)}td{border-inline-style:var(--tw-border-style);border-inline-width:1px;border-color:var(--color-ghost);padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 1);color:var(--color-subtext)}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.heading{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 4);display:flex}.heading a{background-color:var(--color-blue-bg);font-family:var(--font-proto);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--color-accent-fg);text-decoration-line:none}@media (hover:hover){.heading a:hover{text-decoration-line:underline}}.content{gap:calc(var(--spacing) * 5);flex-direction:column;display:flex}.content p{display:flow-root}.prose{gap:calc(var(--spacing) * 6);flex-direction:column;max-width:none;display:flex}.blog-prose h1,.blog-prose h2,.blog-prose h3{padding-top:calc(var(--spacing) * 2)}.blog-prose figure{margin-block:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost)}.blog-prose figure img{width:100%;margin-inline:auto}.blog-prose figcaption{justify-content:center;align-items:center;gap:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-dim-fg);display:flex}.blog-prose figcaption span{background-color:var(--color-accent-fg);padding-inline:calc(var(--spacing) * 1);font-family:var(--font-proto);color:var(--color-bg);text-transform:uppercase}.blog-prose p>img{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost);width:100%;margin-inline:auto}.blog-prose ul{margin-block:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 0);color:var(--color-subtext);list-style-type:disc}.blog-prose ol{margin-block:calc(var(--spacing) * 2);padding-left:calc(var(--spacing) * 0);color:var(--color-subtext);list-style-type:decimal}.blog-prose ul li,.blog-prose ol li{padding-left:calc(var(--spacing) * 0);list-style-position:inside}.blog-prose li{margin-block:calc(var(--spacing) * 1);--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.blog-prose li::marker{color:var(--color-dim-fg)}.blog-prose li:before{content:none}.blog-prose .code-block{margin-block:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-blue-fg);background-color:var(--color-bg);overflow:hidden}.blog-prose .code-block__bar{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 4);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--color-ghost);background-color:var(--color-blue-bg);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 2);font-family:var(--font-proto);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-accent-fg);display:flex}.blog-prose .code-block__meta{min-width:calc(var(--spacing) * 0);align-items:center;gap:calc(var(--spacing) * 2);display:flex}.blog-prose .code-block__filename{text-overflow:ellipsis;white-space:nowrap;color:var(--color-fg);overflow:hidden}.blog-prose .code-block__lang{border-radius:var(--radius-sm);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-dim-fg);background-color:var(--color-bg);width:fit-content;padding-inline:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 0);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-dim-fg);text-transform:uppercase;display:inline-flex}.blog-prose .code-block__copy{align-items:center;gap:calc(var(--spacing) * 1);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));color:var(--color-dim-fg);flex-shrink:0;display:flex}@media (hover:hover){.blog-prose .code-block__copy:hover{color:var(--color-accent-fg)}}.blog-prose .code-block pre{margin:calc(var(--spacing) * 0);border-style:var(--tw-border-style);background-color:var(--color-bg);border-width:0}.blog-prose .code-block pre code{color:var(--color-fg);overflow-x:auto}.blog-prose .code-block__table{padding:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));white-space:normal;display:block;overflow-x:auto}.blog-prose .code-block__line{white-space:nowrap;display:block}.blog-prose .code-block__line-number{width:calc(var(--spacing) * 8);padding-right:calc(var(--spacing) * 4);text-align:right;color:var(--color-ghost);-webkit-user-select:none;user-select:none;display:inline-block}.blog-prose .code-block__line-code{display:inline}.hljs-comment,.hljs-quote{color:#656771}.hljs-keyword,.hljs-doctag,.hljs-selector-class,.hljs-selector-id{color:#a188c3}.hljs-addition,.hljs-bullet{color:#80aa6e}.hljs-selector-tag,.hljs-section{color:#da72a2}.hljs-literal,.hljs-attr,.hljs-attribute,.hljs-formula{color:#d29146}.hljs-meta,.hljs-class,.hljs-type,.hljs-link{color:#7aa8a7}.hljs-meta-string,.hljs-string{color:#9cb67d}.hljs-number,.hljs-title,.hljs-symbol{color:#b4647f}.hljs-regexp,.hljs-built_in,.hljs-deletion{color:#f05c60}.hljs-name{color:#ba9a5e}.hljs-template-variable,.hljs-subst{color:#a7a9b5}.hljs-variable{color:#bdbfcb}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.blog-prose img{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost);background-color:var(--color-dim-bg)}.blog-prose hr{border-color:var(--color-ghost)}.youtube-embed{margin-block:calc(var(--spacing) * 4);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost);background-color:var(--color-bg);overflow:hidden}.youtube-embed iframe{aspect-ratio:var(--aspect-video);width:100%;display:block}.center-row{align-items:center;gap:calc(var(--spacing) * 1);display:flex}.btn{align-items:center;gap:calc(var(--spacing) * 2.5);background-color:var(--color-fg);padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 1);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));white-space:nowrap;color:var(--color-bg);text-decoration-line:none;display:inline-flex}@media (hover:hover){.btn:hover{background-color:var(--color-accent-fg);text-decoration-line:none}}.btn-muted{border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost);color:var(--color-fg);background-color:#0000}@media (hover:hover){.btn-muted:hover{border-color:var(--color-accent-fg);background-color:var(--color-dim-bg);color:var(--color-accent-fg)}}.tag{border-radius:var(--radius-sm);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-ghost);width:fit-content;padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 1);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--color-dim-fg);display:inline-flex}.podcast-progress-block{width:var(--spacing-podcast-progress-width);height:var(--spacing-podcast-progress-height)}.podcast-title-marquee{animation:var(--animate-podcast-marquee)}.podcast-title-copy{left:calc(100% + var(--spacing-podcast-title-gap))}@keyframes motion-fade{0%{opacity:0}to{opacity:1}}@keyframes motion-fade-up{0%{opacity:0;transform:translateY(.8rem)}to{opacity:1;transform:translateY(0)}}@keyframes motion-pop{0%{opacity:0;transform:translateY(.6rem)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes podcast-marquee{0%{transform:translate(0)}to{transform:translateX(calc(-100% - var(--spacing-podcast-title-gap)))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}:where(a,button,[role=button]){transform:none!important}}@media print{body{padding-inline:calc(var(--spacing) * 0);padding-bottom:calc(var(--spacing) * 0)}.no-print{display:none}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes pulse{50%{opacity:.5}}
