@import "tailwindcss"; /* Premium global styles */ body { background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%); /* slate-50 to slate-100 */ margin: 0; font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; position: relative; } /* Subtle grain/noise texture overlay for premium feel */ body::before { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 9999; opacity: 0.03; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E"); mix-blend-mode: multiply; } /* Global button micro-animations */ button, [role="button"], .btn, .button { transition: all 0.2s ease-in-out !important; } button:active, [role="button"]:active, .btn:active, .button:active { transform: scale(0.97) !important; } /* Smooth scroll */ html { scroll-behavior: smooth; } /* Selection color */ ::selection { background-color: rgba(59, 130, 246, 0.2); /* blue-400 with opacity */ color: #1e293b; /* slate-800 */ } /* Scrollbar styling */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #f1f5f9; /* slate-100 */ border-radius: 5px; } ::-webkit-scrollbar-thumb { background: #cbd5e1; /* slate-300 */ border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: #94a3b8; /* slate-400 */ } /* Premium focus styles */ *:focus { outline: 2px solid rgba(59, 130, 246, 0.5); outline-offset: 2px; } *:focus:not(:focus-visible) { outline: none; } /* Smooth transitions for all interactive elements */ a, button, input, select, textarea { transition-property: color, background-color, border-color, transform, box-shadow; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 200ms; } /* Fix unreadable yellow input text - change to dark blue */ input, select, textarea { color: #1e3a8a; /* dark blue */ } input::placeholder, textarea::placeholder { color: #3b82f6; /* medium blue */ opacity: 0.8; } /* Premium card hover effects */ .hover-lift { transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease; } .hover-lift:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.1); }