/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) 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}}}@layer theme{:root,:host{--font-sans:"DM Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--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-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-relaxed:1.625;--radius-xl:.75rem;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"DM Sans", sans-serif;--default-mono-font-family:"JetBrains Mono", monospace;--font-display:"Manrope", sans-serif;--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;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);min-width:320px;color:var(--color-foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.6}html{scroll-behavior:smooth;scroll-padding-top:100px}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--accent-blue);color:var(--primary-foreground)}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.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}.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\.5{top:calc(var(--spacing) * 1.5)}.top-1\/2{top:50%}.top-3\.5{top:calc(var(--spacing) * 3.5)}.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-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.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-20{z-index:20}.z-50{z-index:50}.z-\[1\]{z-index:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-1{margin-block:var(--spacing)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.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)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.aspect-square{aspect-ratio:1}.aspect-video{aspect-ratio:var(--aspect-video)}.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-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-12{height:calc(var(--spacing) * 12)}.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}.h-svh{height:100svh}.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-0{min-height:0}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-\(--cell-size\){width:var(--cell-size)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-0{width:0}.w-1{width:var(--spacing)}.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-5{width:calc(var(--spacing) * 5)}.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-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-lg{max-width:var(--container-lg)}.max-w-max{max-width:max-content}.max-w-md{max-width:var(--container-md)}.min-w-\(--cell-size\){min-width:var(--cell-size)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.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-px{--tw-translate-x:-1px;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-x-px{--tw-translate-x:1px;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}.list-none{list-style-type:none}.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-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.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-4{gap:calc(var(--spacing) * 4)}: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-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)))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:.75rem}.rounded-md{border-radius:.5rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.35rem}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-l-md{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-tl-sm{border-top-left-radius:.35rem}.rounded-r-md{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.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-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.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-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.border-l-transparent{border-left-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.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-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.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{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-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)}.pt-0{padding-top:0}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.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-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.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}.align-middle{vertical-align:middle}.font-mono{font-family:JetBrains Mono,monospace}.text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--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}.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-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{color:var(--foreground)}.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)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, var(--sidebar-foreground) 70%, transparent)}}.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-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-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));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-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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-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-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-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)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.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}.running{animation-play-state:running}:is(:where(.group\/menu-item):focus-within .group-focus-within\/menu-item\:opacity-100){opacity:1}@media (hover:hover){:is(:where(.group\/menu-item):hover .group-hover\/menu-item\:opacity-100){opacity:1}}:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8){padding-right:calc(var(--spacing) * 8)}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8){margin-top:calc(var(--spacing) * -8)}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden){display:none}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\)){width:var(--sidebar-width-icon)}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]){width:calc(var(--sidebar-width-icon) + 1rem)}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]){width:calc(var(--sidebar-width-icon) + 1rem + 2px)}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden){overflow:hidden}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0){padding:0!important}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2){padding:calc(var(--spacing) * 2)!important}:is(:where(.group)[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0){opacity:0}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]){right:calc(var(--sidebar-width) * -1)}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]){left:calc(var(--sidebar-width) * -1)}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0){width:0}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:relative){position:relative}:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:z-10){z-index:10}:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:border-ring){border-color:var(--ring)}:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-\[3px\]){--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)}:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){:is(:where(.group\/day)[data-focused=true] .group-data-\[focused\=true\]\/day\:ring-ring\/50){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}:is(:where(.group)[data-side=left] .group-data-\[side\=left\]\:-right-4){right:calc(var(--spacing) * -4)}:is(:where(.group)[data-side=left] .group-data-\[side\=left\]\:border-r){border-right-style:var(--tw-border-style);border-right-width:1px}:is(:where(.group)[data-side=right] .group-data-\[side\=right\]\:left-0){left:0}:is(:where(.group)[data-side=right] .group-data-\[side\=right\]\:rotate-180){rotate:180deg}:is(:where(.group)[data-side=right] .group-data-\[side\=right\]\:border-l){border-left-style:var(--tw-border-style);border-left-width:1px}:is(:where(.group)[data-state=open] .group-data-\[state\=open\]\:rotate-180){rotate:180deg}:is(:where(.group)[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg){border-radius:.75rem}:is(:where(.group)[data-variant=floating] .group-data-\[variant\=floating\]\:border){border-style:var(--tw-border-style);border-width:1px}:is(:where(.group)[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border){border-color:var(--sidebar-border)}:is(:where(.group)[data-variant=floating] .group-data-\[variant\=floating\]\: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)}:is(:where(.group).toast .group-\[\.toast\]\:bg-muted){background-color:var(--muted)}:is(:where(.group).toast .group-\[\.toast\]\:bg-primary){background-color:var(--primary)}:is(:where(.group).toast .group-\[\.toast\]\:text-muted-foreground){color:var(--muted-foreground)}:is(:where(.group).toast .group-\[\.toast\]\:text-primary-foreground){color:var(--primary-foreground)}:is(:where(.group).toaster .group-\[\.toaster\]\:border-border){border-color:var(--border)}:is(:where(.group).toaster .group-\[\.toaster\]\:bg-background){background-color:var(--background)}:is(:where(.group).toaster .group-\[\.toaster\]\:text-foreground){color:var(--foreground)}:is(:where(.group).toaster .group-\[\.toaster\]\: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)}@media (hover:hover){:is(:where(.peer\/menu-button):hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground){color:var(--sidebar-accent-foreground)}}:is(:where(.peer):disabled~.peer-disabled\:cursor-not-allowed){cursor:not-allowed}:is(:where(.peer):disabled~.peer-disabled\:opacity-70){opacity:.7}:is(:where(.peer\/menu-button)[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground){color:var(--sidebar-accent-foreground)}:is(:where(.peer\/menu-button)[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5){top:calc(var(--spacing) * 1.5)}:is(:where(.peer\/menu-button)[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5){top:calc(var(--spacing) * 2.5)}:is(:where(.peer\/menu-button)[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1){top:var(--spacing)}.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-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.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\:w-\[2px\]:after{content:var(--tw-content);width:2px}.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)}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full):after{content:var(--tw-content);left:100%}.first\:rounded-l-md:first-child{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.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:.5rem;border-bottom-right-radius:.5rem}@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\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.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\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(:where(.group)[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar):hover{background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.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-sidebar-ring:focus-visible{--tw-ring-color:var(--sidebar-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}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.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)}}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:text-muted-foreground[aria-selected=true]{color:var(--muted-foreground)}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:var(--sidebar-accent)}.data-\[active\=true\]\:font-medium[data-active=true]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:var(--sidebar-accent-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:.5rem}.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:.5rem}.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\]\:opacity-100[data-state=open]{opacity:1}.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\]\:hover\:bg-sidebar-accent[data-state=open]:hover{background-color:var(--sidebar-accent)}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground[data-state=open]:hover{color:var(--sidebar-accent-foreground)}}.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\:flex{display:flex}.sm\:max-w-sm{max-width:var(--container-sm)}.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:.75rem}.sm\:text-left{text-align:left}}@media (width>=48rem){.md\:absolute{position:absolute}.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\:flex-row{flex-direction:row}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:opacity-0{opacity:0}:is(:where(.peer)[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2){margin:calc(var(--spacing) * 2)}:is(:where(.peer)[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0){margin-left:0}:is(:where(.peer)[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl){border-radius:var(--radius-xl)}:is(:where(.peer)[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\: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)}:is(:where(.peer)[data-variant=inset]~:is(:where(.peer)[data-state=collapsed]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2)){margin-left:calc(var(--spacing) * 2)}}.after\:md\:hidden:after{content:var(--tw-content)}@media (width>=48rem){.after\:md\:hidden:after{display:none}}.dark\:border-destructive:is(.dark *){border-color:var(--destructive)}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--muted-foreground)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:var(--border)}@supports (color:color-mix(in lab, red, red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, var(--border) 50%, transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{--tw-outline-style:none;outline-style:none}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:var(--border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:var(--border)}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector{--tw-outline-style:none;outline-style:none}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{--tw-outline-style:none;outline-style:none}.\[\&_\[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:.5rem;border-bottom-left-radius:.5rem}.\[\&\: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:.5rem;border-bottom-right-radius:.5rem}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>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}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>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-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:h-3\.5>svg{height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>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\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-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-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize,[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[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{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:oklch(11.5% .008 258);--foreground:oklch(95% .008 258);--card:oklch(16% .009 258);--card-foreground:oklch(95% .008 258);--popover:oklch(18% .01 258);--popover-foreground:oklch(95% .008 258);--primary:oklch(76% .12 258);--primary-foreground:oklch(14% .012 258);--secondary:oklch(20.5% .01 258);--secondary-foreground:oklch(92% .008 258);--muted:oklch(19% .009 258);--muted-foreground:oklch(68% .014 258);--accent:oklch(23% .02 258);--accent-foreground:oklch(94% .008 258);--destructive:oklch(62% .2 28);--destructive-foreground:oklch(98% 0 0);--border:oklch(29% .012 258);--input:oklch(29% .012 258);--ring:oklch(76% .12 258);--chart-1:oklch(76% .12 258);--chart-2:oklch(78% .12 165);--chart-3:oklch(72% .15 38);--chart-4:oklch(74% .11 92);--chart-5:oklch(68% .1 215);--sidebar:oklch(14% .008 258);--sidebar-foreground:oklch(95% .008 258);--sidebar-primary:oklch(76% .12 258);--sidebar-primary-foreground:oklch(14% .012 258);--sidebar-accent:oklch(22% .012 258);--sidebar-accent-foreground:oklch(94% .008 258);--sidebar-border:oklch(29% .012 258);--sidebar-ring:oklch(76% .12 258);--accent-blue:oklch(76% .12 258);--accent-mint:oklch(79% .13 164);--surface-raised:oklch(17.5% .01 258);--surface-soft:oklch(14.5% .009 258);--line-subtle:oklch(31% .012 258/.72);--text-dim:oklch(55% .014 258);--ambient-blue:oklch(55% .11 258/.14)}.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.shell-width{width:min(1180px,100% - 64px);margin-inline:auto}.site-nav{z-index:30;border-bottom:1px solid var(--border);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.site-nav{border-bottom:1px solid color-mix(in oklab, var(--border) 72%, transparent)}}.site-nav{background:var(--background)}@supports (color:color-mix(in lab, red, red)){.site-nav{background:color-mix(in oklab, var(--background) 86%, transparent)}}.site-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-inner{justify-content:space-between;align-items:center;width:min(1320px,100% - 64px);height:76px;margin:auto;display:flex}.wordmark{align-items:center;gap:12px;display:inline-flex}.monogram{border:1px solid var(--line-subtle);width:36px;height:36px;color:var(--accent-blue);font-family:var(--font-display);border-radius:9px;place-items:center;font-size:13px;font-weight:800;display:grid}.wordmark-copy{line-height:1.28;display:grid}.wordmark-copy strong{font-family:var(--font-display);font-size:13px;font-weight:700}.wordmark-copy small{color:var(--muted-foreground);font-family:var(--font-mono);margin-top:3px;font-size:9px}.nav-links{color:var(--muted-foreground);align-items:center;gap:31px;font-size:12px;display:flex}.nav-links a,.mobile-nav a,.footer-links a{transition:color .18s}.nav-links a:hover,.mobile-nav a:hover,.footer-links a:hover{color:var(--foreground)}.nav-links .nav-resume{color:var(--foreground);align-items:center;gap:5px;display:inline-flex}.mobile-menu-button,.mobile-nav{display:none}.home-intro{grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:56px;padding-top:72px;padding-bottom:48px;display:grid;position:relative}.intro-copy{padding-top:22px}.eyebrow,.case-overline,.case-kicker,.contact-content>span,.visual-caption,.visual-note,.architecture-head,.case-disclosure,.intro-bottomline,.section-label,.art-side-label,.art-index,.architecture-foot,.timeline-title>span,.enterprise-type,.education-grid article>span,.resume-fallback{font-family:var(--font-mono);letter-spacing:0;font-size:10px}.eyebrow{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:9px;display:flex}.eyebrow>i,.section-label>i,.case-overline>i{background:var(--accent-mint);border-radius:999px;width:5px;height:5px}.eyebrow>span{color:var(--text-dim)}.intro-copy h1{font-family:var(--font-display);letter-spacing:0;margin:25px 0 14px;font-size:clamp(48px,5.4vw,76px);font-weight:600;line-height:1.08}.intro-copy h1 span{color:var(--muted-foreground)}.intro-statement{max-width:500px;font-family:var(--font-display);margin:22px 0 12px;font-size:clamp(20px,2vw,25px);font-weight:600;line-height:1.38}.intro-description{max-width:540px;color:var(--muted-foreground);margin:0;font-size:14px;line-height:1.8}.expertise-list{flex-wrap:wrap;gap:8px;margin-top:23px;display:flex}.expertise-list span,.case-tech span{border:1px solid var(--border);color:var(--secondary-foreground);border-radius:999px;padding:6px 10px;font-size:11px}.intro-actions{flex-wrap:wrap;gap:9px;margin-top:26px;display:flex}.intro-actions .inline-flex,.resume-actions .inline-flex,.contact-actions .inline-flex,.case-next .inline-flex{font-size:12px}.intro-actions svg,.resume-actions svg,.contact-actions svg,.case-next svg{width:15px;height:15px}.location-mark{color:var(--muted-foreground);align-items:center;gap:8px;margin-top:34px;font-size:11px;display:flex}.location-mark svg{color:var(--accent-mint)}.intro-art-wrap{border:1px solid var(--border);background:var(--surface-raised);border-radius:10px;align-self:stretch;min-height:460px;position:relative;overflow:hidden}.intro-art{object-fit:cover;opacity:.94;width:100%;height:100%;position:absolute;inset:0}.intro-art-wrap:after{content:"";background:linear-gradient(180deg, var(--background), transparent 37%, var(--background));position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.intro-art-wrap:after{background:linear-gradient(180deg, color-mix(in oklab, var(--background) 24%, transparent), transparent 37%, color-mix(in oklab, var(--background) 44%, transparent))}}.intro-art-wrap:after{pointer-events:none}.art-index{z-index:1;color:var(--foreground);justify-content:space-between;line-height:1.7;display:flex;position:absolute;top:22px;left:22px;right:22px}.art-index span:last-child{text-align:right}.art-side-label{z-index:1;color:var(--foreground);writing-mode:vertical-rl;position:absolute;top:47%;right:16px}.art-overlay{z-index:1;border:1px solid var(--foreground);align-items:center;gap:9px;display:flex;position:absolute;bottom:18px;left:18px;right:18px}@supports (color:color-mix(in lab, red, red)){.art-overlay{border:1px solid color-mix(in oklab, var(--foreground) 14%, transparent)}}.art-overlay{background:var(--background);border-radius:7px;padding:12px 14px}@supports (color:color-mix(in lab, red, red)){.art-overlay{background:color-mix(in oklab, var(--background) 75%, transparent)}}.art-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:11px}.art-live-dot{background:var(--accent-mint);width:6px;height:6px;box-shadow:0 0 14px var(--accent-mint);border-radius:50%}.intro-bottomline{border-top:1px solid var(--border);color:var(--muted-foreground);grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:17px;display:flex}.intro-bottomline>span:last-child{align-items:center;gap:14px;display:flex}.intro-bottomline a{color:var(--accent-blue);place-items:center;display:grid}.section-band{padding-top:105px}.section-label{color:var(--muted-foreground);align-items:center;gap:13px;display:flex}.section-label>span:first-child{color:var(--accent-blue)}.section-label>i{width:4px;height:4px}.section-heading-row{justify-content:space-between;align-items:end;gap:32px;margin:25px 0 33px;display:flex}.section-heading-row h2,.about-layout h2{font-family:var(--font-display);margin:0;font-size:clamp(32px,4vw,48px);font-weight:600;line-height:1.16}.section-heading-row>p{max-width:350px;color:var(--muted-foreground);margin:0 0 3px;font-size:13px;line-height:1.8}.architecture-visual{border:1px solid var(--border);background:radial-gradient(ellipse at 50% 50%, var(--ambient-blue), transparent 60%), var(--surface-soft);border-radius:9px;padding:25px 28px 18px}.architecture-head{color:var(--muted-foreground);justify-content:space-between;gap:16px;font-size:9px;display:flex}.architecture-head span:last-child{color:var(--text-dim);text-align:right}.architecture-flow{grid-template-columns:repeat(4,1fr);gap:0;padding:46px 6px 40px;display:grid}.architecture-step{flex-direction:column;gap:13px;min-width:0;display:flex;position:relative}.architecture-index{color:var(--text-dim);font-family:var(--font-mono);font-size:9px}.architecture-node-icon{border:1px solid var(--line-subtle);width:38px;height:38px;color:var(--accent-blue);background:var(--surface-raised);border-radius:8px;place-items:center;display:grid}.architecture-node-icon svg{width:17px;height:17px}.architecture-name{max-width:130px;font-family:var(--font-display);font-size:13px;font-weight:600}.architecture-connector{background:var(--line-subtle);width:calc(100% - 67px);height:1px;position:absolute;top:50px;left:60px}.architecture-connector i{background:var(--accent-mint);width:22px;height:1px;animation:2.8s ease-in-out infinite signal-pass;display:block}@keyframes signal-pass{0%{opacity:.3;transform:translate(0)}55%{opacity:1}to{opacity:.2;transform:translate(85px)}}.architecture-foot{border-top:1px solid var(--border);color:var(--muted-foreground);align-items:center;gap:12px;padding-top:14px;font-size:9px;display:flex}.architecture-foot span:nth-child(2n){color:var(--accent-blue)}.work-section{padding-bottom:5px}.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.project-card{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;min-width:0;transition:border-color .25s,transform .25s,background .25s;position:relative;overflow:hidden}.project-card:hover{border-color:var(--accent-blue);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.project-card:hover{border-color:color-mix(in oklab, var(--accent-blue) 48%, var(--border))}}.project-card:hover{background:var(--surface-raised)}.project-card-link{display:block}.project-visual{border:1px solid var(--border);background:var(--surface-soft);border-radius:9px;min-height:350px;position:relative;overflow:hidden}.project-visual-compact{border:0;border-bottom:1px solid var(--border);border-radius:0;min-height:225px}.project-visual-has-image{background:var(--surface-raised);place-items:center;padding:14px;display:grid}.project-visual-compact.project-visual-has-image{aspect-ratio:1.72;min-height:0;padding:12px}.project-screenshot,.project-generated-image{object-fit:contain;object-position:center;border:1px solid var(--border);border-radius:5px;width:100%;height:100%;max-height:100%;display:block}.project-visual-has-image:not(.project-visual-compact) .project-screenshot,.project-visual-has-image:not(.project-visual-compact) .project-generated-image{width:calc(100% - 28px);height:calc(100% - 28px);position:absolute;inset:14px}.project-visual-compact.project-visual-has-image .project-screenshot,.project-visual-compact.project-visual-has-image .project-generated-image{width:100%;height:100%}.visual-ledger .project-screenshot{object-position:center}.visual-caption{z-index:2;color:var(--foreground);position:absolute;top:17px;left:18px}@supports (color:color-mix(in lab, red, red)){.visual-caption{color:color-mix(in oklab, var(--foreground) 68%, transparent)}}.visual-caption{font-size:9px}.visual-note{z-index:2;color:var(--foreground);justify-content:space-between;display:flex;position:absolute;bottom:15px;left:18px;right:18px}@supports (color:color-mix(in lab, red, red)){.visual-note{color:color-mix(in oklab, var(--foreground) 58%, transparent)}}.visual-note{font-size:9px}.visual-content{place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.visual-content:before{content:"";opacity:.38;background-image:linear-gradient(var(--line-subtle) 1px, transparent 1px), linear-gradient(90deg, var(--line-subtle) 1px, transparent 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 25% 80%,#0000);mask-image:linear-gradient(#0000,#000 25% 80%,#0000)}.visual-ledger{background:radial-gradient(ellipse at 50% 48%, oklch(47% .08 258/.26), transparent 60%), var(--surface-soft)}.ledger-art{border:1px solid var(--accent-blue);width:min(76%,420px);position:relative}@supports (color:color-mix(in lab, red, red)){.ledger-art{border:1px solid color-mix(in oklab, var(--accent-blue) 40%, var(--border))}}.ledger-art{background:var(--surface-raised);border-radius:6px;padding:20px}@supports (color:color-mix(in lab, red, red)){.ledger-art{background:color-mix(in oklab, var(--surface-raised) 92%, transparent)}}.ledger-art{transform:perspective(900px)rotateY(-8deg)rotateX(4deg);box-shadow:0 25px 65px oklch(0% 0 0/.24)}.ledger-top,.ledger-bottom,.signal-top,.signal-foot{color:var(--muted-foreground);font-family:var(--font-mono);justify-content:space-between;font-size:8px;display:flex}.ledger-amount{color:var(--muted-foreground);font-family:var(--font-mono);margin-top:28px;font-size:10px}.ledger-amount b{color:var(--foreground);font-family:var(--font-display);font-size:26px;font-weight:600}.ledger-bars{border-bottom:1px solid var(--border);align-items:end;gap:7px;height:72px;margin:16px 0 15px;display:flex}.ledger-bars i{background:var(--accent-blue);opacity:.72;border-radius:2px 2px 0 0;flex:1;height:35%}.ledger-bars i:nth-child(3n){opacity:.95;height:72%}.ledger-bars i:nth-child(2n){height:52%}.ledger-bars i:nth-child(5n){height:92%}.ledger-bottom{color:var(--text-dim);justify-content:flex-start;gap:18px}.visual-fragrance{background:radial-gradient(at 50% 65%,oklch(55% .1 26/.2),#0000 51%),oklch(16% .024 32)}.fragrance-art{background:linear-gradient(145deg,oklch(18% .025 28),oklch(24% .03 32) 50%,oklch(14% .02 30));place-items:center;width:100%;height:100%;min-height:225px;display:grid;position:relative;overflow:hidden}.fragrance-arch{border:1px solid oklch(64% .06 48/.32);border-radius:100px 100px 0 0;width:180px;height:240px;position:absolute;bottom:-40px;left:calc(50% - 90px)}.fragrance-bottle{background:linear-gradient(90deg,oklch(58% .05 38/.32),oklch(75% .07 47/.64),oklch(42% .04 36/.45));border:1px solid oklch(78% .035 54/.75);border-radius:13px 13px 10px 10px;width:76px;height:112px;margin-top:40px;position:relative;box-shadow:0 12px 35px oklch(0% 0 0/.28)}.fragrance-bottle:before{content:"";background:oklch(25% .02 35);border:1px solid oklch(77% .03 55/.65);border-bottom:0;width:24px;height:17px;position:absolute;top:-17px;left:25px}.fragrance-bottle i{border-top:1px solid oklch(88% .04 62/.6);border-bottom:1px solid oklch(88% .04 62/.45);height:25px;position:absolute;top:43px;left:8px;right:8px}.fragrance-mark{color:oklch(90% .05 65);font-family:var(--font-mono);font-size:9px;position:absolute;bottom:20px;right:22px}.visual-systems{background:radial-gradient(ellipse at 50% 50%, oklch(45% .11 166/.15), transparent 60%), var(--surface-soft)}.system-art{border:1px solid var(--line-subtle);background:var(--surface-raised);border-radius:6px;grid-template-columns:1fr 30px;align-items:center;width:70%;min-height:125px;padding:16px;display:grid}.system-art>span{font-family:var(--font-display);grid-column:1;font-size:17px;font-weight:600}.system-art>i{background:var(--accent-mint);grid-area:1/2/span 2;width:30px;height:1px}.system-art>div{gap:8px;margin-top:18px;display:flex}.system-art>div span{border:1px solid var(--border);color:var(--muted-foreground);font-family:var(--font-mono);border-radius:3px;padding:5px 7px;font-size:8px}.visual-signals{background:var(--surface-raised)}.signal-art{border:1px solid var(--line-subtle);background:var(--surface-raised);border-radius:6px;width:78%;padding:16px}.signal-top span{color:var(--accent-mint)}.signal-wave{border-bottom:1px solid var(--border);align-items:center;gap:5px;height:85px;margin:10px 0;display:flex;position:relative}.signal-wave:before{content:"";background:var(--accent-blue);opacity:.38;width:100%;height:1px;position:absolute;transform:rotate(-7deg)}.signal-wave i{z-index:1;border-top:1px solid var(--accent-mint);border-left:1px solid var(--accent-mint);flex:1;height:34%;transform:skewY(-22deg)}.signal-wave i:nth-child(3n){height:66%}.signal-wave i:nth-child(4n){height:49%}.signal-foot{color:var(--text-dim)}.project-card-body{padding:20px 22px 19px}.project-card-meta{color:var(--muted-foreground);font-family:var(--font-mono);text-transform:uppercase;justify-content:space-between;gap:12px;font-size:9px;display:flex}.project-card-meta svg{color:var(--accent-blue);flex:none}.project-card-body h3{font-family:var(--font-display);margin:19px 0 7px;font-size:22px;font-weight:600}.project-card-body p{min-height:44px;color:var(--muted-foreground);margin:0;font-size:12px;line-height:1.75}.text-link{color:var(--foreground);align-items:center;gap:7px;margin-top:18px;font-size:11px;display:inline-flex}.project-card:hover .text-link{color:var(--accent-blue)}.project-live{color:var(--muted-foreground);align-items:center;gap:6px;margin:0 22px 18px;font-size:10px;display:inline-flex}.project-live:hover{color:var(--accent-blue)}.enterprise-section{padding-top:110px}.enterprise-list{border-top:1px solid var(--border)}.enterprise-row{border-bottom:1px solid var(--border);grid-template-columns:48px minmax(0,1fr) minmax(150px,250px) 20px;align-items:center;gap:18px;padding:20px 2px;transition:padding .18s,color .18s;display:grid}.enterprise-row:hover{color:var(--accent-blue);padding-inline:9px}.enterprise-number{color:var(--text-dim);font-family:var(--font-mono);align-self:start;padding-top:3px;font-size:10px}.enterprise-row-copy{gap:5px;display:grid}.enterprise-row-copy strong{font-family:var(--font-display);font-size:15px;font-weight:600}.enterprise-row-copy small{color:var(--muted-foreground);font-size:11px;line-height:1.6}.enterprise-type{color:var(--muted-foreground);text-align:right;font-size:9px}.enterprise-row>svg{color:var(--muted-foreground)}.about-section{padding-top:115px}.about-layout{grid-template-columns:1fr 1fr;gap:60px;margin-top:32px;display:grid}.about-layout h2 span{color:var(--muted-foreground)}.about-copy{max-width:510px}.about-copy p{color:var(--muted-foreground);margin:0 0 15px;font-size:13px;line-height:1.9}.about-copy .text-link{margin-top:5px}.about-stats{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:0;margin-top:58px;display:grid}.about-stats>div{border-right:1px solid var(--border);gap:7px;padding:21px 22px 22px 0;display:grid}.about-stats>div+div{padding-left:22px}.about-stats>div:last-child{border-right:0}.about-stats span{color:var(--accent-blue);font-family:var(--font-mono);font-size:10px}.about-stats strong{font-family:var(--font-display);font-size:13px}.about-stats small{color:var(--muted-foreground);font-size:11px}.experience-section{padding-top:115px}.timeline{border-top:1px solid var(--border)}.timeline-entry{border-bottom:1px solid var(--border);grid-template-columns:56px minmax(0,1fr);gap:16px;padding:24px 0 26px;display:grid}.timeline-marker{color:var(--accent-blue);font-family:var(--font-mono);justify-content:center;font-size:9px;display:flex;position:relative}.timeline-marker:after{content:"";background:var(--line-subtle);width:1px;position:absolute;top:25px;bottom:-28px}.timeline-entry:last-child .timeline-marker:after{display:none}.timeline-marker i{z-index:1;border:1px solid var(--accent-mint);background:var(--background);border-radius:50%;width:5px;height:5px;position:absolute;top:24px}.timeline-title{justify-content:space-between;align-items:start;gap:20px;display:flex}.timeline-title h3{font-family:var(--font-display);margin:0;font-size:17px;font-weight:600}.timeline-title p{color:var(--muted-foreground);margin:3px 0 0;font-size:12px}.timeline-title>span{color:var(--muted-foreground);white-space:nowrap}.timeline-main ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 25px;margin:17px 0 0;padding:0;list-style:none;display:grid}.timeline-main li{color:var(--muted-foreground);padding-left:14px;font-size:11px;line-height:1.7;position:relative}.timeline-main li:before{content:"";background:var(--accent-blue);border-radius:50%;width:4px;height:4px;position:absolute;top:8px;left:0}.skills-section{padding-top:110px}.skills-grid{border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:0 22px;display:grid}.skill-group{border-bottom:1px solid var(--border);padding:19px 0 22px}.skill-group h3{color:var(--foreground);font-family:var(--font-display);margin:0 0 13px;font-size:13px;font-weight:600}.skill-group>div{flex-wrap:wrap;gap:7px;display:flex}.skill-group>div span{border:1px solid var(--border);color:var(--muted-foreground);border-radius:4px;padding:5px 7px;font-size:10px}.education-section{padding-top:105px}.education-grid{grid-template-columns:1fr 1fr;gap:22px;margin-top:28px;display:grid}.education-grid article{border-top:1px solid var(--border);padding:21px 12px 10px 0;position:relative}.education-grid article>svg{width:17px;height:17px;color:var(--accent-blue);position:absolute;top:19px;right:6px}.education-grid article>span{color:var(--muted-foreground)}.education-grid h3{max-width:420px;font-family:var(--font-display);margin:15px 0 4px;font-size:18px;font-weight:600}.education-grid p{color:var(--muted-foreground);margin:0;font-size:12px}.education-grid small{color:var(--muted-foreground);margin-top:14px;font-size:10px;display:block}.contact-section{border-top:1px solid var(--border);margin-top:115px;padding-top:28px;padding-bottom:115px}.contact-content{text-align:center;max-width:730px;margin:45px auto 0}.contact-content>span{color:var(--accent-mint);font-size:9px}.contact-content h2{font-family:var(--font-display);margin:19px 0 11px;font-size:clamp(37px,5vw,59px);font-weight:600;line-height:1.12}.contact-content>p{color:var(--muted-foreground);font-size:13px}.contact-email{color:var(--accent-blue);font-family:var(--font-display);align-items:center;gap:8px;margin-top:14px;font-size:18px;display:inline-flex}.contact-email svg{width:16px}.contact-actions{justify-content:center;gap:9px;margin-top:20px;display:flex}.site-footer{border-top:1px solid var(--border);grid-template-columns:1fr 1fr 1fr;align-items:center;gap:15px;width:min(1320px,100% - 64px);margin:0 auto;padding:24px 0 28px;display:grid}.site-footer>div:first-child{gap:3px;display:grid}.site-footer>div:first-child strong{font-family:var(--font-display);font-size:12px}.site-footer>div:first-child span,.site-footer>p{color:var(--muted-foreground);font-size:10px}.footer-links{color:var(--muted-foreground);flex-wrap:wrap;justify-content:center;gap:16px;font-size:10px;display:flex}.site-footer>p{text-align:right;justify-self:end;margin:0}.site-footer>p span{margin-left:8px;display:inline-block}.case-page{padding-top:49px}.back-link{color:var(--muted-foreground);align-items:center;gap:7px;font-size:11px;display:inline-flex}.back-link:hover{color:var(--accent-blue)}.case-overline{color:var(--muted-foreground);text-transform:uppercase;align-items:center;gap:10px;margin-top:38px;display:flex}.case-overline span{color:var(--accent-blue)}.case-heading{max-width:830px;margin:22px 0 35px}.case-heading h1{font-family:var(--font-display);margin:0;font-size:clamp(39px,5vw,65px);font-weight:600;line-height:1.12}.case-heading p{max-width:660px;color:var(--muted-foreground);margin:17px 0 0;font-size:16px;line-height:1.7}.case-live-link{border-bottom:1px solid var(--line-subtle);color:var(--accent-blue);align-items:center;gap:7px;margin-top:15px;padding-bottom:4px;font-size:12px;display:inline-flex}.case-intro-grid{border-bottom:1px solid var(--border);grid-template-columns:1fr 2fr;gap:45px;padding:36px 0;display:grid}.case-intro-grid>p{max-width:650px;color:var(--secondary-foreground);font-family:var(--font-display);margin:0;font-size:20px;line-height:1.65}.case-content-grid{grid-template-columns:1fr 1fr;gap:54px;padding:49px 0 45px;display:grid}.case-content-grid section{border-top:1px solid var(--border);padding-top:17px}.case-kicker{color:var(--accent-blue);text-transform:uppercase}.case-content-grid h2,.case-details h2,.case-next h2{font-family:var(--font-display);margin:16px 0 9px;font-size:23px;font-weight:600}.case-content-grid p{max-width:495px;color:var(--muted-foreground);margin:0;font-size:13px;line-height:1.8}.case-details{border-top:1px solid var(--border);padding-top:21px}.case-details ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 34px;margin:26px 0 0;padding:0;list-style:none;display:grid}.case-details li{color:var(--muted-foreground);align-items:start;gap:10px;font-size:12px;line-height:1.7;display:flex}.case-details li svg{color:var(--accent-mint);flex:none;margin-top:2px}.case-tech{border-top:1px solid var(--border);margin-top:44px;padding-top:20px}.case-tech>div{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.case-disclosure{border-left:1px solid var(--accent-mint);color:var(--muted-foreground);margin-top:35px;padding:2px 0 2px 14px;font-size:10px;line-height:1.8}.case-next{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;margin-top:60px;padding:26px 0 35px;display:flex}.case-next>div>span{color:var(--muted-foreground);font-family:var(--font-mono);font-size:9px}.case-next h2{margin:7px 0 0;font-size:18px}.flow-art,.integration-art,.workflow-art{z-index:1;justify-content:center;align-items:center;gap:15px;width:min(80%,690px);display:flex}.flow-art span,.flow-art b,.integration-art span,.workflow-art span{border:1px solid var(--border);background:var(--surface-raised);font-family:var(--font-mono);text-align:center;border-radius:5px;padding:13px 15px;font-size:10px;font-weight:500}.flow-art b{border-color:var(--accent-blue)}@supports (color:color-mix(in lab, red, red)){.flow-art b{border-color:color-mix(in oklab, var(--accent-blue) 54%, var(--border))}}.flow-art b{color:var(--accent-blue);font-family:var(--font-display);font-size:13px}.flow-art i,.integration-art i,.workflow-art i{background:var(--accent-mint);width:35px;height:1px}.integration-art span{padding:14px 18px}.integration-art span:nth-of-type(2){color:var(--accent-blue)}.chat-art{z-index:1;border:1px solid var(--border);background:var(--surface-raised);border-radius:7px;gap:14px;width:65%;padding:22px;display:grid}.chat-art span,.hospital-art>span{color:var(--accent-blue);font-family:var(--font-mono);font-size:9px}.chat-art i,.chat-art b{border:1px solid var(--border);max-width:280px;color:var(--muted-foreground);border-radius:5px;padding:12px;font-size:11px;font-weight:400}.chat-art b{border-color:var(--accent-mint);justify-self:end}@supports (color:color-mix(in lab, red, red)){.chat-art b{border-color:color-mix(in oklab, var(--accent-mint) 34%, var(--border))}}.chat-art b{color:var(--secondary-foreground)}.hospital-art{z-index:1;border:1px solid var(--border);background:var(--surface-raised);border-radius:7px;gap:18px;width:65%;padding:21px;display:grid}.hospital-art>div{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.hospital-art>div i{border:1px solid var(--border);background:linear-gradient(180deg, var(--accent-blue) 0 2px, transparent 2px);opacity:.75;border-radius:4px;height:48px}.hospital-art>b{color:var(--muted-foreground);font-family:var(--font-mono);font-size:8px;font-weight:400}.workflow-art{gap:11px;width:min(86%,720px)}.workflow-art span{color:var(--secondary-foreground);padding:12px;font-size:9px}.workflow-art i{flex:1;min-width:12px}.resume-page{padding-top:49px;padding-bottom:65px}.resume-heading{justify-content:space-between;align-items:end;gap:20px;margin:34px 0 24px;display:flex}.resume-heading h1{font-family:var(--font-display);margin:12px 0;font-size:clamp(42px,5vw,62px);font-weight:600;line-height:1.1}.resume-heading p{color:var(--muted-foreground);margin:0;font-size:13px}.resume-heading>svg{width:43px;height:43px;color:var(--accent-blue);margin-bottom:7px}.resume-actions{flex-wrap:wrap;gap:9px;margin-bottom:22px;display:flex}.resume-frame-wrap{border:1px solid var(--border);background:var(--surface-raised);border-radius:7px;overflow:hidden}.resume-frame{background:var(--surface-raised);border:0;width:100%;height:min(1130px,115vh);display:block}.resume-fallback{color:var(--muted-foreground);font-size:9px}@media (width>=1500px){.shell-width{width:min(1240px,100% - 96px)}.home-intro{gap:72px;padding-top:88px}.intro-art-wrap{min-height:500px}}@media (width<=900px){.shell-width{width:min(100% - 44px,740px)}.nav-inner,.site-footer{width:calc(100% - 44px)}.home-intro{grid-template-columns:1fr .9fr;gap:30px;padding-top:55px}.intro-art-wrap{min-height:410px}.intro-copy h1{font-size:58px}.intro-actions{gap:5px}.intro-actions .inline-flex{padding-inline:11px}.architecture-visual{padding-inline:20px}.architecture-connector{width:calc(100% - 53px);left:50px}.enterprise-type{display:none}.enterprise-row{grid-template-columns:38px minmax(0,1fr) 20px}.about-layout{gap:35px}.timeline-main ul{grid-template-columns:1fr;gap:6px}}@media (width<=640px){.shell-width{width:calc(100% - 36px)}.nav-inner{width:calc(100% - 36px);height:65px}.wordmark-copy small{font-size:8px}.nav-links{display:none}.mobile-menu-button{display:inline-flex}.mobile-nav{border-top:1px solid var(--border);background:var(--background);flex-direction:column;gap:0;padding:4px 18px 12px;display:flex}.mobile-nav a{border-bottom:1px solid var(--border);color:var(--muted-foreground);justify-content:space-between;align-items:center;padding:13px 0;font-size:13px;display:flex}.home-intro{flex-direction:column;gap:24px;padding-top:43px;display:flex}.intro-copy{padding-top:0}.eyebrow{gap:6px;font-size:8px}.intro-copy h1{margin-top:22px;font-size:clamp(48px,13vw,64px)}.intro-statement{margin-top:20px;font-size:21px}.intro-description{font-size:13px}.expertise-list{gap:6px;margin-top:17px}.expertise-list span{padding:5px 8px;font-size:10px}.intro-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.intro-actions>:first-child{grid-column:span 2}.intro-actions>*,.intro-actions .inline-flex{width:100%}.location-mark{margin-top:21px}.intro-art-wrap{min-height:300px}.art-side-label{font-size:8px;right:9px}.art-index{font-size:8px;top:14px;left:14px;right:14px}.art-overlay{bottom:12px;left:12px;right:12px}.intro-bottomline{font-size:8px}.section-band{padding-top:77px}.section-heading-row{gap:13px;margin:19px 0 23px;display:grid}.section-heading-row h2,.about-layout h2{font-size:35px}.section-heading-row>p{font-size:12px}.architecture-visual{padding:18px 14px 14px}.architecture-head{font-size:7px}.architecture-flow{grid-template-columns:1fr;gap:0;padding:25px 4px 23px}.architecture-step{grid-template-columns:32px 40px 1fr;align-items:center;gap:10px;min-height:62px;display:grid}.architecture-index{grid-column:1}.architecture-node-icon{grid-area:1/2}.architecture-name{grid-area:1/3;max-width:none;font-size:12px}.architecture-connector{width:1px;height:18px;top:47px;left:23px}.architecture-connector i{width:1px;height:8px;animation:2.8s ease-in-out infinite signal-down}@keyframes signal-down{0%{opacity:.3;transform:translateY(0)}55%{opacity:1}to{opacity:.2;transform:translateY(10px)}}.architecture-foot{flex-wrap:wrap;gap:8px;font-size:8px}.featured-grid{grid-template-columns:1fr;gap:13px}.project-visual-compact{min-height:205px}.project-card-body{padding:17px 17px 16px}.project-card-body h3{margin-top:15px;font-size:20px}.project-card-body p{min-height:auto}.project-live{margin:0 17px 16px}.enterprise-row{grid-template-columns:25px minmax(0,1fr) 18px;gap:9px;padding:16px 0}.enterprise-row-copy strong{font-size:13px}.enterprise-row-copy small{font-size:10px}.about-layout{grid-template-columns:1fr;gap:20px;margin-top:24px}.about-copy p{font-size:12px}.about-stats{grid-template-columns:1fr;margin-top:33px}.about-stats>div,.about-stats>div+div{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:32px 1fr;gap:4px 8px;padding:14px 0}.about-stats>div:last-child{border-bottom:0}.about-stats span{grid-row:span 2}.about-stats small{font-size:10px}.timeline-entry{grid-template-columns:29px minmax(0,1fr);gap:8px;padding:19px 0}.timeline-title{gap:7px;display:grid}.timeline-title h3{font-size:15px}.timeline-title p{font-size:11px}.timeline-title>span{font-size:9px}.timeline-main ul{margin-top:13px}.timeline-main li{font-size:10px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.skill-group h3{font-size:12px}.skill-group>div{gap:5px}.skill-group>div span{padding:4px 6px;font-size:9px}.education-grid{grid-template-columns:1fr;gap:12px}.education-grid h3{font-size:16px}.contact-section{margin-top:78px;padding-bottom:75px}.contact-content{margin-top:33px}.contact-content h2{font-size:40px}.contact-content>p{max-width:310px;margin-inline:auto;font-size:12px}.contact-email{font-size:15px}.site-footer{grid-template-columns:1fr 1fr;gap:19px 10px;width:calc(100% - 36px)}.footer-links{justify-content:end;gap:10px;font-size:9px}.site-footer>p{text-align:left;grid-column:1/-1;justify-self:start}.case-page{padding-top:32px}.case-overline{flex-wrap:wrap;gap:8px;margin-top:27px;font-size:8px}.case-heading{margin:17px 0 24px}.case-heading h1{font-size:40px}.case-heading p{margin-top:12px;font-size:13px}.case-page>.project-visual{min-height:260px}.case-intro-grid{grid-template-columns:1fr;gap:16px;padding:25px 0}.case-intro-grid>p{font-size:17px}.case-content-grid{grid-template-columns:1fr;gap:28px;padding:30px 0}.case-content-grid h2,.case-details h2{font-size:20px}.case-content-grid p{font-size:12px}.case-details ul{grid-template-columns:1fr;gap:10px}.case-next{flex-direction:column;align-items:start;margin-top:40px}.case-next h2{font-size:17px}.flow-art,.integration-art,.workflow-art{gap:6px;width:90%}.flow-art span,.flow-art b,.integration-art span,.workflow-art span{padding:9px 7px;font-size:7px}.flow-art b{font-size:9px}.flow-art i,.integration-art i,.workflow-art i{width:14px}.chat-art,.hospital-art{width:83%;padding:15px}.resume-page{padding-top:33px}.resume-heading{align-items:start;margin:25px 0 20px}.resume-heading h1{font-size:42px}.resume-heading>svg{width:28px;height:28px}.resume-frame{height:78vh;min-height:500px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--motion-ease:cubic-bezier(.19,1,.22,1);--font-sans:"DM Sans", sans-serif;--font-display:"Manrope", sans-serif;--font-mono:"JetBrains Mono", monospace}.site-nav{border-bottom-color:#272b33}.nav-inner{height:82px}.wordmark{align-items:center;gap:17px}.signature-name,.footer-signature{font-family:var(--font-display);letter-spacing:-.072em;color:#f4f5f8;font-size:23px;font-weight:750;line-height:1}.signature-dot,.footer-signature span{color:#85a9ff}.signature-name{transition:color .25s,letter-spacing .3s}.wordmark:hover .signature-name{letter-spacing:-.064em;color:#fff}.signature-divider{background:#39404a;width:1px;height:22px}.signature-caption{font-family:var(--font-sans);letter-spacing:.16em;color:#88909e;font-size:9px;font-weight:550}.nav-links{gap:35px}.nav-links>a{position:relative}.nav-links>a:not(.nav-resume):after{content:"";transform-origin:0;width:100%;height:1px;transition:transform .35s var(--motion-ease);background:#8fa9ff;position:absolute;bottom:-8px;left:0;transform:scaleX(0)}.nav-links>a:not(.nav-resume):hover:after{transform:scaleX(1)}.nav-resume{padding:8px 0 8px 10px}.nav-scroll-line{transform-origin:0;z-index:3;opacity:.85;background:linear-gradient(90deg,#78d3c7,#8fa7ff 55%,#a196ff);width:100%;height:1px;position:absolute;bottom:-1px;left:0;transform:scaleX(0)}@supports (animation-timeline:scroll()){.nav-scroll-line{animation:linear both rf-scroll-progress;animation-timeline:scroll(root)}}@keyframes rf-scroll-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.mobile-menu-button{color:#f3f5ff;background:#151921;border:1px solid #333a49;border-radius:10px;padding:9px}.home-intro{perspective:1250px;isolation:isolate}.home-intro:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#26375f1f,#0000 69%);width:74%;height:440px;position:absolute;top:-110px;left:-17%}.intro-copy{perspective:1200px}.intro-copy>.eyebrow{animation:rf-hero-approach .9s .1s var(--motion-ease) both}.intro-copy>h1{animation:rf-hero-approach 1.13s .21s var(--motion-ease) both;letter-spacing:-.065em}.intro-copy>.intro-statement{animation:rf-hero-approach 1.08s .35s var(--motion-ease) both;letter-spacing:-.034em}.intro-copy>.intro-description{animation:rf-hero-approach 1.04s .47s var(--motion-ease) both}.intro-copy>.expertise-list{animation:rf-hero-approach 1.04s .58s var(--motion-ease) both}.intro-copy>.intro-actions{animation:rf-hero-approach 1.04s .68s var(--motion-ease) both}.intro-copy>.location-mark{animation:rf-hero-approach .9s .76s var(--motion-ease) both}.intro-bottomline{animation:rf-hero-approach .95s .92s var(--motion-ease) both}@keyframes rf-hero-approach{0%{opacity:0;filter:blur(12px);transform:perspective(1000px)translate3d(0,65px,-185px)rotateX(6deg)scale(.94)}65%{opacity:1;filter:blur()}to{opacity:1;filter:blur();transform:perspective(1000px)translate(0)rotateX(0)scale(1)}}.intro-art-wrap{transform-origin:70%;animation:rf-art-approach 1.65s .22s var(--motion-ease) both;border-color:#303743;border-radius:13px;box-shadow:0 28px 90px #0003}@keyframes rf-art-approach{0%{opacity:0;filter:blur(15px);transform:perspective(1200px)translate3d(65px,30px,-320px)rotateY(-9deg)rotateX(7deg)scale(.89)}66%{opacity:1;filter:blur()}to{opacity:1;filter:blur();transform:perspective(1200px)translate(0)rotateY(0)rotateX(0)scale(1)}}.intro-art{transform-origin:55% 45%;will-change:transform;animation:23s ease-in-out 2s infinite alternate rf-art-drift}@keyframes rf-art-drift{0%{transform:scale(1.035)translate(-.35%,.15%)}to{transform:scale(1.115)translate(1%,-1.1%)}}.hero-light-wash{z-index:1;mix-blend-mode:screen;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#b0c2ff0e 49%,#0000 59%);animation:13s ease-in-out 2s infinite rf-light-wash;position:absolute;inset:-20%}@keyframes rf-light-wash{0%,20%{transform:translate(-50%)}65%,to{transform:translate(53%)}}.intro-art-wrap:after{z-index:1}.art-index,.art-side-label,.art-overlay{z-index:2}.intro-art-wrap:hover .intro-art{animation-play-state:paused}.expertise-list span{transition:background .24s,border-color .24s,transform .24s}.expertise-list span:hover{background:#192337;border-color:#4e648b;transform:translateY(-3px)}[data-reveal=depth]{transform-origin:50% 100%;transition:opacity .9s ease, transform 1.1s var(--motion-ease), filter .9s ease}.motion-enabled [data-reveal=depth]:not(.is-visible){opacity:0;filter:blur(12px);transform:perspective(1100px)translate3d(0,98px,-240px)rotateX(8deg)scale(.89)}.motion-enabled [data-reveal=depth].is-visible{opacity:1;filter:none;transform:none}.featured-grid>:nth-child(2),.skills-grid>:nth-child(2),.education-grid>:nth-child(2){transition-delay:.11s}.featured-grid>:nth-child(3),.skills-grid>:nth-child(3){transition-delay:.175s}.featured-grid>:nth-child(4),.skills-grid>:nth-child(4){transition-delay:.24s}.featured-grid>:nth-child(5),.skills-grid>:nth-child(5){transition-delay:.3s}.featured-grid>:nth-child(6),.skills-grid>:nth-child(6){transition-delay:.35s}.project-card{isolation:isolate;transition:box-shadow .48s ease,border-color .4s ease,transform .48s var(--motion-ease),opacity .9s ease, filter .9s ease;position:relative;box-shadow:0 0 #0000}.project-card:before{content:"";z-index:2;opacity:0;border-radius:inherit;background:radial-gradient(440px circle at var(--glow-x,50%) var(--glow-y,0%), #7992dc29, transparent 65%);pointer-events:none;transition:opacity .45s;position:absolute;inset:0}.project-card:hover{border-color:#4a5871;transform:translateY(-5px);box-shadow:0 25px 55px -34px #4f6bb461}.project-card:hover:before{opacity:1}.project-screenshot{transition:transform 1.05s var(--motion-ease),filter .6s ease}.project-card:hover .project-screenshot{filter:saturate(1.09);transform:scale(1.045)}.enterprise-row:hover{background:linear-gradient(90deg,#4f6ba012,#0000 68%)}.cinematic-footer{background:#080b11;border-top:1px solid #303744;margin-top:115px;position:relative;overflow:hidden}.footer-film{isolation:isolate;align-items:center;min-height:630px;display:flex;position:relative;overflow:hidden}.footer-film-video{object-fit:cover;z-index:-4;opacity:.88;width:100%;height:100%;position:absolute;inset:0}.footer-film-shade{z-index:-3;background:linear-gradient(90deg,#070a10eb 0%,#070b14ba 46%,#070c175c 100%),linear-gradient(#080b1133,#0000 66%,#080b11eb);position:absolute;inset:0}.footer-film-grid{z-index:-2;opacity:.2;pointer-events:none;background-image:linear-gradient(#92a7ff14 1px,#0000 1px),linear-gradient(90deg,#92a7ff14 1px,#0000 1px);background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#000,#0000 72%);mask-image:linear-gradient(90deg,#000,#0000 72%)}.footer-film-content{padding-top:100px;padding-bottom:110px;position:relative}.footer-film-eyebrow{font-family:var(--font-mono);letter-spacing:.16em;color:#a8b7d3;align-items:center;gap:12px;font-size:10px;display:flex}.footer-signal{background:#73d9b9;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 5px #73d9b914,0 0 16px #73d9b999}.footer-film h2{font-family:var(--font-display);letter-spacing:-.074em;color:#f5f6fb;margin:28px 0 20px;font-size:clamp(46px,6.8vw,94px);font-weight:600;line-height:1.08}.footer-film h2 em{color:#b3c0ef;font-style:normal}.footer-film p{color:#b5bece;max-width:490px;font-size:15px;line-height:1.9}.footer-film-actions{flex-wrap:wrap;align-items:center;gap:13px;margin-top:32px;display:flex}.footer-primary-action{color:#101825;background:#e9edfc;border:1px solid #e8edff;border-radius:8px;justify-content:center;align-items:center;gap:17px;padding:13px 19px;font-size:12px;font-weight:700;transition:background .25s,transform .25s,box-shadow .25s;display:inline-flex}.footer-primary-action:hover{background:#fff;transform:translateY(-3px);box-shadow:0 11px 37px #a4b8ff36}.footer-film-actions>button{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1b273c8a;border-color:#8996b554;min-height:45px}.footer-film-index{color:#8e9eb7;font-family:var(--font-mono);letter-spacing:.18em;font-size:9px;position:absolute;bottom:40px;right:0}.footer-marquee{background:#0e1420;border-block:1px solid #2a3546;align-items:center;height:61px;display:flex;overflow:hidden}.footer-marquee-track{white-space:nowrap;align-items:center;width:max-content;animation:36s linear infinite rf-marquee;display:flex}.footer-marquee-track>span{color:#9baac2;font-family:var(--font-display);letter-spacing:.14em;word-spacing:7px;padding-right:38px;font-size:12px;font-weight:600}.footer-marquee-track i{color:#7ee0be;margin-inline:24px;font-style:normal}@keyframes rf-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.footer-base{padding-block:37px 26px}.footer-base-top{justify-content:space-between;align-items:center;gap:22px;padding-bottom:48px;display:flex}.footer-signature{font-size:34px}.footer-base-social{align-items:center;gap:25px;font-size:11px;display:flex}.footer-base-social a{color:#bac4d7;align-items:center;gap:5px;transition:color .22s;display:inline-flex}.footer-base-social a:hover{color:#f3f5ff}.footer-base-bottom{color:#7f8a9e;border-top:1px solid #303744;justify-content:space-between;align-items:center;gap:15px;padding-top:20px;font-size:10px;display:flex}.footer-base-bottom a{color:#b8c6e3}.footer-base-bottom a:hover{color:#fff}@media (width<=900px){.signature-caption{letter-spacing:.09em;font-size:8px}.nav-links{gap:20px}.footer-film{min-height:580px}.footer-film h2{font-size:clamp(44px,7vw,74px)}}@media (width<=640px){.nav-inner{height:68px}.signature-name{font-size:23px}.signature-divider,.signature-caption{display:none}.mobile-menu-button{justify-content:center;align-items:center;display:inline-flex}.intro-art-wrap{min-height:350px}.intro-copy h1{letter-spacing:-.06em}.cinematic-footer{margin-top:65px}.footer-film{min-height:570px}.footer-film-content{padding-top:82px;padding-bottom:90px}.footer-film h2{margin:25px 0 18px;font-size:clamp(39px,10vw,60px)}.footer-film p{max-width:380px;font-size:13px}.footer-film-shade{background:linear-gradient(90deg,#070a10f0,#070a10a6),linear-gradient(#0000 55%,#090c12)}.footer-film-index{font-size:8px;bottom:25px;left:0;right:auto}.footer-marquee{height:50px}.footer-marquee-track>span{font-size:10px}.footer-base{padding-block:27px}.footer-base-top{flex-direction:column;align-items:start;gap:24px;padding-bottom:29px}.footer-signature{font-size:30px}.footer-base-social{gap:20px}.footer-base-bottom{flex-direction:column;align-items:start;gap:9px}}@media (prefers-reduced-motion:reduce){.intro-copy>*,.intro-bottomline,.intro-art-wrap,.intro-art,.hero-light-wash,.footer-marquee-track{filter:none!important;animation:none!important;transform:none!important}.motion-enabled [data-reveal=depth]:not(.is-visible){opacity:1!important;filter:none!important;transform:none!important}.footer-film-video{display:none}}.motion-enabled .project-card[data-reveal=depth].is-visible:hover{transform:translateY(-5px)}.intro-bottomline a svg{animation:3.5s ease-in-out infinite rf-soft-bounce}@keyframes rf-soft-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}@media (prefers-reduced-motion:reduce){.intro-bottomline a svg{animation:none!important}}.project-visual-compact.project-visual-has-image{aspect-ratio:1280/978;background:#111821;padding:0}.project-visual-compact.project-visual-has-image .project-screenshot{object-fit:cover;border:0;border-radius:0;width:100%;height:100%}.case-page>.project-visual-has-image{border-color:#303645;max-width:920px;min-height:0;margin-inline:auto}.case-page>.visual-ledger.project-visual-has-image,.case-page>.visual-fragrance.project-visual-has-image,.case-page>.visual-systems.project-visual-has-image{aspect-ratio:1280/978}.case-page>.project-visual-has-image .project-screenshot{object-fit:cover;border:0;border-radius:0;width:100%;height:100%;max-height:none;position:absolute;inset:0}.case-page>.visual-signals.project-visual-has-image{aspect-ratio:3/2}.case-page>.visual-signals .project-generated-image{object-fit:cover;border:0;border-radius:0}.project-card .visual-signals .project-generated-image{object-fit:cover}.case-motivation{background:radial-gradient(at 90% 0,#26325355,#0000 60%),#121720;border:1px solid #303744;border-radius:12px;margin-top:0;padding:32px 35px;position:relative}.case-motivation h2{font:600 clamp(22px,2.7vw,30px)/1.3 var(--font-display);letter-spacing:-.04em;margin:13px 0}.case-motivation p{max-width:780px;color:var(--secondary-foreground);font-size:14px;line-height:1.85}.hero-conversation-action{color:var(--secondary-foreground);cursor:pointer;background:0 0;border:1px solid #3b475e;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:12px;transition:border-color .2s,background .2s,transform .2s;display:inline-flex}.hero-conversation-action:hover{background:#1a2333;border-color:#8396bc;transform:translateY(-2px)}.footer-direct-email{color:#d9e0f7;text-underline-offset:5px;align-items:center;gap:9px;font-size:12px;-webkit-text-decoration:underline #7f90bd;text-decoration:underline #7f90bd;transition:color .2s;display:inline-flex}.footer-direct-email:hover{color:#fff}.conversation-dialog{color:#eef0f7;background:#111722;border:1px solid #45506a;border-radius:17px;width:min(620px,100vw - 24px);max-height:min(90dvh,860px);margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;box-shadow:0 35px 135px #000d}.conversation-dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#02050ccc}.conversation-panel{background:radial-gradient(circle at 90% 0,#556db227,#0000 44%),#111722;padding:clamp(20px,4vw,36px)}.conversation-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.conversation-eyebrow{color:#adb9d1;font:500 10px var(--font-mono);letter-spacing:.12em;align-items:center;gap:9px;display:inline-flex}.conversation-status{background:#64d9b3;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 15px #64d9b366}.conversation-close{color:#e7eaf5;cursor:pointer;background:#1b2434;border:1px solid #43506a;border-radius:8px;place-items:center;width:35px;height:35px;display:grid}.conversation-panel h2{font:600 clamp(29px,4vw,42px)/1.18 var(--font-display);letter-spacing:-.065em;margin:17px 0 7px}.conversation-panel h2 em{color:#a5b6fd;font-style:normal}.conversation-lead{color:#b3bdd1;max-width:490px;margin:0 0 23px;font-size:13px;line-height:1.8}.conversation-form{gap:15px;display:grid}.conversation-field-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.conversation-form label{color:#e0e6f3;gap:8px;font-size:11px;font-weight:600;display:grid}.conversation-form label>span{color:#8eafff;display:inline}.conversation-form label .optional{color:#808fa7;font:9px var(--font-mono)}.conversation-form input,.conversation-form select,.conversation-form textarea{color:#f2f5fd;width:100%;min-height:42px;font:400 12px var(--font-sans);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d131d;border:1px solid #384258;border-radius:8px;padding:11px 13px;transition:border-color .2s}.conversation-form input::placeholder,.conversation-form textarea::placeholder{color:#77859e}.conversation-form textarea{resize:vertical;min-height:112px;line-height:1.65}.conversation-form input:focus,.conversation-form select:focus,.conversation-form textarea:focus{outline-offset:1px;border-color:#819cf5;outline:2px solid #819cf5}.conversation-form-bottom{justify-content:space-between;align-items:center;gap:20px;margin-top:3px;display:flex}.conversation-form-bottom p{color:#94a2bb;max-width:300px;margin:0;font-size:10px;line-height:1.6}.conversation-form-bottom button{cursor:pointer;color:#141c2b;background:#edf0fb;border:1px solid #e6ebfc;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;padding:12px 15px;font-size:11px;font-weight:700;display:inline-flex}.conversation-form-bottom button:hover{background:#fff}.conversation-draft{color:#d7f2f8;background:#12303b;border:1px solid #37596a;border-radius:10px;gap:13px;margin-top:20px;padding:15px;display:flex}.conversation-draft>svg{flex:none}.conversation-draft p{color:#b1cbd7;margin:5px 0 10px;font-size:11px;line-height:1.6}.conversation-draft-links{flex-wrap:wrap;gap:14px;display:flex}.conversation-draft-links a{color:#c7dbff;text-underline-offset:3px;align-items:center;gap:5px;font-size:11px;font-weight:700;text-decoration:underline;display:inline-flex}@media (width<=640px){.conversation-field-row{grid-template-columns:1fr}.conversation-form-bottom{flex-direction:column;align-items:stretch;gap:12px}.conversation-form-bottom button{width:100%}.case-motivation{padding:21px 19px}.case-motivation p{font-size:12px}.project-visual-compact.project-visual-has-image,.case-page>.project-visual-has-image{min-height: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}}
