/*! tailwindcss v4.3.3 | 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)))){:host,:root{--shimmer-angle:20deg}*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--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-duration:initial;--tw-ease:initial;--tw-content:"";--tw-outline-style:solid;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:host,:root{--font-sans:var(--font-geist-sans),system-ui,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-neutral-400:oklch(70.8% 0 none);--color-neutral-500:oklch(55.6% 0 none);--color-white:#fff;--spacing:.25rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--leading-relaxed:1.625;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--aspect-video:16/9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans),system-ui,sans-serif;--default-mono-font-family:var(--font-mono);--shadow-8:var(--shadow-8);--shadow-7:var(--shadow-7);--shadow-6:var(--shadow-6);--shadow-5:var(--shadow-5);--shadow-4:var(--shadow-4);--shadow-3:var(--shadow-3);--shadow-2:var(--shadow-2);--shadow-1:var(--shadow-1)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:var(--font-geist-sans),system-ui,sans-serif}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-\[var\(--z-card\)\]{z-index:var(--z-card)}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-auto{margin-inline:auto}.-my-1{margin-block:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-16{margin-top:calc(var(--spacing) * 16)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.field-sizing-content{field-sizing:content}.aspect-video{aspect-ratio:var(--aspect-video)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-11{height:calc(var(--spacing) * 11)}.h-24{height:calc(var(--spacing) * 24)}.h-\[3\.25rem\]{height:3.25rem}.h-\[8px\]{height:8px}.h-\[15px\]{height:15px}.h-px{height:1px}.max-h-\[85dvh\]{max-height:85dvh}.max-h-\[min\(300px\,var\(--available-height\)\)\]{max-height:min(300px,var(--available-height))}.min-h-0{min-height:0}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-\[calc\(100svh-3\.5rem\)\]{min-height:calc(100svh - 3.5rem)}.min-h-screen{min-height:100vh}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-4\/5{width:80%}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-11\/12{width:91.6667%}.w-24{width:calc(var(--spacing) * 24)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-\[2\.125rem\]{width:2.125rem}.w-\[8px\]{width:8px}.w-\[9\.35rem\]{width:9.35rem}.w-\[15px\]{width:15px}.w-\[min\(25rem\,calc\(100vw-2rem\)\)\]{width:min(25rem,100vw - 2rem)}.w-\[min\(34rem\,calc\(100vw-2rem\)\)\]{width:min(34rem,100vw - 2rem)}.w-full{width:100%}.w-max{width:max-content}.max-w-\[19rem\]{max-width:19rem}.max-w-\[23rem\]{max-width:23rem}.max-w-\[34rem\]{max-width:34rem}.max-w-\[35rem\]{max-width:35rem}.max-w-\[37\.5rem\]{max-width:37.5rem}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-11{min-width:calc(var(--spacing) * 11)}.min-w-24{min-width:calc(var(--spacing) * 24)}.min-w-\[var\(--anchor-width\)\]{min-width:var(--anchor-width)}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.translate-x-0\.5{translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0\.5{--tw-translate-x:calc(var(--spacing) * .5)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.scroll-fade{--_scroll-fade-size-t:var(--scroll-fade-t-size,var(--scroll-fade-size,min(12%,calc(var(--spacing) * 10))));--_scroll-fade-size-b:var(--scroll-fade-b-size,var(--scroll-fade-size,min(12%,calc(var(--spacing) * 10))));--scroll-fade-block:linear-gradient(to bottom,transparent 0,#000 var(--scroll-fade-t,0px),#000 calc(100% - var(--scroll-fade-b,0px)),transparent 100%);-webkit-mask-image:var(--scroll-fade-mask,var(--scroll-fade-block));mask-image:var(--scroll-fade-mask,var(--scroll-fade-block));-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-in;mask-composite:intersect}@supports (animation-timeline:scroll()){.scroll-fade{animation:scroll-fade-reveal-t 1ms ease-in-out,scroll-fade-reveal-b 1ms ease-in-out;animation-timeline:scroll(self y),scroll(self y);animation-range:0 var(--scroll-fade-reveal,calc(var(--spacing) * 24)),calc(100% - var(--scroll-fade-reveal,calc(var(--spacing) * 24))) 100%;animation-fill-mode:both}}@supports not (animation-timeline:scroll()){.scroll-fade{--scroll-fade-t:var(--_scroll-fade-size-t);--scroll-fade-b:var(--_scroll-fade-size-b)}}.cursor-pointer{cursor:pointer}.resize{resize:both}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-\[inherit\]{gap:inherit}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:calc(var(--radius) * 1.8)}.rounded-3xl{border-radius:calc(var(--radius) * 2.2)}.rounded-\[2px\]{border-radius:2px}.rounded-\[5px\]{border-radius:5px}.rounded-\[10px\]{border-radius:10px}.rounded-\[20px\]{border-radius:20px}.rounded-\[22px\]{border-radius:22px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-\[color\:var\(--focus-ring\)\]{border-color:var(--focus-ring)}.border-border{border-color:var(--border)}.border-destructive,.border-destructive\/50{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/50{border-color:color-mix(in oklab,var(--destructive) 50%,transparent)}}.border-neutral-400{border-color:var(--color-neutral-400)}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--accent)}.bg-active{background-color:var(--active)}.bg-background,.bg-background\/70{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/70{background-color:color-mix(in oklab,var(--background) 70%,transparent)}}.bg-border,.bg-border\/60{background-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.bg-border\/60{background-color:color-mix(in oklab,var(--border) 60%,transparent)}}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.bg-destructive\/15{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/15{background-color:color-mix(in oklab,var(--destructive) 15%,transparent)}}.bg-destructive\/20{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/20{background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.bg-destructive\/80{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/80{background-color:color-mix(in oklab,var(--destructive) 80%,transparent)}}.bg-foreground,.bg-foreground\/80{background-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.bg-foreground\/80{background-color:color-mix(in oklab,var(--foreground) 80%,transparent)}}.bg-hover{background-color:var(--hover)}.bg-muted,.bg-muted\/35{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/35{background-color:color-mix(in oklab,var(--muted) 35%,transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/40{background-color:color-mix(in oklab,var(--muted) 40%,transparent)}}.bg-muted\/45{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/45{background-color:color-mix(in oklab,var(--muted) 45%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-muted\/60{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/60{background-color:color-mix(in oklab,var(--muted) 60%,transparent)}}.bg-surface-1{background-color:var(--surface-1)}.bg-surface-2{background-color:var(--surface-2)}.bg-surface-3{background-color:var(--surface-3)}.bg-surface-4{background-color:var(--surface-4)}.bg-surface-5{background-color:var(--surface-5)}.bg-surface-6{background-color:var(--surface-6)}.bg-surface-7{background-color:var(--surface-7)}.bg-surface-8{background-color:var(--surface-8)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-1{padding:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[1\.125rem\]{padding-inline:1.125rem}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-16{padding-bottom:calc(var(--spacing) * 16)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pl-0{padding-left:0}.pl-1{padding-left:var(--spacing)}.pl-3{padding-left:calc(var(--spacing) * 3)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-geist-sans),system-ui,sans-serif}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-balance{text-wrap:balance}.whitespace-nowrap{white-space:nowrap}.text-background{color:var(--background)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-dotted{text-decoration-style:dotted}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-50{opacity:.5}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow,.shadow-sm,.shadow-surface-1{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-surface-1{--tw-shadow:var(--shadow-1)}.shadow-surface-2{--tw-shadow:var(--shadow-2)}.shadow-surface-2,.shadow-surface-3{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-surface-3{--tw-shadow:var(--shadow-3)}.shadow-surface-4{--tw-shadow:var(--shadow-4)}.shadow-surface-4,.shadow-surface-5{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-surface-5{--tw-shadow:var(--shadow-5)}.shadow-surface-6{--tw-shadow:var(--shadow-6)}.shadow-surface-6,.shadow-surface-7{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-surface-7{--tw-shadow:var(--shadow-7)}.shadow-surface-8{--tw-shadow:var(--shadow-8)}.ring,.shadow-surface-8{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.blur{--tw-blur:blur(8px)}.blur,.drop-shadow{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f)}.grayscale{--tw-grayscale:grayscale(100%)}.grayscale,.invert{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-\[6px\]{--tw-backdrop-blur:blur(6px)}.backdrop-blur-\[6px\],.backdrop-blur-\[8px\]{-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,)}.backdrop-blur-\[8px\]{--tw-backdrop-blur:blur(8px)}.backdrop-blur-\[12px\]{--tw-backdrop-blur:blur(12px)}.backdrop-blur-\[12px\],.backdrop-filter{-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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,color\,border-color\,box-shadow\]{transition-property:background-color,color,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,font-variation-settings\]{transition-property:color,font-variation-settings;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[stroke-width\]{transition-property:stroke-width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.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-opacity{transition-property:opacity;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))}.duration-80{--tw-duration:80ms;transition-duration:80ms}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-\[ease\]{--tw-ease:ease;transition-timing-function:ease}.ease-\[var\(--ease-swift\)\]{--tw-ease:var(--ease-swift);transition-timing-function:var(--ease-swift)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[text-box\:trim-both_cap_alphabetic\]{text-box:trim-both cap alphabetic}.fade-out{--tw-exit-opacity:0}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\:bg-\[color\:var\(--active\)\]:is(:where(.group):hover *){background-color:var(--active)}.group-hover\:bg-accent\/80:is(:where(.group):hover *){background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-accent\/80:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--accent) 80%,transparent)}}.group-hover\:bg-destructive\/10:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-destructive\/10:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.group-hover\:bg-destructive\/15:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-destructive\/15:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--destructive) 15%,transparent)}}.group-hover\:bg-destructive\/90:is(:where(.group):hover *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-destructive\/90:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.group-hover\:bg-foreground\/90:is(:where(.group):hover *){background-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.group-hover\:bg-foreground\/90:is(:where(.group):hover *){background-color:color-mix(in oklab,var(--foreground) 90%,transparent)}}.group-hover\:bg-hover:is(:where(.group):hover *){background-color:var(--hover)}.group-hover\:stroke-\[2\]:is(:where(.group):hover *){stroke-width:2px}.group-hover\:text-foreground:is(:where(.group):hover *){color:var(--foreground)}}.group-active\:scale-\[0\.98\]:is(:where(.group):active *){scale:.98}.group-active\:bg-accent:is(:where(.group):active *){background-color:var(--accent)}.group-active\:bg-active:is(:where(.group):active *){background-color:var(--active)}.group-active\:bg-destructive\/15:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-active\:bg-destructive\/15:is(:where(.group):active *){background-color:color-mix(in oklab,var(--destructive) 15%,transparent)}}.group-active\:bg-destructive\/20:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-active\:bg-destructive\/20:is(:where(.group):active *){background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.group-active\:bg-destructive\/80:is(:where(.group):active *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.group-active\:bg-destructive\/80:is(:where(.group):active *){background-color:color-mix(in oklab,var(--destructive) 80%,transparent)}}.group-active\:bg-foreground\/80:is(:where(.group):active *){background-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.group-active\:bg-foreground\/80:is(:where(.group):active *){background-color:color-mix(in oklab,var(--foreground) 80%,transparent)}}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-x-0:before{content:var(--tw-content);inset-inline:0}.before\:top-1\/2:before{content:var(--tw-content);top:50%}.before\:h-11:before{content:var(--tw-content);height:calc(var(--spacing) * 11)}.before\:-translate-y-1\/2:before{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-x-2:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -2)}.after\:-inset-y-3:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -3)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}@media (hover:hover){.hover\:border-destructive\/50:hover{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:border-destructive\/50:hover{border-color:color-mix(in oklab,var(--destructive) 50%,transparent)}}.hover\:bg-hover:hover{background-color:var(--hover)}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}}.focus\:border-destructive:focus{border-color:var(--destructive)}.focus\:border-foreground:focus{border-color:var(--foreground)}.focus-visible\:rounded-sm:focus-visible{border-radius:calc(var(--radius) * .6)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[color\:var\(--focus-ring\)\]:focus-visible{--tw-ring-color:var(--focus-ring)}.focus-visible\:ring-\[color\:var\(--focus-ring\,\#6B97FF\)\]:focus-visible{--tw-ring-color:var(--focus-ring,#6b97ff)}.focus-visible\:outline-1:focus-visible,.focus-visible\:outline:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-50:disabled{opacity:.5}.aria-invalid\:border-destructive[aria-invalid=true],.aria-invalid\:focus\:border-destructive[aria-invalid=true]:focus{border-color:var(--destructive)}.data-\[checked\]\:translate-x-4[data-checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[checked\]\:bg-foreground[data-checked]{background-color:var(--foreground)}.data-\[ending-style\]\:scale-\[0\.97\][data-ending-style]{scale:.97}.data-\[ending-style\]\:opacity-0[data-ending-style]{opacity:0}.data-\[ending-style\]\:duration-\[133ms\][data-ending-style]{--tw-duration:.133s;transition-duration:.133s}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[starting-style\]\:scale-\[0\.97\][data-starting-style]{scale:.97}.data-\[starting-style\]\:opacity-0[data-starting-style]{opacity:0}@supports (text-box:trim-both){.supports-\[text-box\:trim-both\]\:py-2{padding-block:calc(var(--spacing) * 2)}}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media (min-width:40rem){.sm\:order-first{order:-9999}.sm\:block{display:block}.sm\:w-60{width:calc(var(--spacing) * 60)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:gap-y-8{row-gap:calc(var(--spacing) * 8)}}.dark\:border-neutral-500:is(.dark *){border-color:var(--color-neutral-500)}.\[\&_svg\]\:h-3\.5 svg{height:calc(var(--spacing) * 3.5)}.\[\&_svg\]\:h-4 svg{height:calc(var(--spacing) * 4)}.\[\&_svg\]\:h-5 svg{height:calc(var(--spacing) * 5)}.\[\&_svg\]\:w-3\.5 svg{width:calc(var(--spacing) * 3.5)}.\[\&_svg\]\:w-4 svg{width:calc(var(--spacing) * 4)}.\[\&_svg\]\:w-5 svg{width:calc(var(--spacing) * 5)}.\[\&_svg\]\:stroke-\[1\.5\] svg{stroke-width:1.5px}.\[\&_svg\]\:transition-\[stroke-width\] svg{transition-property:stroke-width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.\[\&_svg\]\:duration-150 svg{--tw-duration:.15s;transition-duration:.15s}@media (hover:hover){.group-hover\:\[\&_svg\]\:stroke-\[2\]:is(:where(.group):hover *) svg{stroke-width:2px}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}:root{--font-mono:var(--font-geist-mono),ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0);--surface-1:oklch(97.5% 0 0);--surface-2:oklch(98.5% 0 0);--surface-3:var(--popover);--surface-4:var(--popover);--surface-5:var(--popover);--surface-6:var(--popover);--surface-7:var(--popover);--surface-8:var(--popover);--hover:var(--foreground)}@supports (color:color-mix(in lab,red,red)){:root{--hover:color-mix(in oklab,var(--foreground) 6%,transparent)}}:root{--active:var(--foreground)}@supports (color:color-mix(in lab,red,red)){:root{--active:color-mix(in oklab,var(--foreground) 10%,transparent)}}:root{--focus-ring:var(--ring);--shadow-color:#0000000d;--shadow-1:0 0 0 1px var(--shadow-color);--shadow-2:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color);--shadow-3:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color);--shadow-4:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color),0 6px 6px -3px var(--shadow-color);--shadow-5:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color),0 6px 6px -3px var(--shadow-color),0 12px 12px -6px var(--shadow-color);--shadow-6:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color),0 6px 6px -3px var(--shadow-color),0 12px 12px -6px var(--shadow-color),0 24px 24px -12px var(--shadow-color);--shadow-7:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color),0 6px 6px -3px var(--shadow-color),0 12px 12px -6px var(--shadow-color),0 24px 24px -12px var(--shadow-color),0 48px 48px -24px var(--shadow-color);--shadow-8:0 0 0 1px var(--shadow-color),0 1px 1px -.5px var(--shadow-color),0 3px 3px -1.5px var(--shadow-color),0 6px 6px -3px var(--shadow-color),0 12px 12px -6px var(--shadow-color),0 24px 24px -12px var(--shadow-color),0 48px 48px -24px var(--shadow-color),0 96px 96px -48px var(--shadow-color)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0);--surface-1:oklch(17% 0 0);--surface-2:oklch(19% 0 0);--surface-3:var(--popover);--surface-4:oklch(23% 0 0);--surface-5:oklch(25% 0 0);--surface-6:oklch(27% 0 0);--surface-7:oklch(29% 0 0);--surface-8:oklch(31% 0 0);--hover:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dark{--hover:color-mix(in oklab,var(--foreground) 8%,transparent)}}.dark{--active:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dark{--active:color-mix(in oklab,var(--foreground) 13%,transparent)}}.dark{--focus-ring:var(--ring);--dm-hi-base:#ffffff03;--dm-hi-mid:#ffffff05;--dm-hi-high:#ffffff0a;--dm-hi-peak:#ffffff0f;--dm-ring-base:#ffffff05;--dm-ring-mid:#ffffff0a;--dm-ring-high:#ffffff0f;--dm-drop:#0000002e;--shadow-1:inset 0 0 0 1px var(--dm-ring-base);--shadow-2:inset 0 1px 0 0 var(--dm-hi-base),inset 0 0 0 1px var(--dm-ring-base),0 1px 1px -.5px var(--dm-drop);--shadow-3:inset 0 1px 0 0 var(--dm-hi-mid),inset 0 0 0 1px var(--dm-ring-base),0 0 0 1px #0000001f,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop);--shadow-4:inset 0 1px 0 0 var(--dm-hi-mid),inset 0 0 0 1px var(--dm-ring-mid),0 0 0 1px #00000024,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop),0 6px 6px -3px var(--dm-drop);--shadow-5:inset 0 1px 0 0 var(--dm-hi-high),inset 0 0 0 1px var(--dm-ring-mid),0 0 0 1px #00000029,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop),0 6px 6px -3px var(--dm-drop),0 12px 12px -6px var(--dm-drop);--shadow-6:inset 0 1px 0 0 var(--dm-hi-high),inset 0 0 0 1px var(--dm-ring-high),0 0 0 1px #0000002e,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop),0 6px 6px -3px var(--dm-drop),0 12px 12px -6px var(--dm-drop),0 24px 24px -12px var(--dm-drop);--shadow-7:inset 0 1px 0 0 var(--dm-hi-peak),inset 0 0 0 1px var(--dm-ring-high),0 0 0 1px #0003,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop),0 6px 6px -3px var(--dm-drop),0 12px 12px -6px var(--dm-drop),0 24px 24px -12px var(--dm-drop),0 48px 48px -24px var(--dm-drop);--shadow-8:inset 0 1px 0 0 var(--dm-hi-peak),inset 0 0 0 1px var(--dm-ring-high),0 0 0 1px #00000038,0 1px 1px -.5px var(--dm-drop),0 3px 3px -1.5px var(--dm-drop),0 6px 6px -3px var(--dm-drop),0 12px 12px -6px var(--dm-drop),0 24px 24px -12px var(--dm-drop),0 48px 48px -24px var(--dm-drop),0 96px 96px -48px var(--dm-drop)}:root{--ease-swift:cubic-bezier(.2,.8,.2,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--duration-route-morph:.32s;--duration-post-meta:.25s;--delay-post-body:.52s;--shadow-small:0 5px 10px #0000001f;--shadow-medium:0 8px 30px #0000001f;--shadow-large:0 30px 60px #0000001f;--shadow-tooltip:0 4px 8px #0000000a,0 1px 1px #00000005;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--border-hairline:1px;--z-nav:100;--z-card:200;--z-toast:300;--grain-opacity:.3;--guide-opacity:.5;--paper:oklch(98% .004 95);--paper-ink:oklch(52% .012 95)}@media only screen and (min-resolution:192dpi){:root{--border-hairline:.5px}}.dark{--grain-opacity:.22;--guide-opacity:.4}.public-site{--gray-1:oklch(99% .001 95);--gray-2:oklch(97.5% .0015 95);--gray-3:oklch(95% .002 95);--gray-4:oklch(91% .0025 92);--gray-5:oklch(85% .003 88);--gray-6:oklch(77% .0035 84);--gray-7:oklch(67% .004 80);--gray-8:oklch(56% .004 78);--gray-9:oklch(47% .0045 76);--gray-10:oklch(39% .0045 74);--gray-11:oklch(31% .0045 72);--gray-12:oklch(23% .0045 70);--selection-highlight:oklch(90% .17 105/.58);--signal:oklch(62% .17 45);--ghost-ink:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.public-site{--ghost-ink:color-mix(in oklab,var(--foreground) 5%,transparent)}}.public-site{--background:var(--gray-1);--foreground:var(--gray-12);--card:var(--gray-2);--card-foreground:var(--gray-12);--popover:var(--gray-2);--popover-foreground:var(--gray-12);--primary:var(--gray-12);--primary-foreground:var(--gray-1);--secondary:var(--gray-3);--secondary-foreground:var(--gray-11);--muted:var(--gray-3);--muted-foreground:var(--gray-8);--accent:var(--gray-3);--accent-foreground:var(--gray-11);--border:var(--gray-4);--input:var(--gray-4);--ring:var(--gray-8);--focus-ring:var(--gray-9);--surface-1:oklch(96.8% .0018 95);--surface-2:oklch(97.8% .0016 95)}.dark.public-site{--gray-1:oklch(16% .006 80);--gray-2:oklch(19% .007 80);--gray-3:oklch(22% .008 80);--gray-4:oklch(27% .009 80);--gray-5:oklch(32% .01 80);--gray-6:oklch(40% .011 80);--gray-7:oklch(50% .011 82);--gray-8:oklch(61% .01 84);--gray-9:oklch(70% .009 86);--gray-10:oklch(78% .008 88);--gray-11:oklch(87% .007 90);--gray-12:oklch(94% .006 92);--selection-highlight:oklch(80% .14 105/.28);--signal:oklch(70% .17 48);--ghost-ink:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dark.public-site{--ghost-ink:color-mix(in oklab,var(--foreground) 6.5%,transparent)}}.dark.public-site{--surface-1:oklch(18.5% .0065 80);--surface-2:oklch(20.5% .007 80);--surface-4:oklch(23.5% .008 80);--surface-5:oklch(25.5% .0085 80);--surface-6:oklch(27.5% .009 80);--surface-7:oklch(29.5% .009 80);--surface-8:oklch(31.5% .0095 80)}.public-site ::selection{background:var(--selection-highlight)}.hairline-top{border-top:var(--border-hairline) solid var(--border)}.hidden-list-stage{isolation:isolate;position:relative}.hidden-list-stage-content{position:relative}.hidden-list-stage-field{contain:layout paint;color:var(--foreground);pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;display:block;position:absolute;inset:0;overflow:hidden}.projects-hidden-stage .hidden-list-stage-field{transition:opacity var(--list-stage-exit-ms) var(--ease-swift),transform var(--list-stage-exit-ms) var(--ease-swift);transform:scale(.985)}.writing-hidden-stage .hidden-list-stage-field{transition:opacity var(--list-stage-exit-ms) var(--ease-swift)}.hidden-list-stage[data-active=true] .hidden-list-stage-field{opacity:1}.projects-hidden-stage[data-active=true] .hidden-list-stage-field{transform:scale(1)}@keyframes projects-blueprint-enter{0%{opacity:0;transform:scale(.985)}}@keyframes writing-ink-enter{0%{opacity:0}}.projects-hidden-stage[data-active=true][data-motion=true] .hidden-list-stage-field{animation:projects-blueprint-enter .26s var(--ease-swift) backwards}.writing-hidden-stage[data-active=true][data-motion=true] .hidden-list-stage-field{animation:writing-ink-enter .18s var(--ease-swift) backwards}.hidden-list-stage[data-motion=false] .hidden-list-shader-shell,.hidden-list-stage[data-motion=false] .hidden-list-stage-field{transition:none}.hidden-list-shader-canvas,.hidden-list-shader-shell,.hidden-list-stage-shader{width:100%;height:100%;display:block;position:absolute;inset:0}.hidden-list-shader-shell{opacity:0}.hidden-list-shader-shell[data-ready=true]{opacity:1}.projects-blueprint-static{background-image:linear-gradient(currentColor var(--border-hairline),transparent var(--border-hairline)),linear-gradient(90deg,currentColor var(--border-hairline),transparent var(--border-hairline));position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.projects-blueprint-static{background-image:linear-gradient(color-mix(in oklab,currentColor 35%,transparent) var(--border-hairline),transparent var(--border-hairline)),linear-gradient(90deg,color-mix(in oklab,currentColor 35%,transparent) var(--border-hairline),transparent var(--border-hairline))}}.projects-blueprint-static{opacity:.1;background-size:24px 24px}.projects-hidden-stage .hidden-list-stage-shader{opacity:.14}.projects-registration-mark{opacity:.26;width:58px;height:58px;transform:translate3d(var(--list-stage-target-x),var(--list-stage-target-y),0) translate(-50%,-50%);position:absolute;top:0;left:0;overflow:visible}.projects-registration-mark circle,.projects-registration-mark path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:var(--border-hairline)}.writing-ink-current-target{width:var(--list-stage-target-width);height:var(--list-stage-target-height);transform:translate3d(var(--list-stage-target-x),var(--list-stage-target-y),0);display:block;position:absolute;top:0;left:0;overflow:hidden}.writing-ink-static{fill:none;opacity:.12;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.writing-ink-static path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round}.writing-hidden-stage .hidden-list-stage-shader{opacity:.2}.dark .projects-blueprint-static{opacity:.12}.dark .projects-registration-mark{opacity:.3}.dark .projects-hidden-stage .hidden-list-stage-shader{opacity:.12}.dark .writing-ink-static{opacity:.1}.dark .writing-hidden-stage .hidden-list-stage-shader{opacity:.17}@media (prefers-reduced-motion:reduce){.hidden-list-shader-shell,.hidden-list-stage-field{transition:none;animation:none}}.project-row{grid-template-columns:2.75rem minmax(0,9rem) minmax(0,1fr);align-items:start;gap:.25rem 1rem;min-height:4.75rem;padding-block:.875rem;font-size:.875rem;display:grid}.page-introduction{color:var(--gray-10,var(--foreground));font-size:.875rem;line-height:1.7}.project-row:focus-visible{outline:1px solid var(--focus-ring);outline-offset:3px;border-radius:2px}.project-icon-frame{isolation:isolate;place-items:center;width:2.75rem;height:2.75rem;display:grid;position:relative}.project-icon-frame:before{color:var(--foreground);background:linear-gradient(currentColor,currentColor) 0 0 /7px var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 0 0 /var(--border-hairline) 7px no-repeat,linear-gradient(currentColor,currentColor) 100% 0 /7px var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 100% 0 /var(--border-hairline) 7px no-repeat,linear-gradient(currentColor,currentColor) 0 100% /7px var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 0 100% /var(--border-hairline) 7px no-repeat,linear-gradient(currentColor,currentColor) 100% 100% /7px var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 100% 100% /var(--border-hairline) 7px no-repeat;content:"";opacity:0;transition:opacity .15s ease,transform .3s var(--ease-spring);position:absolute;inset:0;transform:scale(.82)}.project-icon{z-index:1;object-fit:cover;width:2.25rem;height:2.25rem;box-shadow:0 0 0 var(--border-hairline) var(--foreground);border-radius:.5rem;position:relative}@supports (color:color-mix(in lab,red,red)){.project-icon{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab,var(--foreground) 10%,transparent)}}.project-icon{transition:transform .3s var(--ease-spring)}.project-identity{flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0;line-height:1.4;display:flex}.project-name{max-width:100%;color:var(--gray-11,var(--foreground));text-wrap:balance}.project-domain{text-overflow:ellipsis;white-space:nowrap;min-width:0;transition:color .15s;overflow:hidden}.project-description{min-width:0;color:var(--gray-8,var(--muted-foreground));text-wrap:balance;line-height:1.55}@media (hover:hover) and (pointer:fine){.project-row:hover .project-icon-frame:before{opacity:.34;transform:scale(1)}.project-row:hover .project-icon{transform:translateY(-1px)}.project-row:hover .project-domain{color:var(--foreground)}}.project-row:focus-visible .external-label .external-mark{opacity:.6;transition:none}@media (max-width:39.99rem){.project-row{grid-template-columns:2.75rem minmax(0,1fr);align-items:start;row-gap:.375rem;min-height:0;padding-block:1rem}.project-icon-frame{grid-row:1/span 2}.project-description,.project-identity{grid-column:2}.project-domain{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}}@media (prefers-reduced-motion:reduce){.project-domain,.project-icon,.project-icon-frame:before{transition:none}.project-row:hover .project-icon,.project-row:hover .project-icon-frame:before{transform:none}}.error-sheet{place-items:center;min-height:calc(100svh - 3.5rem);padding-block:2rem 4rem;display:grid}.error-proof{isolation:isolate;width:100%;min-height:34rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--border);background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px);padding:1.25rem;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.error-proof{background-image:linear-gradient(to right,color-mix(in oklab,var(--border) 45%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in oklab,var(--border) 45%,transparent) 1px,transparent 1px)}}.error-proof{background-size:24px 24px}.error-proof:after,.error-proof:before{content:"";pointer-events:none;position:absolute}.error-proof:before{inset:3.5rem 1.25rem auto}.error-proof:after,.error-proof:before{height:var(--border-hairline);background:var(--border)}.error-proof:after{inset:auto 1.25rem 3.5rem}.error-proof-footer,.error-proof-meta{z-index:2;color:var(--foreground);justify-content:space-between;gap:1rem;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.error-proof-footer,.error-proof-meta{color:color-mix(in oklab,var(--foreground) 30%,transparent)}}.error-proof-footer,.error-proof-meta{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:-.011em;font-size:.875rem}.error-proof-footer{position:absolute;bottom:1.25rem;left:1.25rem;right:1.25rem}.error-registration{aspect-ratio:1;border:var(--border-hairline) solid var(--muted-foreground);width:min(26rem,74%);position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab,red,red)){.error-registration{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 30%,transparent)}}.error-registration{pointer-events:none;border-radius:50%;transform:translate(-50%,-54%)}.error-registration span:after,.error-registration span:before,.error-registration:after,.error-registration:before{content:"";background:var(--muted-foreground);position:absolute}@supports (color:color-mix(in lab,red,red)){.error-registration span:after,.error-registration span:before,.error-registration:after,.error-registration:before{background:color-mix(in oklab,var(--muted-foreground) 30%,transparent)}}.error-registration:before{height:var(--border-hairline);top:50%;left:-2rem;right:-2rem}.error-registration:after{width:var(--border-hairline);top:-2rem;bottom:-2rem;left:50%}.error-registration span:before{width:1.5rem;height:1.5rem;box-shadow:inset 0 0 0 var(--border-hairline) var(--muted-foreground);background:0 0;border-radius:50%;inset:50% auto auto 50%}@supports (color:color-mix(in lab,red,red)){.error-registration span:before{box-shadow:inset 0 0 0 var(--border-hairline) color-mix(in oklab,var(--muted-foreground) 42%,transparent)}}.error-registration span:before{transform:translate(-50%,-50%)}.error-registration span:after{width:.3rem;height:.3rem;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.error-code{z-index:1;color:var(--muted-foreground);font-size:clamp(7.5rem,30vw,13.5rem);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;letter-spacing:-.13em;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;margin-top:4.8rem;line-height:.72;display:flex;position:relative}.error-code span{transform-origin:50%;transition:transform .35s var(--ease-spring),text-shadow .35s var(--ease-swift);display:block}.error-code span:first-child{text-shadow:.025em 0 var(--muted-foreground);transform:translate(-.03em,-.04em)rotate(-1.5deg)}@supports (color:color-mix(in lab,red,red)){.error-code span:first-child{text-shadow:.025em 0 color-mix(in oklab,var(--muted-foreground) 24%,transparent)}}.error-code span:nth-child(2){text-shadow:-.02em 0 var(--muted-foreground);transform:translateY(.035em)rotate(1deg)}@supports (color:color-mix(in lab,red,red)){.error-code span:nth-child(2){text-shadow:-.02em 0 color-mix(in oklab,var(--muted-foreground) 24%,transparent)}}.error-code span:nth-child(3){text-shadow:0 .025em var(--muted-foreground);transform:translate(.02em,-.015em)rotate(2deg)}@supports (color:color-mix(in lab,red,red)){.error-code span:nth-child(3){text-shadow:0 .025em color-mix(in oklab,var(--muted-foreground) 24%,transparent)}}.error-loose-pixel{z-index:2;background:var(--foreground);pointer-events:none;width:.45rem;height:.45rem;animation:error-pixel-wander 2.8s steps(4) infinite;position:absolute}.error-loose-pixel-a{top:26%;left:16%}.error-loose-pixel-b{animation-delay:-.9s;top:42%;right:13%}.error-loose-pixel-c{width:.3rem;height:.3rem;animation-delay:-1.8s;top:18%;right:28%}@keyframes error-pixel-wander{0%,to{opacity:.35;transform:translate(0)}25%{opacity:.8;transform:translate(7px,-5px)}50%{opacity:.5;transform:translate(-4px,7px)}75%{opacity:1;transform:translate(5px,4px)}}.error-message{z-index:2;margin-top:4rem;position:relative}.error-actions{z-index:2;margin-top:1.25rem;position:relative}@media (hover:hover) and (pointer:fine){.error-proof:hover .error-code span{text-shadow:0 0 #0000;transform:none}}@media (max-width:30rem){.error-sheet{padding-block:1rem 3rem}.error-proof{min-height:32rem;padding:1rem}.error-proof:before{inset-inline:1rem}.error-code{margin-top:5.25rem;font-size:clamp(6.75rem,35vw,9rem)}.error-message{margin-top:4.5rem}.error-proof-footer{left:1rem;right:1rem}}@media (prefers-reduced-motion:reduce){.error-code span{transition:none}.error-loose-pixel{animation:none}}.paper-grain{opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='128' height='128' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:128px 128px}.column-guides,.paper-grain{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.column-guides{opacity:var(--guide-opacity)}.column-guide-v{background:repeating-linear-gradient(to bottom,var(--muted-foreground) 0,var(--muted-foreground) 2px,transparent 2px,transparent 4px);width:1px;position:absolute;top:0;bottom:0}@supports (color:color-mix(in lab,red,red)){.column-guide-v{background:repeating-linear-gradient(to bottom,color-mix(in oklab,var(--muted-foreground) 45%,transparent) 0,color-mix(in oklab,var(--muted-foreground) 45%,transparent) 2px,transparent 2px,transparent 4px)}}.column-guide-v:first-of-type{left:max(16px,50% - 18.75rem)}.column-guide-v:last-of-type{right:max(16px,50% - 18.75rem)}.column-guide-v:after{content:"";width:9px;height:9px;color:var(--muted-foreground);position:absolute;top:14px;left:-4px}@supports (color:color-mix(in lab,red,red)){.column-guide-v:after{color:color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}.column-guide-v:after{background:linear-gradient(currentColor,currentColor) 50% /9px var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 50% /var(--border-hairline) 9px no-repeat}.calibration-corners{--corner-arm:9px;pointer-events:none;-webkit-user-select:none;user-select:none;color:var(--foreground);background:linear-gradient(currentColor,currentColor) 0 0 /var(--corner-arm) var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 0 0 /var(--border-hairline) var(--corner-arm) no-repeat,linear-gradient(currentColor,currentColor) 100% 0 /var(--corner-arm) var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 100% 0 /var(--border-hairline) var(--corner-arm) no-repeat,linear-gradient(currentColor,currentColor) 0 100% /var(--corner-arm) var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 0 100% /var(--border-hairline) var(--corner-arm) no-repeat,linear-gradient(currentColor,currentColor) 100% 100% /var(--corner-arm) var(--border-hairline) no-repeat,linear-gradient(currentColor,currentColor) 100% 100% /var(--border-hairline) var(--corner-arm) no-repeat}.photo-frame .calibration-corners{opacity:0;transition:opacity .15s ease,transform .3s var(--ease-swift);position:absolute;inset:6px;transform:scale(1.05)}@media (hover:hover) and (pointer:fine){.photo-frame:focus-within .calibration-corners,.photo-frame:hover .calibration-corners{opacity:.62;transform:none}}@media (prefers-reduced-motion:reduce){.photo-frame .calibration-corners{transition:none;transform:none}}.ghost-schematic{z-index:-1;pointer-events:none;-webkit-user-select:none;user-select:none;color:var(--ghost-ink);position:absolute}@media (hover:hover) and (pointer:fine){.focus-list>li{transition:opacity .18s var(--ease-swift)}.focus-list:hover>li:not(:hover):not(:focus-within){opacity:.44}}@media (prefers-reduced-motion:reduce){.focus-list:hover>li:not(:hover):not(:focus-within),.focus-list>li{opacity:1;transition:none}}.polaroid{background:var(--paper);padding:2% 2% 0;box-shadow:0 0 0 1px #0000000a,0 2px 4px -1px #0000002e}.polaroid-photo{display:block;position:relative}.polaroid-photo:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 2px #00000024}.polaroid-caption{letter-spacing:.08em;min-height:1.75rem;color:var(--paper-ink);-webkit-user-select:none;user-select:none;align-items:center;padding:.2rem .125rem;font-size:.75rem;display:flex}.polaroid-tilted{transform:rotate(var(--tilt,0deg))}@media (hover:hover) and (pointer:fine){.polaroid-tilted{transition:transform .3s var(--ease-spring),box-shadow .3s var(--ease-spring)}.group:hover .polaroid-tilted{transform:rotate(calc(var(--tilt,0deg) + 1.2deg)) scale(1.03);box-shadow:0 0 0 1px #0000000a,var(--shadow-medium)}.group:active .polaroid-tilted{transform:rotate(calc(var(--tilt,0deg) + 1.2deg)) scale(.94)}}@media (prefers-reduced-motion:reduce){.polaroid-tilted{transition:none}}.prose{color:var(--gray-10,var(--foreground));font-size:.875rem;line-height:1.72}.prose>*+*{margin-top:1.25em}.prose{counter-reset:prose-section prose-figure}.prose h2{color:var(--gray-12,var(--foreground));font-size:1.125rem;line-height:1.35;font-weight:var(--font-weight-semibold);letter-spacing:-.02em;text-wrap:balance;counter-increment:prose-section;margin-top:2.5em}.prose h2:before{content:counter(prose-section,decimal-leading-zero) /"";border:var(--border-hairline) solid var(--muted-foreground);margin-right:.625rem;padding:.1875rem 1.1875rem .1875rem .4375rem;display:inline-block}@supports (color:color-mix(in lab,red,red)){.prose h2:before{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}.prose h2:before{background:repeating-linear-gradient(-45deg,var(--muted-foreground) 0,var(--muted-foreground) 1px,transparent 1px,transparent 3.5px) 100% /.75rem 100% no-repeat,linear-gradient(var(--muted-foreground),var(--muted-foreground)) calc(100% - .75rem) 0 /var(--border-hairline) 100% no-repeat}@supports (color:color-mix(in lab,red,red)){.prose h2:before{background:repeating-linear-gradient(-45deg,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 0,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 1px,transparent 1px,transparent 3.5px) 100% /.75rem 100% no-repeat,linear-gradient(color-mix(in oklab,var(--muted-foreground) 45%,transparent),color-mix(in oklab,var(--muted-foreground) 45%,transparent)) calc(100% - .75rem) 0 /var(--border-hairline) 100% no-repeat}}.prose h2:before{color:var(--muted-foreground);font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.6875rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;font-variant-numeric:tabular-nums;vertical-align:.125em;line-height:1}.prose h3{color:var(--gray-12,var(--foreground));font-size:1rem;line-height:1.45;font-weight:var(--font-weight-semibold);letter-spacing:-.01em;text-wrap:balance;margin-top:2em}.prose a{color:var(--gray-10,var(--foreground));text-underline-offset:.16em;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:.1em}@supports (color:color-mix(in lab,red,red)){.prose a{-webkit-text-decoration-color:color-mix(in oklab,currentColor 38%,transparent);text-decoration-color:color-mix(in oklab,currentColor 38%,transparent)}}.prose a{-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto;transition:color .15s,text-decoration-color .15s}@media (hover:hover) and (pointer:fine){.prose a:hover{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}}.prose a:focus-visible{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}.prose strong{font-weight:var(--font-weight-semibold)}.post-title-card h1,.prose strong{color:var(--gray-12,var(--foreground))}.post-title-card h1{letter-spacing:-.03em;font-size:clamp(1.75rem,4vw,2rem);line-height:1.18}.post-title-meta{color:var(--gray-8,var(--muted-foreground))}.post-title-card .spec-plate{margin-top:1.5rem}.spec-plate{border-top:var(--border-hairline) solid var(--border);border-bottom:var(--border-hairline) solid var(--border);font-family:var(--font-geist-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem 1rem;margin:0;padding:.625rem 0;display:grid}@media (min-width:28rem){.spec-plate{grid-template-columns:repeat(4,minmax(0,1fr))}}.spec-plate dt{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.spec-plate dt{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.spec-plate dt{letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem}.spec-plate dd{color:var(--gray-9,var(--muted-foreground));letter-spacing:.02em;white-space:nowrap;margin:.1875rem 0 0;font-size:.8125rem}.spec-signal{vertical-align:.09em;background:var(--signal);width:5px;height:5px;margin-right:.375rem;display:inline-block}.spec-plate-flow{flex-wrap:wrap;gap:.5rem 1.5rem;display:flex}.spec-nameplate{border:var(--border-hairline) solid var(--border);font-family:var(--font-geist-mono),ui-monospace,monospace;margin:0;font-size:.8125rem}.spec-nameplate>div{grid-template-columns:9rem minmax(0,1fr);display:grid}.spec-nameplate-compact>div{grid-template-columns:4.75rem minmax(0,1fr)}.spec-nameplate-compact dd{overflow-wrap:anywhere;min-width:0}.spec-nameplate>div+div{border-top:var(--border-hairline) solid var(--border)}.spec-nameplate dt{border-right:var(--border-hairline) solid var(--border);color:var(--muted-foreground);align-items:center;padding:.5rem .75rem;display:flex}@supports (color:color-mix(in lab,red,red)){.spec-nameplate dt{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.spec-nameplate dt{letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem}.spec-nameplate dd{font-variant-numeric:tabular-nums;margin:0;padding:.5rem .75rem}.spec-nameplate-compact dd,.spec-nameplate-compact dt{padding-block:.625rem}.status-ladder{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);flex-direction:column;gap:.375rem;font-size:.6875rem;display:flex}@supports (color:color-mix(in lab,red,red)){.status-ladder{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.status-ladder{-webkit-user-select:none;user-select:none}.status-ladder li{align-items:center;gap:.625rem;display:flex}.status-ladder-index{font-variant-numeric:tabular-nums}.status-ladder-cell{width:5px;height:5px;margin-left:auto}.status-ladder [data-state=done] .status-ladder-cell{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.status-ladder [data-state=done] .status-ladder-cell{background:color-mix(in oklab,var(--foreground) 62%,transparent)}}.status-ladder [data-state=current]{color:var(--gray-10,var(--foreground))}.status-ladder [data-state=current] .status-ladder-cell{background:var(--signal)}.status-ladder [data-state=pending] .status-ladder-cell{box-shadow:inset 0 0 0 var(--border-hairline) var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.status-ladder [data-state=pending] .status-ladder-cell{box-shadow:inset 0 0 0 var(--border-hairline) color-mix(in oklab,var(--muted-foreground) 55%,transparent)}}.cert-stamp{border:var(--border-hairline) solid var(--foreground);align-items:center;gap:.5rem;padding:.375rem .75rem;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.cert-stamp{border:var(--border-hairline) solid color-mix(in oklab,var(--foreground) 55%,transparent)}}.cert-stamp{color:var(--gray-11,var(--foreground));letter-spacing:.1em;-webkit-user-select:none;user-select:none;font-size:.6875rem}.cert-stamp,.section-tag{font-family:var(--font-geist-mono),ui-monospace,monospace;text-transform:uppercase}.section-tag{color:var(--gray-8,var(--muted-foreground));font-size:.75rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;align-items:stretch;gap:0;display:inline-flex}.section-tag-index{border:var(--border-hairline) solid var(--muted-foreground);align-items:center;padding:.0625rem .375rem;display:flex}@supports (color:color-mix(in lab,red,red)){.section-tag-index{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}.section-tag-index{font-variant-numeric:tabular-nums;font-size:.6875rem}.section-tag-hatch{border:var(--border-hairline) solid var(--muted-foreground);width:.75rem}@supports (color:color-mix(in lab,red,red)){.section-tag-hatch{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}.section-tag-hatch{background:repeating-linear-gradient(-45deg,var(--muted-foreground) 0,var(--muted-foreground) 1px,transparent 1px,transparent 3.5px);border-left:none}@supports (color:color-mix(in lab,red,red)){.section-tag-hatch{background:repeating-linear-gradient(-45deg,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 0,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 1px,transparent 1px,transparent 3.5px)}}.section-tag-label{align-self:center;padding-left:.625rem}.quiet-selection{--hover:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.quiet-selection{--hover:color-mix(in oklab,var(--foreground) 4%,transparent)}}.quiet-selection{--active:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.quiet-selection{--active:color-mix(in oklab,var(--foreground) 7%,transparent)}}.dark .quiet-selection{--hover:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dark .quiet-selection{--hover:color-mix(in oklab,var(--foreground) 5%,transparent)}}.dark .quiet-selection{--active:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dark .quiet-selection{--active:color-mix(in oklab,var(--foreground) 9%,transparent)}}.step-index{border:var(--border-hairline) solid var(--muted-foreground);justify-content:center;align-items:center;min-width:1.25rem;padding:.125rem 0;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.step-index{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 40%,transparent)}}.step-index{font-family:var(--font-geist-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;font-size:.6875rem;line-height:1}.footer-geo,.step-index{color:var(--muted-foreground)}.footer-geo{align-items:center;gap:.5rem;display:flex}@supports (color:color-mix(in lab,red,red)){.footer-geo{color:color-mix(in oklab,var(--muted-foreground) 88%,transparent)}}.footer-geo{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.footer-geo-globe{fill:none;stroke:currentColor;stroke-width:.7px;opacity:.5;flex:none;width:1.375rem;height:1.375rem}.footer-geo-lines{color:var(--muted-foreground);flex-direction:column;gap:.0625rem;display:flex}@supports (color:color-mix(in lab,red,red)){.footer-geo-lines{color:color-mix(in oklab,var(--muted-foreground) 90%,transparent)}}.footer-geo-lines{font-variant-numeric:tabular-nums;font-size:.75rem}.footer-braille{color:var(--muted-foreground);margin-top:.25rem}@supports (color:color-mix(in lab,red,red)){.footer-braille{color:color-mix(in oklab,var(--muted-foreground) 55%,transparent)}}.footer-braille{letter-spacing:.05em;font-size:.75rem;line-height:1}.barcode{color:currentColor;-webkit-user-select:none;user-select:none;display:inline-block}.barcode svg{height:1.5rem;display:block}.barcode-label{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.14em;margin-top:.25rem;font-size:.625rem;display:block}.error-barcode{z-index:2;color:var(--foreground);position:absolute;bottom:3.25rem;left:1.25rem}@supports (color:color-mix(in lab,red,red)){.error-barcode{color:color-mix(in oklab,var(--foreground) 38%,transparent)}}.ghost-folio{z-index:-1;color:var(--ghost-ink);letter-spacing:.04em;pointer-events:none;font-size:4.5rem;line-height:1;position:absolute;top:-.75rem;right:0}.ghost-folio,.pixel-cluster{-webkit-user-select:none;user-select:none}.pixel-cluster{grid-template-rows:5px 5px;grid-template-columns:5px 5px;gap:1px;display:grid}.pixel-cluster .pc-cell{display:block}.pixel-cluster .pc-s{background:var(--signal)}.pixel-cluster .pc-a{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.pixel-cluster .pc-a{background:color-mix(in oklab,var(--foreground) 26%,transparent)}}.pixel-cluster .pc-b{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.pixel-cluster .pc-b{background:color-mix(in oklab,var(--foreground) 11%,transparent)}}.page-eyebrow{color:var(--gray-8,var(--muted-foreground));font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.75rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;text-transform:uppercase}.page-eyebrow:before{content:"// "/"";color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.page-eyebrow:before{color:color-mix(in oklab,var(--muted-foreground) 55%,transparent)}}.post-related{margin-top:4rem;padding-top:1rem}.post-related-label{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.post-related-label{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.post-related-label{font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.6875rem;font-weight:var(--font-weight-normal);letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;user-select:none}.prose ul{padding-left:1.375rem}.prose ol{padding-left:1.75rem}.prose ul>li{list-style:none;position:relative}.prose ul>li:before{content:"";background:var(--muted-foreground);width:5px;height:5px;position:absolute;top:calc(.875em - 2.5px);left:-1.375rem}.prose ol{counter-reset:prose-step;list-style:none}.prose ol>li{counter-increment:prose-step;position:relative}.prose ol>li:before{content:counter(prose-step,decimal-leading-zero);border:var(--border-hairline) solid var(--muted-foreground);place-items:center;min-width:1.25rem;padding:.125rem 0;display:inline-grid;position:absolute;top:.1875rem;left:-1.75rem}@supports (color:color-mix(in lab,red,red)){.prose ol>li:before{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 40%,transparent)}}.prose ol>li:before{color:var(--muted-foreground);font-family:var(--font-geist-mono),ui-monospace,monospace;font-variant-numeric:tabular-nums;font-size:.6875rem;line-height:1}.prose li+li,.prose li>ol,.prose li>ul{margin-top:.5em}.prose blockquote{color:var(--muted-foreground);padding-left:1.25rem;position:relative}.prose blockquote:before{content:"";border:var(--border-hairline) solid var(--muted-foreground);width:.375rem;position:absolute;top:.25em;bottom:.25em;left:0}@supports (color:color-mix(in lab,red,red)){.prose blockquote:before{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}.prose blockquote:before{background:repeating-linear-gradient(-45deg,var(--muted-foreground) 0,var(--muted-foreground) 1px,transparent 1px,transparent 3.5px)}@supports (color:color-mix(in lab,red,red)){.prose blockquote:before{background:repeating-linear-gradient(-45deg,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 0,color-mix(in oklab,var(--muted-foreground) 55%,transparent) 1px,transparent 1px,transparent 3.5px)}}.prose .zoom-trigger img{background:var(--surface-1);box-shadow:0 0 0 var(--border-hairline) var(--border);border-radius:2px}.prose .post-figcaption,.prose figcaption{text-align:left;font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;color:var(--muted-foreground);margin-top:.625rem;font-size:.75rem;line-height:1.5}.prose .post-figure{counter-increment:prose-figure}.prose .post-figcaption:before{content:"FIG. " counter(prose-figure,decimal-leading-zero) " — " /"";color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.prose .post-figcaption:before{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.prose .post-figcaption:before{letter-spacing:.08em}.prose code:not(pre code){background:var(--muted);border-radius:2px;padding:.125rem .375rem;font-size:.875em}figure[data-rehype-pretty-code-figure]{border:var(--border-hairline) solid var(--border)}.code-frame{background:var(--surface-1);--scroll-fade-surface:var(--surface-1);position:relative}.code-frame pre{width:max-content;min-width:100%;padding:1rem;font-size:.8125rem;line-height:1.6}.scroll-area-x{position:relative}.scroll-area-x-viewport{overflow-x:auto}.scroll-area-x-viewport::-webkit-scrollbar{height:8px}.scroll-area-x-viewport::-webkit-scrollbar-thumb{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.scroll-area-x-viewport::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--foreground) 20%,transparent)}}.scroll-area-x-viewport::-webkit-scrollbar-thumb{border-radius:4px}.scroll-area-x-fade{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;width:2.5rem;transition:opacity .15s;position:absolute;top:0;bottom:0}.scroll-area-x-fade-start{background:linear-gradient(to right,var(--scroll-fade-surface,var(--background)),transparent);left:0}.scroll-area-x-fade-end{background:linear-gradient(to left,var(--scroll-fade-surface,var(--background)),transparent);right:0}.scroll-area-x-fade[data-visible]{opacity:1}@media (prefers-reduced-motion:reduce){.scroll-area-x-fade{transition:none}}.scroll-area-y{flex-direction:column;display:flex;position:relative}.scroll-area-y-viewport{flex:auto;min-height:0;overflow-y:auto}.scroll-area-y-viewport::-webkit-scrollbar{width:8px}.scroll-area-y-viewport::-webkit-scrollbar-thumb{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.scroll-area-y-viewport::-webkit-scrollbar-thumb{background:color-mix(in oklab,var(--foreground) 20%,transparent)}}.scroll-area-y-viewport::-webkit-scrollbar-thumb{border-radius:4px}.scroll-area-y-fade{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;height:2.5rem;transition:opacity .15s;position:absolute;left:0;right:0}.scroll-area-y-fade-start{background:linear-gradient(to bottom,var(--scroll-fade-surface,var(--background)),transparent);top:0}.scroll-area-y-fade-end{background:linear-gradient(to top,var(--scroll-fade-surface,var(--background)),transparent);bottom:0}.scroll-area-y-fade[data-visible]{opacity:1}@media (prefers-reduced-motion:reduce){.scroll-area-y-fade{transition:none}}.mermaid-frame{border:var(--border-hairline) solid var(--border);background:var(--surface-1);--scroll-fade-surface:var(--surface-1)}.mermaid-sheet{justify-content:center;width:max-content;min-width:100%;padding:.5rem;display:flex}.mermaid-sheet svg{--line:initial;--accent:initial;--muted:initial;--surface:initial;--border:initial;display:block}.mermaid-sheet svg text{font-family:var(--font-sans)}.mermaid-sheet svg .mono{font-family:var(--font-geist-mono),ui-monospace,monospace}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title]{border-bottom:var(--border-hairline) solid var(--border);text-align:left;font-family:var(--font-mono,monospace);letter-spacing:.04em;color:var(--muted-foreground);align-items:center;gap:.75rem;margin:0;padding:.5rem 1rem;font-size:.6875rem;line-height:1.4;display:flex}@supports (color:color-mix(in lab,red,red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title]{color:color-mix(in oklab,var(--muted-foreground) 88%,transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{content:attr(data-language);border:var(--border-hairline) solid var(--muted-foreground);margin-left:auto;padding:.0625rem .375rem}@supports (color:color-mix(in lab,red,red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{border:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}figure[data-rehype-pretty-code-figure] figcaption[data-rehype-pretty-code-title][data-language]:after{letter-spacing:.08em;text-transform:uppercase;-webkit-user-select:none;user-select:none;font-size:.625rem}code[data-theme] span{color:var(--shiki-light)}.dark code[data-theme] span{color:var(--shiki-dark)}.code-copy,.dark pre[data-theme],pre[data-theme]{background:0 0}.code-copy{width:1.75rem;height:1.75rem;color:var(--muted-foreground);border-radius:2px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:absolute;top:.5rem;right:.5rem}.code-copy:after{content:"";position:absolute;inset:-.5rem}@media (hover:hover) and (pointer:fine){.code-copy:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.code-copy:hover{background:color-mix(in oklab,var(--foreground) 8%,transparent)}}}.code-copy:active{transform:scale(.97)}.code-copy[data-copied]{color:var(--foreground)}.tweet-card{border:var(--border-hairline) solid var(--border);background:var(--surface-1);transition:border-color .15s,background-color .15s;display:block;text-decoration:none!important}@media (hover:hover) and (pointer:fine){.tweet-card:hover{border-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.tweet-card:hover{border-color:color-mix(in oklab,var(--foreground) 25%,transparent)}}.tweet-card:hover{background:var(--surface-2)}}.tweet-card-head{border-bottom:var(--border-hairline) solid var(--border);align-items:center;gap:.625rem;padding:.75rem 1rem;display:flex}.tweet-card-avatar{background:var(--muted);width:2.25rem;height:2.25rem;box-shadow:inset 0 0 0 1px var(--border);font-size:1rem;font-weight:var(--font-weight-medium);color:var(--muted-foreground);-webkit-user-select:none;user-select:none;border-radius:999px;place-items:center;display:grid}img.tweet-card-avatar{object-fit:cover;background:0 0}.tweet-card-names{flex-direction:column;flex:1;min-width:0;line-height:1.35;display:flex}.tweet-card-name{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground)}.tweet-card-handle{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.tweet-card-handle{color:color-mix(in oklab,var(--muted-foreground) 85%,transparent)}}.tweet-card-handle{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;font-size:.75rem}.tweet-card-x{color:var(--muted-foreground);transition:color .15s}@media (hover:hover) and (pointer:fine){.tweet-card:hover .tweet-card-x{color:var(--foreground)}}.tweet-card-body{letter-spacing:-.011em;color:var(--foreground);padding:.875rem 1rem;font-size:.875rem;line-height:1.6;display:block}.tweet-card-body>span+span{margin-top:.75em}.tweet-card-foot{border-top:var(--border-hairline) solid var(--border);color:var(--muted-foreground);align-items:center;gap:.5rem;padding:.5rem 1rem;display:flex}@supports (color:color-mix(in lab,red,red)){.tweet-card-foot{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.tweet-card-foot{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums;font-size:.6875rem}.tweet-card-mark{opacity:.6;margin-left:auto;transition:opacity .18s,translate .18s}@media (hover:hover) and (pointer:fine){.tweet-card:hover .tweet-card-mark{opacity:.95;translate:1.5px -1.5px}}@media (prefers-reduced-motion:reduce){.tweet-card-mark{transition:none}}.theme-toggle{box-shadow:0 0 0 1px var(--border);border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.theme-toggle button{width:1.5rem;height:1.5rem;color:var(--muted-foreground);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:relative}.theme-toggle button:after{content:"";position:absolute;inset:-.625rem 0}@media (hover:hover) and (pointer:fine){.theme-toggle button:hover{color:var(--foreground)}}.theme-toggle button:active{transform:scale(.97)}.theme-toggle button[data-active]{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.theme-toggle button[data-active]{background:color-mix(in oklab,var(--foreground) 8%,transparent)}}.zoom-trigger{cursor:zoom-in;width:100%;display:block}.zoom-trigger[data-zoomed] img{visibility:hidden}.zoom-overlay{z-index:var(--z-toast);cursor:zoom-out;outline:none;position:fixed;inset:0}.zoom-overlay-backdrop{background:var(--background);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.zoom-overlay-backdrop{background:color-mix(in oklab,var(--background) 94%,transparent)}}.zoom-overlay-backdrop{opacity:0;transition:opacity .3s var(--ease-swift)}.zoom-overlay[data-state=open] .zoom-overlay-backdrop{opacity:1}.zoom-overlay img{background:var(--surface-1);will-change:transform;transition:transform .3s var(--ease-swift),box-shadow .3s var(--ease-swift);border-radius:2px;position:fixed}.zoom-overlay[data-state=open] img{box-shadow:var(--shadow-large)}.zoom-overlay-marks{opacity:0;transition:opacity .12s;position:fixed}.zoom-overlay[data-state=open] .zoom-overlay-marks{opacity:.55;transition:opacity .2s .14s}@media (prefers-reduced-motion:reduce){.zoom-overlay img,.zoom-overlay-backdrop,.zoom-overlay-marks{transition:none}}.avatar-flip{width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px var(--border);-webkit-user-select:none;user-select:none;border-radius:999px;display:block;position:relative;overflow:hidden}.avatar-flip img{object-fit:cover;border-radius:999px;width:100%;height:100%;position:absolute;inset:0}@keyframes enter-develop{0%{opacity:0;filter:blur(4px)}}@keyframes polaroid-pop{0%{opacity:0;transform:rotate(calc(var(--tilt,0deg) + 1.5deg)) scale(.85)}}.enter{animation:enter-develop .35s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}.enter-polaroid .polaroid{animation:polaroid-pop .35s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}html[data-visited] .enter-polaroid .polaroid{animation:none}.reveal-pending{opacity:0;filter:blur(2px);transform:translateY(5px)}@keyframes reveal-develop{0%{opacity:0;filter:blur(2px);transform:translateY(5px)}}.reveal-in{animation:reveal-develop .3s var(--ease-swift) backwards;animation-delay:var(--reveal-delay,0s)}@keyframes img-develop{0%{opacity:0;filter:blur(4px);transform:rotate(calc(var(--img-tilt,0deg) + 1.2deg)) scale(.9)}}.reveal-in .zoom-trigger{animation:img-develop .3s var(--ease-swift) backwards;animation-delay:calc(var(--reveal-delay,0s) + .25s)}.post-loading-cover{view-transition-name:var(--post-cover-transition-name,none)}.post-loading-title{view-transition-name:var(--post-title-transition-name,none)}@keyframes vt-defocus{to{opacity:0;filter:blur(2px)}}@keyframes vt-focus{0%{opacity:0;filter:blur(2px)}}::view-transition-group(root){animation:none}::view-transition-old(root){display:none}::view-transition-new(root){animation:none}::view-transition-group(site-dock){z-index:var(--z-nav);animation:none}::view-transition-old(site-dock){display:none}::view-transition-new(site-dock){animation:none}::view-transition-old(.route-content){animation:vt-defocus .25s var(--ease-swift) both}::view-transition-new(.route-content){animation:vt-focus .3s var(--ease-swift) both}::view-transition-group(*){animation-duration:var(--duration-route-morph);animation-timing-function:var(--ease-swift)}html[data-route-motion=none]::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-image-pair(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}html[data-route-motion=none]::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}.post-title-meta{animation:enter-develop var(--duration-post-meta) var(--ease-swift) backwards;animation-delay:var(--duration-route-morph)}.post-body-stage{--enter-delay:var(--delay-post-body)}.prose ol.reveal-in,.prose ul.reveal-in{animation:none}.prose ol.reveal-in>li,.prose ul.reveal-in>li{animation:reveal-develop .3s var(--ease-swift) backwards;animation-delay:calc(var(--reveal-delay,0s) + var(--li,0) * 45ms)}.prose ol.reveal-in>li:nth-child(2),.prose ul.reveal-in>li:nth-child(2){--li:1}.prose ol.reveal-in>li:nth-child(3),.prose ul.reveal-in>li:nth-child(3){--li:2}.prose ol.reveal-in>li:nth-child(4),.prose ul.reveal-in>li:nth-child(4){--li:3}.prose ol.reveal-in>li:nth-child(5),.prose ul.reveal-in>li:nth-child(5){--li:4}.prose ol.reveal-in>li:nth-child(6),.prose ul.reveal-in>li:nth-child(6){--li:5}.prose ol.reveal-in>li:nth-child(7),.prose ul.reveal-in>li:nth-child(7){--li:6}.prose ol.reveal-in>li:nth-child(8),.prose ul.reveal-in>li:nth-child(8){--li:7}.prose ol.reveal-in>li:nth-child(9),.prose ul.reveal-in>li:nth-child(9){--li:8}.prose ol.reveal-in>li:nth-child(n+10),.prose ul.reveal-in>li:nth-child(n+10){--li:9}@media (prefers-reduced-motion:reduce){.enter,.enter-polaroid .polaroid,.post-title-meta,.prose ol.reveal-in>li,.prose ul.reveal-in>li,.reveal-in{animation:none}.reveal-pending{opacity:1;filter:none;transform:none}.reveal-in .zoom-trigger{animation:none}::view-transition-group(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-image-pair(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-old(*){animation-duration:0s!important;animation-delay:0s!important}::view-transition-new(*){animation-duration:0s!important;animation-delay:0s!important}}.external-label{display:inline}.external-mark{opacity:.6;vertical-align:-.125em;width:1rem;height:1rem;margin-inline-start:.08em;transition:opacity .15s;display:inline-block}.external-label-text{min-width:0}@media (hover:hover) and (pointer:fine){.external-label .external-mark{transition:opacity .15s,transform .18s}a:hover .external-label .external-mark{opacity:.95;transform:translate(1.5px,-1.5px)}}a:focus-visible .external-label .external-mark{opacity:.95;transition:none}.home-introduction p{color:var(--gray-10,var(--muted-foreground));font-size:.875rem;line-height:1.72}.home-intro-trigger{white-space:nowrap;touch-action:manipulation;align-items:baseline;gap:.18em;display:inline-flex}.home-design-mark,.home-details-mark{width:1.125rem;height:1.125rem;color:var(--foreground);pointer-events:none;-webkit-user-select:none;user-select:none;vertical-align:-.25em;flex:none;align-self:center;display:inline-block}.home-design-laptop,.home-design-sparkle,.home-zolplay-link .external-link>img{transform-box:fill-box;transform-origin:50%}.home-design-laptop,.home-zolplay-link .external-link>img{transition:transform .15s var(--ease-swift)}.home-detail-units{align-items:baseline;display:inline-flex}.home-detail-words .home-detail-unit+.home-detail-unit{margin-inline-start:.22em}.home-detail-unit{transform-origin:bottom}.home-detail-period,.home-detail-unit{display:inline-block}.home-design-sparkle{opacity:.72}.home-intro-trigger.home-intro-tap .home-design-laptop{animation:home-intro-laptop-tap .22s var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-a{animation:home-intro-twinkle .22s var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-b{animation:home-intro-twinkle .22s 45ms var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-design-sparkle-dot{animation:home-intro-twinkle .18s 90ms var(--ease-swift)}.home-intro-trigger.home-intro-tap .home-detail-unit{animation:home-detail-hop 1s var(--ease-spring)}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(2){animation-delay:80ms}.home-intro-trigger.home-intro-tap .home-detail-unit:nth-child(3){animation-delay:.16s}.home-zolplay-link{white-space:nowrap;touch-action:manipulation}.home-contact-link,.home-zolplay-link .external-link{color:var(--gray-10,var(--foreground));text-underline-offset:.16em;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:.1em}@supports (color:color-mix(in lab,red,red)){.home-contact-link,.home-zolplay-link .external-link{-webkit-text-decoration-color:color-mix(in oklab,currentColor 38%,transparent);text-decoration-color:color-mix(in oklab,currentColor 38%,transparent)}}.home-contact-link,.home-zolplay-link .external-link{-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto}.home-contact-link,.home-zolplay-link .external-link{transition:color .15s,text-decoration-color .15s}.home-contact-link{touch-action:manipulation}.home-contact-link .external-label{white-space:nowrap}@media (hover:hover) and (pointer:fine){.home-contact-link:hover,.home-zolplay-link .external-link:hover{color:var(--gray-12,var(--foreground));text-decoration-color:currentColor}}.home-zolplay-link:active .external-link>img{transform:translateY(-1px)rotate(-4deg)}.home-zolplay-link .external-mark{transition:opacity .15s,transform .18s}.home-zolplay-link:active .external-mark{opacity:.95;transform:translate(1.5px,-1.5px)}@media (hover:hover) and (pointer:fine){.home-intro-trigger:hover .home-design-label{color:#0000;background-image:linear-gradient(100deg,var(--foreground),var(--foreground),var(--foreground),var(--foreground),var(--foreground))}@supports (color:color-mix(in lab,red,red)){.home-intro-trigger:hover .home-design-label{background-image:linear-gradient(100deg,color-mix(in oklch,var(--foreground) 35%,#ff5c5c),color-mix(in oklch,var(--foreground) 35%,#f6b73c),color-mix(in oklch,var(--foreground) 35%,#44c77a),color-mix(in oklch,var(--foreground) 35%,#4aa8ff),color-mix(in oklch,var(--foreground) 35%,#b56cff))}}.home-intro-trigger:hover .home-design-label{-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.home-intro-trigger:hover .home-detail-unit{animation:home-detail-hop 1s var(--ease-spring)}.home-intro-trigger:hover .home-detail-unit:nth-child(2){animation-delay:80ms}.home-intro-trigger:hover .home-detail-unit:nth-child(3){animation-delay:.16s}.home-intro-trigger:hover .home-design-laptop{transform:translateY(1.5px)}.home-intro-trigger:hover .home-design-sparkle-a{animation:home-intro-twinkle .22s var(--ease-swift)}.home-intro-trigger:hover .home-design-sparkle-b{animation:home-intro-twinkle .22s 45ms var(--ease-swift)}.home-intro-trigger:hover .home-design-sparkle-dot{animation:home-intro-twinkle .18s 90ms var(--ease-swift)}.home-zolplay-link:hover .external-link>img{transform:translateY(-1px)rotate(-4deg)}}@keyframes home-detail-hop{0%{transform:translateY(0)scale(1)}28%{animation-timing-function:var(--ease-spring);transform:translateY(-5px)scale(1.03)}to{transform:translateY(0)scale(1)}}@keyframes home-intro-laptop-tap{0%,to{transform:translateY(0)}45%{transform:translateY(1.5px)}}@keyframes home-intro-twinkle{0%,to{opacity:.72;transform:scale(1)}45%{opacity:1;transform:scale(1.22)}}@media (prefers-reduced-motion:reduce){.external-label .external-mark{transition:none}a:hover .external-label .external-mark{transform:none}.home-design-laptop,.home-design-sparkle,.home-detail-unit,.home-intro-trigger.home-intro-tap .home-design-laptop,.home-intro-trigger.home-intro-tap .home-design-sparkle,.home-intro-trigger.home-intro-tap .home-detail-unit,.home-intro-trigger:is(:hover,:active) .home-design-laptop,.home-intro-trigger:is(:hover,:active) .home-design-sparkle,.home-intro-trigger:is(:hover,:active) .home-detail-unit,.home-zolplay-link .external-link>img,.home-zolplay-link:is(:hover,:active) .external-link>img,.home-zolplay-link:is(:hover,:active) .external-mark{transition:none;animation:none;transform:none}.home-contact-link,.home-zolplay-link{transition:none}}.external-link img{vertical-align:-.125em;border-radius:3px;width:14px;height:14px;margin-right:.3em;display:inline-block}.external-link img,.link-card{-webkit-user-select:none;user-select:none}.link-card{pointer-events:none;background:var(--surface-3);width:16rem;box-shadow:0 0 0 1px var(--border),var(--shadow-tooltip),var(--shadow-medium);transform-origin:var(--transform-origin);backface-visibility:hidden;z-index:var(--z-card);opacity:1;transition:opacity .2s var(--ease-swift),transform .2s var(--ease-swift);border-radius:2px;flex-direction:column;gap:.375rem;padding:.625rem .75rem;display:flex;transform:scale(1)}.link-card-with-image{padding:.625rem}.link-card-image-frame{aspect-ratio:16/9;background:var(--muted);border-radius:2px;flex:none;width:100%;display:block;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.link-card-image-frame{background:color-mix(in oklch,var(--muted) 72%,var(--paper))}}.link-card-image-frame{box-shadow:inset 0 0 0 1px var(--border)}.link-card-image{object-fit:cover;width:100%;height:100%;display:block}.external-link img[data-failed],.link-card img[data-failed]{visibility:hidden}.dark .external-link img[data-tone=dark-mono],.dark .link-card-site img[data-tone=dark-mono],.external-link img[data-tone=light-mono],.link-card-site img[data-tone=light-mono]{filter:invert()}.dark .external-link img[data-tone=light-mono],.dark .link-card-site img[data-tone=light-mono]{filter:none}.dark .external-link img[data-tone=dark],.dark .link-card-site img[data-tone=dark],.external-link img[data-tone=light],.link-card-site img[data-tone=light]{box-sizing:border-box;background:var(--primary);padding:2px}@supports (color:color-mix(in lab,red,red)){.dark .external-link img[data-tone=dark],.dark .link-card-site img[data-tone=dark],.external-link img[data-tone=light],.link-card-site img[data-tone=light]{background:color-mix(in oklab,var(--primary) 88%,var(--background))}}.dark .external-link img[data-tone=light],.dark .link-card-site img[data-tone=light]{background:0 0;padding:0}.external-link img[data-tone=flat],.link-card-site img[data-tone=flat]{box-shadow:inset 0 0 0 1px var(--border)}.dark .external-link img[data-tone=flat],.dark .link-card-site img[data-tone=flat]{box-shadow:none}.link-card[data-starting-style]{opacity:0;transform:scale(.95)}.link-card[data-ending-style]{opacity:0;transition-duration:.13s;transform:scale(.97)}.link-card.preview-card-instant,.link-card.preview-card-instant[data-ending-style],.link-card.preview-card-instant[data-starting-style]{opacity:1;transition:none;transform:none}.link-card-site{color:var(--muted-foreground);font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;align-items:center;gap:.375rem;font-size:.75rem;display:flex}.link-card-site img{border-radius:2px}.link-card-title{font-weight:var(--font-weight-medium);color:var(--foreground);line-height:1.4}.link-card-description,.link-card-title{font-size:.875rem;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.link-card-description{color:var(--muted-foreground);line-height:1.5}[data-halftone]{aspect-ratio:1;-webkit-user-select:none;user-select:none;display:block;position:relative}.halftone-canvas{width:100%;height:100%;color:var(--foreground);opacity:0;position:absolute;inset:0}@keyframes halftone-reveal{0%{opacity:0}to{opacity:1}}[data-halftone][data-ready] .halftone-canvas{animation:halftone-reveal .4s var(--ease-swift) both}[data-portrait-stage]{isolation:isolate;aspect-ratio:1;display:block;position:relative}.portrait-hidden-stage-trigger{z-index:1;width:100%;height:100%;color:inherit;font:inherit;cursor:default;touch-action:manipulation;appearance:none;background:0 0;border:0;border-radius:2px;margin:0;padding:0;display:block;position:relative}.portrait-hidden-stage-trigger:focus-visible{outline:1px solid var(--foreground);outline-offset:4px}.portrait-hidden-stage-field{z-index:0;contain:layout paint;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .32s var(--ease-swift),transform .32s var(--ease-swift);position:absolute;inset:-28% -36% -28% -20%;transform:scale(.94);-webkit-mask-image:radial-gradient(at 45% 49%,#0000 0 25%,#00000061 36%,#000 48%,#000000d1 61%,#0000 78%);mask-image:radial-gradient(at 45% 49%,#0000 0 25%,#00000061 36%,#000 48%,#000000d1 61%,#0000 78%)}[data-portrait-stage][data-motion=false] .portrait-hidden-stage-field,[data-portrait-stage][data-motion=false] .portrait-hidden-stage-shader-shell{transition:none}[data-portrait-stage][data-active=true] .portrait-hidden-stage-field{opacity:1;transform:scale(1)}[data-portrait-stage][data-motion=true] .portrait-hidden-stage-field{will-change:transform,opacity}.portrait-hidden-stage-canvas,.portrait-hidden-stage-fallback,.portrait-hidden-stage-shader,.portrait-hidden-stage-shader-shell{width:100%;height:100%;position:absolute;inset:0}.portrait-hidden-stage-fallback{color:var(--foreground);opacity:.028;overflow:visible;transform:rotate(-5deg)}.portrait-hidden-stage-fallback path{vector-effect:non-scaling-stroke;stroke:currentColor;stroke-width:1.35px;stroke-linecap:round;stroke-linejoin:round}.portrait-hidden-stage-shader{opacity:.1}.portrait-hidden-stage-shader-shell{opacity:0;transition:opacity .18s var(--ease-swift)}.portrait-hidden-stage-shader-shell[data-ready=true]{opacity:1}.dark .portrait-hidden-stage-fallback{opacity:.026}.dark .portrait-hidden-stage-shader{opacity:.09}@media (prefers-reduced-motion:reduce){[data-halftone][data-ready] .halftone-canvas{opacity:1;animation:none}.portrait-hidden-stage-field,.portrait-hidden-stage-shader-shell{transition:none}}@keyframes enter-swing{0%{opacity:0;filter:blur(2px);transform:translateY(12px)rotate(-2deg)}}.enter-swing{animation:enter-swing .4s var(--ease-swift) backwards;animation-delay:var(--enter-delay,0s)}@media (prefers-reduced-motion:reduce){.enter-swing{animation:none}}.column-rulers{z-index:95;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--guide-opacity);mix-blend-mode:difference;position:fixed;inset:0}.column-ruler-arc{position:absolute;left:0}.column-ruler-arc-top{top:0}.column-ruler-arc-bottom{bottom:0}.email-envelope-card{background:var(--paper);width:19rem;max-width:min(19rem,100vw - 2rem);box-shadow:0 0 0 1px var(--paper-ink),var(--shadow-tooltip),var(--shadow-medium);border-radius:5px;padding:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.email-envelope-card{box-shadow:0 0 0 1px color-mix(in oklab,var(--paper-ink) 30%,transparent),var(--shadow-tooltip),var(--shadow-medium)}}.email-envelope{--mail-red:oklch(58% .12 25);--mail-blue:oklch(53% .09 245);width:100%;height:9.5rem;color:var(--paper-ink);background:radial-gradient(circle at 18% 24%,var(--paper-ink) 0 .5px,transparent .75px),var(--paper);display:block;position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.email-envelope{background:radial-gradient(circle at 18% 24%,color-mix(in oklab,var(--paper-ink) 4%,transparent) 0 .5px,transparent .75px),var(--paper)}}.email-envelope{background-size:13px 11px,auto}.email-envelope:before{content:"";z-index:4;pointer-events:none;background:repeating-linear-gradient(135deg,var(--mail-red) 0 7px,transparent 7px 14px,var(--mail-blue) 14px 21px,transparent 21px 28px) top /100% 3px no-repeat,repeating-linear-gradient(135deg,var(--mail-red) 0 7px,transparent 7px 14px,var(--mail-blue) 14px 21px,transparent 21px 28px) bottom /100% 3px no-repeat,repeating-linear-gradient(45deg,var(--mail-red) 0 7px,transparent 7px 14px,var(--mail-blue) 14px 21px,transparent 21px 28px) 0 /3px 100% no-repeat,repeating-linear-gradient(45deg,var(--mail-red) 0 7px,transparent 7px 14px,var(--mail-blue) 14px 21px,transparent 21px 28px) 100% /3px 100% no-repeat;opacity:.62;position:absolute;inset:0}.email-envelope-flap{clip-path:polygon(0 100%,0 75%,50% 25%,100% 75%,100% 100%);background:var(--paper-ink);height:66%;position:absolute;inset:auto 0 0}@supports (color:color-mix(in lab,red,red)){.email-envelope-flap{background:color-mix(in oklab,var(--paper-ink) 3%,var(--paper))}}.email-envelope-flap{filter:drop-shadow(0 -1px 0 var(--paper-ink))}@supports (color:color-mix(in lab,red,red)){.email-envelope-flap{filter:drop-shadow(0 -1px 0 color-mix(in oklab,var(--paper-ink) 34%,transparent))}}.email-envelope-return{z-index:1;font-family:var(--font-mono,ui-monospace,monospace);letter-spacing:.08em;color:var(--paper-ink);font-size:7px;line-height:1.45;position:absolute;top:1.05rem;left:1.05rem}@supports (color:color-mix(in lab,red,red)){.email-envelope-return{color:color-mix(in oklab,var(--paper-ink) 78%,transparent)}}.email-envelope-return>span{letter-spacing:.16em;opacity:.72;margin-bottom:1px;font-size:6px;display:block}.email-envelope-stamps{z-index:2;align-items:flex-start;gap:.2rem;display:flex;position:absolute;top:.7rem;right:.8rem}.email-envelope-stamp{border:3px dotted var(--paper);font-family:var(--font-mono,ui-monospace,monospace);color:var(--paper-ink);flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex}@supports (color:color-mix(in lab,red,red)){.email-envelope-stamp{color:color-mix(in oklab,var(--paper-ink) 90%,transparent)}}.email-envelope-stamp{box-shadow:0 0 0 1px var(--paper-ink)}@supports (color:color-mix(in lab,red,red)){.email-envelope-stamp{box-shadow:0 0 0 1px color-mix(in oklab,var(--paper-ink) 36%,transparent)}}.email-envelope-stamp-portrait{background:var(--mail-red);width:3rem;height:3.65rem;rotate:2deg}@supports (color:color-mix(in lab,red,red)){.email-envelope-stamp-portrait{background:color-mix(in oklab,var(--mail-red) 11%,var(--paper))}}.email-envelope-stamp-portrait img{object-fit:cover;filter:grayscale()contrast(1.08);width:2rem;height:2rem;display:block}.email-envelope-stamp-mark>span:last-child,.email-envelope-stamp-portrait span{letter-spacing:.06em;margin-top:.2rem;font-size:5px}.email-envelope-stamp-mark{background:var(--mail-blue);width:2.25rem;height:2.85rem;margin-top:.25rem;rotate:-3deg}@supports (color:color-mix(in lab,red,red)){.email-envelope-stamp-mark{background:color-mix(in oklab,var(--mail-blue) 10%,var(--paper))}}.email-envelope-stamp-star{color:var(--mail-blue);font-size:1rem}@supports (color:color-mix(in lab,red,red)){.email-envelope-stamp-star{color:color-mix(in oklab,var(--mail-blue) 66%,var(--paper-ink))}}.email-envelope-postmark{z-index:3;border:1px solid var(--paper-ink);width:2.1rem;height:2.1rem;position:absolute;top:1.35rem;right:4.2rem}@supports (color:color-mix(in lab,red,red)){.email-envelope-postmark{border:1px solid color-mix(in oklab,var(--paper-ink) 58%,transparent)}}.email-envelope-postmark{opacity:.72;border-radius:999px;rotate:-8deg}.email-envelope-postmark:before{content:"13 JUL";font-family:var(--font-mono,ui-monospace,monospace);letter-spacing:.04em;place-items:center;font-size:5px;display:grid;position:absolute;inset:0}.email-envelope-postmark:after{content:"";background:repeating-linear-gradient(to bottom,var(--paper-ink) 0 1px,transparent 1px 5px);width:2.8rem;height:1rem;position:absolute;top:.5rem;left:1.65rem}@supports (color:color-mix(in lab,red,red)){.email-envelope-postmark:after{background:repeating-linear-gradient(to bottom,color-mix(in oklab,var(--paper-ink) 58%,transparent) 0 1px,transparent 1px 5px)}}.email-envelope-address{z-index:2;font-family:var(--font-mono,ui-monospace,monospace);letter-spacing:.02em;color:var(--paper-ink);flex-direction:column;font-size:12px;line-height:1.35;display:flex;position:absolute;top:5.45rem;left:2.75rem;right:.85rem}@supports (color:color-mix(in lab,red,red)){.email-envelope-address{color:color-mix(in oklab,var(--paper-ink) 92%,transparent)}}.email-envelope-address{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.email-envelope-address>span{letter-spacing:.18em;opacity:.68;margin-bottom:.25rem;font-size:6px}.room-shelf{--room-shelf-shadow-rgb:27 22 17;--room-shelf-wood-front-bottom:oklch(61% .065 64);--room-shelf-wood-front-top:oklch(79% .05 74);--room-shelf-wood-grain:#472a1114;--room-shelf-wood-top-back:oklch(77% .045 75);--room-shelf-wood-top-front:oklch(84% .04 78);position:relative}.dark .room-shelf{--room-shelf-shadow-rgb:0 0 0;--room-shelf-wood-front-bottom:oklch(29% .035 49);--room-shelf-wood-front-top:oklch(43% .04 59);--room-shelf-wood-grain:#00000026;--room-shelf-wood-top-back:oklch(38% .035 56);--room-shelf-wood-top-front:oklch(47% .035 62)}.shelf-annotation{width:max-content;max-width:calc(100% - 2rem);height:1.75rem;color:var(--muted-foreground);justify-content:center;align-items:center;margin:.375rem auto 0;font-size:.875rem;line-height:1;text-decoration:none;display:flex;position:relative}.shelf-annotation:before{content:"";position:absolute;inset:-.5rem}.shelf-annotation .external-label{align-items:center;max-width:100%;display:inline-flex}.shelf-annotation .external-label-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shelf-annotation:focus-visible{outline:1px solid var(--focus-ring);outline-offset:3px;border-radius:2px}.room-shelf-plank{z-index:1;background:radial-gradient(ellipse 22% 38% at 12% 22%,transparent 0 92%,var(--room-shelf-wood-grain) 93% 95%,transparent 96%),radial-gradient(ellipse 32% 42% at 67% 70%,transparent 0 93%,var(--room-shelf-wood-grain) 94% 96%,transparent 97%),linear-gradient(92deg,transparent 0 8%,var(--room-shelf-wood-grain) 14%,transparent 22% 54%,var(--room-shelf-wood-grain) 61%,transparent 72%),linear-gradient(180deg,var(--room-shelf-wood-front-top),var(--room-shelf-wood-front-bottom));height:12px;box-shadow:inset 0 1px 0 #ffffff47,inset 0 -1px 0 #331c0a33,1px 3px 3px -2px rgb(var(--room-shelf-shadow-rgb)/.24),3px 10px 16px -8px rgb(var(--room-shelf-shadow-rgb)/.34),6px 24px 34px -18px rgb(var(--room-shelf-shadow-rgb)/.28);border-radius:1px 1px 2px 2px;display:block;position:relative}.room-shelf-plank:after,.room-shelf-plank:before{content:"";pointer-events:none;position:absolute;left:0;right:0}.room-shelf-plank:before{clip-path:polygon(.8% 0,99.2% 0,100% 100%,0 100%);background:radial-gradient(ellipse 28% 70% at 23% 45%,transparent 0 90%,var(--room-shelf-wood-grain) 91% 93%,transparent 94%),linear-gradient(91deg,transparent 0 16%,var(--room-shelf-wood-grain) 25%,transparent 34% 67%,var(--room-shelf-wood-grain) 75%,transparent 83%),linear-gradient(180deg,var(--room-shelf-wood-top-front),var(--room-shelf-wood-top-back));height:6px;top:-6px;box-shadow:inset 0 1px #ffffff52,inset 0 -1px #341d0b2e}.room-shelf-plank:after{background:linear-gradient(180deg,rgb(var(--room-shelf-shadow-rgb)/.24),rgb(var(--room-shelf-shadow-rgb)/.08));border-radius:0 0 2px 2px;height:2px;bottom:-2px}.dark .room-shelf-plank{box-shadow:inset 0 1px 0 #ffffff1a,inset 0 -1px 0 #0000007a,1px 3px 3px -2px rgb(var(--room-shelf-shadow-rgb)/.45),3px 10px 16px -8px rgb(var(--room-shelf-shadow-rgb)/.62),6px 24px 34px -18px rgb(var(--room-shelf-shadow-rgb)/.5)}.dark .room-shelf-plank:before{box-shadow:inset 0 1px #ffffff1a,inset 0 -1px #0006}.zoom-trigger{transform:rotate(var(--img-tilt,0deg));transition:transform .3s var(--ease-swift)}@media (hover:hover) and (pointer:fine){.zoom-trigger:hover{transform:rotate(0)scale(1.02)}}@media (prefers-reduced-motion:reduce){.zoom-trigger{transition:none}}.viewport-edge-fade{z-index:90;pointer-events:none;-webkit-user-select:none;user-select:none;height:4.5rem;position:fixed;left:0;right:0}.viewport-edge-fade-top{background:linear-gradient(to bottom,var(--background),transparent);top:0;-webkit-mask-image:linear-gradient(#000 15%,#0000);mask-image:linear-gradient(#000 15%,#0000)}@supports (color:color-mix(in lab,red,red)){.viewport-edge-fade-top{background:linear-gradient(to bottom,color-mix(in oklab,var(--background) 62%,transparent),transparent)}}.viewport-edge-fade-bottom{background:linear-gradient(to top,var(--background),transparent);bottom:0;-webkit-mask-image:linear-gradient(#0000,#000 85%);mask-image:linear-gradient(#0000,#000 85%)}@supports (color:color-mix(in lab,red,red)){.viewport-edge-fade-bottom{background:linear-gradient(to top,color-mix(in oklab,var(--background) 62%,transparent),transparent)}}.viewport-edge-fade-bottom:before{-webkit-mask-image:linear-gradient(#0000 55%,#000);mask-image:linear-gradient(#0000 55%,#000)}.dither-veil{opacity:1;width:100%;height:100%;transition:opacity .3s var(--ease-swift);position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.group:hover .dither-veil{opacity:0}}.group:focus-visible .dither-veil{opacity:0}@media (prefers-reduced-motion:reduce){.dither-veil{transition:none}}.vinyl-room{--vinyl-depth:3px;--vinyl-motion-duration:.33s;--vinyl-shadow-rgb:var(--room-shelf-shadow-rgb);isolation:isolate;width:min(37.5rem,100vw - 2rem);left:50%;transform:translate(-50%)}.vinyl-annotation{z-index:2}.vinyl-viewport{z-index:2;cursor:grab;position:relative;overflow:clip}.vinyl-room[data-vinyl-interaction=panning] .vinyl-viewport{cursor:grabbing}.vinyl-shelf{--vinyl-spread:48%;isolation:isolate;perspective:900px;perspective-origin:bottom;place-items:end center;margin:0;padding:2.5rem 0 4px;list-style:none;display:grid;overflow:visible}.vinyl{width:clamp(7.25rem,27vw,9.5rem);z-index:var(--vinyl-stack-order);grid-area:1/1}.vinyl,.vinyl-trigger{pointer-events:none;position:relative}.vinyl-trigger{width:100%;min-width:44px;min-height:44px;color:inherit;cursor:default;touch-action:manipulation;transform:translateX(calc(var(--vinyl-offset) * var(--vinyl-spread))) translateY(calc(var(--vinyl-rest-offset) * 1px)) translateZ(calc(var(--vinyl-forward) * 1px)) rotate(calc(var(--vinyl-rest-tilt) * 1deg)) rotateY(calc(var(--vinyl-direction) * var(--vinyl-inward-angle) * -1deg)) scale(var(--vinyl-scale));transform-origin:var(--vinyl-origin-x) bottom;transform-style:preserve-3d;transition:transform var(--vinyl-motion-duration) var(--ease-spring);will-change:transform;background:0 0;border:0;padding:0;display:block}.vinyl-hit-corner{z-index:-1;pointer-events:none;width:0;height:0;position:absolute}.vinyl-hit-corner[data-corner=top-left]{top:0;left:0}.vinyl-hit-corner[data-corner=top-right]{top:0;right:0}.vinyl-hit-corner[data-corner=bottom-right]{bottom:0;right:0}.vinyl-hit-corner[data-corner=bottom-left]{bottom:0;left:0}.vinyl-object{z-index:1;width:100%;transform-style:preserve-3d;transition:transform var(--vinyl-motion-duration) var(--ease-spring);display:block;position:relative;transform:translate(0)}.vinyl-contact-shadow{z-index:0;background:radial-gradient(ellipse at center,rgb(var(--vinyl-shadow-rgb)/.4) 0,rgb(var(--vinyl-shadow-rgb)/.18) 46%,transparent 84%);height:10px;opacity:var(--vinyl-contact-opacity);pointer-events:none;transform:translateZ(-1px) rotateY(calc(var(--vinyl-direction) * var(--vinyl-inward-angle) * 1deg)) rotateX(62deg) scaleX(var(--vinyl-contact-scale));transform-origin:50%;transition:transform var(--vinyl-motion-duration) var(--ease-spring),opacity var(--vinyl-motion-duration) var(--ease-spring);border-radius:50%;position:absolute;top:calc(100% - 5px);left:8%;right:8%}.vinyl-room[data-vinyl-interaction=instant] .vinyl-contact-shadow,.vinyl-room[data-vinyl-interaction=instant] .vinyl-object,.vinyl-room[data-vinyl-interaction=instant] .vinyl-trigger,.vinyl-room[data-vinyl-interaction=panning] .vinyl-contact-shadow,.vinyl-room[data-vinyl-interaction=panning] .vinyl-object,.vinyl-room[data-vinyl-interaction=panning] .vinyl-trigger{transition:none}@media (hover:hover) and (pointer:fine){.vinyl-trigger:not([data-active])[data-pointer-owned] .vinyl-object{transform:translateX(calc(var(--vinyl-direction) * 2px)) translateY(-4px)}.vinyl-trigger:not([data-active])[data-pointer-owned] .vinyl-contact-shadow{opacity:calc(var(--vinyl-contact-opacity) * .55);transform:translateZ(-1px) rotateY(calc(var(--vinyl-direction) * var(--vinyl-inward-angle) * 1deg)) rotateX(62deg) scaleX(calc(var(--vinyl-contact-scale) * 1.08))}}.vinyl-trigger:focus-visible{outline:1px solid var(--focus-ring);outline-offset:4px;border-radius:2px}.vinyl-sleeve{z-index:2;aspect-ratio:1;background:var(--paper);box-shadow:0 0 0 var(--border-hairline) #00000017,1px 2px 3px -1px rgb(var(--vinyl-shadow-rgb)/.2),4px 9px 16px -9px rgb(var(--vinyl-shadow-rgb)/.3);backface-visibility:hidden;transform:translateZ(var(--vinyl-depth));display:block;position:relative;overflow:hidden}.vinyl-sleeve:after{content:"";z-index:4;pointer-events:none;background:linear-gradient(118deg,#ffffff1f,#0000 28% 70%,#1910091c);position:absolute;inset:0}.vinyl-spine{z-index:2;width:var(--vinyl-depth);color:var(--vinyl-spine-ink,oklch(28% .012 95));background:var(--vinyl-spine-color,var(--paper));backface-visibility:hidden;transform-style:preserve-3d;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;overflow:hidden;box-shadow:inset 1px 0 #ffffff29,inset -1px 0 #0000002e}.vinyl-spine>span{max-height:calc(100% - 10px);font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;writing-mode:vertical-rl;font-size:4px;line-height:1;overflow:hidden}.vinyl-spine-left{background:linear-gradient(to right,#ffffff29,transparent 45%,#00000029),var(--vinyl-spine-color,var(--paper));transform-origin:0;transform:rotateY(-90deg)}.vinyl-spine-right{background:linear-gradient(to right,#0000003d,transparent 55%,#ffffff14),var(--vinyl-spine-color,var(--paper));transform-origin:100%;left:auto;right:0;transform:rotateY(90deg)}.vinyl-spine-right>span{transform:rotate(180deg)}.vinyl-art{object-fit:cover;width:100%;height:100%;display:block}.vinyl-creases{z-index:2;background-image:var(--vinyl-crease-image);background-position:var(--vinyl-crease-position);background-repeat:no-repeat;background-size:var(--vinyl-crease-size);opacity:.55}.vinyl-creases,.vinyl-paper{pointer-events:none;position:absolute;inset:0}.vinyl-paper{z-index:3;background-image:radial-gradient(circle at var(--vinyl-wear-x) var(--vinyl-wear-y),#462a143d 0 .5px,#462a1414 1px 4%,transparent 9%),linear-gradient(118deg,#ffffff26,transparent 24% 72%,#1e120a1f),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='108' height='108'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.72' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.52 0 0 0 0 0.46 0.06 0.06 0.06 0 -0.03'/%3E%3C/filter%3E%3Crect width='108' height='108' filter='url(%23n)'/%3E%3C/svg%3E");background-position:50%,50%,var(--vinyl-paper-x) var(--vinyl-paper-y);background-repeat:no-repeat,no-repeat,repeat;background-size:100% 100%,100% 100%,var(--vinyl-paper-size) var(--vinyl-paper-size);mix-blend-mode:soft-light;opacity:var(--vinyl-wear-opacity);box-shadow:inset 1px 1px #ffffff38,inset -1px -1px #2d1b0d24}.vinyl-sleeve-raster{letter-spacing:.06em;word-break:break-all;color:var(--paper-ink);font-size:8px;line-height:1.4;position:absolute;inset:-4px}@supports (color:color-mix(in lab,red,red)){.vinyl-sleeve-raster{color:color-mix(in oklab,var(--paper-ink) 42%,transparent)}}.vinyl-sleeve-raster{-webkit-user-select:none;user-select:none}.vinyl-sleeve-type{background:linear-gradient(to top,var(--paper) 45%,transparent);flex-direction:column;justify-content:flex-end;padding:.5rem;display:flex;position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.vinyl-sleeve-type{background:linear-gradient(to top,color-mix(in oklab,var(--paper) 88%,transparent) 45%,transparent)}}.vinyl-sleeve-album{font-size:.75rem;font-weight:var(--font-weight-semibold);color:oklch(28% .012 95);line-height:1.2}.vinyl-sleeve-artist{color:var(--paper-ink);margin-top:2px;font-size:.6875rem}@media (max-width:30rem){.vinyl-shelf{--vinyl-spread:40%}}@media (prefers-reduced-motion:reduce){.vinyl-contact-shadow,.vinyl-object,.vinyl-sleeve,.vinyl-trigger{transition:none}.vinyl-trigger:not([data-active])[data-pointer-owned] .vinyl-object{transform:none}.vinyl-trigger:not([data-active])[data-pointer-owned] .vinyl-contact-shadow{opacity:var(--vinyl-contact-opacity);transform:translateZ(-1px) rotateY(calc(var(--vinyl-direction) * var(--vinyl-inward-angle) * 1deg)) rotateX(62deg) scaleX(var(--vinyl-contact-scale))}}.experience-row{grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:1rem;padding:.625rem 0;display:grid}.experience-details{flex-direction:column;align-items:flex-start;gap:.125rem;min-width:0;display:flex}.experience-company,.experience-role{overflow-wrap:anywhere;min-width:0;max-width:100%}.experience-date{white-space:nowrap}.service-card{gap:.5rem}.service-card[data-starting-style]{transform:scale(.92)translateY(4px)}@media (prefers-reduced-motion:reduce){.link-card,.link-card[data-ending-style],.link-card[data-starting-style],.service-card[data-starting-style]{opacity:1;transition:none;transform:none}}.service-card-glyph{color:var(--muted-foreground);flex-shrink:0;align-self:flex-start;margin-left:auto}.service-card-stat .service-card-glyph{align-self:center}.service-card-head{align-items:center;gap:.625rem;display:flex}.service-card-avatar{object-fit:cover;width:2.5rem;height:2.5rem;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px}.service-card-names{flex-direction:column;line-height:1.3;display:flex}.service-card-name{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground)}.service-card-sub{color:var(--muted-foreground);font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;font-size:.75rem}.service-card-bio{color:var(--foreground);white-space:pre-line;font-size:.875rem;line-height:1.5}.service-card-stat{border-top:var(--border-hairline) solid var(--border);color:var(--muted-foreground);font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:.125rem .25rem;margin-top:.125rem;padding-top:.5rem;font-size:.6875rem;display:flex}.service-card-stat>span{white-space:nowrap}.service-card-stat b{font-weight:var(--font-weight-medium);color:var(--foreground)}.contrib-col,.contrib-grid{gap:2px;display:flex}.contrib-col{flex-direction:column}@keyframes contrib-cell-in{0%{opacity:0;transform:translateY(4px)scale(.92)}}.contrib-grid i{background:var(--foreground);border-radius:2px;width:7px;height:7px}@supports (color:color-mix(in lab,red,red)){.contrib-grid i{background:color-mix(in oklab,var(--foreground) 7%,transparent)}}.contrib-grid i{animation:contrib-cell-in .48s var(--ease-swift) backwards;animation-delay:calc(var(--ci,0) * 2ms)}.link-card.preview-card-instant .contrib-grid i{animation:none}.contrib-grid i[data-level="1"]{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.contrib-grid i[data-level="1"]{background:color-mix(in oklab,var(--foreground) 30%,transparent)}}.contrib-grid i[data-level="2"]{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.contrib-grid i[data-level="2"]{background:color-mix(in oklab,var(--foreground) 52%,transparent)}}.contrib-grid i[data-level="3"]{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.contrib-grid i[data-level="3"]{background:color-mix(in oklab,var(--foreground) 74%,transparent)}}.contrib-grid i[data-level="4"]{background:var(--foreground)}@media (prefers-reduced-motion:reduce){.contrib-grid i{animation:none}}.blog-row{align-items:center;gap:.75rem;padding:.5rem 0;font-size:.9375rem;display:flex}.blog-row-date{letter-spacing:.01em;font-size:.8125rem}.print-pile{isolation:isolate;pointer-events:none;-webkit-user-select:none;user-select:none;flex:none;width:4rem;height:2.75rem;display:block;position:relative}.print-pile-sheet{background:var(--paper);box-shadow:0 0 0 1px var(--paper-ink);border-radius:3px;position:absolute;inset:1px}@supports (color:color-mix(in lab,red,red)){.print-pile-sheet{box-shadow:0 0 0 1px color-mix(in oklab,var(--paper-ink) 22%,transparent)}}.print-pile-sheet:first-child{opacity:.62;transform:translate(-2px,1px)rotate(-1.6deg)}.print-pile-sheet:nth-child(2){opacity:.82;transform:translate(2px,-1px)rotate(1.1deg)}.print-thumb{width:4rem;height:2.75rem;box-shadow:0 0 0 1px var(--border);border-radius:3px;flex-shrink:0;display:block;position:relative;overflow:hidden}.print-thumb-img{object-fit:cover;width:100%;height:100%}.print-thumb-empty{background:var(--muted)}.blog-row-title{min-width:0;color:var(--gray-11,var(--foreground));font-weight:var(--font-weight-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (max-width:39.99rem){.blog-row-title{-webkit-line-clamp:2;line-clamp:2;white-space:normal;text-wrap:balance;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}}.blog-row-leader{background:radial-gradient(circle,var(--muted-foreground) .5px,transparent .5px) 0 0 /6px 1px repeat-x;flex:1;align-self:center;min-width:1.5rem;height:1px}@supports (color:color-mix(in lab,red,red)){.blog-row-leader{background:radial-gradient(circle,color-mix(in oklab,var(--muted-foreground) 41%,transparent) .5px,transparent .5px) 0 0 /6px 1px repeat-x}}.btn-cta{background:var(--foreground);height:2.25rem;color:var(--background);font-size:.875rem;font-weight:var(--font-weight-medium);touch-action:manipulation;border-radius:999px;outline:none;justify-content:center;align-items:center;padding-inline:1.125rem;transition:transform .1s,background-color .15s;display:inline-flex;position:relative}.btn-cta:before{content:"";inset-inline:0;height:2.75rem;position:absolute;top:50%;transform:translateY(-50%)}@media (hover:hover) and (pointer:fine){.btn-cta:hover{background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.btn-cta:hover{background:color-mix(in oklab,var(--foreground) 90%,var(--background))}}}.btn-cta:active{transform:scale(.97)}.btn-cta:focus-visible{box-shadow:0 0 0 2px var(--background),0 0 0 3px var(--focus-ring,var(--foreground))}@media (prefers-reduced-motion:reduce){.btn-cta{transition:none}.btn-cta:active{transform:none}}.post-minimap-root{--post-minimap-width:15rem}.post-minimap-backdrop{display:none}.post-minimap-island{display:contents}.post-minimap{z-index:var(--z-nav);width:var(--post-minimap-width);max-height:calc(100dvh - 9.5rem);color:var(--muted-foreground);opacity:0;visibility:hidden;overscroll-behavior-y:contain;scrollbar-width:none;pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;padding:0 .5rem 1rem 0;transition:opacity .2s;display:flex;position:fixed;top:8rem;left:1.5rem;overflow-y:auto}.post-minimap::-webkit-scrollbar{display:none}.post-minimap-root[data-open] .post-minimap{opacity:1;visibility:visible;pointer-events:auto}@media (min-width:40rem) and (max-width:63.99rem){.post-minimap-backdrop{z-index:90;background:radial-gradient(ellipse 115% 80% at 0 50%,var(--background) 0 58%,transparent 100%);width:19rem;display:block;position:fixed;inset:0 auto 0 0}@supports (color:color-mix(in lab,red,red)){.post-minimap-backdrop{background:radial-gradient(ellipse 115% 80% at 0 50%,color-mix(in oklab,var(--background) 68%,transparent) 0 58%,transparent 100%)}}.post-minimap-backdrop{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s var(--ease-swift),visibility 0s linear .18s;-webkit-mask-image:radial-gradient(115% 80% at 0,#000 0 58%,#0000 100%);mask-image:radial-gradient(115% 80% at 0,#000 0 58%,#0000 100%)}.post-minimap-root[data-open] .post-minimap-backdrop{opacity:1;visibility:visible;transition:opacity .18s var(--ease-swift),visibility 0s}}@media (min-width:64rem){.post-minimap{transition:opacity 1ms linear .279s,visibility 1ms linear .279s}.post-minimap-root[data-open] .post-minimap{transition:opacity .2s var(--ease-swift)}}.post-minimap-nodes{flex-direction:column;gap:.5rem;padding-top:.5rem;display:flex}.post-minimap-clip{display:contents}.post-minimap-phone-surface{display:none}.post-minimap-utilities{z-index:1;flex:none;justify-content:flex-start;align-items:center;gap:.75rem;min-height:2.75rem;padding-right:.5rem;display:flex;position:relative}.post-minimap-utilities-top{margin-bottom:1.25rem}.post-minimap-utilities-bottom{justify-content:flex-end;margin-top:1.25rem}.post-minimap-utility{min-width:2.75rem;min-height:2.75rem;color:var(--muted-foreground);align-items:center;gap:.375rem;display:inline-flex;position:relative}@supports (color:color-mix(in lab,red,red)){.post-minimap-utility{color:color-mix(in oklab,var(--muted-foreground) 82%,transparent)}}.post-minimap-utility{white-space:nowrap;touch-action:manipulation;outline:none;font-size:.8125rem;line-height:1;transition:color .15s,opacity .15s}.post-minimap-utility:after{content:"";border-radius:.375rem;position:absolute;inset:0 -.5rem}.post-minimap-utility:focus-visible:after{outline:1px solid var(--focus-ring);outline-offset:-2px}.post-minimap-back-to-top{opacity:0;visibility:hidden;pointer-events:none;justify-content:flex-end}.post-minimap-back-to-top[data-visible]{opacity:1;visibility:visible;pointer-events:auto}@media (min-width:40rem){.post-minimap-back-to-top,.post-minimap-utilities-bottom{justify-content:flex-start}}.post-minimap-node{opacity:1;flex:none;align-items:center;height:1px;display:flex;transform:none}.post-minimap-root:not([data-open]) .post-minimap-node{opacity:0;transform:translateY(12px)rotate(-2deg)}.post-minimap-node[data-kind=landmark]{align-items:center;height:1px;min-height:0}.post-minimap-node>a{width:100%;min-width:0;height:1px;min-height:0;color:var(--muted-foreground);align-items:flex-start;gap:.5rem;font-size:.875rem;line-height:1rem;display:flex;position:relative}@supports (color:color-mix(in lab,red,red)){.post-minimap-node>a{color:color-mix(in oklab,var(--muted-foreground) 76%,transparent)}}.post-minimap-node>a{outline:none;transition:color .15s}.post-minimap-node>a:after{content:"";border-radius:.375rem;position:absolute;inset:-.875rem 0}.post-minimap-node>a:focus-visible:after{outline:1px solid var(--focus-ring);outline-offset:-2px}.post-minimap-tick{background:var(--muted-foreground);flex:none;width:1.25rem;height:1px;display:block}@supports (color:color-mix(in lab,red,red)){.post-minimap-tick{background:color-mix(in oklab,var(--muted-foreground) 55%,transparent)}}.post-minimap-tick{transform-origin:0;transition:transform .15s,background-color .15s}.post-minimap-node>.post-minimap-tick{opacity:.55}.post-minimap-label{white-space:normal;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;align-self:flex-start;max-width:11rem;height:auto;max-height:2rem;line-height:1rem;transition:transform .15s;display:-webkit-box;position:relative;top:-.5rem;overflow:hidden;transform:translate(0)}.post-minimap-node>a[data-variant=title]{font-weight:var(--font-weight-medium)}.post-minimap-node>a[aria-current=location]{color:var(--foreground)}.post-minimap-node>a[aria-current=location] .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-node>a:focus-visible .post-minimap-label,.post-minimap-node>a[aria-current=location] .post-minimap-label{transform:translate(.5rem)}.post-minimap-node>a:focus-visible{color:var(--foreground)}.post-minimap-node>a:focus-visible .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-toggle{z-index:var(--z-nav);width:2.75rem;height:2.75rem;color:var(--muted-foreground);justify-content:center;align-items:center;transition:color .15s;display:flex;position:fixed;top:4.875rem;left:.625rem}.post-minimap-toggle-icon{width:.75rem;height:.75rem;display:block}.post-minimap-island-chevron,.post-minimap-progress,.post-minimap-toggle-label{display:none}.post-minimap-progress{flex:none;overflow:visible;transform:rotate(-90deg)}.post-minimap-progress-track,.post-minimap-progress-value{fill:none;stroke-width:1.5px;stroke-linecap:round}.post-minimap-progress-track{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.post-minimap-progress-track{stroke:color-mix(in oklab,var(--muted-foreground) 40%,transparent)}}.post-minimap-progress-value{stroke:currentColor}@media (min-width:64rem){.post-minimap-progress{width:1.5rem;height:1.5rem;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}.post-minimap-toggle-icon{z-index:1;position:relative}}.post-minimap-toggle-panel{transform-origin:3.75px 6px;transition:opacity .15s ease,transform .2s var(--ease-swift)}.post-minimap-toggle-chevron{transform-origin:7.5px 6px;transition:transform .2s var(--ease-swift);transform:scaleX(-1)}.post-minimap-root[data-open] .post-minimap-toggle-chevron{transform:scaleX(1)}.post-minimap-root:not([data-open]) .post-minimap-toggle-panel{opacity:.55;transform:scaleY(.72)}@media (hover:hover) and (pointer:fine){.post-minimap-node>a:hover,.post-minimap-toggle:hover,.post-minimap-utility:hover{color:var(--foreground)}.post-minimap-node>a:hover .post-minimap-tick{background:var(--foreground);transform:scaleX(1.6)}.post-minimap-node>a:hover .post-minimap-label{transform:translate(.5rem)}}@media (max-width:39.99rem){.post-minimap-island{top:max(1.5rem,env(safe-area-inset-top));z-index:var(--z-nav);width:min(18.75rem,100vw - 2rem);max-height:calc(100dvh - 7.5rem - env(safe-area-inset-bottom));color:var(--muted-foreground);background:var(--popover);flex-direction:column;display:flex;position:fixed;left:50%;overflow:visible}@supports (color:color-mix(in lab,red,red)){.post-minimap-island{background:color-mix(in oklab,var(--popover) 88%,transparent)}}.post-minimap-island{box-shadow:0 0 0 var(--border-hairline) var(--foreground),0 8px 24px -12px #00000052;border-radius:1.375rem}@supports (color:color-mix(in lab,red,red)){.post-minimap-island{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab,var(--foreground) 12%,transparent),0 8px 24px -12px #00000052}}.post-minimap-island{isolation:isolate;opacity:0;pointer-events:none;transform:translate(-50%,-1rem)scale(.96)}.post-minimap-root[data-island-visible] .post-minimap-island{opacity:1;pointer-events:auto;transform:translate(-50%)scale(1)}.post-minimap{z-index:1;width:100%;max-height:calc(100dvh - 10.25rem - env(safe-area-inset-bottom));box-shadow:0 0 0 var(--border-hairline) var(--foreground),0 16px 40px -18px #0000006b;border-radius:1rem;flex-direction:column;padding:2.75rem 1rem 0;display:flex;position:absolute;top:0;left:0}@supports (color:color-mix(in lab,red,red)){.post-minimap{box-shadow:0 0 0 var(--border-hairline) color-mix(in oklab,var(--foreground) 14%,transparent),0 16px 40px -18px #0000006b}}.post-minimap{opacity:0;visibility:hidden;pointer-events:none;transform-origin:top;transition:visibility 1ms linear .28s;overflow:hidden;transform:translateY(-.75rem)scale(.96)}.post-minimap-root[data-open] .post-minimap{opacity:1;visibility:visible;pointer-events:auto;transition:visibility 1ms linear;transform:none}.post-minimap-phone-surface{z-index:0;background:var(--popover);border-radius:1rem;display:block;position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.post-minimap-phone-surface{background:color-mix(in oklab,var(--popover) 94%,transparent)}}.post-minimap-phone-surface{pointer-events:none}.post-minimap-root:not([data-open]) .post-minimap-node{filter:blur(2px)}.post-minimap-clip{z-index:1;flex:1;min-height:0;display:block;position:relative;overflow:hidden}.post-minimap-root[data-open] .post-minimap-clip{overscroll-behavior-y:contain;scrollbar-width:none;overflow-y:auto}.post-minimap-clip::-webkit-scrollbar{display:none}.post-minimap-nodes{padding-bottom:1rem}.post-minimap-utilities{margin:0;padding-inline:.25rem}.post-minimap-utilities-top{display:none}.post-minimap-utilities-bottom{padding-bottom:.5rem}.post-minimap-toggle{z-index:2;width:100%;height:2.75rem;color:var(--foreground);touch-action:manipulation;flex:none;justify-content:flex-start;gap:.5rem;padding:0 .75rem;position:relative;top:auto;left:auto;transform:none}.post-minimap-toggle-icon{display:none}.post-minimap-progress{width:1.25rem;height:1.25rem;display:block}.post-minimap-toggle-label{min-width:0;font-size:.875rem;font-weight:var(--font-weight-medium);text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;line-height:1rem;display:block;overflow:hidden}.post-minimap-island-chevron{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;transform-origin:50%;width:.75rem;height:.75rem;transition:transform .26s var(--ease-swift);flex:none;display:block}.post-minimap-root[data-open] .post-minimap-island-chevron{transition-duration:.28s;transform:rotate(180deg)}}@media (any-pointer:coarse){.post-minimap-nodes{gap:.625rem;padding-block:1.34375rem}.post-minimap-node>a{touch-action:manipulation}.post-minimap-node>a:after{inset-block:-1.34375rem}}.post-minimap-root[data-scroll-motion=instant] .post-minimap-back-to-top,.post-minimap-root[data-toggle-motion=instant] .post-minimap,.post-minimap-root[data-toggle-motion=instant] .post-minimap-backdrop,.post-minimap-root[data-toggle-motion=instant] .post-minimap-island-chevron,.post-minimap-root[data-toggle-motion=instant] .post-minimap-label,.post-minimap-root[data-toggle-motion=instant] .post-minimap-node>a,.post-minimap-root[data-toggle-motion=instant] .post-minimap-tick,.post-minimap-root[data-toggle-motion=instant] .post-minimap-toggle-chevron,.post-minimap-root[data-toggle-motion=instant] .post-minimap-toggle-panel{transition:none}@media (prefers-reduced-motion:reduce){.post-minimap,.post-minimap-backdrop,.post-minimap-island,.post-minimap-island-chevron,.post-minimap-label,.post-minimap-node>a,.post-minimap-tick,.post-minimap-toggle,.post-minimap-toggle-chevron,.post-minimap-toggle-panel,.post-minimap-utility{transition:none}}.prose h2,.prose h3{scroll-margin-top:4.5rem}.photo-masonry{column-count:2;column-gap:.75rem}@media (min-width:40rem){.photo-masonry{column-count:3}}.photo-item{break-inside:avoid;margin-bottom:.75rem}.photo-frame{border-radius:2px}.photo-masonry-placeholder{background:var(--foreground);border-radius:2px;width:100%;min-height:7rem;display:block}@supports (color:color-mix(in lab,red,red)){.photo-masonry-placeholder{background:color-mix(in oklab,var(--foreground) 7%,var(--background))}}.photo-item .zoom-trigger img,.photo-masonry-placeholder{box-shadow:0 0 0 1px var(--border)}.zoom-overlay-details{--zoom-details-bottom:calc(.75rem + env(safe-area-inset-bottom,0px));inset-inline:0;bottom:var(--zoom-details-bottom);pointer-events:none;position:fixed}.zoom-overlay-details .spec-plate{gap:.375rem .875rem;padding-block:.5rem}.zoom-overlay-details .spec-plate dt{font-size:.625rem}.zoom-overlay-details .spec-plate dd{margin-top:.125rem;font-size:.75rem}.zoom-detail-item{opacity:0;transition:opacity .15s ease calc(var(--detail-index,0) * 15ms),transform .15s var(--ease-swift) calc(var(--detail-index,0) * 15ms);transform:translateY(10px)scale(.97)}.zoom-detail-frame{opacity:0;transition:opacity .15s}.zoom-overlay[data-state=open] .zoom-detail-item{opacity:1;transition:opacity .2s ease calc(.12s + var(--detail-index,0) * 45ms),transform .35s var(--ease-spring) calc(.12s + var(--detail-index,0) * 45ms);transform:none}.zoom-overlay[data-state=open] .zoom-detail-frame{opacity:1;transition:opacity .2s .12s}@media (prefers-reduced-motion:reduce){.zoom-detail-frame,.zoom-detail-item{transition:none;transform:none}}.site-footer{padding-bottom:calc(6.25rem + env(safe-area-inset-bottom,0px))}.footer-tree ul{flex-direction:column;display:flex}.footer-label{font-size:.875rem;font-weight:var(--font-weight-medium);letter-spacing:-.011em;text-transform:uppercase;color:var(--muted-foreground);margin-bottom:.375rem}@supports (color:color-mix(in lab,red,red)){.footer-label{color:color-mix(in oklab,var(--muted-foreground) 75%,transparent)}}.footer-label{-webkit-user-select:none;user-select:none}.footer-tree li{align-items:center;min-height:1.75rem;padding-left:1.125rem;display:flex;position:relative}.footer-tree li:before{content:"";background:var(--muted-foreground);width:1px;position:absolute;top:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.footer-tree li:before{background:color-mix(in oklab,var(--muted-foreground) 22%,transparent)}}.footer-tree li:last-child:before{height:50%;bottom:auto}.footer-tree li:after{content:"";background:var(--muted-foreground);width:.625rem;height:1px;position:absolute;top:50%;left:0}@supports (color:color-mix(in lab,red,red)){.footer-tree li:after{background:color-mix(in oklab,var(--muted-foreground) 22%,transparent)}}.footer-tree li>*{flex:1;min-width:0}@media (max-width:39.99rem){.footer-tree li>*{flex:0 auto}}.footer-tree-link{transition:color .15s}@media (hover:hover) and (pointer:fine){.footer-tree-link:hover{color:var(--foreground)}}.footer-colophon{border-top:var(--border-hairline) solid var(--border);text-align:left;letter-spacing:-.011em;color:var(--muted-foreground);padding-top:1.45rem;font-size:.875rem}@supports (color:color-mix(in lab,red,red)){.footer-colophon{color:color-mix(in oklab,var(--muted-foreground) 85%,transparent)}}.footer-colophon{font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.footer-legal-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.footer-mobile-privacy{min-width:2.75rem;min-height:2.75rem;color:inherit;place-items:center;margin:-.75rem -.6rem -.75rem 0;transition:color .15s;display:grid}.footer-mobile-privacy:focus-visible{color:var(--foreground)}.footer-machine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1.2rem;display:grid}.footer-machine-grid .footer-local-time{justify-self:start}@media (min-width:40rem){.site-footer{padding-bottom:3rem}.footer-mobile-privacy{display:none}.footer-colophon{border-top:0;justify-content:space-between;align-items:flex-start;padding-top:0}.footer-colophon,.footer-machine-grid{flex-direction:column;gap:.625rem;display:flex}.footer-machine-grid{margin-top:0}}.footer-local-time{min-height:1.375rem;color:var(--muted-foreground);align-items:center;gap:.5rem;display:flex}@supports (color:color-mix(in lab,red,red)){.footer-local-time{color:color-mix(in oklab,var(--muted-foreground) 88%,transparent)}}.footer-local-time{font-variant-numeric:tabular-nums;letter-spacing:-.011em;text-align:left;font-size:.875rem;line-height:1}.footer-local-clock{fill:none;stroke:currentColor;flex:none;width:1.375rem;height:1.375rem;overflow:visible}.footer-clock-ring,.footer-clock-ticks{opacity:.28;stroke-width:1px}.footer-clock-hour,.footer-clock-minute,.footer-clock-second,.footer-clock-ticks{stroke-linecap:round}.footer-clock-hour{opacity:.78;stroke-width:1.6px}.footer-clock-minute{opacity:.72;stroke-width:1.2px}.footer-clock-second{opacity:.42;stroke-width:.75px}.footer-clock-pin{fill:currentColor;stroke:none}.footer-time-readout{flex-direction:column;gap:.125rem;display:flex}.footer-time-readout>span{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.footer-time-readout>span{color:color-mix(in oklab,var(--muted-foreground) 72%,transparent)}}.footer-time-readout>span{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.08em;font-size:.75rem}.footer-time-readout time{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.footer-time-readout time{color:color-mix(in oklab,var(--muted-foreground) 90%,transparent)}}.footer-time-readout time{font-family:var(--font-geist-mono),ui-monospace,monospace;letter-spacing:.02em;white-space:nowrap;min-width:8ch;font-size:.75rem;display:block}.dock{z-index:var(--z-nav);background:var(--background);border-radius:999px;align-items:center;gap:.25rem;height:3.5rem;padding:.375rem;display:flex;position:fixed;bottom:1.25rem;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.dock{background:color-mix(in oklab,var(--background) 68%,transparent)}}.dock{box-shadow:0 0 0 1px var(--border),var(--shadow-medium)}@media (max-width:39.99rem){.dock{bottom:max(.5rem,env(safe-area-inset-bottom,0px))}}.liquid-glass{border-radius:inherit;pointer-events:none;background:var(--background);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.liquid-glass{background:color-mix(in oklab,var(--background) 32%,transparent)}}.liquid-glass{box-shadow:inset 0 1px #ffffff47,inset 0 -1px #ffffff14}.dock-item{width:2.75rem;height:2.75rem;color:var(--muted-foreground);border-radius:999px;place-items:center;transition:color .15s,background-color .15s;display:grid;position:relative}@media (hover:hover) and (pointer:fine){.dock-item:hover{color:var(--foreground);background:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.dock-item:hover{background:color-mix(in oklab,var(--foreground) 6%,transparent)}}}.dock-item:active{transform:scale(.97)}.dock-item[data-active]{color:var(--foreground)}.dock-active-indicator{--dock-indicator-x:0px;z-index:1;background:var(--foreground);opacity:0;pointer-events:none;width:4px;height:4px;transform:translate3d(calc(var(--dock-indicator-x) - 50%),0,0);transition:transform .22s var(--ease-swift),opacity .12s ease;will-change:transform;border-radius:999px;position:absolute;bottom:8px;left:0}.dock-active-indicator[data-ready]{opacity:1}.dock-active-indicator[data-instant]{transition:none}.dock-avatar{width:1.625rem;height:1.625rem;box-shadow:inset 0 0 0 1px var(--border);border-radius:999px;display:block;overflow:hidden}.dock-avatar img{object-fit:cover;width:100%;height:100%}.dock-rule{background:var(--foreground);width:1px;height:1.125rem;margin:0 .125rem;position:relative}@supports (color:color-mix(in lab,red,red)){.dock-rule{background:color-mix(in oklab,var(--foreground) 16%,transparent)}}.dock-tip{border-radius:calc(var(--radius) * .6);background:var(--popover);box-shadow:0 0 0 1px var(--border),var(--shadow-tooltip);white-space:nowrap;color:var(--foreground);opacity:0;pointer-events:none;transition:opacity .15s var(--ease-swift),transform .15s var(--ease-swift);align-items:center;gap:.375rem;padding:.25rem .375rem .25rem .5rem;font-size:.875rem;display:inline-flex;position:absolute;bottom:calc(100% + .625rem);left:50%;transform:translate(-50%)scale(.95)}.dock-tip-label{min-width:0}.dock-tip-keys{gap:.1875rem}.dock-tip-key,.dock-tip-keys{align-items:center;display:inline-flex}.dock-tip-key{border:1px solid var(--foreground);justify-content:center;min-width:1.125rem;height:1.125rem;padding:0 .25rem}@supports (color:color-mix(in lab,red,red)){.dock-tip-key{border:1px solid color-mix(in oklab,var(--foreground) 18%,transparent)}}.dock-tip-key{background:var(--border);color:var(--muted-foreground);font-variant-numeric:tabular-nums;border-radius:.25rem;font-family:inherit;font-size:.6875rem;font-weight:500;line-height:1}@media (hover:hover) and (pointer:fine){.dock-item:hover .dock-tip{opacity:1;transform:translate(-50%)scale(1)}}.dock-item:focus-visible .dock-tip{opacity:1;transform:translate(-50%)scale(1)}@media (prefers-reduced-motion:reduce){.dock-active-indicator,.dock-item,.dock-tip{transition:none}}.prefs-panel{flex-direction:column;gap:.25rem;padding:.5rem;display:flex}.prefs-row{justify-content:space-between;align-items:center;gap:1.25rem;display:flex}.prefs-row-label{color:var(--muted-foreground);-webkit-user-select:none;user-select:none;font-size:.875rem}.prefs-panel [data-tabs-indicator=selected]{display:none}@media (hover:hover) and (pointer:fine){.prefs-panel [role=tab]{min-width:2.5rem;height:2rem}}.prefs-panel [role=tab][aria-selected=true]{background:var(--foreground);border-radius:999px}.prefs-panel [role=tab][aria-selected=true] [data-tab-label],.prefs-panel [role=tab][aria-selected=true] svg{color:var(--background)!important}.nav-cards{border-top:var(--border-hairline) solid var(--border);border-bottom:var(--border-hairline) solid var(--border);grid-template-columns:repeat(3,1fr);margin-top:3.5rem;margin-left:-1.5rem;margin-right:-1.5rem;display:grid}.nav-card{flex-direction:column;align-items:center;gap:.25rem;padding:1.5rem .75rem 1.25rem;display:flex}.nav-card+.nav-card{border-left:var(--border-hairline) solid var(--border)}.nav-card:active{transform:scale(.985)}.nc-vignette{place-items:center;width:100%;height:3.5rem;margin-bottom:.375rem;display:grid;position:relative}.nc-sheets span{width:2.375rem;height:2.875rem;transition:transform .3s var(--ease-spring);background:repeating-linear-gradient(to bottom,transparent 0 7px,var(--paper-ink) 7px 7.5px) 50% 60% /70% 60% no-repeat,var(--paper);position:absolute}@supports (color:color-mix(in lab,red,red)){.nc-sheets span{background:repeating-linear-gradient(to bottom,transparent 0 7px,color-mix(in oklab,var(--paper-ink) 35%,transparent) 7px 7.5px) 50% 60% /70% 60% no-repeat,var(--paper)}}.nc-sheets span{box-shadow:0 0 0 1px #00000014,0 1px 2px #0000001f}.nc-sheets span:first-child{transform:rotate(-7deg)translate(-9px)}.nc-sheets span:nth-child(2){transform:rotate(4deg)translate(9px)}.nc-sheets span:nth-child(3){transform:rotate(-1deg)translateY(-2px)}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-sheets span:first-child{transform:rotate(-13deg)translate(-16px)translateY(-2px)}.nav-card:hover .nc-sheets span:nth-child(2){transform:rotate(9deg)translate(16px)translateY(-1px)}.nav-card:hover .nc-sheets span:nth-child(3){transform:rotate(-2deg)translateY(-5px)}}.nc-polaroid{background:var(--paper);transform:rotate(calc(var(--i) * 9deg - 9deg)) translateX(calc(var(--i) * 16px - 16px));transition:transform .3s var(--ease-spring);padding:3px 3px 8px;position:absolute;box-shadow:0 0 0 1px #00000014,0 1px 3px #00000026}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-polaroid{transform:rotate(calc(var(--i) * 15deg - 15deg)) translateX(calc(var(--i) * 24px - 24px)) translateY(calc((1 - var(--i)) * (1 - var(--i)) * 2px - 3px))}}.nc-polaroid img{object-fit:cover;width:2.25rem;height:1.875rem;display:block}.nc-polaroid-placeholder:before{background:var(--foreground);width:2.25rem;height:1.875rem;display:block}@supports (color:color-mix(in lab,red,red)){.nc-polaroid-placeholder:before{background:color-mix(in oklab,var(--foreground) 8%,var(--paper))}}.nc-polaroid-placeholder:before{content:""}.nc-project-icon{isolation:isolate;border:var(--border-hairline) solid var(--foreground);width:3.25rem;height:3.25rem;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab,red,red)){.nc-project-icon{border:var(--border-hairline) solid color-mix(in oklab,var(--foreground) 20%,var(--border))}}.nc-project-icon{background:var(--foreground);border-radius:.75rem}@supports (color:color-mix(in lab,red,red)){.nc-project-icon{background:color-mix(in oklab,var(--foreground) 4%,var(--background))}}.nc-project-icon{box-shadow:var(--shadow-3);transition:transform .3s var(--ease-spring)}@media (max-width:39.99rem){.nav-card{gap:.125rem;min-width:0;padding:1.25rem .375rem 1rem}.nc-vignette{min-width:0;max-width:100%;height:3.25rem;margin-bottom:.25rem}}.nc-construction-guides{z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.nc-guide-solid{stroke:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.nc-guide-solid{stroke:color-mix(in oklab,var(--foreground) 25%,transparent)}}.nc-guide-solid{stroke-width:.65px;vector-effect:non-scaling-stroke}.nc-project-mark{z-index:2;width:30px;height:30px;color:var(--foreground);position:absolute;top:50%;left:50%}@supports (color:color-mix(in lab,red,red)){.nc-project-mark{color:color-mix(in oklab,var(--foreground) 84%,var(--muted-foreground))}}.nc-project-mark{overflow:visible;transform:translate(-50%,-50%)}.nc-explode-a,.nc-explode-b,.nc-explode-c{transform-box:fill-box;transform-origin:50%;transition:transform .3s var(--ease-spring)}@media (hover:hover) and (pointer:fine){.nav-card:hover .nc-project-icon{transform:translate(-50%,calc(-50% - 2px))}.nav-card:hover .nc-explode-a{transform:translate(1.5px,-1.5px)rotate(3deg)}.nav-card:hover .nc-explode-b{transform:translate(-2.5px,-2px)rotate(-6deg)}.nav-card:hover .nc-explode-c{transform:translate(2px,2.5px)rotate(5deg)}}.nc-label{font-size:.875rem;font-weight:var(--font-weight-medium);color:var(--foreground)}.nc-sub{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.875rem}@media (max-width:39.99rem){.nc-label{font-size:.8125rem;line-height:1.25}.nc-sub{white-space:nowrap;font-size:.75rem;line-height:1.25}}@media (prefers-reduced-motion:reduce){.nc-explode-a,.nc-explode-b,.nc-explode-c,.nc-polaroid,.nc-project-icon,.nc-sheets span{transition:none}.nav-card:hover .nc-project-icon{transform:translate(-50%,-50%)}*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.dialog-glass{background:var(--surface-5)}@supports (color:color-mix(in lab,red,red)){.dialog-glass{background:color-mix(in oklab,var(--surface-5) 82%,transparent)}}.dialog-glass{-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dialog-glass{background:var(--surface-5)}}.section-tag-hatch:first-child{border-left:var(--border-hairline) solid var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.section-tag-hatch:first-child{border-left:var(--border-hairline) solid color-mix(in oklab,var(--muted-foreground) 45%,transparent)}}@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-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes scroll-fade-reveal-t{0%{--scroll-fade-t:0px}to{--scroll-fade-t:var(--_scroll-fade-size-t,var(--scroll-fade-size,min(12%,calc(var(--spacing) * 10))))}}@keyframes scroll-fade-reveal-b{0%{--scroll-fade-b:var(--_scroll-fade-size-b,var(--scroll-fade-size,min(12%,calc(var(--spacing) * 10))))}to{--scroll-fade-b:0px}}