@tailwind base;@tailwind components;@tailwind utilities;@layer base{*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{@apply bg-gray-50 text-gray-900;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6}::selection{@apply bg-brand-200 text-brand-900;}input:focus-visible,textarea:focus-visible,select:focus-visible{@apply outline-none ring-2 ring-brand-500 ring-offset-1;}}@layer components{.btn-primary{@apply bg-brand-500 hover:bg-brand-600 active:bg-brand-700 text-white font-semibold py-3 px-6 rounded-xl transition-all duration-200 ease-out disabled:opacity-50 disabled:cursor-not-allowed disabled:hover:bg-brand-500 shadow-sm hover:shadow-md active:scale-[.98];}.btn-secondary{@apply bg-gray-100 hover:bg-gray-200 active:bg-gray-300 text-gray-800 font-semibold py-3 px-6 rounded-xl transition-all duration-200 ease-out shadow-sm hover:shadow-md active:scale-[.98];}.card{@apply bg-white rounded-2xl shadow-sm border border-gray-100 p-6 transition-shadow duration-300 hover:shadow-md;}.skeleton{@apply bg-gray-200 rounded-lg animate-pulse;}.input-field{@apply w-full px-4 py-3 bg-gray-50 border border-gray-200 rounded-xl text-gray-900 placeholder-gray-400 transition-all duration-200 focus:bg-white focus:border-brand-400 focus:ring-2 focus:ring-brand-100;}.timer-urgent{animation:timer-pulse 1s ease-in-out infinite}}@layer utilities{.fade-in{animation:fadeIn .4s ease-out}.slide-up{animation:slideUp .5s ease-out}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes timer-pulse{0%,to{opacity:1}50%{opacity:.6}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
