﻿
:root {
    --mi-font-main: 'Inter', sans-serif;
    --mi-font-brand: 'Montserrat', sans-serif;
    --mi-primary: #0A1F44;
    --mi-secondary: #2E528E;
    --mi-dark: #07152d;
    --mi-light: #f4f7fb;
    --mi-white: #ffffff;
}


/* 🔹 TODO el sistema usa Inter */
body,
p,
span,
div,
table,
button,
input,
select,
textarea,
.nav-link,
.card-title,
.small-box,
.info-box,
.btn,
.table {
    font-family: var(--mi-font-main) !important;
}
.app-header {
    background: var(--mi-primary) !important;
}

    .app-header .nav-link,
    .app-header .navbar-nav .nav-link,
    .app-header span {
        font-family: var(--mi-font-main) !important;
        font-weight: 600;
        color: #fff !important;
    }
h1, h2, h3, h4, h5 {
    font-family: var(--mi-font-main) !important;
    font-weight: 700;
}
/* =========================
   HEADER AZUL (TOP BAR)
========================= */

.app-header,
.navbar,
.app-header.navbar {
    background-color: #0A1F44 !important;
    border-bottom: none !important;
}

    /* texto Dashboard */
    .app-header .nav-link,
    .app-header .navbar-nav .nav-link,
    .app-header span,
    .app-header .navbar-nav span {
        color: #ffffff !important;
        font-weight: 600;
    }

    /* iconos */
    .app-header i {
        color: #ffffff !important;
    }

    /* botón hamburguesa */
    .app-header .nav-link[data-lte-toggle="sidebar"] {
        color: #ffffff !important;
    }

    /* usuario (Administrador) */
    .app-header .user-menu .nav-link,
    .app-header .user-menu span {
        color: #ffffff !important;
    }

    /* hover */
    .app-header .nav-link:hover {
        color: #ffffff !important;
        opacity: 0.85;
    }

/* dropdown usuario (NO azul, que se vea normal) */
.dropdown-menu {
    color: #333 !important;
}
.card-title {
    font-weight: 600;
    font-size: 1rem;
}

.small-box .inner h3 {
    font-weight: 800;
    letter-spacing: -0.5px;
}

.table th {
    font-weight: 600;
}
/* CARDS CORPORATIVOS */

.card-mi-primary {
    background: linear-gradient(135deg, #0A1F44, #2E528E);
    color: #fff;
}

.card-mi-secondary {
    background: linear-gradient(135deg, #2E528E, #3A6EA5);
    color: #fff;
}

.card-mi-soft {
    background: linear-gradient(135deg, #3A6EA5, #5B8CCB);
    color: #fff;
}

.card-mi-dark {
    background: linear-gradient(135deg, #1C1C1C, #4A4A4A);
    color: #fff;
}
.small-box {
    border-radius: 16px !important;
    box-shadow: 0 10px 25px rgba(10,31,68,0.12);
}
/* ICONOS EN CARDS (FORZAR BLANCO) */
.small-box .small-box-icon i,
.small-box .icon i,
.info-box-icon i {
    color: #ffffff !important;
    opacity: 0.95;
}

/* también textos dentro */
.small-box,
.small-box p,
.small-box h3 {
    color: #ffffff !important;
}

    /* iconos dentro */
    .card-mi-primary i,
    .card-mi-secondary i,
    .card-mi-soft i,
    .card-mi-dark i {
        color: #fff !important;
    }
body {
    font-family: var(--mi-font) !important;
}

.app-sidebar {
    background: linear-gradient(180deg, var(--mi-primary), var(--mi-dark)) !important;
}

.sidebar-brand {
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.brand-link {
    color: #fff !important;
}

.brand-text {
    color: #fff !important;
    font-weight: 700 !important;
    letter-spacing: .2px;
}

.brand-image {
    object-fit: contain;
}

.sidebar-menu .nav-link {
    color: rgba(255,255,255,.95) !important;
    border-radius: 12px;
    margin: 4px 8px;
    font-weight: 500;
}

    .sidebar-menu .nav-link i,
    .sidebar-menu .nav-link p,
    .sidebar-menu .nav-link span {
        color: rgba(255,255,255,.95) !important;
    }

    .sidebar-menu .nav-link:hover {
        background-color: rgba(255,255,255,.08) !important;
    }

    .sidebar-menu .nav-link.active {
        background-color: var(--mi-secondary) !important;
        color: #fff !important;
    }

.sidebar-menu .nav-treeview > .nav-item > .nav-link {
    padding-left: 2.5rem;
    font-size: .94rem;
}

.nav-header {
    color: rgba(255,255,255,.60) !important;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.app-main,
.app-content {
    background-color: var(--mi-light) !important;
}

.app-header {
    border-bottom: 1px solid #e8edf3;
}

.card,
.small-box,
.info-box {
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(10,31,68,.08);
}

.user-image {
    width: 34px;
    height: 34px;
    object-fit: cover;
}

.text-bg-primary {
    background-color: var(--mi-primary) !important;
}

.btn-primary {
    background-color: var(--mi-primary) !important;
    border-color: var(--mi-primary) !important;
}

    .btn-primary:hover {
        background-color: var(--mi-secondary) !important;
        border-color: var(--mi-secondary) !important;
    }

.info-box-icon,
.small-box-icon {
    opacity: .9;
}
.table thead th {
    font-weight: 700;
    color: var(--mi-primary);
    background-color: #f8fafc;
    border-bottom: 1px solid #e7edf5;
}

.table tbody td {
    vertical-align: middle;
}

.table-hover tbody tr:hover {
    background-color: rgba(46, 82, 142, 0.04);
}

.card-title i {
    color: var(--mi-secondary);
}

.small-box .icon > i,
.small-box-icon i,
.info-box-icon i {
    font-size: 2.1rem !important;
}

.btn-outline-primary i,
.btn-primary i {
    vertical-align: middle;
}
