
/* Minimal extra styling beyond Tailwind */
.card { @apply bg-white rounded-xl border shadow-sm; }
.card-header { @apply px-4 py-3 border-b; }
.card-title { @apply text-lg font-semibold flex items-center gap-2; }
.card-content { @apply p-4; }

.metric { @apply rounded-xl border p-3 shadow-sm; }
.metric .label { @apply text-xs text-gray-500 flex items-center gap-1; }
.metric .value { @apply text-lg font-semibold tabular-nums; }

.table-wrap { @apply max-h-72 overflow-auto rounded-md border; }
th, td { @apply p-2; }

button.btn { @apply inline-flex items-center gap-2 rounded-lg px-3 py-2 bg-gray-900 text-white hover:bg-black disabled:opacity-50; }
button.btn-outline { @apply inline-flex items-center gap-2 rounded-lg px-3 py-2 border hover:bg-gray-50; }
button.btn-danger { @apply inline-flex items-center gap-2 rounded-lg px-3 py-2 bg-red-600 text-white hover:bg-red-700; }
button.btn-secondary { @apply inline-flex items-center gap-2 rounded-lg px-3 py-2 bg-gray-200 hover:bg-gray-300; }

.progress { @apply w-full h-2 bg-gray-200 rounded-lg overflow-hidden; }
.progress > div { @apply h-full bg-gray-900; }

/* Toasts */
.toast { @apply rounded-lg px-4 py-3 shadow-lg border bg-white; }
.toast-success { @apply border-green-200; }
.toast-error { @apply border-red-200; }
.toast-title { @apply font-medium; }
.toast-desc { @apply text-sm text-gray-600; }
