/* ==========================================================================
   Archivo     : academia.css
   Descripción : Estilos institucionales Academia Compliance.
                 Paleta: azul corporativo (#1a3a6c) + dorado (#c9a227).
   Versión     : v1.0
   Fecha       : 2026-10-29
   Responsable : QW (diseño)
   ========================================================================== */

:root {
    --ac-azul: #1a3a6c;
    --ac-azul-oscuro: #0f2548;
    --ac-dorado: #c9a227;
    --ac-gris-bg: #f5f7fa;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: var(--ac-gris-bg);
}

/* Login */
.bg-login {
    background: linear-gradient(135deg, var(--ac-azul) 0%, var(--ac-azul-oscuro) 100%);
    min-height: 100vh;
}
.container-login {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}
.login-card {
    background: #fff;
    border-radius: 12px;
    padding: 2.5rem;
    width: 100%;
    max-width: 420px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}
.login-header { text-align: center; margin-bottom: 1.5rem; }
.login-logo {
    width: 64px; height: 64px;
    background: var(--ac-azul);
    color: var(--ac-dorado);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-weight: bold; font-size: 1.5rem;
    margin: 0 auto 1rem;
    border: 3px solid var(--ac-dorado);
}
.login-title { color: var(--ac-azul); margin-bottom: 0.25rem; }
.login-subtitle { color: #6c757d; font-size: 0.9rem; }
.login-footer { text-align: center; margin-top: 1.5rem; color: #adb5bd; }

/* Botones institucionales */
.btn-academia {
    background: var(--ac-azul);
    color: #fff;
    border: none;
    padding: 0.65rem;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.2s;
}
.btn-academia:hover {
    background: var(--ac-azul-oscuro);
    color: var(--ac-dorado);
}
.btn-outline-academia {
    border: 1px solid var(--ac-azul);
    color: var(--ac-azul);
    background: transparent;
}
.btn-outline-academia:hover {
    background: var(--ac-azul);
    color: #fff;
}

/* Navbar */
.navbar-academia {
    background: var(--ac-azul);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
.navbar-academia .navbar-brand { color: #fff; }
.nav-logo {
    width: 36px; height: 36px;
    background: var(--ac-dorado);
    color: var(--ac-azul);
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-weight: bold; font-size: 0.9rem;
}

/* Colores de texto */
.text-academia { color: var(--ac-azul) !important; }
.bg-academia { background: var(--ac-azul) !important; }
.bg-academia-soft { 
    background: rgba(26, 58, 108, 0.1); 
    color: var(--ac-azul); 
}

/* Cards */
.score-card { border: none; border-radius: 10px; }
.module-card {
    border-radius: 10px;
    transition: transform 0.2s, box-shadow 0.2s;
    cursor: pointer;
    background: #fff;
}
.module-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(26, 58, 108, 0.15) !important;
}
.module-icon {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
}

/* Progress bar dorada */
.progress-bar.bg-academia {
    background: linear-gradient(90deg, var(--ac-azul), var(--ac-dorado));
}