/* ============================================
   BIP BRAND CUSTOM STYLES
   Brand Guidelines 2025
   Use after Bootstrap CSS
   ============================================ */

/* CSS CUSTOM PROPERTIES (CSS Variables) */
:root {
  /* Primary Colors */
  --bip-red: #da291c;
  --bip-blue: #0c2340;
  --bip-white: #ffffff;

  /* Support Red Palette */
  --bip-red-700: #2b0605;
  --bip-red-600: #961111;
  --bip-red-500: #da291c;
  --bip-red-400: #e34239;
  --bip-red-300: #f97673;
  --bip-red-200: #f9b7b3;
  --bip-red-100: #f5e3e3;

  /* Support Blue Palette */
  --bip-blue-700: #0c2340;
  --bip-blue-600: #546579;
  --bip-blue-500: #0c2340;
  --bip-blue-400: #7f8799;
  --bip-blue-300: #9da7b3;
  --bip-blue-200: #dadee2;
  --bip-blue-100: #f7f2f3;

  /* Support Gray Palette */
  --bip-gray-slate: #8b9dad;
  --bip-gray-cloud: #b8c6d2;
  --bip-gray-silver: #d5dfe7;

  /* Typography */
  --font-family-primary: 'Work Sans', Arial, sans-serif;
}

/* ============================================
   TYPOGRAPHY UTILITIES
   ============================================ */

/* Font Family */
.font-primary {
  font-family: var(--font-family-primary);
}

/* Font Weights */
.fw-thin {
  font-weight: 100;
}
.fw-extralight {
  font-weight: 200;
}
.fw-light {
  font-weight: 300;
}
.fw-regular {
  font-weight: 400;
}
.fw-medium {
  font-weight: 500;
}
.fw-semibold {
  font-weight: 600;
}

/* Heading Styles */
.display-title {
  font-weight: 200;
  line-height: 0.85;
  letter-spacing: -0.02em;
}

.heading-light {
  font-weight: 200;
}

.heading-medium {
  font-weight: 500;
}

.tag-style {
  font-weight: 600;
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* ============================================
   COLOR UTILITIES
   ============================================ */

/* Background Colors - Primary */
.bg-bip-red {
  background-color: var(--bip-red) !important;
}
.bg-bip-blue {
  background-color: var(--bip-blue) !important;
}
.bg-bip-white {
  background-color: var(--bip-white) !important;
}

/* Background Colors - Red Support */
.bg-red-700 {
  background-color: var(--bip-red-700) !important;
}
.bg-red-600 {
  background-color: var(--bip-red-600) !important;
}
.bg-red-500 {
  background-color: var(--bip-red-500) !important;
}
.bg-red-400 {
  background-color: var(--bip-red-400) !important;
}
.bg-red-300 {
  background-color: var(--bip-red-300) !important;
}
.bg-red-200 {
  background-color: var(--bip-red-200) !important;
}
.bg-red-100 {
  background-color: var(--bip-red-100) !important;
}

/* Background Colors - Blue Support */
.bg-blue-700 {
  background-color: var(--bip-blue-700) !important;
}
.bg-blue-600 {
  background-color: var(--bip-blue-600) !important;
}
.bg-blue-500 {
  background-color: var(--bip-blue-500) !important;
}
.bg-blue-400 {
  background-color: var(--bip-blue-400) !important;
}
.bg-blue-300 {
  background-color: var(--bip-blue-300) !important;
}
.bg-blue-200 {
  background-color: var(--bip-blue-200) !important;
}
.bg-blue-100 {
  background-color: var(--bip-blue-100) !important;
}

/* Background Colors - Gray Support */
.bg-gray-slate {
  background-color: var(--bip-gray-slate) !important;
}
.bg-gray-cloud {
  background-color: var(--bip-gray-cloud) !important;
}
.bg-gray-silver {
  background-color: var(--bip-gray-silver) !important;
}

/* Text Colors - Primary */
.text-bip-red {
  color: var(--bip-red) !important;
}
.text-bip-blue {
  color: var(--bip-blue) !important;
}
.text-bip-white {
  color: var(--bip-white) !important;
}

/* Border Colors */
.border-bip-red {
  border-color: var(--bip-red) !important;
}
.border-bip-blue {
  border-color: var(--bip-blue) !important;
}

/* ============================================
   BUTTON STYLES
   ============================================ */
.btn-bip-primary {
  background-color: var(--bip-red);
  border-color: var(--bip-red);
  color: var(--bip-white);
  font-weight: 500;
}

.btn-bip-primary:hover,
.btn-bip-primary:focus {
  background-color: var(--bip-red-600);
  border-color: var(--bip-red-600);
  color: var(--bip-white);
}

.btn-bip-secondary {
  background-color: var(--bip-blue);
  border-color: var(--bip-blue);
  color: var(--bip-white);
  font-weight: 500;
}

.btn-bip-secondary:hover,
.btn-bip-secondary:focus {
  background-color: var(--bip-blue-600);
  border-color: var(--bip-blue-600);
  color: var(--bip-white);
}

.btn-bip-outline {
  background-color: transparent;
  border: 2px solid var(--bip-red);
  color: var(--bip-red);
  font-weight: 500;
}

.btn-bip-outline:hover,
.btn-bip-outline:focus {
  background-color: var(--bip-red);
  border-color: var(--bip-red);
  color: var(--bip-white);
}

/* ============================================
   CARD STYLES
   ============================================ */
.card-bip {
  border: 1px solid var(--bip-gray-silver);
  border-radius: 0.5rem;
  overflow: hidden;
  transition: box-shadow 0.3s ease;
}

.card-bip:hover {
  box-shadow: 0 0.5rem 1rem rgba(12, 35, 64, 0.15);
}

.card-bip-header {
  background-color: var(--bip-red);
  color: var(--bip-white);
  padding: 1.5rem;
  font-weight: 500;
}

/* ============================================
   PATTERN & BRAND ELEMENTS
   ============================================ */
.bip-pattern-bg {
  background-image: url('data:image/svg+xml;base64,...'); /* Add pattern SVG here */
  background-repeat: repeat;
  background-size: 100px 100px;
}

/* Logo Clear Space Helper */
.logo-clearspace {
  padding: 10mm;
}

/* ============================================
   GRADIENT UTILITIES
   ============================================ */
.gradient-blue-to-white {
  background: linear-gradient(
    180deg,
    var(--bip-blue) 0%,
    var(--bip-white) 100%
  );
}

.gradient-red-fade {
  background: linear-gradient(
    90deg,
    var(--bip-red) 0%,
    rgba(218, 41, 28, 0) 100%
  );
}

/* ============================================
   ICON STYLES
   ============================================ */
.icon-bip {
  color: var(--bip-red);
  width: 24px;
  height: 24px;
  stroke-width: 2px;
}

.icon-bip-lg {
  width: 48px;
  height: 48px;
}

.icon-bip-sm {
  width: 16px;
  height: 16px;
}

/* ============================================
   SPACING UTILITIES
   ============================================ */
.section-spacing {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (min-width: 1024px) {
  .section-spacing {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

/* ============================================
   ACCESSIBILITY & COLOR CONTRAST
   ============================================ */

/* Ensure text on red background is white */
.bg-bip-red,
.bg-red-500,
.bg-red-600,
.bg-red-700 {
  color: var(--bip-white);
}

/* Ensure text on blue background is white */
.bg-bip-blue,
.bg-blue-500,
.bg-blue-600,
.bg-blue-700 {
  color: var(--bip-white);
}

/* Do NOT use blue text on red background or vice-versa */
.bg-bip-red .text-bip-blue,
.bg-red-500 .text-bip-blue {
  color: var(--bip-white) !important; /* Override to ensure accessibility */
}

/* ============================================
   RESPONSIVE HELPERS
   ============================================ */
@media (max-width: 481px) {
  .display-title {
    font-size: 2.5rem;
  }
}

@media (min-width: 482px) and (max-width: 809px) {
  .display-title {
    font-size: 4rem;
  }
}

@media (min-width: 810px) {
  .display-title {
    font-size: 6rem;
  }
}

/* ============================================
   BADGE STYLES BIP
   ============================================ */
.badge-bip-primary {
  background-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.badge-bip-secondary {
  background-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.badge-bip-success {
  background-color: var(--bip-blue-500) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.badge-bip-info {
  background-color: var(--bip-blue-400) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.badge-bip-warning {
  background-color: var(--bip-red-300) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.badge-bip-danger {
  background-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

/* ============================================
   BUTTON ACTIONS BIP - CONFORME MANUAL 2025
   ============================================ */

/* Botões de Ação Positiva - Azul BIP (Sim, Aprovar, Salvar, Criar) */
.btn-bip-positive,
.btn-bip-confirm {
  background-color: var(--bip-blue) !important;
  border-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.btn-bip-positive:hover,
.btn-bip-confirm:hover {
  background-color: var(--bip-blue-600) !important;
  border-color: var(--bip-blue-600) !important;
  color: var(--bip-white) !important;
}

/* Botões de Ação Negativa - Vermelho BIP (Não, Cancelar, Recusar) */
.btn-bip-negative,
.btn-bip-cancel {
  background-color: var(--bip-red) !important;
  border-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.btn-bip-negative:hover,
.btn-bip-cancel:hover {
  background-color: var(--bip-red-600) !important;
  border-color: var(--bip-red-600) !important;
  color: var(--bip-white) !important;
}

/* Override para botões Success usar azul BIP */
.btn-bip-success {
  background-color: var(--bip-blue) !important;
  border-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
}

.btn-bip-success:hover {
  background-color: var(--bip-blue-600) !important;
  border-color: var(--bip-blue-600) !important;
}

/* ============================================
   CARD STYLES BIP - CONFORME MANUAL 2025
   ============================================ */

/* Cards de Indicadores - Cores da Marca BIP */

/* Card Principal - Azul BIP (para valores principais, totais) */
.card-bip-primary {
  background: linear-gradient(
    135deg,
    var(--bip-blue-100) 0%,
    var(--bip-white) 100%
  );
  border: 1px solid var(--bip-blue-200);
  transition: all 0.3s ease;
}

.card-bip-primary .icon-circle {
  background-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  box-shadow: 0 4px 8px rgba(12, 35, 64, 0.25);
}

.card-bip-primary .card-value {
  color: var(--bip-blue) !important;
  font-weight: 200; /* Light para valores grandes */
}

.card-bip-primary .card-label {
  color: var(--bip-blue-600) !important;
  font-weight: 500;
}

/* Card Secundário - Azul Médio BIP (para status, informações) */
.card-bip-info {
  background: linear-gradient(
    135deg,
    var(--bip-blue-200) 0%,
    var(--bip-white) 100%
  );
  border: 1px solid var(--bip-blue-300);
  transition: all 0.3s ease;
}

.card-bip-info .icon-circle {
  background-color: var(--bip-blue-400) !important;
  color: var(--bip-white) !important;
  box-shadow: 0 4px 8px rgba(127, 135, 153, 0.25);
}

.card-bip-info .card-value {
  color: var(--bip-blue-600) !important;
  font-weight: 200;
}

.card-bip-info .card-label {
  color: var(--bip-blue-600) !important;
  font-weight: 500;
}

/* Card Neutro - Cinza BIP (para dados neutros) */
.card-bip-neutral {
  background: linear-gradient(
    135deg,
    var(--bip-gray-silver) 0%,
    var(--bip-white) 100%
  );
  border: 1px solid var(--bip-gray-cloud);
  transition: all 0.3s ease;
}

.card-bip-neutral .icon-circle {
  background-color: var(--bip-gray-slate) !important;
  color: var(--bip-white) !important;
  box-shadow: 0 4px 8px rgba(139, 157, 173, 0.25);
}

.card-bip-neutral .card-value {
  color: var(--bip-blue) !important;
  font-weight: 200;
}

.card-bip-neutral .card-label {
  color: var(--bip-blue-600) !important;
  font-weight: 500;
}

/* Card de Destaque - Vermelho BIP (APENAS para valores positivos como crescimento, aprovações) */
.card-bip-highlight {
  background: linear-gradient(
    135deg,
    var(--bip-red-100) 0%,
    var(--bip-white) 100%
  );
  border: 1px solid var(--bip-red-200);
  transition: all 0.3s ease;
}

.card-bip-highlight .icon-circle {
  background-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  box-shadow: 0 4px 8px rgba(218, 41, 28, 0.25);
}

.card-bip-highlight .card-value {
  color: var(--bip-red) !important;
  font-weight: 200;
}

.card-bip-highlight .card-label {
  color: var(--bip-red-600) !important;
  font-weight: 500;
}

/* Hover Effects para todos os cards */
.card-bip-primary:hover,
.card-bip-info:hover,
.card-bip-neutral:hover,
.card-bip-highlight:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(12, 35, 64, 0.15);
}

/* Estrutura padrão dos cards */
.card-bip-primary .icon-circle,
.card-bip-info .icon-circle,
.card-bip-neutral .icon-circle,
.card-bip-highlight .icon-circle {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 1.5rem;
}

/* ============================================
   MODAL STYLES BIP - CONFORME MANUAL 2025
   ============================================ */

/* Headers dos Modals - Cores da Marca BIP */
.modal-header-bip-primary {
  background-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  border-bottom: 1px solid var(--bip-blue-600);
}

.modal-header-bip-primary .modal-title {
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.modal-header-bip-primary .material-symbols-outlined {
  color: var(--bip-white) !important;
  font-family: 'Material Symbols Outlined' !important;
  font-weight: normal !important;
  font-size: 1.5rem !important;
}

.modal-header-bip-danger {
  background-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  border-bottom: 1px solid var(--bip-red-600);
}

.modal-header-bip-danger .modal-title {
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.modal-header-bip-danger .material-symbols-outlined {
  color: var(--bip-white) !important;
  font-family: 'Material Symbols Outlined' !important;
  font-weight: normal !important;
  font-size: 1.5rem !important;
}

.modal-header-bip-neutral {
  background-color: var(--bip-blue-100) !important;
  color: var(--bip-blue) !important;
  border-bottom: 1px solid var(--bip-blue-200);
}

.modal-header-bip-neutral .modal-title {
  color: var(--bip-blue) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
}

.modal-header-bip-neutral .material-symbols-outlined {
  color: var(--bip-blue) !important;
  font-family: 'Material Symbols Outlined' !important;
  font-weight: normal !important;
  font-size: 1.5rem !important;
}

/* Botão de fechar nos headers coloridos */
.modal-header-bip-primary .btn-close,
.modal-header-bip-danger .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

.modal-header-bip-neutral .btn-close {
  filter: none;
}

/* ============================================
   MODAL TABLES BIP - PADRONIZAÇÃO GLOBAL
   ============================================ */

/* Tabelas dentro de modals - Estilo consistente */
.modal-body .table {
  font-family: var(--font-family-primary);
  margin-bottom: 0;
}

/* Tabelas de formulário nos modals */
.modal-body .table.align-middle {
  border: 1px solid var(--bip-blue-200);
  border-radius: 0.375rem;
  overflow: hidden;
}

.modal-body .table.align-middle td {
  border-color: var(--bip-blue-200) !important;
  padding: 0.75rem;
  vertical-align: middle;
}

.modal-body .table.align-middle td:first-child {
  background-color: var(--bip-blue-100);
  color: var(--bip-blue);
  font-weight: 500;
  width: 35%;
  text-align: right;
  padding-right: 1rem;
}

.modal-body .table.align-middle td:last-child {
  background-color: var(--bip-white);
  color: var(--bip-blue-600);
  width: 65%;
}

/* Tabelas de dados nos modals (como histórico) */
.modal-body .table-striped,
.modal-body .table-hover {
  border: 1px solid var(--bip-blue-200);
  border-radius: 0.375rem;
  overflow: hidden;
}

.modal-body .table-striped thead th,
.modal-body .table-hover thead th {
  background-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  border-color: var(--bip-blue-600) !important;
  font-weight: 500;
  padding: 0.75rem;
}

.modal-body .table-striped tbody td,
.modal-body .table-hover tbody td {
  border-color: var(--bip-blue-200) !important;
  padding: 0.75rem;
  color: var(--bip-blue-600);
}

.modal-body .table-striped tbody tr:nth-of-type(odd) {
  background-color: var(--bip-blue-100);
}

.modal-body .table-hover tbody tr:hover {
  background-color: var(--bip-blue-200) !important;
  color: var(--bip-blue-700) !important;
}

/* Inputs dentro das tabelas de formulário */
.modal-body .table .form-control,
.modal-body .table .form-select {
  border: 1px solid var(--bip-blue-300);
  background-color: var(--bip-blue-100);
  color: var(--bip-blue-700);
  font-family: var(--font-family-primary);
}

.modal-body .table .form-control:focus,
.modal-body .table .form-select:focus {
  border-color: var(--bip-blue);
  box-shadow: 0 0 0 0.2rem rgba(12, 35, 64, 0.25);
}

/* ============================================
   CARD BUTTONS BIP - CONFORME MANUAL 2025
   ============================================ */

/* Botões nos Cards - Cores da Marca BIP */

/* Botão Primário - Vermelho BIP (para ações principais positivas: Novo, Criar, Adicionar) */
.btn-card-bip-primary {
  background-color: var(--bip-red) !important;
  border-color: var(--bip-red) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  transition: all 0.2s ease;
}

.btn-card-bip-primary:hover {
  background-color: var(--bip-red-600) !important;
  border-color: var(--bip-red-600) !important;
  color: var(--bip-white) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(218, 41, 28, 0.25);
}

/* Botão Secundário - Azul BIP (para ações de aprovação, confirmação) */
.btn-card-bip-secondary {
  background-color: var(--bip-blue) !important;
  border-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  transition: all 0.2s ease;
}

.btn-card-bip-secondary:hover {
  background-color: var(--bip-blue-600) !important;
  border-color: var(--bip-blue-600) !important;
  color: var(--bip-white) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(12, 35, 64, 0.25);
}

/* Botão Neutro - Azul Médio BIP (para ações informativas: Histórico, Relatórios) */
.btn-card-bip-neutral {
  background-color: var(--bip-blue-400) !important;
  border-color: var(--bip-blue-400) !important;
  color: var(--bip-white) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  transition: all 0.2s ease;
}

.btn-card-bip-neutral:hover {
  background-color: var(--bip-blue-600) !important;
  border-color: var(--bip-blue-600) !important;
  color: var(--bip-white) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(127, 135, 153, 0.25);
}

/* Botão Outline - Para ações menos importantes */
.btn-card-bip-outline {
  background-color: transparent !important;
  border: 2px solid var(--bip-blue) !important;
  color: var(--bip-blue) !important;
  font-family: var(--font-family-primary);
  font-weight: 500;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  transition: all 0.2s ease;
}

.btn-card-bip-outline:hover {
  background-color: var(--bip-blue) !important;
  border-color: var(--bip-blue) !important;
  color: var(--bip-white) !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(12, 35, 64, 0.15);
}

/* ============================================
   MATERIAL SYMBOLS ICONS - BIP MANUAL 2025
   ============================================ */

/* Configuração base para Material Symbols */
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined', 'Material Icons', sans-serif !important;
  font-weight: normal !important;
  font-style: normal !important;
  font-size: 24px !important;
  line-height: 1 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  display: inline-block !important;
  white-space: nowrap !important;
  word-wrap: normal !important;
  direction: ltr !important;
  -webkit-font-feature-settings: 'liga' !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: optimizeLegibility !important;
  -moz-osx-font-smoothing: grayscale !important;
  font-feature-settings: 'liga' !important;
  vertical-align: middle !important;
}

/* Garantir visibilidade em modals */
.modal .material-symbols-outlined {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Garantir que não seja sobrescrito por outros sistemas de ícones */
.material-symbols-outlined:before {
  content: none !important;
}

/* Força o carregamento correto da fonte */
@supports (font-variation-settings: normal) {
  .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24 !important;
  }
}

/* Tamanhos específicos para diferentes contextos */
.material-symbols-outlined.icon-sm {
  font-size: 16px !important;
}

.material-symbols-outlined.icon-md {
  font-size: 20px !important;
}

.material-symbols-outlined.icon-lg {
  font-size: 24px !important;
}

.material-symbols-outlined.icon-xl {
  font-size: 32px !important;
}

/* ============================================
   UTILITIES FOR BRAND COMPLIANCE
   ============================================ */

/* Ensure proper logo usage */
.bip-logo {
  color: var(--bip-red);
  max-width: 200px;
  min-width: 10mm;
}

.bip-logo-white {
  color: var(--bip-white);
}

/* Alert for incorrect color combinations */
.bg-bip-red.text-bip-blue::before,
.bg-red-500.text-bip-blue::before {
  content: '⚠️ Brand Guidelines: Do not use blue text on red background';
  display: block;
  background: yellow;
  color: black;
  padding: 0.5rem;
  font-size: 0.75rem;
  font-weight: bold;
}

/* ============================================
   TABLE HOVER OVERRIDE - FORCE BIP BLUE
   ============================================ */

/* Máxima especificidade para sobrescrever qualquer hover vermelho */
.table tbody tr:hover,
.table tbody tr:hover td,
.table tbody tr:hover th,
.table-hover tbody tr:hover,
.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th,
.dataTable tbody tr:hover,
.dataTable tbody tr:hover td,
.dataTable tbody tr:hover th,
.datatable tbody tr:hover,
.datatable tbody tr:hover td,
.datatable tbody tr:hover th,
table tbody tr:hover,
table tbody tr:hover td,
table tbody tr:hover th,
#datatable-saldos-sinteticos tbody tr:hover,
#datatable-saldos-sinteticos tbody tr:hover td,
#datatable-saldos-sinteticos tbody tr:hover th,
#datatable-conceito-foto tbody tr:hover,
#datatable-conceito-foto tbody tr:hover td,
#datatable-conceito-foto tbody tr:hover th,
#datatable-conceito-filme tbody tr:hover,
#datatable-conceito-filme tbody tr:hover td,
#datatable-conceito-filme tbody tr:hover th {
  background-color: var(--bip-blue-200) !important;
  color: var(--bip-blue-700) !important;
}

/* Bootstrap table-danger override - NUNCA vermelho */
.table-danger tbody tr:hover,
.table-danger tbody tr:hover td,
.table-danger tbody tr:hover th {
  background-color: var(--bip-blue-200) !important;
  color: var(--bip-blue-700) !important;
}

/* Bootstrap hover colors override */
.table tbody tr:hover {
  --bs-table-hover-bg: var(--bip-blue-200) !important;
  --bs-table-color: var(--bip-blue-700) !important;
}

/* DataTables específico */
.dataTables_wrapper .dataTable tbody tr:hover {
  background-color: var(--bip-blue-200) !important;
  color: var(--bip-blue-700) !important;
}

/* Garantir que nenhuma variável CSS cause vermelho */
:root {
  --bs-table-hover-bg: var(--bip-blue-200) !important;
  --bs-table-hover-color: var(--bip-blue-700) !important;
}
