@tailwind base;@tailwind components;@tailwind utilities;body{@apply bg-gray-100;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{@apply w-2;}::-webkit-scrollbar-track{@apply bg-gray-200 rounded-full;}::-webkit-scrollbar-thumb{@apply bg-gray-400 rounded-full hover:bg-gray-500 transition-colors;}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}.transition-all{@apply transition-all duration-300 ease-in-out;}.btn{@apply px-4 py-2 rounded-lg font-semibold transition-all duration-300;}.btn-primary{@apply bg-purple-600 text-white hover:bg-purple-700 shadow-md hover:shadow-lg disabled:opacity-70 disabled:cursor-not-allowed;}.btn-secondary{@apply border border-purple-600 text-purple-600 hover:bg-purple-50;}.btn-danger{@apply bg-red-600 text-white hover:bg-red-700;}.card{@apply bg-white rounded-xl shadow-md border transition-all duration-300 hover:shadow-lg;}.table-responsive{@apply w-full overflow-x-auto;}.table-responsive table{@apply min-w-full divide-y divide-gray-200;}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-menu{animation:slideUp .3s ease-out forwards}.spinner{@apply animate-spin rounded-full border-2 border-gray-200;border-top-color:theme("colors.purple.600")}.badge{@apply px-2.5 py-1 rounded-full text-xs font-semibold;}.badge-success{@apply bg-green-100 text-green-800;}.badge-warning{@apply bg-yellow-100 text-yellow-800;}.badge-error{@apply bg-red-100 text-red-800;}.tooltip{@apply relative inline-block;}.tooltip-text{@apply invisible absolute z-10 px-3 py-2 bg-gray-800 text-white text-sm rounded-lg opacity-0 transition-opacity duration-300;bottom:125%;left:50%;transform:translate(-50%)}.tooltip:hover .tooltip-text{@apply visible opacity-100;}.gradient-primary{@apply bg-gradient-to-r from-purple-500 to-pink-500;}.gradient-secondary{@apply bg-gradient-to-r from-gray-100 to-gray-200;}.container-responsive{@apply container mx-auto px-4 sm:px-6 lg:px-8;}
