/* CSS Dinámico Generado - Colores de Empresa */
:root {
    --color-primary: #1582c7;
    --color-primary-dark: #0064a9;
    --color-primary-light: #33a0e5;
    --color-primary-alpha: rgba(21, 130, 199, 0.1);
    --color-primary-hover: #016eb3;
}

/* Override de colores verdes con colores dinámicos */

/* Login CSS - Reemplazos dinámicos */
.login-container::before {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark)) !important;
}

.login-form input:focus, .login-form select:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px var(--color-primary-alpha) !important;
}

.login-btn {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark)) !important;
}

.login-btn:hover {
    box-shadow: 0 4px 12px var(--color-primary-alpha) !important;
    background: linear-gradient(135deg, var(--color-primary-hover), var(--color-primary-dark)) !important;
}

/* Main CSS - Reemplazos dinámicos */
.system-logo i {
    color: var(--color-primary) !important;
}

/* Comentado: Mantener el sidebar con su estilo original */
/*
.system-sidebar {
    background: linear-gradient(90deg, var(--color-primary) 0%, var(--color-primary-dark) 100%) !important;
}
*/

/* Comentado: Mantener el hover del menú con su estilo original */
/*
.menu-item:hover {
    background: linear-gradient(to bottom, var(--color-primary), var(--color-primary-dark)) !important;
}
*/

.btn-primary {
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.btn-primary:hover {
    background: var(--color-primary-hover) !important;
}

.btn-success {
    background: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.btn-success:hover {
    background: var(--color-primary-hover) !important;
}

.form-control:focus {
    border-color: var(--color-primary) !important;
    box-shadow: 0 0 0 3px var(--color-primary-alpha) !important;
}

.card-header {
    border-top: 3px solid var(--color-primary) !important;
}

/* Nuevos estilos específicos del sistema */
.stat-card.success {
    border-left: 4px solid var(--color-primary) !important;
}

.badge-success {
    background-color: var(--color-primary) !important;
}

.progress-bar {
    background-color: var(--color-primary) !important;
}

.nav-link.active {
    color: var(--color-primary) !important;
    border-bottom: 2px solid var(--color-primary) !important;
}

/* Elementos activos del menú con transparencia mínima */
/* Menú lateral: item activo usa color dinámico */
.menu-item.active {
    background-color: color-mix(in srgb, var(--color-primary) 5%, transparent) !important;
    border-left: 4px solid var(--color-primary) !important;
}

.menu-item.active a {
    color: var(--color-primary) !important;
    font-weight: 600 !important;
}

/* Selección suave para elementos del sidebar */
.system-sidebar .menu-item:hover {
    background-color: rgba(255, 255, 255, 0.05) !important;
}

/* Sidebar: item activo con borde izquierdo en color dinámico */
.system-sidebar .menu-item.active {
    background: transparent !important;
    border-left: 4px solid var(--color-primary) !important;
}

/* Asegurar que el texto activo sea visible */
.system-sidebar .menu-item.active a {
    color: #fff !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}

.system-sidebar .menu-item.active i {
    color: #fff !important;
    filter: none !important;
    font-size: 1.2em;
}

.system-sidebar .menu-item i {
    color: var(--color-primary);
    transition: color 0.2s, font-size 0.2s;
}

/* Sidebar: todos los textos en color principal */
.system-sidebar .menu-item a, .system-sidebar .menu-item i {
    color: var(--color-primary) !important;
}

/* Sidebar: solo iconos en color principal, texto en blanco */
.system-sidebar .menu-item i {
    color: var(--color-primary) !important;
}
.system-sidebar .menu-item a {
    color: #fff !important;
    font-weight: 400 !important;
}

/* Sidebar: item activo sin fondo, solo borde izquierdo y icono destacado */
.system-sidebar .menu-item.active {
    background: transparent !important;
    border-left: 4px solid var(--color-primary) !important;
}

.system-sidebar .menu-item.active a {
    color: #fff !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px;
}

.system-sidebar .menu-item.active i {
    color: #fff !important;
    filter: none !important;
    font-size: 1.2em;
}

/* Tabla: filas con color de fondo alterno */
.table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--color-primary-alpha) !important;
}

/* Alertas de éxito */
.alert-success {
    color: var(--color-primary-dark) !important;
    background-color: var(--color-primary-alpha) !important;
    border-color: var(--color-primary-light) !important;
}

/* Efectos hover para elementos interactivos */
.card:hover {
    box-shadow: 0 4px 8px var(--color-primary-alpha) !important;
}

.btn-outline-primary {
    color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

.btn-outline-primary:hover {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

/* Elementos de paginación */
.page-link {
    color: var(--color-primary) !important;
}

.page-item.active .page-link {
    background-color: var(--color-primary) !important;
    border-color: var(--color-primary) !important;
}

/* Enlaces */
a {
    color: var(--color-primary) !important;
}

a:hover {
    color: var(--color-primary-dark) !important;
}