/* Pruebas A/B de agentes — tema compartido del admin.
   Hoja GLOBAL acotada bajo .ab-tests (mismo patrón que costes.css): el CSS scoped
   por página no alcanza a los hijos (AbReportView, FinishModal, AgentAbTestBanner).
   Todo con variables de app.css => válido en tema oscuro y claro. */

.ab-tests { color: var(--text-primary); }
.ab-tests h1, .ab-tests h2, .ab-tests h3, .ab-tests h4, .ab-tests h5, .ab-tests h6,
.ab-tests .h3, .ab-tests .h5 { color: var(--text-primary); }
.ab-tests .text-muted,
.ab-tests .form-text,
.ab-tests .text-body-secondary { color: var(--text-secondary) !important; }
.ab-tests code { color: var(--secondary-color); }
.ab-tests a { color: var(--primary-color); }

/* ---- Tarjetas ---- */
.ab-tests .card {
    background: var(--card-bg);
    border: 1px solid var(--glass-border);
    color: var(--text-primary);
    border-radius: 14px;
    -webkit-backdrop-filter: var(--backdrop-blur);
    backdrop-filter: var(--backdrop-blur);
    box-shadow: var(--glass-shadow);
}
.ab-tests .card-header {
    background: var(--glass-highlight);
    border-bottom: 1px solid var(--glass-border);
    color: var(--text-primary);
}
.ab-tests .card-body { color: var(--text-primary); }

/* ---- Campos ---- */
.ab-tests .form-control,
.ab-tests .form-select {
    background-color: var(--input-bg);
    border: 1px solid var(--glass-border);
    color: var(--text-primary);
}
.ab-tests .form-control:focus,
.ab-tests .form-select:focus {
    background-color: var(--input-bg);
    border-color: var(--primary-color);
    color: var(--text-primary);
    box-shadow: 0 0 0 0.2rem var(--primary-focus-ring, rgba(6, 182, 212, 0.25));
}
.ab-tests .form-control:disabled,
.ab-tests .form-select:disabled { background-color: var(--input-bg); color: var(--text-secondary); opacity: .7; }
.ab-tests .form-control::placeholder { color: var(--text-secondary); opacity: 1; }
.ab-tests .form-label { color: var(--text-secondary); }
.ab-tests .form-select option { background: var(--bg-surface); color: var(--text-primary); }
.ab-tests input[type="date"]::-webkit-calendar-picker-indicator { filter: invert(1) brightness(1.5); cursor: pointer; }
:root[data-theme="light"] .ab-tests input[type="date"]::-webkit-calendar-picker-indicator { filter: none; }
.ab-tests .input-group-text {
    background: var(--glass-highlight);
    border: 1px solid var(--glass-border);
    color: var(--text-secondary);
}

.ab-tests .form-check-input { background-color: var(--input-bg); border-color: var(--glass-border); }
.ab-tests .form-check-input:checked { background-color: var(--primary-color); border-color: var(--primary-color); }
.ab-tests .form-check-input:focus { border-color: var(--primary-color); box-shadow: 0 0 0 0.2rem rgba(6, 182, 212, 0.25); }
.ab-tests .form-check-label { color: var(--text-primary); }

/* ---- Botones ---- */
.ab-tests .btn-primary { background: var(--primary-solid); border: none; color: var(--primary-solid-text, #fff); }
.ab-tests .btn-primary:hover:not(:disabled) { background: var(--primary-solid-hover, var(--primary-solid)); color: var(--primary-solid-text, #fff); }
.ab-tests .btn-primary:disabled { opacity: .5; }
.ab-tests .btn-outline-secondary,
.ab-tests .btn-secondary {
    border: 1px solid var(--glass-border);
    color: var(--text-secondary);
    background: var(--input-bg);
}
.ab-tests .btn-outline-secondary:hover,
.ab-tests .btn-secondary:hover,
.ab-tests .btn-outline-secondary:focus-visible {
    border-color: var(--primary-color);
    color: var(--primary-color);
    background: var(--glass-highlight);
}
.ab-tests .btn:disabled { opacity: .5; }

/* ---- Tablas ---- */
.ab-tests .table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    --bs-table-border-color: var(--glass-border);
    --bs-table-hover-color: var(--text-primary);
    --bs-table-hover-bg: var(--glass-highlight);
    color: var(--text-primary);
    margin-bottom: 0;
}
.ab-tests .table > :not(caption) > * > * {
    background-color: transparent;
    color: var(--text-primary);
    border-bottom-color: var(--glass-border);
}
.ab-tests .table thead th {
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    font-size: .72rem;
    letter-spacing: .04em;
}
.ab-tests .table tbody th { color: var(--text-secondary); font-weight: 500; }
.ab-tests .table-hover > tbody > tr:hover > * { background-color: var(--glass-highlight) !important; }

/* ---- Avisos: fondo translúcido del color semántico, texto legible en ambos temas ---- */
.ab-tests .alert {
    border: 1px solid var(--glass-border);
    border-left-width: 4px;
    background: var(--glass-highlight);
    color: var(--text-primary);
}
.ab-tests .alert-info { border-left-color: var(--primary-color); background: rgba(6, 182, 212, .10); }
.ab-tests .alert-warning { border-left-color: #f59e0b; background: rgba(245, 158, 11, .12); }
.ab-tests .alert-danger { border-left-color: #ef4444; background: rgba(239, 68, 68, .12); }
.ab-tests .alert-success { border-left-color: #10b981; background: rgba(16, 185, 129, .12); }
.ab-tests .alert-secondary { border-left-color: var(--text-secondary); }
.ab-tests .text-warning-emphasis { color: #f59e0b !important; }
.ab-tests .text-danger { color: #f87171 !important; }
.ab-tests .text-success { color: #34d399 !important; }
:root[data-theme="light"] .ab-tests .text-warning-emphasis { color: #b45309 !important; }
:root[data-theme="light"] .ab-tests .text-danger { color: #b91c1c !important; }
:root[data-theme="light"] .ab-tests .text-success { color: #047857 !important; }

/* ---- Etiquetas de estado ---- */
.ab-tests .badge { font-weight: 600; }
.ab-tests .badge.bg-secondary,
.ab-tests .badge.text-bg-secondary { background: var(--glass-highlight) !important; color: var(--text-secondary) !important; border: 1px solid var(--glass-border); }
.ab-tests .badge.bg-light,
.ab-tests .badge.text-bg-light { background: var(--glass-highlight) !important; color: var(--text-primary) !important; border: 1px solid var(--glass-border); }

/* ---- Lista (variantes, destinos) ---- */
.ab-tests .list-group-item {
    background: transparent;
    border-color: var(--glass-border);
    color: var(--text-primary);
}
.ab-tests .border, .ab-tests .border-top, .ab-tests .border-bottom { border-color: var(--glass-border) !important; }
.ab-tests .bg-light, .ab-tests .bg-white, .ab-tests .bg-body { background: var(--glass-highlight) !important; color: var(--text-primary) !important; }

/* ---- Barra de progreso del reparto ---- */
.ab-tests .progress { background: var(--input-bg); }

/* ---- Modal (Finalizar) ---- */
.ab-tests .modal-content {
    background: var(--bg-surface);
    border: 1px solid var(--glass-border);
    color: var(--text-primary);
    box-shadow: var(--glass-shadow);
}
.ab-tests .modal-header, .ab-tests .modal-footer { border-color: var(--glass-border); }
.ab-tests .btn-close { filter: invert(1) brightness(1.5); }
:root[data-theme="light"] .ab-tests .btn-close { filter: none; }

/* ---- Sección destacada (Negocio): acento del tema, no el azul claro de Bootstrap ---- */
.ab-tests .card.border-primary { border-color: var(--primary-color) !important; }
.ab-tests .bg-primary-subtle { background: rgba(6, 182, 212, .14) !important; color: var(--text-primary) !important; }
.ab-tests .bg-primary-subtle h2, .ab-tests .bg-primary-subtle i { color: var(--primary-color); }
