﻿/* ===================================================
   1. VARIABLES Y RESET
   ===================================================
   Este CSS sirve a las vistas no autenticadas (login,
   documentación, credencial). Es independiente de
   InternalAssets/styles/ para funcionar incluso cuando
   el endpoint /api/internal/assets/ no está disponible.
   =================================================== */

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.hidden {
    display: none;
}

/* Variables base (tema claro por defecto) */
:root {
    /* Paleta modo día */
    --primary: #005B99;
    --secondary: #6B7280;
    --success: #10B981;
    --danger: #EF4444;

    /* Fondos y texto */
    --background: #F3F4F6;
    --bg-container: #FAFAFA;
    --text: #222;
    --border: #D1D5DB;
    --hover: #E5E7EB;
    --shadow: 0 0 10px rgba(0, 0, 0, 0.08);

    /* Inputs y elementos interactivos */
    --input-bg: #FFFFFF;
    --input-border: #DDD;
    --input-text: #333;
    --placeholder: #9CA3AF;
    --button-hover: #059669;

    /* Tablas */
    --table-bg: #FFFFFF;
    --table-header-bg: #F3F4F6;
    --table-even-bg: #F0F2F3;
    --table-hover-bg: #E8EAEC;

    /* Alertas */
    --alert-success-bg: #D1FAE5;
    --alert-danger-bg: #FEE2E2;
    --alert-warning-bg: #FFF3CD;
    --alert-warning-text: #856404;
    --alert-warning-border: #FFEEBA;

    /* Links */
    --link: var(--primary);
    --link-hover: #003D66;

    /* Bootstrap base */
    --bs-body-bg: var(--background);
    --bs-body-color: var(--text);
    --bs-border-color: var(--border);

    /* Otros */
    --fieldset-bg: transparent;
}

/* Overrides para tema oscuro */
[data-bs-theme="dark"] {
    --primary: #4da3ff;
    --secondary: #a0a0a0;
    --success: #28a745;
    --danger: #ff4d4d;
    --background: #121212;
    --text: #e0e0e0;
    --border: #444;
    --hover: #3a3a3a;
    --shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    --bg-container: #1e1e1e;
    --input-bg: #2c2c2c;
    --input-border: #444;
    --input-text: #fff;
    --placeholder: #888;
    --button-hover: #047857;
    --table-bg: #1e1e1e;
    --table-header-bg: #2c2c2c;
    --table-even-bg: #242424;
    --table-hover-bg: #3a3a3a;
    --alert-success-bg: #1c4532;
    --alert-danger-bg: #4c1d1d;
    --alert-warning-bg: #332701;
    --alert-warning-text: #FFDA6A;
    --alert-warning-border: #664D03;
    --link: #4da3ff;
    --link-hover: #ffffff;
    --bs-body-bg: var(--background);
    --bs-body-color: var(--text);
    --bs-border-color: var(--border);
    --fieldset-bg: #1e1e1e;
}

/* Overrides para modo sepia */
[data-bs-theme="sepia"] {
    --primary: #b67b00;
    --secondary: #7a6852;
    --success: #b58c3b;
    --danger: #d0614a;
    --background: #f3e7d1;
    --bg-container: #f8f1e2;
    --text: #3b2d19;
    --border: #d2b48c;
    --hover: #ead9b6;
    --shadow: 0 0 8px rgba(0, 0, 0, 0.1);
    --input-bg: #fffaf3;
    --input-border: #d6c4a4;
    --input-text: #3b2d19;
    --placeholder: #a08d6f;
    --button-hover: #a97400;
    --table-bg: #faf5e9;
    --table-header-bg: #f1e3c3;
    --table-even-bg: #f6ebd4;
    --table-hover-bg: #ecd9b7;
    --alert-success-bg: #e7dec2;
    --alert-danger-bg: #f1c8b0;
    --alert-warning-bg: #f5e6c8;
    --alert-warning-text: #6d5a00;
    --alert-warning-border: #d9c39a;
    --link: var(--primary);
    --link-hover: #6d4a00;
    --bs-body-bg: var(--background);
    --bs-body-color: var(--text);
    --bs-border-color: var(--border);
    --fieldset-bg: transparent;
}

/* ===================================================
   2. BASE
   =================================================== */
body {
    background-color: var(--background);
    color: var(--text);
}

a {
    color: var(--link);
}

a:hover {
    color: var(--link-hover);
}

/* ===================================================
   3. MENSAJES DE ERROR Y ÉXITO
   =================================================== */
.error p {
    color: var(--danger);
    font-weight: bold;
}

.exito p {
    color: var(--success);
    font-weight: bold;
}

/* ===================================================
   4. ALERTAS
   =================================================== */
.alert-warning {
    background-color: var(--alert-warning-bg);
    color: var(--alert-warning-text);
    border-color: var(--alert-warning-border);
}

.alert-warning .alert-link {
    color: var(--alert-warning-text);
}

/* ===================================================
   5. FOOTER
   =================================================== */
footer.border-top {
    border-top-color: var(--border) !important;
}

footer {
    color: var(--text);
}

footer a {
    color: var(--link);
}

footer a:hover {
    color: var(--link-hover);
}
