@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@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}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: 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-out: 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); @keyframes enter { from { 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)); }}--animate-accordion-down: 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); --animate-accordion-up: 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); --animate-collapsible-down: collapsible-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); --animate-collapsible-up: collapsible-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); @keyframes accordion-down { from { 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 { from { 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 collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms); --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms); animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms); animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms); --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px); --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px); --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)/100); --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)/100); --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%); --tw-enter-scale: calc(--value(ratio)); --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%); --tw-enter-scale: calc(--value(ratio)*-1); --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%); --tw-exit-scale: calc(--value(ratio)); --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%); --tw-exit-scale: calc(--value(ratio)*-1); --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg); --tw-enter-rotate: calc(--value(ratio)*360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg); --tw-enter-rotate: calc(--value(ratio)*-360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg); --tw-exit-rotate: calc(--value(ratio)*360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg); --tw-exit-rotate: calc(--value(ratio)*-360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-y: calc(--value(ratio)*-100%); --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-y: calc(--value(ratio)*100%); --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-y: calc(--value(ratio)*-100%); --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-y: calc(--value(ratio)*100%); --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}
@custom-variant dark (&:is(.dark *));@theme inline{ --color-background: var(--background); --color-foreground: var(--foreground); --color-card: var(--card); --color-card-foreground: var(--card-foreground); --color-popover: var(--popover); --color-popover-foreground: var(--popover-foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); --color-secondary: var(--secondary); --color-secondary-foreground: var(--secondary-foreground); --color-muted: var(--muted); --color-muted-foreground: var(--muted-foreground); --color-accent: var(--accent); --color-accent-foreground: var(--accent-foreground); --color-destructive: var(--destructive); --color-destructive-foreground: var(--destructive-foreground); --color-border: var(--border); --color-input: var(--input); --color-ring: var(--ring);  --color-sidebar: var(--sidebar); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-border: var(--sidebar-border); --color-sidebar-ring: var(--sidebar-ring);  --color-chart-1: var(--chart-1); --color-chart-2: var(--chart-2); --color-chart-3: var(--chart-3); --color-chart-4: var(--chart-4); --color-chart-5: var(--chart-5);  --color-background-muted: var(--background-muted); --color-background-panel: var(--background-panel); --color-primary-muted: var(--primary-muted); --color-primary-bright: var(--primary-bright); --color-accent-muted: var(--accent-muted); --color-accent-bright: var(--accent-bright); --color-destructive-muted: var(--destructive-muted); --color-destructive-bright: var(--destructive-bright);  --color-cyan-400: #22d3ee; --color-cyan-500: #06b6d4; --color-cyan-600: #0891b2; --color-cyan-900: #164e63; --color-cyan-950: #083344; --color-red-500: #f43f5e; --color-red-900: #881337;  --font-sans: var(--font-geist-sans); --font-mono: var(--font-geist-mono); --font-orbitron: "Orbitron", sans-serif; --font-inter: "Inter", sans-serif;  --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px); --radius-2xl: calc(var(--radius) + 8px); --radius-3xl: calc(var(--radius) + 12px); --radius-4xl: calc(var(--radius) + 16px);}:root,.dark{--radius:.75rem;--background:#090a0c;--foreground:#f2f2f2;--card:#0d0f12;--card-foreground:#f2f2f2;--popover:#111317;--popover-foreground:#f2f2f2;--primary:#20a4bc;--primary-foreground:#0a0a0a;--secondary:#111317;--secondary-foreground:#f2f2f2;--muted:#111317;--muted-foreground:#999;--accent:#16181d;--accent-foreground:#f2f2f2;--destructive:#f43e5c;--destructive-foreground:#fafafa;--border:#ffffff14;--input:#ffffff1f;--ring:#20a4bc;--chart-1:#20a4bc;--chart-2:#20d3ee;--chart-3:#f43e5c;--chart-4:#a855f7;--chart-5:#edb407;--sidebar:#090a0c;--sidebar-foreground:#f2f2f2;--sidebar-primary:#20a4bc;--sidebar-primary-foreground:#0a0a0a;--sidebar-accent:#111317;--sidebar-accent-foreground:#f2f2f2;--sidebar-border:#ffffff14;--sidebar-ring:#20a4bc;--background-muted:#0d0f12;--background-panel:#0b0c0f;--primary-muted:#1a8699;--primary-bright:#25bfda;--accent-muted:#16181d;--accent-bright:#0b0c0f;--destructive-muted:#f10e34;--destructive-bright:#f76e85}@apply border-border outline-ring/50;html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scroll-behavior:smooth}@apply bg-background text-foreground antialiased;body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background-image:radial-gradient(circle at 50% 0,#06b6d426 0%,#0000 50%),radial-gradient(circle at 0 100%,#f43f5e1a 0%,#0000 50%);background-attachment:fixed;min-height:100vh;font-family:Inter,sans-serif;font-size:16px;line-height:1.6}h1,h2,h3,h4,h5,h6{letter-spacing:-.02em;font-family:Orbitron,sans-serif;font-weight:700;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900}h2{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700}h3{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:600}p{color:#bfbfbf;line-height:1.7}.glass-panel{-webkit-backdrop-filter:blur(16px)saturate(180%);background:#0f172ab3;border:1px solid #ffffff14;box-shadow:0 25px 50px -12px #00000080,inset 0 1px #ffffff0d}.glass-card-hover{transition:all .4s cubic-bezier(.4,0,.2,1)}.glass-card-hover:hover{border-color:#06b6d466;transform:translateY(-2px);box-shadow:0 0 30px -10px #06b6d440,0 25px 50px -12px #00000080,inset 0 1px #ffffff14}.text-glow{text-shadow:0 0 20px #06b6d466,0 0 40px #06b6d433,0 0 80px #06b6d41a}.text-glow-red{text-shadow:0 0 20px #f43f5e66,0 0 40px #f43f5e33,0 0 80px #f43f5e1a}.glitch-text{color:#f43f5e;letter-spacing:.1em;text-transform:uppercase;font-family:Orbitron,monospace;animation:1s infinite glitch}@keyframes glitch{0%,to{text-shadow:2px 0 #06b6d4,-2px 0 #f43f5e;transform:translate(0)}25%{text-shadow:-2px 0 #06b6d4,2px 0 #f43f5e;transform:translate(-1px,1px)}50%{text-shadow:2px -2px #06b6d4,-2px 2px #f43f5e;transform:translate(1px,-1px)}75%{text-shadow:-2px -2px #06b6d4,2px 2px #f43f5e;transform:translate(-1px,-1px)}}.cyber-grid{background-image:linear-gradient(#06b6d408 1px,#0000 1px),linear-gradient(90deg,#06b6d408 1px,#0000 1px);background-size:50px 50px}.scanlines:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#0000001a 2px 4px);position:absolute;inset:0}.holographic{background:linear-gradient(135deg,#06b6d41a 0%,#a855f71a 50%,#f43f5e1a 100%);animation:3s ease-in-out infinite shimmer}@keyframes shimmer{0%,to{opacity:.5}50%{opacity:1}}.pulse-glow{animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px #06b6d433,0 0 10px #06b6d41a}50%{box-shadow:0 0 20px #06b6d466,0 0 40px #06b6d433}}.float{animation:6s ease-in-out infinite float}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.skeleton{background:linear-gradient(90deg,#171717cc 0%,#262626cc 50%,#171717cc 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.font-orbitron{font-family:Orbitron,sans-serif}.font-inter{font-family:Inter,sans-serif}.neon-border{border:1px solid #06b6d466;box-shadow:0 0 10px #06b6d433,0 0 20px #06b6d41a,inset 0 0 10px #06b6d40d}.card-shine{position:relative;overflow:hidden}.card-shine:before{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.card-shine:hover:before{left:100%}::-webkit-scrollbar{background:0 0;width:0}html{scrollbar-width:none;-ms-overflow-style:none}[data-timeline-parallax]{--timeline-parallax:0;position:relative}[data-timeline-parallax]:before{content:"";height:1px;transform:translateY(-50%) translateX(calc(var(--timeline-parallax) * 100px));pointer-events:none;z-index:1;background:linear-gradient(90deg,#0000,#06b6d44d,#0000);position:absolute;top:50%;left:0;right:0}::selection{color:#ededed;background:#06b6d44d}@keyframes tactical-scan{0%{opacity:0;transform:translateY(-100%)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(100%)}}.tactical-scan{position:relative;overflow:hidden}.tactical-scan:after{content:"";pointer-events:none;z-index:100;background:linear-gradient(90deg,#0000,#06b6d44d,#06b6d4cc,#06b6d44d,#0000);height:2px;animation:4s ease-in-out infinite tactical-scan;position:absolute;left:0;right:0;box-shadow:0 0 10px #06b6d4cc,0 0 20px #06b6d466}.holographic-glare{position:relative;overflow:hidden}.holographic-glare:before{content:"";background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%), #ffffff26 0%, #ffffff0d 20%, transparent 40%);opacity:0;pointer-events:none;z-index:10;transition:opacity .3s;position:absolute;inset:0}.holographic-glare:hover:before{opacity:1}.tilt-container{perspective:1200px;transform-style:preserve-3d}.tilt-card{transform-style:preserve-3d;transition:transform .3s cubic-bezier(.25,.46,.45,.94)}@keyframes decrypt{0%{opacity:0;filter:blur(10px);transform:scale(.95)}50%{opacity:.5;filter:blur(5px)}to{opacity:1;filter:blur();transform:scale(1)}}.decrypt-animation{animation:.8s cubic-bezier(.25,.46,.45,.94) forwards decrypt}@keyframes system-boot{0%{opacity:0;transform:translate(-20px)}50%{opacity:.5}to{opacity:1;transform:translate(0)}}.system-boot{animation:.4s cubic-bezier(.25,.46,.45,.94) forwards system-boot}.hazard-alert{background:#f43f5e0d;border:2px solid #f43f5e;position:relative;box-shadow:0 0 20px #f43f5e33,inset 0 0 20px #f43f5e0d}.hazard-alert:before{content:"";pointer-events:none;background:repeating-linear-gradient(45deg,#0000,#0000 10px,#f43f5e0d 10px 20px);position:absolute;inset:0}.glass-panel-enhanced{-webkit-backdrop-filter:blur(16px);background:#17171780;border:1px solid #06b6d433;box-shadow:0 25px 50px -12px #0009,0 0 0 1px #ffffff0d,inset 0 1px #ffffff1a}@keyframes status-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.status-indicator{animation:2s ease-in-out infinite status-pulse}@keyframes data-stream{0%{opacity:0;transform:translateY(-100%)}50%{opacity:.5}to{opacity:0;transform:translateY(100%)}}.data-stream{position:relative;overflow:hidden}.data-stream:after{content:"";pointer-events:none;background:linear-gradient(#0000,#06b6d41a,#0000);height:100px;animation:3s linear infinite data-stream;position:absolute;left:0;right:0}.scanlines-enhanced:after{content:"";pointer-events:none;z-index:50;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#ffffff05 2px 4px);position:absolute;inset:0}@keyframes flicker{0%,to{opacity:1}41%,43%{opacity:.8}45%{opacity:.9}}.system-flicker{animation:5s linear infinite flicker}.hud-grid{background-image:linear-gradient(#06b6d408 1px,#0000 1px),linear-gradient(90deg,#06b6d408 1px,#0000 1px);background-size:40px 40px}.terminal-text{letter-spacing:.05em;text-transform:uppercase;color:#06b6d4;text-shadow:0 0 5px #06b6d480;font-family:Roboto Mono,Courier New,monospace}@keyframes glitch-enhanced{0%,to{text-shadow:2px 0 #06b6d4,-2px 0 #f43f5e,0 0 10px #06b6d480;transform:translate(0)}20%{text-shadow:-2px 0 #06b6d4,2px 0 #f43f5e,0 0 15px #f43f5e80;transform:translate(-2px,1px)}40%{text-shadow:2px -2px #06b6d4,-2px 2px #f43f5e,0 0 20px #06b6d4b3;transform:translate(2px,-1px)}60%{text-shadow:-2px -2px #06b6d4,2px 2px #f43f5e,0 0 15px #f43f5e80;transform:translate(-1px,-2px)}80%{text-shadow:2px 2px #06b6d4,-2px -2px #f43f5e,0 0 10px #06b6d480;transform:translate(1px,2px)}}.glitch-enhanced{animation:1.5s infinite glitch-enhanced}@keyframes energy-shield{0%,to{box-shadow:0 0 5px #06b6d44d,0 0 10px #06b6d433,inset 0 0 5px #06b6d41a}50%{box-shadow:0 0 20px #06b6d480,0 0 40px #06b6d44d,inset 0 0 10px #06b6d433}}.energy-shield{animation:2s ease-in-out infinite energy-shield}.font-roboto-mono{font-family:Roboto Mono,Courier New,monospace}.spring-hover{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.spring-hover:hover{transform:scale(1.05)}.spring-hover:active{transition:all .1s cubic-bezier(.25,.46,.45,.94);transform:scale(.95)}@media (max-width:640px){.glass-panel{-webkit-backdrop-filter:blur(8px)}.glitch-text,.glitch-enhanced{animation:none}.blur-3xl{filter:blur(40px)}button,a,[role=button]{min-width:44px;min-height:44px}body{font-size:16px;line-height:1.5}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:641px) and (max-width:1024px){.grid-cols-1{grid-template-columns:repeat(2,minmax(0,1fr))}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4d4d4d}:focus-visible{outline-offset:2px;outline:2px solid #20a4bc}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
