/*! 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)))){*,:before,:after,::backdrop{--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-space-x-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-outline-style:solid;--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-duration:initial;--tw-ease:initial;--tw-content:"";--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}}}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme{:root,:host{--font-sans:"Archivo Variable", ui-sans-serif, system-ui, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, monospace;--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-2xl:42rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--text-8xl:6rem;--text-8xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Archivo Variable", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:"Geist Mono Variable", ui-monospace, monospace;--color-background:var(--background);--color-foreground:var(--foreground);--color-border:var(--border)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--color-border)}body{background-color:var(--color-background);color:var(--color-foreground)}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.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;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.-top-12{top:calc(var(--spacing) * -12)}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.-right-12{right:calc(var(--spacing) * -12)}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.-bottom-12{bottom:calc(var(--spacing) * -12)}.bottom-0{bottom:0}.-left-12{left:calc(var(--spacing) * -12)}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.z-\[1\]{z-index:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-auto{margin-inline:auto}.my-1{margin-block:var(--spacing)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.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-20{margin-top:calc(var(--spacing) * 20)}.mt-24{margin-top:calc(var(--spacing) * 24)}.mt-auto{margin-top:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:var(--spacing)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-7{margin-bottom:calc(var(--spacing) * 7)}.mb-16{margin-bottom:calc(var(--spacing) * 16)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.size-\(--cell-size\){width:var(--cell-size);height:var(--cell-size)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-\(--cell-size\){height:var(--cell-size)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.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-10{height:calc(var(--spacing) * 10)}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-context-menu-content-available-height\){max-height:var(--radix-context-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-\[300px\]{max-height:300px}.max-h-\[var\(--radix-dropdown-menu-content-available-height\)\]{max-height:var(--radix-dropdown-menu-content-available-height)}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.w-\(--cell-size\){width:var(--cell-size)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.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-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[1px\]{width:1px}.w-\[100px\]{width:100px}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.max-w-md{max-width:var(--container-md)}.max-w-sm{max-width:var(--container-sm)}.max-w-xl{max-width:var(--container-xl)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:0}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-10{min-width:calc(var(--spacing) * 10)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-context-menu-content-transform-origin\){transform-origin:var(--radix-context-menu-content-transform-origin)}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-menubar-content-transform-origin\){transform-origin:var(--radix-menubar-content-transform-origin)}.origin-\(--radix-popover-content-transform-origin\){transform-origin:var(--radix-popover-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.animate-caret-blink{animation:1.25s ease-out infinite caret-blink}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-pulse{animation:var(--animate-pulse)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-x-10{column-gap:calc(var(--spacing) * 10)}:where(.space-x-1>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(var(--spacing) * var(--tw-space-x-reverse));margin-inline-end:calc(var(--spacing) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.gap-y-5{row-gap:calc(var(--spacing) * 5)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-l-md{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.rounded-r-md{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.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-input{border-color:var(--input)}.border-primary,.border-primary\/50{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.border-primary\/50{border-color:color-mix(in oklab, var(--primary) 50%, transparent)}}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-accent{background-color:var(--accent)}.bg-background{background-color:var(--background)}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab, red, red)){.bg-black\/80{background-color:color-mix(in oklab, var(--color-black) 80%, transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-destructive{background-color:var(--destructive)}.bg-foreground{background-color:var(--foreground)}.bg-muted,.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-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/20{background-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.fill-primary{fill:var(--primary)}.p-0{padding:0}.p-1{padding:var(--spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[1px\]{padding:1px}.px-\(--cell-size\){padding-inline:var(--cell-size)}.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-4{padding-inline:calc(var(--spacing) * 4)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.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-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-14{padding-top:calc(var(--spacing) * 14)}.pr-1{padding-right:var(--spacing)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-2\.5{padding-right:calc(var(--spacing) * 2.5)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-20{padding-bottom:calc(var(--spacing) * 20)}.pb-28{padding-bottom:calc(var(--spacing) * 28)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:Geist Mono Variable,ui-monospace,monospace}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.whitespace-nowrap{white-space:nowrap}.text-accent-foreground{color:var(--accent-foreground)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground,.text-foreground\/80{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/80{color:color-mix(in oklab, var(--foreground) 80%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.uppercase{text-transform:uppercase}.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}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);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);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(0px + 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)}.ring-1{--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)}.ring-ring{--tw-ring-color:var(--ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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, )}.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, )}.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-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-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[--cell-size\:2rem\]{--cell-size:2rem}.paused{animation-play-state:paused}.running{animation-play-state:running}@media (hover:hover){.group-hover\:text-foreground:is(:where(.group):hover *){color:var(--foreground)}}.group-data-\[focused\=true\]\/day\:relative:is(:where(.group\/day)[data-focused=true] *){position:relative}.group-data-\[focused\=true\]\/day\:z-10:is(:where(.group\/day)[data-focused=true] *){z-index:10}.group-data-\[focused\=true\]\/day\:border-ring:is(:where(.group\/day)[data-focused=true] *){border-color:var(--ring)}.group-data-\[focused\=true\]\/day\:ring-\[3px\]:is(:where(.group\/day)[data-focused=true] *){--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(3px + 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)}.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.group-data-\[focused\=true\]\/day\:ring-ring\/50:is(:where(.group\/day)[data-focused=true] *){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-\[\.toast\]\:bg-muted:is(:where(.group).toast *){background-color:var(--muted)}.group-\[\.toast\]\:bg-primary:is(:where(.group).toast *){background-color:var(--primary)}.group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *){color:var(--muted-foreground)}.group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *){color:var(--primary-foreground)}.group-\[\.toaster\]\:border-border:is(:where(.group).toaster *){border-color:var(--border)}.group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *){background-color:var(--background)}.group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *){color:var(--foreground)}.group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *){--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:var(--spacing)}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}@media (hover:hover){.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-1:focus{--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\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(2px + 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\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.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-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(2px + 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-ring:focus-visible{--tw-ring-color:var(--ring)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset, ) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color:var(--background)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-focus\:border-ring:has(:focus){border-color:var(--ring)}.has-focus\:ring-\[3px\]:has(:focus){--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(3px + 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)}.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.has-focus\:ring-ring\/50:has(:focus){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x:calc(52*var(--spacing))}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x:calc(52*var(--spacing))}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x:calc(52*var(--spacing)*-1)}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity:0}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-]{--tw-exit-opacity:0}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:var(--spacing)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[range-end\=true\]\:rounded-md[data-range-end=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-end\=true\]\:bg-primary[data-range-end=true]{background-color:var(--primary)}.data-\[range-end\=true\]\:text-primary-foreground[data-range-end=true]{color:var(--primary-foreground)}.data-\[range-middle\=true\]\:rounded-none[data-range-middle=true]{border-radius:0}.data-\[range-middle\=true\]\:bg-accent[data-range-middle=true]{background-color:var(--accent)}.data-\[range-middle\=true\]\:text-accent-foreground[data-range-middle=true]{color:var(--accent-foreground)}.data-\[range-start\=true\]\:rounded-md[data-range-start=true]{border-radius:calc(var(--radius) - 2px)}.data-\[range-start\=true\]\:bg-primary[data-range-start=true]{background-color:var(--primary)}.data-\[range-start\=true\]\:text-primary-foreground[data-range-start=true]{color:var(--primary-foreground)}.data-\[selected-single\=true\]\:bg-primary[data-selected-single=true]{background-color:var(--primary)}.data-\[selected-single\=true\]\:text-primary-foreground[data-selected-single=true]{color:var(--primary-foreground)}.data-\[selected\=true\]\:rounded-none[data-selected=true]{border-radius:0}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.data-\[state\=active\]\:shadow[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:duration-300[data-state=closed]{--tw-duration:.3s;transition-duration:.3s}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y:100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x:-100%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed]{--tw-exit-translate-x:100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y:-100%}.data-\[state\=hidden\]\:animate-out[data-state=hidden]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity:0}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:color-mix(in oklab, var(--accent) 50%, transparent)}}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:duration-500[data-state=open]{--tw-duration:.5s;transition-duration:.5s}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale:.9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y:100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x:-100%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x:100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y:-100%}@media (hover:hover){.data-\[state\=open\]\:hover\:bg-accent[data-state=open]:hover{background-color:var(--accent)}}.data-\[state\=open\]\:focus\:bg-accent[data-state=open]:focus{background-color:var(--accent)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[state\=visible\]\:animate-in[data-state=visible]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity:0}@media (width>=40rem){.sm\:mt-0{margin-top:0}.sm\:block{display:block}.sm\:grid{display:grid}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:calc(var(--spacing) * 2.5)}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.sm\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}}@media (width>=48rem){.md\:absolute{position:absolute}.md\:mt-12{margin-top:calc(var(--spacing) * 12)}.md\:mt-14{margin-top:calc(var(--spacing) * 14)}.md\:mt-24{margin-top:calc(var(--spacing) * 24)}.md\:mt-28{margin-top:calc(var(--spacing) * 28)}.md\:mr-12{margin-right:calc(var(--spacing) * 12)}.md\:mb-24{margin-bottom:calc(var(--spacing) * 24)}.md\:ml-auto{margin-left:auto}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:grid-cols-\[1fr_1fr\]{grid-template-columns:1fr 1fr}.md\:grid-cols-\[120px_minmax\(0\,1fr\)_160px_48px\]{grid-template-columns:120px minmax(0,1fr) 160px 48px}.md\:grid-cols-\[120px_minmax\(0\,1fr\)_minmax\(0\,1\.2fr\)\]{grid-template-columns:120px minmax(0,1fr) minmax(0,1.2fr)}.md\:flex-row{flex-direction:row}.md\:items-baseline{align-items:baseline}.md\:gap-10{gap:calc(var(--spacing) * 10)}:where(.md\:space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.md\:py-10{padding-block:calc(var(--spacing) * 10)}.md\:py-14{padding-block:calc(var(--spacing) * 14)}.md\:pt-20{padding-top:calc(var(--spacing) * 20)}.md\:pb-32{padding-bottom:calc(var(--spacing) * 32)}.md\:pb-40{padding-bottom:calc(var(--spacing) * 40)}.md\:pb-44{padding-bottom:calc(var(--spacing) * 44)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-8xl{font-size:var(--text-8xl);line-height:var(--tw-leading,var(--text-8xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media (width>=64rem){.lg\:text-\[40px\]{font-size:40px}}.dark\:border-destructive:is(.dark *){border-color:var(--destructive)}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing) * 5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing) * 12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing) * 3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing) * 5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing) * 5)}.\[\&_p\]\:leading-relaxed p{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:first-child\[data-selected\=true\]_button\]\:rounded-l-md:first-child[data-selected=true] button{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}:is(.rtl\:\*\*\:\[\.rdp-button\\_next\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_next>svg),:is(.rtl\:\*\*\:\[\.rdp-button\\_previous\>svg\]\:rotate-180:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *) *):is(.rdp-button_previous>svg){rotate:180deg}.\[\&\:last-child\[data-selected\=true\]_button\]\:rounded-r-md:last-child[data-selected=true] button{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\>span\]\:text-xs>span{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&\>span\]\:opacity-70>span{opacity:.7}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:top-4>svg{top:calc(var(--spacing) * 4)}.\[\&\>svg\]\:left-4>svg{left:calc(var(--spacing) * 4)}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:h-3\.5>svg{height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:w-3\.5>svg{width:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:var(--destructive)}.\[\&\>svg\]\:text-foreground>svg{color:var(--foreground)}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y:-3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:calc(var(--spacing) * 7)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{rotate:180deg}[data-slot=card-content] .\[\[data-slot\=card-content\]_\&\]\:bg-transparent,[data-slot=popover-content] .\[\[data-slot\=popover-content\]_\&\]\:bg-transparent{background-color:#0000}}@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}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(12.9% .042 264.695);--card:oklch(100% 0 0);--card-foreground:oklch(12.9% .042 264.695);--popover:oklch(100% 0 0);--popover-foreground:oklch(12.9% .042 264.695);--primary:oklch(20.8% .042 265.755);--primary-foreground:oklch(98.4% .003 247.858);--secondary:oklch(96.8% .007 247.896);--secondary-foreground:oklch(20.8% .042 265.755);--muted:oklch(96.8% .007 247.896);--muted-foreground:oklch(55.4% .046 257.417);--accent:oklch(96.8% .007 247.896);--accent-foreground:oklch(20.8% .042 265.755);--destructive:oklch(57.7% .245 27.325);--destructive-foreground:oklch(98.4% .003 247.858);--border:oklch(92.9% .013 255.508);--input:oklch(92.9% .013 255.508);--ring:oklch(70.4% .04 256.788);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.4% .003 247.858);--sidebar-foreground:oklch(12.9% .042 264.695);--sidebar-primary:oklch(20.8% .042 265.755);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(96.8% .007 247.896);--sidebar-accent-foreground:oklch(20.8% .042 265.755);--sidebar-border:oklch(92.9% .013 255.508);--sidebar-ring:oklch(70.4% .04 256.788)}.dark{--background:oklch(12.9% .042 264.695);--foreground:oklch(98.4% .003 247.858);--card:oklch(20.8% .042 265.755);--card-foreground:oklch(98.4% .003 247.858);--popover:oklch(20.8% .042 265.755);--popover-foreground:oklch(98.4% .003 247.858);--primary:oklch(92.9% .013 255.508);--primary-foreground:oklch(20.8% .042 265.755);--secondary:oklch(27.9% .041 260.031);--secondary-foreground:oklch(98.4% .003 247.858);--muted:oklch(27.9% .041 260.031);--muted-foreground:oklch(70.4% .04 256.788);--accent:oklch(27.9% .041 260.031);--accent-foreground:oklch(98.4% .003 247.858);--destructive:oklch(70.4% .191 22.216);--destructive-foreground:oklch(98.4% .003 247.858);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.1% .027 264.364);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.8% .042 265.755);--sidebar-foreground:oklch(98.4% .003 247.858);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.4% .003 247.858);--sidebar-accent:oklch(27.9% .041 260.031);--sidebar-accent-foreground:oklch(98.4% .003 247.858);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.1% .027 264.364)}:root,.dark{--background:oklch(0% 0 0);--foreground:oklch(100% 0 0);--card:oklch(12% 0 0);--card-foreground:oklch(100% 0 0);--primary:oklch(100% 0 0);--primary-foreground:oklch(0% 0 0);--secondary:oklch(19% 0 0);--secondary-foreground:oklch(100% 0 0);--muted:oklch(19% 0 0);--muted-foreground:oklch(67% 0 0);--accent:oklch(19% 0 0);--accent-foreground:oklch(100% 0 0);--accent-brand:oklch(100% 0 0);--border:oklch(30% 0 0);--ring:oklch(80% 0 0);--diagram-line:oklch(42% 0 0);--diagram-surface:oklch(16% 0 0)}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:oklch(97% 0 0);--foreground:oklch(13% 0 0);--card:oklch(93% 0 0);--card-foreground:oklch(13% 0 0);--popover:oklch(97% 0 0);--popover-foreground:oklch(13% 0 0);--primary:oklch(13% 0 0);--primary-foreground:oklch(97% 0 0);--secondary:oklch(90% 0 0);--secondary-foreground:oklch(13% 0 0);--muted:oklch(90% 0 0);--muted-foreground:oklch(46% 0 0);--accent:oklch(90% 0 0);--accent-foreground:oklch(13% 0 0);--accent-brand:oklch(13% 0 0);--border:oklch(82% 0 0);--input:oklch(82% 0 0);--ring:oklch(30% 0 0);--diagram-line:oklch(68% 0 0);--diagram-surface:oklch(94% 0 0)}html{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background-color:var(--background);font-family:var(--font-sans)}html{scroll-behavior:smooth;scroll-padding-top:32px}::selection{background:var(--foreground);color:var(--background)}:root{--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--dur-1:.16s;--dur-2:.36s;--dur-3:.62s;--dur-4:.9s}.page-gutter{padding-inline:48px}.eyebrow{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:12px;line-height:1.5}.lead{font-size:26px;line-height:1.45}.page-grid{gap:40px;display:grid}@media (width>=768px){.page-grid{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}.grid-aside{grid-column:1/span 4}.grid-main{grid-column:5/-1}.grid-aside-wide{grid-column:1/span 6}.grid-main-narrow{grid-column:7/-1}.grid-sticky{align-self:start;position:sticky;top:96px}}.home-figures{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.home-figure{border-left:1px solid var(--border);padding:40px 24px 36px}.home-figure:first-child{border-left:0;padding-left:0}.home-logo{padding-inline:24px}.home-logo:first-child{padding-left:0}.home-logo-name{color:#0000;background:linear-gradient(var(--brand), var(--brand)) 0 0 / 0% 100% no-repeat, linear-gradient(var(--foreground), var(--foreground));transition:background-size var(--dur-4) var(--ease-out-expo);-webkit-background-clip:text;background-clip:text}.home-logo:hover .home-logo-name{background-size:100% 100%,auto}.home-logo{transition:opacity var(--dur-3) var(--ease-out-expo)}.home-figures:has(.home-logo:hover) .home-logo:not(:hover){opacity:.25}@media (prefers-reduced-motion:reduce){.home-logo,.home-logo-name{transition:none}}.display-title{letter-spacing:0;font-size:clamp(40px,10.8vw,184px);font-weight:900;line-height:.83}.section-title{letter-spacing:0;font-size:clamp(40px,6.1vw,96px);font-weight:900;line-height:.92}.hero{height:min(860px,90svh);min-height:730px}.hero-title{z-index:1;pointer-events:none;position:relative}.intro-line-mask{margin-block:-.08em;padding-block:.08em;display:block;overflow:clip}.hero-cinematic-host{top:calc(-1 * var(--film-top,0px));z-index:0;pointer-events:none;height:100svh;clip-path:inset(var(--film-top,0px) 0 max(0px, calc(100svh - var(--film-top,0px) - var(--hero-h,100svh))) 0);position:absolute;left:0;right:0}html:not([data-film]) .hero-cinematic-host{transition:clip-path .9s var(--ease-out-expo)}html[data-film]{animation:0s 16s forwards film-failsafe;overflow:hidden}html[data-film] .hero-cinematic-host{z-index:60;clip-path:inset(0)}@keyframes film-failsafe{to{overflow:visible}}.hero-cinematic{position:absolute;inset:0}.hero-cinematic canvas{opacity:1;transition:opacity var(--dur-4) var(--ease-out-expo);animation:preloader-in var(--dur-4) ease-out backwards}.hero-cinematic[data-done] canvas{opacity:.45}.hero-cinematic-hud{right:48px;top:calc(var(--film-top,0px) + 24px);color:var(--muted-foreground);justify-content:flex-end;align-items:baseline;gap:24px;display:flex;position:absolute}.hero-cinematic-caption span{white-space:pre;animation:caption-char var(--dur-2) var(--ease-out-expo) both;display:inline-block}@keyframes caption-char{0%{opacity:0;transform:translateY(4px)}}.hero-cinematic-timecode{font-variant-numeric:tabular-nums}.hero-cinematic-labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-cinematic-label{transform-origin:0 0;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);white-space:nowrap;opacity:0;will-change:transform, opacity;gap:6px;margin-left:-24px;font-size:11px;display:flex;position:absolute;top:0;left:0}.hero-cinematic-code{color:var(--foreground)}@media (width<=639px){.hero-cinematic-hud{right:20px;top:calc(var(--film-top,0px) + 12px)}.hero-cinematic-label{display:none}}.editorial-link{border-radius:0;height:auto;padding:0;font-weight:400}.editorial-link[aria-current=page]{color:var(--foreground)}.editorial-link:hover{color:var(--foreground);background-color:#0000}@media (hover:hover){.editorial-link{transition:background-size var(--dur-2) var(--ease-out-expo), color var(--dur-1) ease-out;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;text-decoration:none}.editorial-link:hover,.editorial-link:focus-visible,.editorial-link[aria-current=page]:not(.brand-link){background-size:100% 1px;text-decoration:none}}.work-index{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:start;gap:56px;display:grid}.work-row{isolation:isolate;border-top:1px solid var(--border);transition:color var(--dur-2) var(--ease-out-expo);position:relative}.work-row:before{content:"";z-index:-1;background:var(--foreground);clip-path:inset(0 100% 0 0);transition:clip-path var(--dur-2) var(--ease-out-expo);position:absolute;inset:0}.work-row[data-active]:before{clip-path:inset(0)}.work-row-line{grid-template-columns:56px minmax(0,1fr) 120px;align-items:baseline;gap:16px;padding:22px 16px;display:grid;position:relative}@media (width>=1280px){.work-row-line{grid-template-columns:56px minmax(0,1fr) 170px}}@media (width>=1024px) and (width<=1279px){.work-row-line{grid-template-columns:56px minmax(0,1fr)}.work-row-line>:last-child{text-align:left;grid-column:2}}.work-row-title{transition:font-stretch var(--dur-2) var(--ease-out-expo);font-size:48px;font-weight:900;line-height:1}.work-row[data-active] .work-row-title{font-stretch:112%}.work-row-trigger{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.work-row-trigger:after{content:"";position:absolute;inset:0}.work-row-trigger:focus-visible{outline:none}.work-row:has(.work-row-trigger:focus-visible){outline:1px solid var(--ring);outline-offset:-1px}.work-row-muted{color:var(--muted-foreground);transition:color var(--dur-2) var(--ease-out-expo)}.work-row[data-active],.work-row[data-active] .work-row-muted{color:var(--background)}@supports (color:color-mix(in lab, red, red)){.work-row[data-active] .work-row-muted{color:color-mix(in oklch, var(--background) 60%, var(--foreground))}}.work-row-inline{display:none}.contact-row{border-top:1px solid var(--border);transition:background-color var(--dur-2) var(--ease-out-expo), color var(--dur-2) var(--ease-out-expo)}.contact-link{grid-template-columns:minmax(0,1fr) auto 64px;align-items:center;gap:24px;padding:24px 16px;display:grid}.contact-label{font-size:88px;font-weight:900;line-height:1}.contact-arrow{width:56px;height:56px;transition:transform var(--dur-2) var(--ease-out-expo);justify-self:end}.contact-muted{color:var(--muted-foreground);transition:color var(--dur-2) var(--ease-out-expo)}.contact-row:hover{background:var(--foreground);color:var(--background)}.contact-row:has(a:focus-visible){background:var(--foreground);color:var(--background)}.contact-row:hover .contact-muted{color:var(--background)}.contact-row:has(a:focus-visible) .contact-muted{color:var(--background)}@supports (color:color-mix(in lab, red, red)){.contact-row:hover .contact-muted{color:color-mix(in oklch, var(--background) 60%, var(--foreground))}.contact-row:has(a:focus-visible) .contact-muted{color:color-mix(in oklch, var(--background) 60%, var(--foreground))}}.contact-row:hover .contact-arrow{transform:translate(4px,-4px)}.contact-link:focus-visible{outline:none}.note-row{border-top:1px solid var(--border);transition:background-color var(--dur-2) var(--ease-out-expo), color var(--dur-2) var(--ease-out-expo)}.note-row>a{padding-inline:16px}.note-row-muted{color:var(--muted-foreground);transition:color var(--dur-2) var(--ease-out-expo)}.note-row:hover{background:var(--foreground);color:var(--background)}.note-row:has(a:focus-visible){background:var(--foreground);color:var(--background)}.note-row:hover .note-row-muted{color:var(--background)}.note-row:has(a:focus-visible) .note-row-muted{color:var(--background)}@supports (color:color-mix(in lab, red, red)){.note-row:hover .note-row-muted{color:color-mix(in oklch, var(--background) 60%, var(--foreground))}.note-row:has(a:focus-visible) .note-row-muted{color:color-mix(in oklch, var(--background) 60%, var(--foreground))}}.note-row a:focus-visible{outline:none}.work-preview{position:sticky;top:96px}.work-preview-body,.work-row-inline{animation:work-preview-in var(--dur-2) var(--ease-out-expo)}.work-context-figures{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.work-context-figures>div{flex-direction:column;gap:6px;display:flex}.work-context-figures>div>dd:last-child{margin-top:auto}.work-context-value{font-variant-numeric:tabular-nums;order:-1;font-size:28px;font-weight:900;line-height:1}.work-context-source{color:var(--muted-foreground);font-size:11px;text-decoration:underline}@supports (color:color-mix(in lab, red, red)){.work-context-source{-webkit-text-decoration-color:color-mix(in oklch, currentColor 40%, transparent);-webkit-text-decoration-color:color-mix(in oklch, currentColor 40%, transparent);-webkit-text-decoration-color:color-mix(in oklch, currentColor 40%, transparent);-webkit-text-decoration-color:color-mix(in oklch, currentColor 40%, transparent);text-decoration-color:color-mix(in oklch, currentColor 40%, transparent)}}.work-context-source{text-underline-offset:3px;transition:color var(--dur-1) ease-out}.work-context-source:hover,.work-context-source:focus-visible{color:var(--brand,var(--foreground))}@keyframes work-preview-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.architecture{aspect-ratio:2.3;background:var(--card);width:100%;overflow:hidden}.architecture svg{width:100%;height:100%}.diagram-grid{stroke:var(--secondary);stroke-width:.6px}.diagram-path{stroke:var(--diagram-line);stroke-width:1px;fill:none}.diagram-node{fill:var(--diagram-surface);stroke:var(--diagram-line);stroke-width:1px}.diagram-label{fill:var(--muted-foreground);font-family:var(--font-mono);font-size:9px}.diagram-core{fill:var(--foreground)}.diagram-frame{fill:none;stroke:var(--diagram-line);stroke-width:1px;stroke-dasharray:4 6}.diagram-core-label{fill:var(--background);font-family:var(--font-mono);font-size:10px}.architecture .diagram-path{stroke:oklch(60% 0 0);stroke-width:1.25px}.architecture .diagram-node{stroke:oklch(60% 0 0)}.architecture .diagram-label{font-size:14px}.architecture .diagram-node-label{fill:var(--foreground);font-size:15px}.architecture .diagram-core-label{font-size:16px;font-weight:600}.signal{fill:var(--foreground);opacity:.6}.packet{fill:var(--foreground)}.diagram-draw{stroke-dasharray:1;animation:diagram-draw var(--dur-3) var(--ease-out-expo) both}.diagram-core,.diagram-core-label{animation:diagram-core-in var(--dur-2) var(--dur-1) var(--ease-out-expo) both}@keyframes diagram-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes diagram-core-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.packet{display:none}}[data-motion=paused] .packet{display:none}.diagram-chevron{fill:none;stroke:var(--foreground);stroke-width:1.5px}.architecture[data-static] .diagram-draw{marker-end:var(--chevron)}@media (width>=1500px){.hero{min-height:820px}}@media (width<=1023px){.page-gutter{padding-inline:32px}.work-index{grid-template-columns:minmax(0,1fr)}.work-preview{display:none}.work-row-inline{color:var(--foreground);padding:0 16px 24px;display:block}.work-row:before{display:none}.work-row[data-active]{color:inherit}.work-row[data-active] .work-row-muted{color:var(--muted-foreground)}.work-row[data-active] .work-row-trigger{text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}.work-row-line{grid-template-columns:40px minmax(0,1fr) max-content}.work-row-title{font-size:40px}.work-row[data-active] .work-row-title{font-stretch:100%}}@media (width<=639px){.contact-label{font-size:44px}.contact-link{grid-template-columns:minmax(0,1fr) 32px;padding-inline:0}.contact-arrow{width:28px;height:28px}.lead{font-size:20px}.home-figures{grid-template-columns:repeat(2,minmax(0,1fr))}.home-figure{padding:28px 16px}.home-figure:nth-child(odd){border-left:0;padding-left:0}.home-figure:nth-child(n+3){border-top:1px solid var(--border)}.home-logo{padding:8px 16px}.home-logo:nth-child(odd){padding-left:0}.page-gutter{padding-inline:20px}.display-title{font-size:clamp(34px,13.4vw,72px);font-stretch:85%;line-height:.9}.section-title{font-size:clamp(32px,12.2vw,64px);font-stretch:85%}.hero{height:auto;min-height:620px}.work-row-line{grid-template-columns:32px minmax(0,1fr);padding-inline:0}.work-row-line>:last-child{text-align:left;grid-column:2}.work-row-inline{padding-inline:0}.work-row-title{font-size:32px}.architecture{aspect-ratio:1.65}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.portfolio-shell{isolation:isolate;position:relative;overflow-x:clip}.shared-decor{pointer-events:none;z-index:-1;opacity:.22;position:fixed;inset:0}.shared-decor svg{width:100%;height:100%}.page-stage{perspective:1100px;perspective-origin:50% 50svh;position:relative}.page-plane{z-index:2;transform-origin:50% 50svh;background:var(--background);position:relative}@supports (color:color-mix(in lab, red, red)){.page-plane{background:color-mix(in oklch, var(--background) 94%, transparent)}}.route-content{min-height:calc(100svh - 160px)}.route-content>section:not(.hero){padding-top:48px}.ghost-host{pointer-events:none;z-index:1;perspective:1100px;perspective-origin:50% 50svh;position:fixed;inset:0;overflow:clip}.outgoing-page{transform-origin:50% 50svh;width:100%;position:absolute;left:0}.depth-scene{z-index:50;pointer-events:none;position:fixed;inset:0;overflow:clip}.scene-page-frame{pointer-events:none;backface-visibility:hidden;will-change:transform, opacity;background:var(--background);overflow:hidden}[data-page-transition] .page-plane{pointer-events:none}@media (width<=639px){.route-content>section:not(.hero){padding-top:28px}.page-stage,.ghost-host{perspective:1000px}}.signal-line{z-index:40;pointer-events:none;display:none;position:fixed;top:110px;bottom:40px;left:20px}.signal-line-track{background:var(--border);width:1px;position:absolute;inset:0 auto 0 0}.signal-line-tick{background:var(--muted-foreground);width:9px;height:1px;transition:width var(--dur-1) var(--ease-out-expo), background-color var(--dur-1) ease-out;position:absolute;left:-4px}.signal-line-tick[data-passed]{background:var(--foreground);width:16px}.signal-line-packet{background:var(--foreground);will-change:transform;width:7px;height:7px;margin-top:-3px;position:absolute;top:0;left:-3px}.signal-line-readout{font-family:var(--font-mono);color:var(--muted-foreground);font-size:12px;position:absolute;top:-26px;left:-6px}@media (width>=1024px){.signal-line{display:block}}.cursor-brackets{z-index:100;pointer-events:none;mix-blend-mode:difference;position:fixed;inset:0}.cursor-bracket{opacity:0;width:10px;height:10px;transition:transform var(--dur-1) var(--ease-out-expo), opacity var(--dur-1) ease-out;border:0 solid #fff;position:absolute;top:0;left:0}.cursor-bracket[data-state=snap]{transition-duration:var(--dur-2), var(--dur-1)}.cursor-bracket-tl{border-width:1px 0 0 1px}.cursor-bracket-tr{border-width:1px 1px 0 0}.cursor-bracket-bl{border-width:0 0 1px 1px}.cursor-bracket-br{border-width:0 1px 1px 0}.cursor-bracket[data-state=idle]{opacity:.45}.cursor-bracket[data-state=snap]{opacity:1}.preloader{z-index:90;background:var(--background);color:var(--foreground);--hud-top:80px;transition:opacity .6s cubic-bezier(.45,0,.55,1);animation:0s 7s forwards preloader-failsafe;position:fixed;inset:0}.preloader[data-handover]{opacity:0}html[data-cinematic] .preloader{background:0 0}.preloader-tunnel{position:absolute;inset:0}.preloader-tunnel canvas{width:100%;height:100%;animation:preloader-in var(--dur-4) ease-out backwards;display:block}html[data-theme=light] .preloader-tunnel canvas{filter:invert()}@keyframes preloader-in{0%{opacity:0}}.preloader-caption,.preloader-hud{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:12px;transition:opacity .24s ease-out;position:absolute}.preloader-top{top:32px;left:48px}.preloader-rate{bottom:32px;left:48px}.preloader[data-done] .preloader-caption{opacity:0}.preloader-hud{top:calc(var(--hud-top) + 24px);align-items:baseline;gap:24px;display:flex;right:48px}.preloader-count{color:var(--foreground)}html[data-cinematic] .preloader[data-handover] .preloader-hud{opacity:0;transition-duration:.12s}html[data-cinematic]:has(.preloader:not([data-handover])) .hero-cinematic-hud{visibility:hidden}.portfolio-shell:has(>.preloader:not([data-handover])) :is(header,.signal-line,.hero~*){opacity:0;animation:0s 7s forwards preloader-failsafe-show}.portfolio-shell:has(>.preloader[data-handover]) :is(header,.signal-line,.hero~*){transition:opacity .6s ease-out}html[data-film] :is(header,.signal-line,.hero~*){opacity:0;pointer-events:none;animation:0s 12s forwards cinematic-failsafe}.portfolio-shell:has(.hero) :is(header,.signal-line,.hero~*){transition:opacity .6s ease-out}@keyframes preloader-failsafe{to{visibility:hidden}}@keyframes preloader-failsafe-show{to{opacity:1}}@media (prefers-reduced-motion:reduce){.preloader{transition-duration:.2s}}@media (width<=639px){.preloader-top{top:24px;left:20px}.preloader-rate{bottom:24px;left:20px}.preloader-hud{top:calc(var(--hud-top) + 12px);right:20px}}.portfolio-shell:after{content:"";z-index:80;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3,.lead{text-wrap:balance}p,li,dd{text-wrap:pretty}.editorial-link{align-items:center;min-height:24px;display:inline-flex}.motion-toggle{cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;min-height:24px;padding:0;display:inline-flex}.motion-toggle:hover,.motion-toggle:focus-visible{color:var(--foreground)}.motion-toggle-dot{background:var(--foreground);width:6px;height:6px}.motion-toggle[aria-pressed=true] .motion-toggle-dot{outline:1px solid var(--muted-foreground);background:0 0}.work-preview-body{view-transition-name:work-preview}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-old(work-preview){animation:vt-fade-out var(--dur-1) ease-out both}::view-transition-new(work-preview){animation:none}@keyframes vt-fade-out{to{opacity:0}}html[data-cinematic] .hero-title,html[data-cinematic] .hero [data-intro-support]{opacity:0;animation:0s 12s forwards cinematic-failsafe}@keyframes cinematic-failsafe{to{opacity:1}}.play-bar{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;display:flex}.play-hint{max-width:44rem;font-family:var(--font-mono);font-size:13px;line-height:1.6}.play-field{align-items:stretch;gap:12px;display:flex}.play-ends{flex:none;min-width:2ch;display:grid}.play-ends li{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground);transition:color var(--dur-2) var(--ease-out-expo);align-items:center;font-size:11px;display:flex}.play-ends li[data-lit]{color:var(--foreground)}.play-end-short{display:none}.play-board{border-top:1px solid var(--border);border-left:1px solid var(--border);flex:auto;min-width:0;display:grid;position:relative}.play-tile{border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;touch-action:manipulation;background:0 0;min-width:0;padding:0;display:block;position:relative}.play-tile[data-fixed]{cursor:default}.play-tile:hover:not([data-fixed]){background:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.play-tile:hover:not([data-fixed]){background:color-mix(in oklch, var(--foreground) 5%, transparent)}}.play-tile:focus-visible{outline:1px dashed var(--foreground);outline-offset:-5px}.play-tile svg{width:100%;height:100%;display:block;overflow:visible}.play-tile g{transform-origin:24px 24px;transition:transform var(--dur-1) var(--ease-out-expo)}.play-pipe{fill:none;stroke:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.play-pipe{stroke:color-mix(in oklch, var(--foreground) 35%, var(--background))}}.play-pipe{stroke-width:3px;stroke-linecap:square;transition:stroke var(--dur-2) var(--ease-out-expo)}.play-joint{fill:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.play-joint{fill:color-mix(in oklch, var(--foreground) 35%, var(--background))}}.play-tile[data-lit] .play-pipe{stroke:var(--foreground)}.play-tile[data-lit] .play-joint,.play-core{fill:var(--foreground)}.play-core-label{fill:var(--background);font-family:var(--font-mono);font-size:8px;font-weight:600}.play-gate{fill:var(--background);stroke:currentColor;stroke-width:1.5px}.play-tile{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.play-tile{color:color-mix(in oklch, var(--foreground) 50%, var(--background))}}.play-tile[data-lit]{color:var(--foreground)}.play-gate-mark{fill:currentColor;font-family:var(--font-mono);font-size:8px}.play-gate-label{fill:currentColor;font-family:var(--font-mono);letter-spacing:.04em;font-size:5.5px}.play-flow{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.play-stats{border-block:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.play-stats>div{padding:16px 0}.play-stats>div+div{border-left:1px solid var(--border);padding-left:16px}.play-stats dd{font-variant-numeric:tabular-nums;margin-top:6px;font-size:clamp(32px,6vw,64px);font-weight:900;line-height:1}@media (width<=640px){.play-field{gap:6px}.play-end-long{display:none}.play-end-short{display:inline}}@media (prefers-reduced-motion:reduce){.play-tile g{transition:none}}.architecture.method-split{aspect-ratio:auto;background:0 0;overflow:visible}.method-split svg{width:100%;height:auto;overflow:visible}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.method-draw{stroke-dasharray:1;animation:linear both method-draw;animation-timeline:view();animation-range:entry 10% cover 45%}.method-lane{animation-range:entry 35% cover 55%}}}@keyframes method-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}html[data-arriving] .page-plane:not(.outgoing-page) main [data-chapter-line]{animation:0s 4s forwards arriving-failsafe;transform:translateY(-105%)}html[data-arriving] .page-plane:not(.outgoing-page) main [data-decode]{opacity:0;animation:0s 4s forwards arriving-failsafe}@keyframes arriving-failsafe{to{opacity:1;transform:none}}.next-chapter{padding-bottom:72px}.next-chapter-link{border-top:1px solid var(--border);padding-top:24px;display:block}.next-chapter-row{align-items:flex-end;gap:32px;margin-top:40px;display:flex}.next-chapter-title{flex-direction:column;flex:0 auto;gap:12px;min-width:0;display:flex}.next-chapter-kicker{color:var(--muted-foreground)}.next-chapter-name{color:#0000;background:linear-gradient(var(--foreground), var(--foreground)) 0 0 / 0% 100% no-repeat, linear-gradient(var(--muted-foreground), var(--muted-foreground));transition:background-size var(--dur-4) var(--ease-out-expo);-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6.1vw,96px);font-weight:900;line-height:.9}.next-chapter-link:hover .next-chapter-name,.next-chapter-link:focus-visible .next-chapter-name{background-size:100% 100%,auto}.next-chapter-link:focus-visible{outline:1px solid var(--ring);outline-offset:8px}.next-chapter-wire{background:var(--border);flex:120px;height:1px;margin-bottom:.45em;font-size:clamp(40px,6.1vw,96px);position:relative}.next-chapter-wire:after{content:"";border-block:5px solid #0000;border-left:8px solid var(--muted-foreground);width:0;height:0;position:absolute;top:-5px;right:-1px}.next-chapter-packet{background:var(--foreground);width:7px;height:7px;animation:2.8s linear infinite next-chapter-packet;position:absolute;top:-3px;left:0}.next-chapter-link:hover .next-chapter-packet{animation-duration:1.1s}@keyframes next-chapter-packet{0%{opacity:0;left:0}10%{opacity:1}85%{opacity:1}to{opacity:0;left:calc(100% - 7px)}}[data-motion=paused] .next-chapter-packet{display:none}@media (width<=640px){.next-chapter-row{flex-direction:column;align-items:stretch;gap:20px}.next-chapter-wire{flex-basis:auto;margin-bottom:0}}.work-row[data-active] .work-row-trigger{color:var(--brand);transition:color var(--dur-3) var(--ease-out-expo)}[data-progress] .note-section h2,[data-progress] .note-section-n{color:var(--muted-foreground);transition:color var(--dur-3) var(--ease-out-expo)}[data-progress] .note-section[data-read] h2,[data-progress] .note-section[data-read] .note-section-n{color:var(--foreground)}.note-section-n:before{content:"";vertical-align:1px;width:7px;height:7px;transition:background-color var(--dur-3) var(--ease-out-expo);border:1px solid;margin-right:10px;display:inline-block}.note-section[data-read] .note-section-n:before,:not([data-progress])>.note-section .note-section-n:before{background:currentColor}.identify{font-family:var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:clamp(13px,1.6vw,22px);line-height:1.7}.identify-line,.identify>code>.identify-muted:last-child{display:block}.identify-line{padding-left:2ch}.identify-key{min-width:9ch;color:var(--muted-foreground);display:inline-block}.identify-muted{color:var(--muted-foreground)}.identify-id,.identify-value{color:var(--foreground)}.identify-status{color:var(--muted-foreground);transition:color var(--dur-2) var(--ease-out-expo);align-items:center;gap:8px;display:inline-flex}.identify-dot{width:7px;height:7px;transition:background-color var(--dur-2) var(--ease-out-expo);border:1px solid}[data-identified] .identify-status{color:var(--foreground)}[data-identified] .identify-dot{background:currentColor}.portrait{max-width:320px}.portrait-frame{aspect-ratio:4/5;background:var(--card);display:block;position:relative}.portrait-frame img{object-fit:cover;object-position:42% 50%;filter:grayscale()contrast(1.05);width:100%;height:100%}.portrait-frame:before,.portrait-frame:after{content:"";border:0 solid var(--foreground);pointer-events:none;width:14px;height:14px;position:absolute}.portrait-frame:before{border-top-width:1px;border-left-width:1px;top:-6px;left:-6px}.portrait-frame:after{border-bottom-width:1px;border-right-width:1px;bottom:-6px;right:-6px}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.portrait-frame img{animation:linear both portrait-scan;animation-timeline:view();animation-range:entry entry 90%}[data-motion=paused] .portrait-frame img{animation:none}}}@keyframes portrait-scan{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@media (width<=767px){.portrait{max-width:260px}}.about-stat-value{font-variant-numeric:tabular-nums;font-size:40px;font-weight:900;line-height:1}.note-stream{align-items:center;gap:10px;display:flex}.note-stream-dot{background:var(--foreground);width:7px;height:7px;animation:1.6s steps(2,jump-none) infinite note-stream-pulse}@keyframes note-stream-pulse{50%{opacity:.2}}[data-motion=paused] .note-stream-dot{animation:none}.note-payload{font-family:var(--font-mono);letter-spacing:.02em;overflow-wrap:anywhere;margin-top:14px;font-size:11px;display:block}.contact-pipeline{width:100%;height:auto;display:block;overflow:visible}.contact-lane-path,.contact-lane .diagram-node{transition:stroke var(--dur-2) var(--ease-out-expo), stroke-width var(--dur-2) var(--ease-out-expo)}.contact-delivered{opacity:0;fill:var(--foreground);transition:opacity var(--dur-2) var(--ease-out-expo)}:is(#contact:has(.contact-row[data-channel=LinkedIn]:is(:hover,:focus-within)) .contact-lane[data-channel=LinkedIn],#contact:has(.contact-row[data-channel=GitHub]:is(:hover,:focus-within)) .contact-lane[data-channel=GitHub]){--diagram-line:var(--foreground)}:is(#contact:has(.contact-row[data-channel=LinkedIn]:is(:hover,:focus-within)) .contact-lane[data-channel=LinkedIn] .contact-delivered,#contact:has(.contact-row[data-channel=GitHub]:is(:hover,:focus-within)) .contact-lane[data-channel=GitHub] .contact-delivered){opacity:1}@media (width<=1100px){.contact-pipeline .diagram-label{font-size:13px}}@media (width<=639px){.contact-pipeline .diagram-label{font-size:22px}.contact-delivered{display:none}}.contact-link{position:relative}.contact-meta>*{transition:opacity var(--dur-2) var(--ease-out-expo), transform var(--dur-2) var(--ease-out-expo);grid-area:1/1;justify-self:end}.contact-status{opacity:0;transform:translateY(6px)}.contact-row:hover .contact-meta .contact-muted{opacity:0;transform:translateY(-6px)}.contact-row:has(a:focus-visible) .contact-meta .contact-muted{opacity:0;transform:translateY(-6px)}.contact-row:hover .contact-status{opacity:1;transform:none}.contact-row:has(a:focus-visible) .contact-status{opacity:1;transform:none}.contact-wire{transform-origin:0;height:1px;transition:transform var(--dur-4) var(--ease-out-expo);background:currentColor;position:absolute;bottom:10px;left:16px;right:16px;transform:scaleX(0)}.contact-wire:after{content:"";background:currentColor;width:7px;height:7px;position:absolute;top:-3px;right:0}.contact-row:hover .contact-wire{transform:scaleX(1)}.contact-row:has(a:focus-visible) .contact-wire{transform:scaleX(1)}@media (prefers-reduced-motion:reduce){.next-chapter-packet{display:none}.next-chapter-name,.contact-wire,.contact-meta>*{transition:none}}.menu-button{min-height:44px;color:var(--foreground);align-items:center;gap:10px;display:inline-flex}@media (width>=768px){header .menu-button{display:none}}.menu-glyph{border-top:1px solid;border-bottom:1px solid;width:18px;height:7px;position:relative}.menu-glyph-close{border:0}.menu-glyph-close:before,.menu-glyph-close:after{content:"";background:currentColor;height:1px;position:absolute;top:3px;left:0;right:0;transform:rotate(45deg)}.menu-glyph-close:after{transform:rotate(-45deg)}.mobile-menu{z-index:95;background:var(--background);color:var(--foreground);animation:mobile-menu-in .52s var(--ease-out-expo) both;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes mobile-menu-in{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}.mobile-menu-bar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-block:28px;display:flex}.mobile-menu-nav{flex:1;align-items:center;display:flex}.mobile-menu-nav ol{width:100%}.mobile-menu-link{border-bottom:1px solid var(--border);grid-template-columns:52px minmax(0,1fr);align-items:baseline;padding-block:10px;display:grid}.mobile-menu-n{color:var(--muted-foreground)}.mobile-menu-mask{display:block;overflow:hidden}.mobile-menu-label{animation:mobile-menu-line .64s calc(.14s + var(--i) * 55ms) var(--ease-out-expo) both;font-size:clamp(36px,11vw,64px);font-weight:900;line-height:1;display:block}@keyframes mobile-menu-line{0%{transform:translateY(-105%)}}.mobile-menu-link[aria-current=page] .mobile-menu-n{color:var(--foreground)}.mobile-menu-link[aria-current=page] .mobile-menu-n:before{content:"■ "}.mobile-menu-link:not([aria-current=page]) .mobile-menu-label{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.mobile-menu-link:not([aria-current=page]) .mobile-menu-label{color:color-mix(in oklch, var(--foreground) 55%, var(--background))}}.mobile-menu-link:focus-visible{outline:1px solid var(--foreground);outline-offset:2px}.mobile-menu-foot{justify-content:space-between;align-items:center;gap:16px;padding-block:20px;display:flex}@media (prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu-label{animation:none}}[data-motion=paused] .mobile-menu,[data-motion=paused] .mobile-menu-label{animation:none}.theme-toggle{cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;min-height:24px;padding:0;display:inline-flex}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--foreground)}.theme-toggle-glyph{width:10px;height:10px;transition:transform var(--dur-3) var(--ease-out-expo);background:linear-gradient(90deg,currentColor 50%,#0000 50%);border:1px solid}.theme-toggle-light,html[data-theme=light] .theme-toggle-dark{display:none}html[data-theme=light] .theme-toggle-light{display:inline}.theme-toggle:hover .theme-toggle-glyph{transform:rotate(180deg)}html[data-theme=light] .hero-cinematic canvas{filter:invert()}html[data-theme-switching]::view-transition-new(root){animation:theme-wipe var(--dur-4) var(--ease-out-expo) both}@keyframes theme-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@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-space-x-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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto)))))}to{height:0}}@keyframes caret-blink{0%,70%,to{opacity:1}20%,50%{opacity:0}}
