@tailwind base;@tailwind components;@tailwind utilities;:root{--button-outline: rgba(255,255,255, .1);--badge-outline: rgba(255,255,255, .05);--opaque-button-border-intensity: 9;--elevate-1: rgba(255,255,255, .04);--elevate-2: rgba(255,255,255, .09);--background: 222 47% 5%;--foreground: 210 40% 95%;--border: 217 33% 14%;--card: 222 44% 7%;--card-foreground: 210 40% 95%;--card-border: 217 33% 12%;--sidebar: 222 47% 6%;--sidebar-foreground: 210 40% 90%;--sidebar-border: 217 33% 12%;--sidebar-primary: 217 91% 55%;--sidebar-primary-foreground: 0 0% 100%;--sidebar-accent: 217 50% 12%;--sidebar-accent-foreground: 210 40% 95%;--sidebar-ring: 217 91% 55%;--popover: 222 44% 8%;--popover-foreground: 210 40% 95%;--popover-border: 217 33% 14%;--primary: 217 91% 55%;--primary-foreground: 0 0% 100%;--secondary: 217 33% 14%;--secondary-foreground: 210 40% 90%;--muted: 217 33% 12%;--muted-foreground: 215 20% 55%;--accent: 217 50% 12%;--accent-foreground: 210 40% 95%;--destructive: 0 72% 51%;--destructive-foreground: 0 0% 100%;--input: 217 33% 18%;--ring: 217 91% 55%;--chart-1: 217 91% 55%;--chart-2: 200 80% 50%;--chart-3: 173 58% 39%;--chart-4: 262 60% 55%;--chart-5: 142 71% 45%;--font-sans: "Inter", "Segoe UI", sans-serif;--font-serif: Georgia, serif;--font-mono: "JetBrains Mono", Menlo, monospace;--radius: .5rem;--shadow-2xs: 0px 2px 4px hsl(217 60% 3% / .5);--shadow-xs: 0px 2px 4px hsl(217 60% 3% / .5);--shadow-sm: 0px 2px 4px hsl(217 60% 3% / .4), 0px 1px 2px hsl(217 60% 3% / .3);--shadow: 0px 2px 4px hsl(217 60% 3% / .4), 0px 1px 2px hsl(217 60% 3% / .3);--shadow-md: 0px 4px 8px hsl(217 60% 3% / .4), 0px 2px 4px hsl(217 60% 3% / .3);--shadow-lg: 0px 8px 16px hsl(217 60% 3% / .4), 0px 4px 8px hsl(217 60% 3% / .3);--shadow-xl: 0px 16px 32px hsl(217 60% 3% / .4), 0px 8px 16px hsl(217 60% 3% / .3);--shadow-2xl: 0px 24px 48px hsl(217 60% 3% / .5);--tracking-normal: 0em;--spacing: .25rem;--sidebar-primary-border: hsl(var(--sidebar-primary));--sidebar-primary-border: hsl(from hsl(var(--sidebar-primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--sidebar-accent-border: hsl(var(--sidebar-accent));--sidebar-accent-border: hsl(from hsl(var(--sidebar-accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--primary-border: hsl(var(--primary));--primary-border: hsl(from hsl(var(--primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--secondary-border: hsl(var(--secondary));--secondary-border: hsl(from hsl(var(--secondary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--muted-border: hsl(var(--muted));--muted-border: hsl(from hsl(var(--muted)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--accent-border: hsl(var(--accent));--accent-border: hsl(from hsl(var(--accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--destructive-border: hsl(var(--destructive));--destructive-border: hsl(from hsl(var(--destructive)) h s calc(l + var(--opaque-button-border-intensity)) / alpha)}.dark{--button-outline: rgba(255,255,255, .1);--badge-outline: rgba(255,255,255, .05);--opaque-button-border-intensity: 9;--elevate-1: rgba(255,255,255, .04);--elevate-2: rgba(255,255,255, .09);--background: 222 47% 5%;--foreground: 210 40% 95%;--border: 217 33% 14%;--card: 222 44% 7%;--card-foreground: 210 40% 95%;--card-border: 217 33% 12%;--sidebar: 222 47% 6%;--sidebar-foreground: 210 40% 90%;--sidebar-border: 217 33% 12%;--sidebar-primary: 217 91% 55%;--sidebar-primary-foreground: 0 0% 100%;--sidebar-accent: 217 50% 12%;--sidebar-accent-foreground: 210 40% 95%;--sidebar-ring: 217 91% 55%;--popover: 222 44% 8%;--popover-foreground: 210 40% 95%;--popover-border: 217 33% 14%;--primary: 217 91% 55%;--primary-foreground: 0 0% 100%;--secondary: 217 33% 14%;--secondary-foreground: 210 40% 90%;--muted: 217 33% 12%;--muted-foreground: 215 20% 55%;--accent: 217 50% 12%;--accent-foreground: 210 40% 95%;--destructive: 0 72% 51%;--destructive-foreground: 0 0% 100%;--input: 217 33% 18%;--ring: 217 91% 55%;--chart-1: 217 91% 55%;--chart-2: 200 80% 50%;--chart-3: 173 58% 39%;--chart-4: 262 60% 55%;--chart-5: 142 71% 45%;--shadow-2xs: 0px 2px 4px hsl(217 60% 3% / .5);--shadow-xs: 0px 2px 4px hsl(217 60% 3% / .5);--shadow-sm: 0px 2px 4px hsl(217 60% 3% / .4), 0px 1px 2px hsl(217 60% 3% / .3);--shadow: 0px 2px 4px hsl(217 60% 3% / .4), 0px 1px 2px hsl(217 60% 3% / .3);--shadow-md: 0px 4px 8px hsl(217 60% 3% / .4), 0px 2px 4px hsl(217 60% 3% / .3);--shadow-lg: 0px 8px 16px hsl(217 60% 3% / .4), 0px 4px 8px hsl(217 60% 3% / .3);--shadow-xl: 0px 16px 32px hsl(217 60% 3% / .4), 0px 8px 16px hsl(217 60% 3% / .3);--shadow-2xl: 0px 24px 48px hsl(217 60% 3% / .5);--sidebar-primary-border: hsl(var(--sidebar-primary));--sidebar-primary-border: hsl(from hsl(var(--sidebar-primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--sidebar-accent-border: hsl(var(--sidebar-accent));--sidebar-accent-border: hsl(from hsl(var(--sidebar-accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--primary-border: hsl(var(--primary));--primary-border: hsl(from hsl(var(--primary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--secondary-border: hsl(var(--secondary));--secondary-border: hsl(from hsl(var(--secondary)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--muted-border: hsl(var(--muted));--muted-border: hsl(from hsl(var(--muted)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--accent-border: hsl(var(--accent));--accent-border: hsl(from hsl(var(--accent)) h s calc(l + var(--opaque-button-border-intensity)) / alpha);--destructive-border: hsl(var(--destructive));--destructive-border: hsl(from hsl(var(--destructive)) h s calc(l + var(--opaque-button-border-intensity)) / alpha)}@layer base{*{@apply border-border;}body{@apply font-sans antialiased bg-background text-foreground;}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:hsl(var(--background))}::-webkit-scrollbar-thumb{background:hsl(var(--muted));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary) / .5)}.glow-blue{box-shadow:0 0 15px #2474f54d,0 0 40px #2474f51a}.glow-text{text-shadow:0 0 10px hsl(217 91% 55% / .5)}.pulse-dot{animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.gradient-border{position:relative}.gradient-border:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,hsl(217 91% 55% / .5),hsl(200 80% 50% / .3),transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}@layer utilities{input[type=search]::-webkit-search-cancel-button{@apply hidden;}[contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:hsl(var(--muted-foreground));pointer-events:none}.toggle-elevate:before,.toggle-elevate-2:before{content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;z-index:-1}.toggle-elevate.toggle-elevated:before{background-color:var(--elevate-2)}.border.toggle-elevate:before{inset:-1px}.hover-elevate:not(.no-default-hover-elevate),.active-elevate:not(.no-default-active-elevate),.hover-elevate-2:not(.no-default-hover-elevate),.active-elevate-2:not(.no-default-active-elevate){position:relative;z-index:0}.hover-elevate:not(.no-default-hover-elevate):after,.active-elevate:not(.no-default-active-elevate):after,.hover-elevate-2:not(.no-default-hover-elevate):after,.active-elevate-2:not(.no-default-active-elevate):after{content:"";pointer-events:none;position:absolute;inset:0;border-radius:inherit;z-index:999}.hover-elevate:hover:not(.no-default-hover-elevate):after,.active-elevate:active:not(.no-default-active-elevate):after{background-color:var(--elevate-1)}.hover-elevate-2:hover:not(.no-default-hover-elevate):after,.active-elevate-2:active:not(.no-default-active-elevate):after{background-color:var(--elevate-2)}.border.hover-elevate:not(.no-hover-interaction-elevate):after,.border.active-elevate:not(.no-active-interaction-elevate):after,.border.hover-elevate-2:not(.no-hover-interaction-elevate):after,.border.active-elevate-2:not(.no-active-interaction-elevate):after{inset:-1px}}
