/* ==========================================================================
   Tema da filial sobre o Bootstrap
   --------------------------------------------------------------------------
   O Bootstrap 5.1.1 do projeto foi compilado com a cor da marca gravada como
   valor literal (#005d90 / #013552). As classes utilitárias novas leem
   --bs-primary-rgb e já seguem o tema (BranchTheme redefine essa variável),
   mas botões, links, foco, paginação e afins ficaram com a cor cravada.

   Este arquivo redeclara esses pontos usando as variáveis do tema. Precisa ser
   o ÚLTIMO CSS carregado no layout.

   Padrão de cada regra: primeiro a cor antiga (funciona em qualquer
   navegador), depois a versão com variável — quem entende, usa a segunda.
   Tons mais escuros saem de color-mix, que é como o Bootstrap gera hover.
   ========================================================================== */

/* ---- Links ------------------------------------------------------------- */
a {
    color: #005d90;
    color: var(--pm-primary, #005d90);
}
a:hover {
    color: #013552;
    color: var(--pm-primary-dark, #013552);
}
.btn-link,
.link-primary,
.nav-link,
.page-link {
    color: #005d90;
    color: var(--pm-primary, #005d90);
}
.btn-link:hover,
.link-primary:hover,
.nav-link:hover,
.page-link:hover {
    color: #013552;
    color: var(--pm-primary-dark, #013552);
}
.link-secondary {
    color: #013552;
    color: var(--pm-primary-dark, #013552);
}

/* ---- Botão primário ---------------------------------------------------- */
.btn-primary {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-check:focus + .btn-primary {
    background-color: #004f7a;
    background-color: color-mix(in srgb, var(--pm-primary, #005d90) 86%, #000);
    border-color: #004a73;
    border-color: color-mix(in srgb, var(--pm-primary, #005d90) 82%, #000);
}
.btn-primary:active,
.btn-primary.active,
.btn-check:checked + .btn-primary,
.show > .btn-primary.dropdown-toggle {
    background-color: #004a73;
    background-color: color-mix(in srgb, var(--pm-primary, #005d90) 80%, #000);
    border-color: #00456c;
    border-color: color-mix(in srgb, var(--pm-primary, #005d90) 76%, #000);
}
.btn-primary:disabled,
.btn-primary.disabled {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
}

/* ---- Botão primário vazado --------------------------------------------- */
.btn-outline-primary {
    color: #005d90;
    color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
}
.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-check:checked + .btn-outline-primary,
.btn-check:active + .btn-outline-primary,
.show > .btn-outline-primary.dropdown-toggle {
    color: #fff;
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
}
.btn-outline-primary:disabled,
.btn-outline-primary.disabled {
    color: #005d90;
    color: var(--pm-primary, #005d90);
}

/* ---- Botão secundário (tom escuro da marca) ---------------------------- */
.btn-secondary {
    background-color: #013552;
    background-color: var(--pm-primary-dark, #013552);
    border-color: #013552;
    border-color: var(--pm-primary-dark, #013552);
}
.btn-secondary:hover,
.btn-secondary:focus {
    background-color: #012d46;
    background-color: color-mix(in srgb, var(--pm-primary-dark, #013552) 86%, #000);
    border-color: #012a41;
    border-color: color-mix(in srgb, var(--pm-primary-dark, #013552) 82%, #000);
}
.btn-outline-secondary {
    color: #013552;
    color: var(--pm-primary-dark, #013552);
    border-color: #013552;
    border-color: var(--pm-primary-dark, #013552);
}
.btn-outline-secondary:hover,
.btn-outline-secondary:active,
.btn-check:checked + .btn-outline-secondary {
    color: #fff;
    background-color: #013552;
    background-color: var(--pm-primary-dark, #013552);
    border-color: #013552;
    border-color: var(--pm-primary-dark, #013552);
}

/* ---- Foco (o anel azul que aparecia em tudo) --------------------------- */
.form-control:focus,
.form-select:focus,
.form-check-input:focus,
.btn:focus,
.btn-check:focus + .btn,
.accordion-button:focus,
.page-link:focus,
.btn-close:focus,
.btn-outline-primary:focus,
.btn-check:focus + .btn-outline-primary {
    box-shadow: 0 0 0 0.25rem rgba(0, 93, 144, 0.25);
    box-shadow: 0 0 0 0.25rem color-mix(in srgb, var(--pm-primary, #005d90) 25%, transparent);
}
.form-control:focus,
.form-select:focus {
    border-color: #80aec8;
    border-color: color-mix(in srgb, var(--pm-primary, #005d90) 50%, #fff);
}

/* ---- Formulário -------------------------------------------------------- */
.form-check-input:checked,
.form-check-input[type=checkbox]:indeterminate {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
}
.form-range::-webkit-slider-thumb {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
}
.form-range::-moz-range-thumb {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
}

/* ---- Navegação, listas e paginação ------------------------------------- */
.dropdown-item.active,
.dropdown-item:active,
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link,
.page-item.active .page-link,
.list-group-item.active {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
    border-color: #005d90;
    border-color: var(--pm-primary, #005d90);
    color: #fff;
}
.progress-bar {
    background-color: #005d90;
    background-color: var(--pm-primary, #005d90);
}

/* ---- Bordas utilitárias ------------------------------------------------ */
.border-primary {
    border-color: #005d90 !important;
    border-color: var(--pm-primary, #005d90) !important;
}
.border-secondary {
    border-color: #013552 !important;
    border-color: var(--pm-primary-dark, #013552) !important;
}
