@tailwind base;@tailwind components;@tailwind utilities;@layer components{.btn-primary{@apply bg-gradient-to-r from-primary to-secondary text-white font-semibold rounded-xl shadow-lg hover:shadow-xl transition-all transform hover:scale-105;}.btn-secondary{@apply bg-surface text-text-primary font-semibold rounded-xl shadow-md border border-border hover:bg-border transition-all;}.card-hover{@apply hover:shadow-lg transition-shadow duration-300;}}@layer utilities{.animate-fade-in{animation:fadeIn .8s ease-out forwards;opacity:0}.animate-slide-up{animation:slideUp .8s ease-out forwards;opacity:0}.animate-bounce{animation:bounce 2s infinite}.animate-bounce-gentle{animation:bounce-gentle 3s infinite}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-delayed{animation:float 6s ease-in-out infinite;animation-delay:2s}.animate-float-slow{animation:float 8s ease-in-out infinite;animation-delay:4s}.animate-gradient-x{background-size:200% 200%;animation:gradient-x 3s ease infinite}.animation-delay-200{animation-delay:.2s}.animation-delay-400{animation-delay:.4s}.animation-delay-600{animation-delay:.6s}.animation-delay-800{animation-delay:.8s}.animation-delay-1000{animation-delay:1s}.animation-delay-1200{animation-delay:1.2s}.animation-delay-1400{animation-delay:1.4s}.animation-delay-1500{animation-delay:1.5s}.animation-delay-1600{animation-delay:1.6s}.animation-delay-1700{animation-delay:1.7s}.animation-delay-1800{animation-delay:1.8s}.animation-delay-1900{animation-delay:1.9s}.animation-delay-2000{animation-delay:2s}.animation-delay-2100{animation-delay:2.1s}.animation-delay-2200{animation-delay:2.2s}.animation-delay-2300{animation-delay:2.3s}.animation-delay-2400{animation-delay:2.4s}.animation-delay-2500{animation-delay:2.5s}.animation-delay-2600{animation-delay:2.6s}.animation-delay-2700{animation-delay:2.7s}.animate-slide-in-left{animation:slideInLeft .4s ease-out forwards;opacity:0}.animate-slide-in-right{animation:slideInRight .4s ease-out forwards;opacity:0}.animate-scale-in{animation:scaleIn .3s ease-out forwards;opacity:0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes gradient-x{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes bounce-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{@apply bg-surface;}::-webkit-scrollbar-thumb{@apply bg-border rounded-full;}::-webkit-scrollbar-thumb:hover{@apply bg-text-secondary;}.focus-ring{@apply focus:outline-none focus:ring-2 focus:ring-primary focus:ring-offset-2 focus:ring-offset-background;}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}
