@tailwind base; @tailwind components; @tailwind utilities; @layer base { body { @apply bg-gray-50 text-gray-900 dark:bg-gray-900 dark:text-gray-100; font-feature-settings: "rlig" 1, "calt" 1; } } @layer components { .btn { @apply inline-flex items-center justify-center rounded-lg px-4 py-2 text-sm font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none; } .btn-primary { @apply btn bg-primary-600 text-white hover:bg-primary-700 focus:ring-primary-500; } .btn-secondary { @apply btn bg-gray-200 text-gray-900 hover:bg-gray-300 dark:bg-gray-700 dark:text-gray-100 dark:hover:bg-gray-600 focus:ring-gray-500; } .btn-danger { @apply btn bg-red-600 text-white hover:bg-red-700 focus:ring-red-500; } .btn-success { @apply btn bg-green-600 text-white hover:bg-green-700 focus:ring-green-500; } .card { @apply bg-white dark:bg-gray-800 rounded-xl shadow-sm border border-gray-200 dark:border-gray-700; } .input { @apply w-full px-3 py-2 bg-white dark:bg-gray-700 border border-gray-300 dark:border-gray-600 rounded-lg text-gray-900 dark:text-gray-100 placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-primary-500 focus:border-transparent transition-colors; } .badge { @apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium; } .badge-success { @apply badge bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200; } .badge-warning { @apply badge bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200; } .badge-error { @apply badge bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200; } .badge-info { @apply badge bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200; } } /* Custom scrollbar */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { @apply bg-gray-100 dark:bg-gray-800; } ::-webkit-scrollbar-thumb { @apply bg-gray-300 dark:bg-gray-600 rounded-full; } ::-webkit-scrollbar-thumb:hover { @apply bg-gray-400 dark:bg-gray-500; }