/* Bridge para alinhar classes Bootstrap com tokens do Design System */

:root {
  --bs-body-bg: var(--background);
  --bs-body-color: var(--foreground);
  --bs-border-color: var(--border);
  --bs-primary: var(--primary);
  --bs-success: var(--secondary);
  --bs-danger: var(--destructive);
  --bs-warning: #f5e36a;
  /* aviso suave compatível */
  --bs-info: var(--tertiary);
}

.bg-primary {
  background-color: var(--primary) !important;
  color: var(--primary-foreground) !important;
}

.bg-success {
  background-color: var(--secondary) !important;
  color: var(--secondary-foreground) !important;
}

.bg-danger {
  background-color: var(--destructive) !important;
  color: var(--destructive-foreground) !important;
}

.bg-warning {
  background-color: #f5e36a !important;
  color: #221f28 !important;
}

.bg-info {
  background-color: var(--tertiary) !important;
  color: #ffffff !important;
}

.bg-light {
  background-color: var(--card) !important;
  color: var(--card-foreground) !important;
}

.bg-secondary {
  background-color: var(--muted) !important;
  color: var(--foreground) !important;
}

.text-muted {
  color: var(--muted-foreground) !important;
  opacity: 0.8;
}

.card {
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 4px);
}

.table thead th {
  background: #f4f2f8;
}

.table thead.table-light th,
.table-light>tr>th {
  background: #f4f2f8 !important;
  color: var(--foreground) !important;
}

.table {
  background: var(--surface, #ffffff);
}

.table-striped>tbody>tr:nth-of-type(odd)>* {
  --bs-table-accent-bg: #fbfafc;
}

.table> :not(caption)>*>* {
  border-color: var(--border);
}

.btn-outline-primary {
  color: var(--primary) !important;
  border-color: var(--primary) !important;
}

.btn-outline-primary:hover {
  background: var(--primary) !important;
  color: var(--primary-foreground) !important;
}

.badge.bg-success {
  background-color: var(--secondary) !important;
  color: var(--secondary-foreground) !important;
}

.badge.bg-warning {
  background-color: #f5e36a !important;
  color: #221f28 !important;
}

.badge.bg-danger {
  background-color: var(--destructive) !important;
  color: var(--destructive-foreground) !important;
}

.badge.bg-warning {
  background-color: #f5e36a !important;
  color: #221f28 !important;
}

.badge.bg-secondary {
  background-color: var(--muted) !important;
  color: var(--foreground) !important;
}

/* Inputs/selects focus using DS ring */
.form-control:focus,
.form-select:focus {
  border-color: var(--ring) !important;
  box-shadow: 0 0 0 0.25rem rgba(160, 74, 217, 0.25) !important;
}

.bg-accent {
  background-color: var(--accent) !important;
  color: var(--accent-foreground) !important;
}