/* AML Compliance Platform - Custom CSS */
/* Inspired by PCE-digital-Twin design system */

/* ===== Status Badges ===== */
.status-pending {
  @apply bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300;
}
.status-running {
  @apply bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300;
}
.status-completed {
  @apply bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-300;
}
.status-failed {
  @apply bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-300;
}
.status-submitted {
  @apply bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-300;
}
.status-cancelled {
  @apply bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-300;
}
.status-confirmed {
  @apply bg-orange-100 text-orange-800 dark:bg-orange-900 dark:text-orange-300;
}
.status-false-positive {
  @apply bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-300;
}

/* ===== Card Hover ===== */
.card-hover {
  transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.card-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

/* ===== HTMX Indicator ===== */
.htmx-indicator {
  display: none;
}
.htmx-request .htmx-indicator {
  display: inline-flex;
}
.htmx-request.htmx-indicator {
  display: inline-flex;
}

/* ===== Custom Scrollbar ===== */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}
.dark ::-webkit-scrollbar-thumb {
  background: #475569;
}
.dark ::-webkit-scrollbar-thumb:hover {
  background: #64748b;
}

/* ===== KPI Table ===== */
.kpi-table th {
  @apply px-4 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider dark:text-gray-400;
}
.kpi-table td {
  @apply px-4 py-3 text-sm text-gray-900 dark:text-gray-200;
}
.kpi-table tr {
  @apply border-b border-gray-200 dark:border-gray-700;
}

/* ===== Sidebar ===== */
.sidebar-collapsed .sidebar-label {
  display: none;
}
.sidebar-collapsed .sidebar-section-title {
  display: none;
}

/* ===== Page transitions ===== */
.page-content {
  animation: fadeIn 0.15s ease-in;
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* ===== Risk Level Badges ===== */
.risk-unassigned {
  @apply bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-300;
}
.risk-low {
  @apply bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-300;
}
.risk-medium {
  @apply bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300;
}
.risk-medium-high {
  @apply bg-orange-100 text-orange-800 dark:bg-orange-900 dark:text-orange-300;
}
.risk-severe {
  @apply bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-300;
}
.risk-extreme {
  @apply bg-red-200 text-red-900 dark:bg-red-950 dark:text-red-200 font-bold;
}

/* ===== Badge Base ===== */
.badge {
  @apply inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium;
}
