/* ========================
       COLORES BASE DEL SIDEBAR
    ========================= */
.main-sidebar.sidebar-dark-primary.custom-sidebar {
    background-color: #8C153C !important;
    /* Azul cielo */
    color: #fff !important;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.2);
}

.main-sidebar.sidebar-dark-primary.custom-sidebar .sidebar {
    background-color: #8C153C !important;
    color: #fff !important;
}

/* BRAND LINK (logo) */
.main-sidebar.sidebar-dark-primary.custom-sidebar .brand-link {
    background: linear-gradient(to right, #8C153C, #103452) !important;
    color: #fff !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
    text-align: center;
    transition: background-color 0.3s ease;
}

.main-sidebar.custom-sidebar .brand-link:hover {
    background: linear-gradient(to right, #103452, #8C153C) !important;
}

.brand-link .brand-image {
    height: 45px !important;
    width: 45px !important;
}

.brand-link .brand-text {
    font-weight: bold;
    letter-spacing: 0.5px;
}

/* USUARIO (user-panel) */
.main-sidebar.custom-sidebar .user-panel {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 5px;
    padding: 0.5rem;
    margin-bottom: 1rem;
    transition: background-color 0.3s ease;
}

.main-sidebar.custom-sidebar .user-panel:hover {
    background-color: rgba(255, 255, 255, 0.2);
}

.main-sidebar.custom-sidebar .user-panel .image img {
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.4);
}

.main-sidebar.custom-sidebar .user-panel .info a {
    color: #fff;
    font-weight: 600;
}

/* MENU LATERAL (nav-sidebar) */
.main-sidebar.custom-sidebar .nav-sidebar>.nav-item>.nav-link {
    color: #fff !important;
    background-color: transparent !important;
    margin: 0.2rem 0;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

/* Íconos un poco más grandes */
.main-sidebar.custom-sidebar .nav-sidebar i.nav-icon {
    font-size: 1.1rem;
}

/* Hover enlaces principales */
.main-sidebar.custom-sidebar .nav-sidebar>.nav-item>.nav-link:hover {
    background-color: #103452 !important;
    color: #fff !important;
}

/* Enlace activo (principal) */
.main-sidebar.custom-sidebar .nav-sidebar>.nav-item>.nav-link.active {
    background-color: #103452 !important;
    color: #fff !important;
    border-radius: 4px;
}

/* Menú abierto (padre) */
.main-sidebar.custom-sidebar .nav-sidebar .nav-item.menu-open>.nav-link,
.main-sidebar.custom-sidebar .nav-sidebar .nav-item.menu-is-opening>.nav-link {
    background-color: #103452 !important;
    color: #fff !important;
    border-radius: 4px;
}

/* SUBMENÚS */
.main-sidebar.custom-sidebar .nav-sidebar .nav-treeview {
    background-color: #509696 !important;
    padding-left: 1rem;
    transition: background-color 0.3s ease;
}

.main-sidebar.custom-sidebar .nav-sidebar .nav-treeview>.nav-item>.nav-link {
    background-color: transparent !important;
    color: #fff !important;
    margin: 0.2rem 0;
    border-radius: 4px;
}

.main-sidebar.custom-sidebar .nav-sidebar .nav-treeview>.nav-item>.nav-link:hover {
    background-color: #103452 !important;
    color: #fff !important;
}

.main-sidebar.custom-sidebar .nav-sidebar .nav-treeview>.nav-item>.nav-link.active {
    background-color: #8C153C !important;
    color: #fff !important;
    border-radius: 4px;
}

/* SCROLLBAR PERSONALIZADO (opcional) */
.main-sidebar.custom-sidebar .os-scrollbar-track .os-scrollbar-handle {
    background-color: rgba(255, 255, 255, 0.3) !important;
}

.main-sidebar.custom-sidebar .os-scrollbar-vertical .os-scrollbar-handle:hover {
    background-color: rgba(255, 255, 255, 0.5) !important;
}

.main-sidebar.sidebar-dark-primary.custom-sidebar {
    background-color: #8C153C !important;
    color: #fff !important;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.2);
}

.main-sidebar.sidebar-dark-primary.custom-sidebar .sidebar {
    background-color: #8C153C !important;
    color: #fff !important;
}

/* Imagen centrada en la parte superior */
.logo-center {
    text-align: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* Optional subtle separator */
}
.logo-center h1 {
    font-size: 1.8rem; /* Adjust size as needed */
}

/* Imagen sin sombra ni borde */
.logo-center img {
    max-height: 75px;
    /* Ajusta el tamaño de la imagen */
    opacity: 0.9;
    /* Opcional */
    border-radius: 0;
    /* Sin bordes redondeados */
    box-shadow: none;
    /* Quita cualquier sombra */
    border: none;
    /* Quita cualquier borde */
}

.submenu-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.3);
    z-index: 999;
    display: none;
    /* Se muestra cuando abres submenús con JS */
}

/* Fondo suave para la página */
body {
    background-color: #f0f0f0;
    font-family: Arial, sans-serif;
}

/* Contenedor principal del login */
.login-container {
    max-width: 420px;
    margin: 3rem auto;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 2rem;
}

/* Logo arriba */
.login-logo {
    text-align: center;
    margin-bottom: 1rem;
}

.login-logo img {
    max-height: 100px;
}

/* Inputs más grandes */
.big-input {
    height: 3rem;
    font-size: 1rem;
}

/* Inputs con íconos */
.input-group-text {
    background-color: #e0e0e0;
    border: none;
    border-radius: 0 5px 5px 0;
    cursor: pointer;
}

.input-group-text i {
    color: #333;
    /* Color del ícono */
    font-size: 1rem;
    /* Tamaño del ícono */
    cursor: pointer;
    /* Cambia el cursor al pasar sobre el ícono */
}

.form-control {
    border-radius: 5px 0 0 5px;
    border: none;
    background-color: #ddd;
}

.form-control:focus {
    outline: none;
    box-shadow: none;
    background-color: #e2e2e2;
}

.input-group {
    margin-bottom: 1rem;
}

/* Checkbox y link "Ayuda" */
.login-options {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    color: #333;
    font-size: 0.9rem;
}

.login-options a {
    text-decoration: none;
    color: #007BFF;
    transition: color 0.3s;
}

.login-options a:hover {
    color: #0056b3;
}

/* Botón ACCEDER */
.btn-login {
    background-color: #002e5b;
    border: none;
    color: #fff;
    font-weight: bold;
    width: 100%;
    padding: 0.75rem;
    border-radius: 5px;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.btn-login:hover {
    background-color: #0056b3;
    transform: translateY(-2px);
}


/* =====================================================================
====          Desabiltar boton de formualario                     ========
======================================================================== */

#btnGuardar[disabled] {
    background-color: #c0c0c0 !important; /* gris opaco */
    border-color: #c0c0c0 !important;
    cursor: not-allowed !important;
    opacity: 0.7 !important;
  }
  

  