/* ============================================================
   SIS — Tema corporativo sobre Tabler
   ============================================================ */

:root {
    --tblr-primary: #14324d;
    --tblr-primary-rgb: 20, 50, 77;
    --sis-accent: #d4a13d;
    --sis-navy-900: #0b1f30;
    --sis-navy-800: #14324d;
    --sis-navy-700: #1c435f;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Sidebar — degradado sutil en vez del gris plano por defecto */
.navbar-vertical.navbar-dark {
    background: linear-gradient(180deg, var(--sis-navy-900) 0%, var(--sis-navy-800) 100%);
}
.navbar-vertical .navbar-brand {
    padding: 1rem 0;
}
.brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: var(--sis-accent);
    color: var(--sis-navy-900);
    font-weight: 700;
    font-size: 0.8rem;
}
.brand-text {
    font-weight: 600;
    letter-spacing: 0.02em;
}
.navbar-vertical .nav-link {
    border-radius: 6px;
    margin: 1px 0.5rem;
}
.navbar-vertical .nav-link.active,
.navbar-vertical .nav-link:hover {
    background: rgba(255, 255, 255, 0.08);
}

/* Login */
.login-page {
    background: linear-gradient(160deg, var(--sis-navy-900) 0%, var(--sis-navy-700) 100%);
    min-height: 100vh;
}
.login-logo-mark {
    display: inline-block;
    padding: 0.5rem 1.25rem;
    border-radius: 8px;
    background: var(--sis-accent);
    color: var(--sis-navy-900);
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: 0.05em;
}

/* Tarjetas y tablas */
.card {
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}
.page-header .page-title {
    font-weight: 600;
}
table.dataTable thead th {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #6b7a8d;
}

/* Tabler iguala el color de texto de los badges .bg-* al de fondo (queda invisible);
   forzamos contraste legible para los estados que usamos en toda la app. */
.badge.bg-primary, .badge.bg-secondary, .badge.bg-danger, .badge.bg-success, .badge.bg-info {
    color: #fff !important;
}
.badge.bg-warning {
    color: #212529 !important;
}

/* Badges de estado de rangos CAI */
.badge-cai-activo     { background-color: #2fb344; color: #fff; }
.badge-cai-agotado    { background-color: #6c7a91; color: #fff; }
.badge-cai-vencido    { background-color: #d63939; color: #fff; }
.badge-cai-inactivo   { background-color: #adb5bd; color: #212529; }
.badge-cai-por-vencer { background-color: var(--sis-accent); color: #212529; }

.factura-anulada-watermark {
    position: relative;
}
.factura-anulada-watermark::after {
    content: "ANULADA";
    position: absolute;
    top: 40%;
    left: 15%;
    font-size: 5rem;
    color: rgba(214, 57, 57, 0.2);
    transform: rotate(-25deg);
    pointer-events: none;
}
