@tailwind base; @tailwind components; @tailwind utilities; :root { --primary: #8B5CF6; --secondary: #6366F1; } :root { --primary: #8B5CF6; --secondary: #6366F1; --accent: #EC4899; } body { font-family: 'Inter', sans-serif; background-color: #0F172A; color: #F1F5F9; overflow-x: hidden; } /* Enhanced gradients */ .gradient-primary { background: linear-gradient(90deg, var(--primary), var(--secondary)); } .gradient-accent { background: linear-gradient(90deg, var(--primary), var(--accent)); } .gradient-text { background: linear-gradient(90deg, var(--primary), var(--accent), var(--secondary)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } /* Enhanced patterns */ .pattern-grid-lg { background-image: linear-gradient(rgba(71, 85, 105, 0.3) 1px, transparent 1px), linear-gradient(90deg, rgba(71, 85, 105, 0.3) 1px, transparent 1px); background-size: 50px 50px; } /* Character card enhancements */ .character-card { transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); transform-origin: center; border: 1px solid rgba(100, 116, 139, 0.3); background: linear-gradient(145deg, rgba(30, 41, 59, 0.7), rgba(15, 23, 42, 0.9)); backdrop-filter: blur(10px); } .character-card:hover { transform: translateY(-8px) scale(1.02); box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(139, 92, 246, 0.3); border-color: rgba(139, 92, 246, 0.5); z-index: 10; } .character-image { transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); filter: saturate(1.2); } .character-card:hover .character-image { transform: scale(1.05); filter: saturate(1.4) brightness(1.1); } /* Scrollbar styling */ ::-webkit-scrollbar { width: 10px; } ::-webkit-scrollbar-track { background: #1E293B; border-radius: 5px; } ::-webkit-scrollbar-thumb { background: linear-gradient(180deg, var(--primary), var(--secondary)); border-radius: 5px; } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #7C3AED, #4F46E5); } /* Enhanced animations */ @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in-up { animation: fadeInUp 0.6s cubic-bezier(0.22, 0.61, 0.36, 1) forwards; } @keyframes float { 0% { transform: translateY(0px); } 50% { transform: translateY(-20px); } 100% { transform: translateY(0px); } } .animate-float { animation: float 6s ease-in-out infinite; } /* Responsive improvements */ @media (max-width: 768px) { .hero-buttons { flex-direction: column; } .hero-buttons > * { width: 100%; } .pattern-grid-lg { background-size: 30px 30px; } } /* Feather icons sizing */ .feather { width: 22px; height: 22px; } /* Premium badge styling */ .premium-badge { background: linear-gradient(90deg, #F59E0B, #EF4444); color: white; font-weight: bold; padding: 2px 10px; border-radius: 9999px; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.5px; } /* Glow effects */ .glow-purple { box-shadow: 0 0 15px rgba(139, 92, 246, 0.3); } .glow-blue { box-shadow: 0 0 15px rgba(59, 130, 246, 0.3); } .glow-pink { box-shadow: 0 0 15px rgba(236, 72, 153, 0.3); } /* Button enhancements */ .btn-primary { background: linear-gradient(90deg, var(--primary), var(--secondary)); border: none; position: relative; overflow: hidden; transition: all 0.3s ease; } .btn-primary::after { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: rgba(255, 255, 255, 0.1); transform: rotate(30deg); transition: all 0.6s ease; } .btn-primary:hover::after { transform: rotate(30deg) translate(20%, 20%); } .btn-primary:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(139, 92, 246, 0.4); }