/* ===== GLOBAL ===== */
* {
    font-family: 'Roboto', sans-serif;
}

html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

/* ===== BRAND COLORS (SILE) ===== */
.colorViolet {
    color: #513F86;
}

.backGroundViolet {
    background-color: #513F86 !important;
    color: #fff !important;
}

/* ===== LOGIN PAGE ===== */
.login-body {
    background: linear-gradient(135deg, #513F86 0%, #7B68AE 50%, #513F86 100%);
    min-height: 100vh;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.login-wrapper {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
}

.divContenedor {
    background-color: #fff;
    width: 450px;
    border-radius: 18px;
    box-shadow: 0 8px 32px #513F864F;
    overflow: hidden;
    padding-bottom: 30px;
}

.head-login {
    background-color: #F4F6F9;
    border-radius: 18px 18px 0 0;
    padding: 20px;
    margin-bottom: 20px;
}

.head-login span {
    color: #513F86;
    font-size: x-large;
    font-weight: bold;
}

.login-logo-area {
    padding: 15px 0;
}

.control-login {
    width: 320px;
}

.contenedor {
    padding: 10px 0 20px 0;
}

.sumit-button {
    background-color: #513F86 !important;
    border-color: #625292 !important;
    color: #fff !important;
    font-weight: bold;
    padding: 10px;
    border-radius: 6px;
    transition: background-color 0.3s;
}

.sumit-button:hover {
    background-color: #483878 !important;
    color: #fff !important;
}

/* ===== SIDEBAR (white like SILE) ===== */
.main-sidebar {
    background-color: #fff !important;
}

.main-sidebar .brand-link {
    border-bottom: 1px solid #e9ecef;
    color: #513F86 !important;
    font-weight: bold;
}

.main-sidebar .nav-link {
    color: #333 !important;
}

.main-sidebar .nav-link:hover {
    color: #513F86 !important;
    background-color: #E2E1E9 !important;
}

.main-sidebar .nav-link.active {
    color: #513F86 !important;
    background-color: #E2E1E9 !important;
}

.main-sidebar .nav-treeview > .nav-item > .nav-link {
    color: #555 !important;
}

.main-sidebar .nav-treeview > .nav-item > .nav-link:hover {
    color: #513F86 !important;
}

/* Al hacer hover (preview) en modo colapsado, AdminLTE deja el texto con
   white-space:nowrap y un ancho fijo, cortando labels largos. Al hacer click
   (sidebar fija/abierta) el texto ajusta bien a 2 lineas. Igualamos el hover
   al comportamiento del click. */
.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link,
.sidebar-mini.sidebar-collapse .main-sidebar.sidebar-focused .nav-sidebar .nav-link {
    white-space: normal !important;
    height: auto !important;
}

.sidebar-mini.sidebar-collapse .main-sidebar:hover .nav-sidebar .nav-link p,
.sidebar-mini.sidebar-collapse .main-sidebar.sidebar-focused .nav-sidebar .nav-link p {
    white-space: normal !important;
    width: auto !important;
}

/* ===== NAVBAR (violet like SILE) ===== */
.main-header.navbar {
    background-color: #513F86 !important;
    border-bottom: none;
}

.main-header .nav-link {
    color: #fff !important;
}

.main-header .nav-link:hover {
    color: #ddd !important;
}

/* ===== BUTTONS ===== */
.app-btn-violet {
    background-color: #513F86;
    border-color: #625292;
    color: #fff;
}

.app-btn-violet:hover {
    background-color: #483878;
    border-color: #3d2f66;
    color: #fff;
}

/* ===== GENERAL ===== */
.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #513F86;
}
