/* =====================================================================
   Colores GENÉRICOS de LicitacionesZ:
     azul   #2A5BD7 → principal: botones, menú activo, enlaces
     marino #1C2B4A → títulos de página
     acento #7FA2F0 → enlaces y menú activo en modo oscuro
   Cada empresa pone SUS colores y logo en Configuración › Datos de la empresa:
   el layout los aplica encima de estos (MarcaHelper.Estilo). No se edita este archivo por cliente.
   ===================================================================== */
:root,
[data-bs-theme=dark] {
    --lz-principal: #2A5BD7;
    --lz-principal-oscuro: #2149AC;
    --lz-marino: #1C2B4A;
    --lz-acento: #7FA2F0;
    --bs-primary: #2A5BD7;
    --bs-primary-rgb: 42, 91, 215;
    --bs-primary-bg-subtle: rgba(42, 91, 215, .12);
    --bs-primary-border-subtle: rgba(42, 91, 215, .35);
    --bs-primary-text-emphasis: #2149AC;
    --bs-link-color: #2A5BD7;
    --bs-link-color-rgb: 42, 91, 215;
    --bs-link-hover-color: #2149AC;
    --bs-link-hover-color-rgb: 33, 73, 172;
    --bs-focus-ring-color: rgba(42, 91, 215, .25);
}

[data-bs-theme=dark] {
    --bs-primary-text-emphasis: #A9C0F5;
    --bs-link-color: #7FA2F0;
    --bs-link-color-rgb: 127, 162, 240;
    --bs-link-hover-color: #A9C0F5;
    --bs-link-hover-color-rgb: 169, 192, 245;
}

[data-bs-theme=dark] #sidebar-menu ul li.mm-active > a,
[data-bs-theme=dark] #sidebar-menu ul li a.active,
[data-bs-theme=dark] #sidebar-menu ul li.mm-active > a i,
[data-bs-theme=dark] #sidebar-menu ul li a.active i {
    color: var(--lz-acento) !important;
}

.navbar-brand-box .logo img { object-fit: contain; }
.navbar-brand-box .logo-lg img { max-width: 220px; }

.btn-primary { background-color: var(--bs-primary); border-color: var(--bs-primary); }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    filter: brightness(.9);
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}

.bg-primary { background-color: var(--bs-primary) !important; }
.text-primary { color: var(--bs-primary) !important; }
.page-item.active .page-link { background-color: var(--bs-primary); border-color: var(--bs-primary); }
.form-check-input:checked { background-color: var(--bs-primary); border-color: var(--bs-primary); }

#sidebar-menu ul li.mm-active > a, #sidebar-menu ul li a.active,
#sidebar-menu ul li.mm-active > a i, #sidebar-menu ul li a.active i {
    color: var(--bs-primary) !important;
}

.logo-txt {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 160px;
    display: inline-block;
    vertical-align: middle;
}

a { color: var(--bs-link-color); }
a:hover { color: var(--bs-link-hover-color); }

.btn-soft-primary { color: var(--bs-primary); background-color: rgba(var(--bs-primary-rgb), .1); border-color: transparent; }
.btn-soft-primary:hover, .btn-soft-primary:focus, .btn-soft-primary:active {
    color: #fff !important;
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}

.btn-outline-primary { color: var(--bs-primary); border-color: var(--bs-primary); }
.btn-outline-primary:hover { color: #fff; background-color: var(--bs-primary); border-color: var(--bs-primary); }

.form-control:focus, .form-select:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 .15rem var(--bs-focus-ring-color);
}

.alert-primary {
    color: var(--bs-primary-text-emphasis);
    background-color: var(--bs-primary-bg-subtle);
    border-color: var(--bs-primary-border-subtle);
}

/* Títulos de página en el marino (en oscuro, el texto normal) */
.page-title-box h4 { color: var(--lz-marino); }
[data-bs-theme=dark] .page-title-box h4 { color: var(--bs-body-color); }

/* Partidas del detalle */
.partida .card-header { background-color: rgba(var(--bs-primary-rgb), .05); }
.partida table td, .partida table th { white-space: nowrap; }
.partida table td.text-wrap { white-space: normal; }
