/**
 * Custom overrides for Material Dashboard theme
 * Sobrescribe los estilos de focus de formularios (de rosa #e91e63 a verde oliva #898d37)
 * Solo aplica el verde cuando el campo está enfocado, no en estado normal
 */

/* ============================================
   INPUT-GROUP-DYNAMIC / INPUT-GROUP-STATIC
   ============================================ */

/* Línea inferior del input SOLO cuando tiene focus */
.input-group.input-group-dynamic .form-control:focus,
.input-group.input-group-static .form-control:focus {
    background-image: linear-gradient(0deg, #898d37 2px, rgba(156, 39, 176, 0) 0), linear-gradient(0deg, #d2d2d2 1px, hsla(0, 0%, 82%, 0) 0) !important;
}

/* Color del label cuando el input está enfocado */
.input-group.input-group-dynamic.is-focused label,
.input-group.input-group-static.is-focused label {
    color: #898d37 !important;
}

/* Campo disabled - mantener gris */
.input-group.input-group-dynamic .form-control[disabled],
.input-group.input-group-static .form-control[disabled] {
    background-image: linear-gradient(0deg, #9e9e9e 2px, rgba(156, 39, 176, 0) 0), linear-gradient(0deg, #e5e5e5 1px, hsla(0, 0%, 82%, 0) 0) !important;
}

/* ============================================
   INPUT-GROUP-OUTLINE (usado en login)
   ============================================ */

/* Borde del input SOLO cuando enfocado (is-focused), no cuando tiene contenido (is-filled) */
.input-group.input-group-outline.is-focused .form-label+.form-control {
    border-color: #898d37 !important;
    border-top-color: transparent !important;
    box-shadow: inset 1px 0 #898d37, inset -1px 0 #898d37, inset 0 -1px #898d37 !important;
}

/* Color del label SOLO cuando enfocado */
.input-group.input-group-outline.is-focused .form-label {
    color: #898d37 !important;
}

/* Pseudo-elementos del label (línea superior) SOLO cuando enfocado */
.input-group.input-group-outline.is-focused .form-label:before,
.input-group.input-group-outline.is-focused .form-label:after {
    border-top-color: #898d37 !important;
    box-shadow: inset 0 1px #898d37 !important;
}

/* ============================================
   CHECKBOXES Y RADIO BUTTONS
   ============================================ */

/* Checkbox cuando está checked - gradiente verde oliva */
.form-check-input:checked[type=checkbox] {
    --bs-form-check-bg-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
}

/* Radio button cuando está checked - gradiente verde oliva */
.form-check-input:checked[type=radio] {
    --bs-form-check-bg-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
}

/* Checkbox indeterminado */
.form-check-input[type=checkbox]:indeterminate {
    background-color: #898d37 !important;
    border-color: #898d37 !important;
}

/* ============================================
   SWITCHES (toggles)
   ============================================ */

/* Switch cuando está activado */
.form-switch .form-check-input:checked {
    border-color: #898d37 !important;
    background-color: #898d37 !important;
}

.form-switch .form-check-input:checked:after {
    border-color: #898d37 !important;
}

/* ============================================
   PAGINATION
   ============================================ */

/* Página activa de la paginación - verde oliva */
.pagination .page-item.active .page-link {
    background-color: #898d37 !important;
    border-color: #898d37 !important;
    color: #fff !important;
}

/* Hover en páginas de paginación */
.pagination .page-item:not(.active) .page-link:hover {
    background-color: rgba(137, 141, 55, 0.1) !important;
    color: #898d37 !important;
}

/* ============================================
   BOTONES CORPORATIVOS
   ============================================ */

/* Botón corporativo sólido */
.btn-corporate {
    background-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
    color: #fff !important;
    border: none;
}

.btn-corporate:hover,
.btn-corporate:focus {
    color: #fff !important;
    background-image: linear-gradient(195deg, #b0bb46 0%, #919639 100%) !important;
    box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.09), 0 2px 3px -1px rgba(0, 0, 0, 0.07);
}

.btn-corporate:active {
    background-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
    box-shadow: none;
}

/* Botón corporativo outline */
.btn-outline-corporate {
    color: #898d37 !important;
    border-color: #898d37 !important;
    background-image: none !important;
    background-color: transparent !important;
}

.btn-outline-corporate:hover,
.btn-outline-corporate:focus {
    color: #fff !important;
    background-color: #898d37 !important;
    border-color: #898d37 !important;
}

/* ============================================
   SIDENAV OVERRIDES (FOR TRANSPARENT SIDEBAR)
   ============================================ */

/* Asegurar que cuando el aside es transparente, los links activos sigan teniendo el verde corporativo */
/* Se excluyen los elementos con data-bs-toggle="collapse" (padres) para que solo los hijos sean verdes */
.sidenav.bg-transparent[data-color="smolbi"] .navbar-nav>.nav-item .nav-link.active:not([data-bs-toggle="collapse"]),
.sidenav.bg-transparent[data-color="smolbi"] .collapse .nav>.nav-item .nav-link.active {
    background-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
    color: #fff !important;
}

/* Iconos en blanco para items activos en aside transparente */
.sidenav.bg-transparent[data-color="smolbi"] .nav-link.active .material-symbols-rounded,
.sidenav.bg-transparent[data-color="smolbi"] .nav-link.active .sidenav-mini-icon,
.sidenav.bg-transparent[data-color="smolbi"] .nav-link.active .sidenav-normal {
    color: #fff !important;
}

/* Forzar que los botones que usan bg-gradient-dark tengan el verde corporativo cuando se pide */
.bg-gradient-dark.btn-corporate {
    background-image: linear-gradient(195deg, #a6b042 0%, #898d37 100%) !important;
}