@tailwind base; @tailwind components; @tailwind utilities; @layer base { :root { --background: 0 0% 100%; --foreground: 0 0% 3.9%; --card: 0 0% 100%; --card-foreground: 0 0% 3.9%; --popover: 0 0% 100%; --popover-foreground: 0 0% 3.9%; --primary: 262 83% 58%; --primary-foreground: 0 0% 98%; --secondary: 240 4.8% 95.9%; --secondary-foreground: 240 5.9% 10%; --muted: 240 4.8% 95.9%; --muted-foreground: 240 3.8% 46.1%; --accent: 240 4.8% 95.9%; --accent-foreground: 240 5.9% 10%; --destructive: 0 84.2% 60.2%; --destructive-foreground: 0 0% 98%; --border: 240 5.9% 90%; --input: 240 5.9% 90%; --ring: 262 83% 58%; --radius: 0.5rem; } .dark { --background: 240 6% 6%; --foreground: 0 0% 95%; --card: 240 6% 8%; --card-foreground: 0 0% 95%; --popover: 240 6% 8%; --popover-foreground: 0 0% 95%; --primary: 262 83% 58%; --primary-foreground: 0 0% 98%; --secondary: 240 5% 12%; --secondary-foreground: 0 0% 95%; --muted: 240 5% 14%; --muted-foreground: 240 5% 55%; --accent: 240 5% 14%; --accent-foreground: 0 0% 95%; --destructive: 0 62.8% 45%; --destructive-foreground: 0 0% 98%; --border: 240 4% 16%; --input: 240 4% 16%; --ring: 262 83% 58%; } * { border-color: hsl(var(--border)); } html, body { height: 100%; margin: 0; padding: 0; } body { background-color: hsl(var(--background)); color: hsl(var(--foreground)); font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } } @layer utilities { .text-balance { text-wrap: balance; } } /* Custom scrollbar - minimal and modern */ ::-webkit-scrollbar { width: 6px; height: 6px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.1); border-radius: 3px; } ::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.2); } ::-webkit-scrollbar-corner { background: transparent; } /* IDE-specific scrollbar */ .ide-scroll::-webkit-scrollbar { width: 10px; } .ide-scroll::-webkit-scrollbar-thumb { background: rgba(255, 255, 255, 0.08); border: 2px solid transparent; background-clip: padding-box; border-radius: 5px; } .ide-scroll::-webkit-scrollbar-thumb:hover { background: rgba(255, 255, 255, 0.15); border: 2px solid transparent; background-clip: padding-box; } /* Smooth transitions */ * { transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; } /* Selection styling */ ::selection { background: rgba(139, 92, 246, 0.3); color: white; } /* Focus rings */ :focus-visible { outline: 2px solid rgba(139, 92, 246, 0.5); outline-offset: 2px; } /* Hide scrollbar utility */ .scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; } .scrollbar-hide::-webkit-scrollbar { display: none; }