/* ===== Paleta =====
   #5F1B2D  vino oscuro (Navbar)
   #861E34  vino
   #AF1731  rojo
   #C79B66  dorado (acento)
   #494748  gris oscuro
   #ECECEC  gris claro
*/
:root {
    --c-uva:     #66435A;
    --c-navbar:  #5F1B2D;
    --c-vino:    #861E34;
    --c-rojo:    #AF1731;
    --c-dorado:  #C79B66;
    --c-gris:    #494748;
    --c-claro:   #ECECEC;
    --c-gris-claro:   #DBDBDB;
}

/* ---------- NAVBAR ---------- */
.navbar,
.navbar.navbar-default,
.navbar .navbar-container {
    background: var(--c-navbar) !important;
    border-color: var(--c-navbar) !important;
    border-bottom: 3px solid var(--c-dorado) !important;
}

.navbar .navbar-brand,
.navbar .navbar-brand small,
.navbar .navbar-nav > li > a,
.navbar .ace-nav > li > a,
.navbar .ace-nav > li > a > .ace-icon,
.navbar .user-info {
    color: var(--c-claro) !important;
    background: transparent !important;
}

.navbar .navbar-nav > li > a:hover,
.navbar .ace-nav > li > a:hover,
.navbar .ace-nav > li.open > a,
.navbar .ace-nav > li > a:focus {
    background: var(--c-vino) !important;
    color: #fff !important;
}

/* ---------- FONDO GENERAL ---------- */
body,
.main-container,
.page-content,
body.login-layout {
    background-color: var(--c-claro) !important;
}

/* ---------- MENÚ LATERAL ---------- */
.sidebar,
.sidebar:before {
    background-color: var(--c-gris-claro) !important;
    border-color: var(--c-gris-claro) !important;
}
.sidebar .nav-list > li > a {
    background-color: var(--c-claro) !important;
    color: var(--c-uva) !important;
}
.sidebar .nav-list > li:hover > a {
    background-color: var(--c-vino) !important;
    color: #fff !important;
}
.sidebar .nav-list > li.active > a {
    background-color: var(--c-navbar) !important;
    color: #fff !important;
}
.sidebar .nav-list > li.active:after {
    border-color: var(--c-dorado) !important;
}
.sidebar-toggle {
    background-color: var(--c-claro) !important;
}

/* ---------- CABECERAS DE CUADROS (widgets) ---------- */
.widget-box .widget-header,
.widget-color-blue2 > .widget-header,
.widget-color-blue > .widget-header {
    background: var(--c-vino) !important;
    border-color: var(--c-vino) !important;
    color: var(--c-claro) !important;
}
.widget-box.widget-color-blue2,
.widget-box.widget-color-blue {
    border-color: var(--c-vino) !important;
}
.widget-header .widget-title,
.widget-header .ace-icon {
    color: var(--c-claro) !important;
}

/* ---------- TABLAS ---------- */
.table > thead > tr > th,
.table-bordered > thead > tr > th {
    background-color: var(--c-claro) !important;
    color: var(--c-navbar) !important;
    border-bottom: 2px solid var(--c-dorado) !important;
}

/* ---------- BOTONES ---------- */
.btn-primary,
.btn-primary:focus {
    background: var(--c-gris) !important;
    border-color: var(--c-rojo) !important;
    color: #fff !important;
}
.btn-primary:hover,
.btn-primary:active {
    background: var(--c-vino) !important;
    border-color: var(--c-vino) !important;
}

/* ---------- ENLACES ---------- */
a { color: var(--c-rojo); }
a:hover { color: var(--c-vino); }

/* ---------- PÁGINA DE LOGIN ---------- */
.login-container .widget-header,
.login-box .widget-header {
    background: var(--c-navbar) !important;
}

/* ---------- FOOTER ---------- */
.footer {
    background: #5F1B2D !important;
    border-top: 3px solid #C79B66 !important;
}

/* El contenedor se queda visible, pero oculta texto suelto original */
.footer .footer-content {
    font-size: 0 !important;
}

/* Oculta todo lo original, menos tu footer */
.footer .footer-content > *:not(.iedep-footer) {
    display: none !important;
}

/* Tu footer */
.footer .iedep-footer {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 12px;
    color: #5F1B2D;
    font-size: 13px !important;
}
.footer .iedep-footer img {
    max-height: 40px;
}

/* ---------- LOGO EN EL NAVBAR (reemplaza el título) ---------- */
.navbar .navbar-brand {
    font-size: 0 !important;      /* oculta el texto del título */
    color: transparent !important;
    padding: 0 15px !important;
    height: 50px;
    display: flex !important;
    align-items: center;
}
.navbar .navbar-brand > * {
    display: none !important;     /* oculta el span con el texto */
}
.navbar .navbar-brand::before {
    content: "";
    display: block;
    width: 320px;                 /* ajusta al ancho de tu logo */
    height: 45px;                 /* ajusta al alto de tu logo */
    background-image: url('/images/logo_iedep_sm_blanco.png') !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: contain !important;
}

/* ---------- PÁGINA DE LOGIN ---------- */
body.login-layout {
    background: #5F1B2D url('/images/fondo_login_gris.svg') center / cover no-repeat fixed !important;
    min-height: 100vh;
}
body.login-layout .main-container,
body.login-layout .main-content {
    background: transparent !important;
}

/* Logo: más pequeño */
body.login-layout img {
    max-width: 260px !important;
    width: 100% !important;
    height: auto !important;
}

/* Tarjeta */
body.login-layout .widget-box,
body.login-layout .widget-body,
body.login-layout .widget-main {
    background: #fff !important;
    border: none !important;
    border-radius: 16px !important;
}
body.login-layout .widget-box {
    box-shadow: 0 15px 40px rgba(0, 0, 0, .40) !important;
    overflow: hidden;
    max-width: 420px;
    margin: 0 auto;
}
body.login-layout .widget-main {
    padding: 28px 32px !important;
}

/* Título */
body.login-layout h4.header {
    color: #5F1B2D !important;
    border-bottom: 2px solid #C79B66 !important;
    padding-bottom: 12px;
}

/* Campos */
body.login-layout input[type="text"],
body.login-layout input[type="password"] {
    border: 1px solid #ccc !important;
    border-radius: 8px !important;
    height: 42px;
    box-shadow: none !important;
}
body.login-layout input[type="text"]:focus,
body.login-layout input[type="password"]:focus {
    border-color: #AF1731 !important;
    box-shadow: 0 0 0 3px rgba(175, 23, 49, .15) !important;
}

/* Botón */
body.login-layout .btn,
body.login-layout input[type="submit"] {
    background: #AF1731 !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-weight: 600;
    letter-spacing: .5px;
}
body.login-layout .btn:hover,
body.login-layout input[type="submit"]:hover {
    background: #5F1B2D !important;
}

/* Enlaces */
body.login-layout .widget-main a { color: #861E34 !important; }
body.login-layout .widget-main a:hover { color: #AF1731 !important; }