/*
 * PALETA DE CORES — BUSCABUSCA (cores extraídas da interface)
 *
 * Fonte única de cor do sistema. Todo o resto (Bootstrap, tema, player, JS) usa só
 * estes 8 valores — ou eles mesmos com transparência (sombras, véus, estados).
 *
 *   Primária ......... #0A4B8A     Azul claro ..... #D2D9E5
 *   Azul secundário .. #466BA4     Destaque ....... #EBF6FD
 *   Índigo ........... #405083     Destaque ....... #EB3539
 *   Fundo ............ #F5F5F5     Branco ......... #FFFFFF
 *
 * Papéis: primária = marca, barra do topo, ação principal, títulos
 *         índigo = texto, superfícies escuras (player), avisos (snackbar)
 *         azul secundário = texto de apoio, ícones, ações secundárias
 *         azul claro = bordas, divisórias, placeholders de mídia
 *         destaque claro = estados selecionados/hover, campos
 *         destaque vermelho = AO VIVO, perigo, badges
 * Não há verde nem laranja na paleta: sucesso usa a primária e alerta usa o vermelho.
 */
:root {
  --bb-primaria: #0A4B8A;
  --bb-secundaria: #466BA4;
  --bb-indigo: #405083;
  --bb-azul-claro: #D2D9E5;
  --bb-destaque: #EBF6FD;
  --bb-vermelho: #EB3539;
  --bb-fundo: #F5F5F5;
  --bb-branco: #FFFFFF;

  /* Exceção: azul do logotipo da marca ("busca" em azul), tirado do próprio logo.
     Só para o logotipo de texto; não usar em interface. */
  --bb-logo-azul: #4CB2F4;

  /* Mesmas cores em RGB, para transparências */
  --bb-primaria-rgb: 10, 75, 138;
  --bb-secundaria-rgb: 70, 107, 164;
  --bb-indigo-rgb: 64, 80, 131;
  --bb-azul-claro-rgb: 210, 217, 229;
  --bb-destaque-rgb: 235, 246, 253;
  --bb-vermelho-rgb: 235, 53, 57;
  --bb-branco-rgb: 255, 255, 255;

  /* Estados (camadas de transparência sobre a primária) */
  --bb-hover: rgba(var(--bb-primaria-rgb), .08);
  --bb-press: rgba(var(--bb-primaria-rgb), .14);
  --bb-foco: rgba(var(--bb-primaria-rgb), .25);
  --bb-veu: rgba(var(--bb-indigo-rgb), .45);
  --bb-sombra-1: 0 1px 2px rgba(var(--bb-indigo-rgb), .18), 0 1px 3px 1px rgba(var(--bb-indigo-rgb), .10);
  --bb-sombra-2: 0 1px 2px rgba(var(--bb-indigo-rgb), .20), 0 2px 6px 2px rgba(var(--bb-indigo-rgb), .12);
  --bb-sombra-3: 0 4px 8px 3px rgba(var(--bb-indigo-rgb), .14), 0 1px 3px rgba(var(--bb-indigo-rgb), .22);

  /* ---- Bootstrap 5 (Adianti) ---- */
  --bs-primary: var(--bb-primaria);            --bs-primary-rgb: var(--bb-primaria-rgb);
  --bs-secondary: var(--bb-secundaria);        --bs-secondary-rgb: var(--bb-secundaria-rgb);
  --bs-success: var(--bb-primaria);            --bs-success-rgb: var(--bb-primaria-rgb);
  --bs-info: var(--bb-secundaria);             --bs-info-rgb: var(--bb-secundaria-rgb);
  --bs-warning: var(--bb-vermelho);            --bs-warning-rgb: var(--bb-vermelho-rgb);
  --bs-danger: var(--bb-vermelho);             --bs-danger-rgb: var(--bb-vermelho-rgb);
  --bs-light: var(--bb-fundo);                 --bs-light-rgb: 245, 245, 245;
  --bs-dark: var(--bb-indigo);                 --bs-dark-rgb: var(--bb-indigo-rgb);
  --bs-black-rgb: var(--bb-indigo-rgb);        /* "preto" do Bootstrap = índigo */
  --bs-white-rgb: var(--bb-branco-rgb);

  --bs-primary-text-emphasis: var(--bb-primaria);   --bs-primary-bg-subtle: var(--bb-destaque);   --bs-primary-border-subtle: var(--bb-azul-claro);
  --bs-secondary-text-emphasis: var(--bb-indigo);   --bs-secondary-bg-subtle: var(--bb-fundo);    --bs-secondary-border-subtle: var(--bb-azul-claro);
  --bs-success-text-emphasis: var(--bb-primaria);   --bs-success-bg-subtle: var(--bb-destaque);   --bs-success-border-subtle: var(--bb-azul-claro);
  --bs-info-text-emphasis: var(--bb-primaria);      --bs-info-bg-subtle: var(--bb-destaque);      --bs-info-border-subtle: var(--bb-azul-claro);
  --bs-warning-text-emphasis: var(--bb-vermelho);   --bs-warning-bg-subtle: var(--bb-destaque);   --bs-warning-border-subtle: var(--bb-vermelho);
  --bs-danger-text-emphasis: var(--bb-vermelho);    --bs-danger-bg-subtle: var(--bb-destaque);    --bs-danger-border-subtle: var(--bb-vermelho);
  --bs-light-text-emphasis: var(--bb-indigo);       --bs-light-bg-subtle: var(--bb-fundo);        --bs-light-border-subtle: var(--bb-azul-claro);
  --bs-dark-text-emphasis: var(--bb-indigo);        --bs-dark-bg-subtle: var(--bb-azul-claro);    --bs-dark-border-subtle: var(--bb-secundaria);

  --bs-body-bg: var(--bb-fundo);               --bs-body-bg-rgb: 245, 245, 245;
  --bs-body-color: var(--bb-indigo);           --bs-body-color-rgb: var(--bb-indigo-rgb);
  --bs-emphasis-color: var(--bb-primaria);     --bs-emphasis-color-rgb: var(--bb-primaria-rgb);
  --bs-heading-color: var(--bb-primaria);
  --bs-secondary-color: var(--bb-secundaria);  --bs-secondary-color-rgb: var(--bb-secundaria-rgb);
  --bs-tertiary-color: var(--bb-secundaria);
  --bs-secondary-bg: var(--bb-azul-claro);
  --bs-tertiary-bg: var(--bb-destaque);        --bs-tertiary-bg-rgb: var(--bb-destaque-rgb);
  --bs-border-color: var(--bb-azul-claro);
  --bs-border-color-translucent: rgba(var(--bb-indigo-rgb), .15);
  --bs-link-color: var(--bb-primaria);         --bs-link-color-rgb: var(--bb-primaria-rgb);
  --bs-link-hover-color: var(--bb-indigo);     --bs-link-hover-color-rgb: var(--bb-indigo-rgb);
  --bs-focus-ring-color: var(--bb-foco);
  --bs-form-valid-color: var(--bb-primaria);   --bs-form-valid-border-color: var(--bb-primaria);
  --bs-form-invalid-color: var(--bb-vermelho); --bs-form-invalid-border-color: var(--bb-vermelho);
  --ad-menu-item-color: var(--bb-primaria);
}
::selection { background: var(--bb-azul-claro); color: var(--bb-primaria); }
.text-body-secondary, .text-muted { color: var(--bb-secundaria) !important; }
.text-white-50 { color: var(--bb-azul-claro) !important; }

/* ---- Botões ---- */
.btn-primary {
  --bs-btn-color: var(--bb-branco); --bs-btn-bg: var(--bb-primaria); --bs-btn-border-color: var(--bb-primaria);
  --bs-btn-hover-color: var(--bb-branco); --bs-btn-hover-bg: var(--bb-indigo); --bs-btn-hover-border-color: var(--bb-indigo);
  --bs-btn-active-color: var(--bb-branco); --bs-btn-active-bg: var(--bb-indigo); --bs-btn-active-border-color: var(--bb-indigo);
  --bs-btn-disabled-bg: var(--bb-azul-claro); --bs-btn-disabled-border-color: var(--bb-azul-claro); --bs-btn-disabled-color: var(--bb-secundaria);
}
.btn-secondary, .btn-info, .btn-success {
  --bs-btn-color: var(--bb-branco); --bs-btn-bg: var(--bb-secundaria); --bs-btn-border-color: var(--bb-secundaria);
  --bs-btn-hover-color: var(--bb-branco); --bs-btn-hover-bg: var(--bb-indigo); --bs-btn-hover-border-color: var(--bb-indigo);
  --bs-btn-active-color: var(--bb-branco); --bs-btn-active-bg: var(--bb-indigo); --bs-btn-active-border-color: var(--bb-indigo);
}
.btn-success { --bs-btn-bg: var(--bb-primaria); --bs-btn-border-color: var(--bb-primaria); }
.btn-danger, .btn-warning {
  --bs-btn-color: var(--bb-branco); --bs-btn-bg: var(--bb-vermelho); --bs-btn-border-color: var(--bb-vermelho);
  --bs-btn-hover-color: var(--bb-branco); --bs-btn-hover-bg: var(--bb-vermelho); --bs-btn-hover-border-color: var(--bb-indigo);
  --bs-btn-active-color: var(--bb-branco); --bs-btn-active-bg: var(--bb-vermelho); --bs-btn-active-border-color: var(--bb-indigo);
}
.btn-outline-primary, .btn-outline-secondary, .btn-default, .btn-light {
  --bs-btn-color: var(--bb-primaria); --bs-btn-bg: var(--bb-branco); --bs-btn-border-color: var(--bb-azul-claro);
  --bs-btn-hover-color: var(--bb-primaria); --bs-btn-hover-bg: var(--bb-destaque); --bs-btn-hover-border-color: var(--bb-azul-claro);
  --bs-btn-active-color: var(--bb-primaria); --bs-btn-active-bg: var(--bb-destaque); --bs-btn-active-border-color: var(--bb-secundaria);
}
.btn-outline-success {   /* chip "tempo real" conectado */
  --bs-btn-color: var(--bb-primaria); --bs-btn-bg: var(--bb-destaque); --bs-btn-border-color: var(--bb-azul-claro);
  --bs-btn-hover-color: var(--bb-primaria); --bs-btn-hover-bg: var(--bb-destaque); --bs-btn-hover-border-color: var(--bb-secundaria);
  --bs-btn-active-color: var(--bb-primaria); --bs-btn-active-bg: var(--bb-destaque);
}
.btn-outline-light {
  --bs-btn-color: var(--bb-branco); --bs-btn-bg: transparent; --bs-btn-border-color: var(--bb-branco);
  --bs-btn-hover-color: var(--bb-primaria); --bs-btn-hover-bg: var(--bb-branco); --bs-btn-hover-border-color: var(--bb-branco);
  --bs-btn-active-color: var(--bb-primaria); --bs-btn-active-bg: var(--bb-destaque);
}
.btn-dark { --bs-btn-color: var(--bb-branco); --bs-btn-bg: var(--bb-indigo); --bs-btn-border-color: var(--bb-indigo); --bs-btn-hover-bg: var(--bb-primaria); --bs-btn-hover-border-color: var(--bb-primaria); --bs-btn-hover-color: var(--bb-branco); }

/* ---- Badges ---- */
.text-bg-danger, .bg-danger { background-color: var(--bb-vermelho) !important; color: var(--bb-branco) !important; }
.text-bg-secondary { background-color: var(--bb-secundaria) !important; color: var(--bb-branco) !important; }
.text-bg-dark, .bg-dark { background-color: var(--bb-indigo) !important; color: var(--bb-branco) !important; }
.text-bg-primary, .bg-primary { background-color: var(--bb-primaria) !important; color: var(--bb-branco) !important; }

/* ---- Avisos ---- */
.alert { --bs-alert-bg: var(--bb-destaque); --bs-alert-color: var(--bb-indigo); --bs-alert-border-color: var(--bb-azul-claro); --bs-alert-link-color: var(--bb-primaria); }
.alert-warning, .alert-danger { --bs-alert-bg: var(--bb-destaque); --bs-alert-color: var(--bb-indigo); --bs-alert-border-color: var(--bb-vermelho); }
.alert-warning > i, .alert-danger > i, .alert-warning .fa-triangle-exclamation { color: var(--bb-vermelho); }
.alert-light { --bs-alert-bg: var(--bb-branco); --bs-alert-color: var(--bb-secundaria); --bs-alert-border-color: var(--bb-azul-claro); }

/* ---- Barra do topo ---- */
.main > .navbar { background-color: var(--bb-primaria) !important; color: var(--bb-branco); border: 0 !important; }
.main > .navbar .navbar-toggler-icon { filter: brightness(0) invert(1); }
.bb-nome, .bb-nome-2 { color: var(--bb-branco); }
.bb-nome-1 { color: var(--bb-logo-azul); }
.bb-live { background: var(--bb-vermelho); color: var(--bb-branco); }
/* Barra de navegação inferior */
.bb-bottomnav { background: var(--bb-branco); border-top: 1px solid var(--bb-azul-claro); }
.bb-bottomnav a.sidebar-link, [data-menu-theme] .bb-bottomnav a.sidebar-link { color: var(--bb-secundaria) !important; background: transparent !important; }
.bb-bottomnav a.sidebar-link i { color: var(--bb-secundaria) !important; }
.bb-bottomnav a.sidebar-link:hover, .bb-bottomnav a.sidebar-link:hover i { color: var(--bb-primaria) !important; }
.bb-bottomnav a.sidebar-link.active:not([generator]), .bb-bottomnav a.sidebar-link.active:not([generator]) i { color: var(--bb-primaria) !important; }
.bb-bottomnav a.sidebar-link.active:not([generator])::before { background: var(--bb-primaria); }
.bb-bottomnav .bb-selo { background: var(--bb-vermelho); color: var(--bb-branco); box-shadow: 0 0 0 2px var(--bb-branco); }

/* ---- Superfícies, campos, abas ---- */
.card, .ui-dialog, .swal2-popup { background-color: var(--bb-branco) !important; color: var(--bb-indigo); }
.card-header, .card-title, .ui-dialog .ui-dialog-title, .swal2-title { color: var(--bb-primaria) !important; }
.swal2-html-container { color: var(--bb-indigo) !important; }
.form-control, .form-select, .tfield { background-color: var(--bb-destaque); color: var(--bb-indigo); border-bottom-color: var(--bb-secundaria) !important; }
.form-control:focus, .form-select:focus, .tfield:focus { background-color: var(--bb-destaque); color: var(--bb-primaria); border-bottom-color: var(--bb-primaria) !important; }
.form-control::placeholder, .tfield::placeholder { color: var(--bb-secundaria); opacity: 1; }
.form-control:disabled, .tfield:disabled, .tfield[readonly] { background-color: var(--bb-fundo); color: var(--bb-secundaria); }
.form-check-input:checked { background-color: var(--bb-primaria); border-color: var(--bb-primaria); }
.input-inner-icon { color: var(--bb-secundaria) !important; }
.nav-tabs { --bs-nav-link-color: var(--bb-secundaria); --bs-nav-link-hover-color: var(--bb-primaria); --bs-nav-tabs-link-active-color: var(--bb-primaria); --bs-nav-tabs-border-color: var(--bb-azul-claro); }
.nav-tabs .nav-link.active { box-shadow: inset 0 -3px 0 var(--bb-primaria) !important; }

/* Busca: pílula branca com borda azul-claro */
form[name=form_busca] > div { background: var(--bb-branco) !important; border: 1px solid var(--bb-azul-claro); }
form[name=form_busca] > div:focus-within { border-color: var(--bb-primaria); }
form[name=form_busca] #q { color: var(--bb-indigo); }
form[name=form_busca] #tbutton_camBtn { color: var(--bb-vermelho) !important; }
form[name=form_busca] #tbutton_camBtn:hover { background: var(--bb-destaque) !important; }

/* Lista das lives */
.live-card { background: var(--bb-branco); border-color: var(--bb-azul-claro) !important; }
.live-card .card-item-title { color: var(--bb-primaria) !important; }
.live-card [data-media] { background: var(--bb-azul-claro); }
.card-item-actions > i { color: var(--bb-primaria); }
.card-item-actions > i:hover { background: var(--bb-destaque); }

/* ---- Diálogos e avisos flutuantes ---- */
.ui-widget-overlay, .swal2-container.swal2-backdrop-show { background: var(--bb-veu) !important; }
.ui-dialog .ui-dialog-titlebar-close { color: var(--bb-secundaria); }
.ui-dialog .ui-dialog-titlebar-close:hover { background: var(--bb-hover) !important; }
.swal2-styled.swal2-confirm { background: var(--bb-primaria) !important; color: var(--bb-branco) !important; }
.swal2-styled.swal2-deny { background: var(--bb-vermelho) !important; color: var(--bb-branco) !important; }
.swal2-styled.swal2-cancel { background: var(--bb-azul-claro) !important; color: var(--bb-primaria) !important; }
.swal2-styled:focus { box-shadow: 0 0 0 3px var(--bb-foco) !important; }
.swal2-icon.swal2-warning, .swal2-icon.swal2-error { border-color: var(--bb-vermelho) !important; color: var(--bb-vermelho) !important; }
.swal2-icon.swal2-error [class^=swal2-x-mark-line] { background-color: var(--bb-vermelho) !important; }
.swal2-icon.swal2-info, .swal2-icon.swal2-question { border-color: var(--bb-secundaria) !important; color: var(--bb-secundaria) !important; }
.swal2-icon.swal2-success { border-color: var(--bb-primaria) !important; color: var(--bb-primaria) !important; }
.swal2-icon.swal2-success [class^=swal2-success-line] { background-color: var(--bb-primaria) !important; }
.swal2-icon.swal2-success .swal2-success-ring { border-color: rgba(var(--bb-primaria-rgb), .3) !important; }
.swal2-input { background: var(--bb-destaque) !important; color: var(--bb-indigo) !important; border-color: var(--bb-azul-claro) !important; }
.iziToast { background: var(--bb-indigo) !important; border-color: var(--bb-indigo) !important; }
.iziToast .iziToast-message, .iziToast .iziToast-title, .iziToast .iziToast-icon, .iziToast .iziToast-close { color: var(--bb-branco) !important; }
.iziToast-progressbar > div { background: var(--bb-azul-claro) !important; }

/* ---- Sobras do Adianti/adminbs5 com cores próprias ---- */
.card-footer, .panel-footer { border-color: var(--bb-azul-claro) !important; }
code { color: var(--bb-primaria); }
.tspinner i, .tfield ~ i.fa-caret-up, .tfield ~ i.fa-caret-down, i.fa-caret-up, i.fa-caret-down { color: var(--bb-secundaria) !important; }
.btn-check { color: var(--bb-indigo); }
.btn-outline-default {
  --bs-btn-color: var(--bb-primaria); --bs-btn-bg: var(--bb-branco); --bs-btn-border-color: var(--bb-azul-claro);
  --bs-btn-hover-color: var(--bb-primaria); --bs-btn-hover-bg: var(--bb-destaque); --bs-btn-hover-border-color: var(--bb-azul-claro);
  --bs-btn-active-color: var(--bb-branco); --bs-btn-active-bg: var(--bb-primaria); --bs-btn-active-border-color: var(--bb-primaria);
}
.btn-check:checked + .btn-outline-default, .btn-check:checked + .btn { color: var(--bb-branco) !important; background: var(--bb-primaria) !important; border-color: var(--bb-primaria) !important; }
/* adminbs5 redefine .bg-black como #111: na paleta, o "preto" é o índigo (respeita bg-opacity-*) */
.bg-black { background-color: rgba(var(--bb-indigo-rgb), var(--bs-bg-opacity, 1)) !important; }

