@tailwind base; @tailwind components; @tailwind utilities; /* Custom animations */ @keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .animate-fade-in { animation: fadeIn 0.5s ease-out; } /* Custom button styles */ .btn-primary { @apply bg-blue-500 hover:bg-blue-600 text-white font-medium py-2 px-4 rounded-lg transition duration-300; } .btn-secondary { @apply bg-gray-200 hover:bg-gray-300 text-gray-800 font-medium py-2 px-4 rounded-lg transition duration-300; } /* Card hover effect */ .card-hover { @apply transition-all duration-300 hover:shadow-lg hover:-translate-y-1; } /* Gradient backgrounds */ .gradient-bg { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); } /* Responsive typography */ .responsive-heading { font-size: clamp(1.5rem, 4vw, 3rem); line-height: 1.2; } /* Custom scrollbar */ ::-webkit-scrollbar { width: 8px; } ::-webkit-scrollbar-track { background: #f1f1f1; } ::-webkit-scrollbar-thumb { background: #c5c5c5; border-radius: 4px; } ::-webkit-scrollbar-thumb:hover { background: #a8a8a8; } /* Focus styles */ .focus-ring { @apply focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-opacity-50; }