/* ===================================================================
   McLuca — app.css
   Custom styles that sit on top of Tailwind utilities.
   =================================================================== */

/* ----- Typography -------------------------------------------------- */

body {
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont,
               'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* ----- Icon containers --------------------------------------------- */

.icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.icon svg {
  width: 100%;
  height: 100%;
}

/* ----- Tables ------------------------------------------------------ */

.data-table {
  width: 100%;
  font-size: 0.875rem;        /* text-sm */
}

.data-table th {
  text-align: left;
  padding: 0.75rem 1.5rem;    /* px-6 py-3 */
  color: #6b7280;             /* gray-500 */
  font-weight: 500;
  font-size: 0.75rem;         /* text-xs */
  text-transform: uppercase;
  letter-spacing: 0.05em;     /* tracking-wider */
}

.data-table td {
  padding: 0.75rem 1.5rem;
}

.data-table tbody tr {
  border-bottom: 1px solid rgba(31, 41, 55, 0.5);  /* gray-800/50 */
  transition: background-color 150ms;
}

.data-table tbody tr:hover {
  background-color: rgba(31, 41, 55, 0.3);          /* gray-800/30 */
}

/* ----- Badge pills ------------------------------------------------- */

.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.625rem;  /* py-0.5 px-2.5 */
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
}

/* Badge color variants live in per-feature CSS (calendar.css, etc.) */

/* ----- Card ------------------------------------------------------- */

.card {
  background-color: #111827;   /* gray-900 */
  border: 1px solid #1f2937;   /* gray-800 */
  border-radius: 0.75rem;      /* rounded-xl */
  padding: 1.5rem;             /* p-6 */
}

/* ----- KPI stat card ---------------------------------------------- */

.kpi-label {
  font-size: 0.875rem;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.kpi-value {
  font-size: 1.875rem;
  font-weight: 700;
  color: #ffffff;
  margin-top: 0.25rem;
}

/* ----- Impersonation banner --------------------------------------- */

.impersonation-banner {
  background-color: rgba(234, 179, 8, 0.15);
  border-bottom: 1px solid rgba(234, 179, 8, 0.3);
  color: #fbbf24;
  font-size: 0.8125rem;
  padding: 0.5rem 0;
}

.impersonation-banner__link {
  color: #fde68a;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color 150ms;
}

.impersonation-banner__link:hover {
  color: #ffffff;
}
