@tailwind base;
@tailwind components;
@tailwind utilities;

* { box-sizing: border-box; }
body { font-family: 'Inter', system-ui, sans-serif; @apply bg-gray-50 text-gray-900; }
input, button, textarea, select { font-family: inherit; }

.btn { @apply px-4 py-2 rounded-lg font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:opacity-50 disabled:cursor-not-allowed; }
.btn-primary { @apply btn bg-primary-600 text-white hover:bg-primary-700 focus:ring-primary-500; }
.btn-secondary { @apply btn bg-gray-100 text-gray-700 hover:bg-gray-200 focus:ring-gray-500; }
.btn-outline { @apply btn border-2 border-primary-600 text-primary-600 hover:bg-primary-50 focus:ring-primary-500; }
.btn-danger { @apply btn bg-red-600 text-white hover:bg-red-700 focus:ring-red-500; }

.input { @apply w-full px-4 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-primary-500 focus:border-transparent transition; }
.input-error { @apply border-red-500 focus:ring-red-500; }
.label { @apply block text-sm font-medium text-gray-700 mb-1; }
.card { @apply bg-white rounded-xl shadow-sm border border-gray-100 overflow-hidden; }
.badge { @apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium; }
.badge-pending { @apply badge bg-yellow-100 text-yellow-800; }
.badge-accepted { @apply badge bg-blue-100 text-blue-800; }
.badge-in_progress { @apply badge bg-purple-100 text-purple-800; }
.badge-completed { @apply badge bg-green-100 text-green-800; }
.badge-cancelled { @apply badge bg-red-100 text-red-800; }
.badge-disputed { @apply badge bg-orange-100 text-orange-800; }

.container { @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8; }
.section { @apply py-12 sm:py-16; }

html { scroll-behavior: smooth; }
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { @apply bg-gray-100; }
::-webkit-scrollbar-thumb { @apply bg-gray-300 rounded-full hover:bg-gray-400; }