/* ============================================================
   Tema de marca Grupo Badia — DlmStockInformes
   Colores y fuentes extraídos de https://grupobadia.com/
   Primario: #9AC945 (verde lima) | Secundario: #343C28 (verde oscuro)
   Fuentes: Outfit (títulos) + DM Sans (texto)
   ============================================================ */

/* Fuentes de la web del cliente */
@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 100 900;
    font-display: swap;
    src: url('../Fonts/Outfit.ttf') format('truetype');
}

@font-face {
    font-family: 'DM Sans';
    font-style: normal;
    font-weight: 100 1000;
    font-display: swap;
    src: url('../Fonts/DMSans.ttf') format('truetype');
}

/* Variables de marca (Bootstrap 5 CSS variables) */
:root {
    --bs-primary: #9AC945;
    --bs-primary-rgb: 154, 201, 69;
    --bs-secondary: #343C28;
    --bs-secondary-rgb: 52, 60, 40;
    --bs-link-color: #6a9c2a;
    --bs-link-hover-color: #4f7a1e;
    --bs-body-font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
    --bs-heading-font-family: 'Outfit', system-ui, sans-serif;
}

/* Tipografía general */
body {
    font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.card-header,
.navbar-brand,
.page-header,
.title {
    font-family: 'Outfit', system-ui, sans-serif;
}

/* Navbar con el verde lima de marca */
.navbar.bg-primary,
.bg-primary {
    background-color: #9AC945 !important;
}

.navbar.bg-primary .navbar-brand,
.navbar.bg-primary .nav-link {
    color: #343C28 !important;
}

.navbar.bg-primary .nav-link:hover,
.navbar.bg-primary .nav-link.active {
    color: #ffffff !important;
}

/* Botones primarios con el verde de marca */
.btn-primary {
    background-color: #9AC945;
    border-color: #9AC945;
    color: #343C28;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: #8ab83a;
    border-color: #8ab83a;
    color: #343C28;
}

/* Enlaces */
a {
    color: #6a9c2a;
}

a:hover {
    color: #4f7a1e;
}

/* Cabecera de tarjetas de informes (mantener legible el texto blanco) */
.card-header.bg-primary,
.card-header.bg-success,
.card-header.bg-danger,
.card-header.bg-info,
.card-header.bg-warning,
.card-header.bg-secondary {
    color: #ffffff;
}

/* Ajuste de contraste para el verde lima en fondos claros */
.text-primary {
    color: #6a9c2a !important;
}

/* Logo de la navbar (si se usa imagen) */
.navbar-brand img {
    max-height: 30px;
}

/* ============================================================
   Refinamientos de navbar y tipografía
   ============================================================ */

/* Navbar más compacta y con sombra sutil */
.navbar {
    box-shadow: 0 2px 8px rgba(52, 60, 40, 0.18);
    min-height: 52px;
}

.navbar .navbar-brand {
    font-family: 'Outfit', system-ui, sans-serif;
    font-weight: 700;
    letter-spacing: 0.3px;
    font-size: 1.15rem;
}

/* Enlaces del menú: separación y hover con fondo translúcido */
.navbar .nav-link {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-weight: 500;
    font-size: 0.95rem;
    padding: 0.5rem 0.75rem;
    border-radius: 4px;
    transition: background-color 0.15s ease, color 0.15s ease;
}

.navbar .nav-link:hover,
.navbar .nav-link.active {
    background-color: rgba(52, 60, 40, 0.12);
    color: #343C28 !important;
}

/* Dropdown del usuario: esquinas redondeadas y sombra */
.navbar .dropdown-menu {
    border: none;
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(52, 60, 40, 0.18);
    margin-top: 6px;
}

.navbar .dropdown-item {
    font-family: 'DM Sans', system-ui, sans-serif;
    font-size: 0.9rem;
    padding: 0.5rem 1rem;
}

.navbar .dropdown-item:hover {
    background-color: #f0f7e0;
    color: #343C28;
}

/* Tipografía de títulos con Outfit y peso medio */
h1, h2, h3, h4, h5, h6,
.card-header,
.page-header,
.title {
    font-family: 'Outfit', system-ui, sans-serif;
    font-weight: 600;
    letter-spacing: 0.2px;
}

/* Texto de cuerpo ligeramente más legible */
body {
    font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
    color: #343C28;
}

/* Enlaces con transición suave */
a {
    color: #6a9c2a;
    transition: color 0.15s ease;
}

a:hover {
    color: #4f7a1e;
}

/* ============================================================
   Cobertura completa de la app con la identidad de marca
   ============================================================ */

/* --- Tablas --- */
.table thead th {
    background-color: #f0f7e0;
    color: #343C28;
    border-bottom: 2px solid #9AC945;
    font-family: 'Outfit', system-ui, sans-serif;
    font-weight: 600;
}

.table-hover tbody tr:hover {
    background-color: #f7fbe9;
}

.table .table-info,
.table-info {
    background-color: #eef7d8 !important;
}

/* --- Cards --- */
.card {
    border-color: #d8e6b8;
}

.card-header {
    border-bottom: 1px solid #d8e6b8;
}

/* --- Badges --- */
.badge-primary {
    background-color: #9AC945;
    color: #343C28;
}

.badge-secondary {
    background-color: #343C28;
    color: #ffffff;
}

/* --- Paginación --- */
.page-item.active .page-link {
    background-color: #9AC945;
    border-color: #9AC945;
    color: #343C28;
}

.page-link {
    color: #6a9c2a;
}

.page-link:hover {
    color: #4f7a1e;
}

/* --- Formularios --- */
.form-control:focus,
.custom-select:focus {
    border-color: #9AC945;
    box-shadow: 0 0 0 0.2rem rgba(154, 201, 69, 0.25);
}

.form-control:focus {
    border-color: #9AC945;
}

/* --- Alerts --- */
.alert-primary {
    background-color: #eef7d8;
    border-color: #d8e6b8;
    color: #343C28;
}

/* --- Modales --- */
.modal-header {
    border-bottom: 2px solid #9AC945;
}

.modal-header .modal-title {
    font-family: 'Outfit', system-ui, sans-serif;
    font-weight: 600;
}

/* --- Pestañas --- */
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    border-color: #9AC945 #9AC945 #fff;
    color: #343C28;
    font-weight: 600;
}

.nav-tabs .nav-link:hover {
    border-color: #d8e6b8 #d8e6b8 #fff;
    color: #4f7a1e;
}

/* --- Breadcrumb --- */
.breadcrumb {
    background-color: #f0f7e0;
}

.breadcrumb-item.active {
    color: #343C28;
}

.breadcrumb-item a {
    color: #6a9c2a;
}

/* --- List group --- */
.list-group-item.active {
    background-color: #9AC945;
    border-color: #9AC945;
    color: #343C28;
}

/* --- Progress --- */
.progress-bar {
    background-color: #9AC945;
}

/* --- Botones outline --- */
.btn-outline-primary {
    color: #6a9c2a;
    border-color: #9AC945;
}

.btn-outline-primary:hover {
    background-color: #9AC945;
    border-color: #9AC945;
    color: #343C28;
}

/* --- Login --- */
.login-box .card,
.login-card {
    border-top: 4px solid #9AC945;
}

/* --- Dropdowns generales --- */
.dropdown-item.active,
.dropdown-item:active {
    background-color: #9AC945;
    color: #343C28;
}

/* --- Enlaces de navegación de pestañas de listado --- */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: #9AC945;
    color: #343C28;
}

/* --- Botones de acción de fila (editar/eliminar) --- */
.btn-link {
    color: #6a9c2a;
}

.btn-link:hover {
    color: #4f7a1e;
}

/* --- Scrollbar sutil --- */
::-webkit-scrollbar-thumb {
    background-color: #9AC945;
    border-radius: 4px;
}
