/* =============================================================================
   ALTA GESTIÓN — Tokens de diseño
   -----------------------------------------------------------------------------
   Fuente única de verdad para colores, radios, sombras y tipografía. Antes,
   site.css tenía ~74 colores distintos escritos como literales hex repetidos
   (p.ej. #001A3F aparecía 56 veces sueltas); cambiar un color exigía buscar y
   reemplazar en todo el archivo, con alto riesgo de dejar alguno atrás.

   Este archivo se carga ANTES de site.css (ver Views/Shared/_Layout.cshtml).
   site.css consume estas variables con var(--token); no debería declarar
   colores nuevos en literal — si falta un tono, se agrega aquí.

   No se tokenizó #fff/#ffffff (blanco puro): se usa en decenas de sitios
   genéricos (texto sobre fondo de color, fondo de card) sin ambigüedad de
   marca — tokenizarlo no aporta control real y multiplica el ruido.
   ============================================================================= */

:root {
    /* ---- Chrome / layout (ya existían, se conservan) ---- */
    --ag-navy: #0d1f3c;
    --ag-navy-dark: #091628;
    --ag-blue-accent: #1a3a6b;
    --ag-sidebar-bg: #ffffff;
    --ag-sidebar-width: 260px;
    --ag-sidebar-collapsed: 60px;
    --ag-topbar-height: 60px;
    --ag-page-bg: #eef2f7;
    --ag-text-primary: #1a2e4a;
    --ag-text-muted: #6b7a99;
    --ag-nav-label-color: #4a6fa5;
    --ag-active-bg: #d6e4f7;
    --ag-active-text: #001A3F;
    --ag-hover-bg: #f0f4f9;
    --ag-border: #dde3ef;
    --ag-avatar-bg: #2d5fa6;
    --ag-avatar-text: #ffffff;
    --ag-transition: 0.22s ease;

    /* ---- Primario interactivo ----
       Decisión: un solo primario interactivo, #001A3F (--ag-primary). Ya gobierna
       el sidebar activo, el foco de inputs, el accent-color de checkbox/radio/
       toggle, el botón guardar y el de editar de tabla — 56 apariciones antes de
       este cambio. --ag-active-text queda como alias por compatibilidad. */
    --ag-primary: #001A3F;
    --ag-primary-hover: #0a2d5e;
    --ag-primary-soft: #2d5fa6; /* = --ag-avatar-bg */

    /* --ag-surface-accent sobrevive SOLO para superficies grandes tintadas
       (cabecera de página). Regla: superficies sí; botones, bordes, focos y
       estados de interacción, nunca — para eso está --ag-primary. */
    --ag-surface-accent: #1e4da1;
    --ag-surface-accent-hover: #163880;

    --ag-link: #2563eb;
    --ag-focus-blue: #258cfb;

    /* ---- Éxito ---- */
    --ag-success: #1a9e5f;
    --ag-success-strong: #1a7a4a;
    --ag-success-text: #1a7f4e;
    --ag-success-dark: #135c37;
    --ag-success-bg: #e6f9f0;
    --ag-success-bg-2: #e8faf2;
    --ag-success-bg-3: #d4f0e2;
    --ag-success-border: #a8e6c8;
    --ag-success-border-2: #b8e4ce;

    /* ---- Peligro / error ---- */
    --ag-danger: #c0392b;
    --ag-danger-strong: #e05050;
    --ag-danger-dark: #962d22;
    --ag-danger-bg: #fde8e8;
    --ag-danger-bg-2: #fef0f0;
    --ag-danger-bg-3: #fde8e6;
    --ag-danger-border: #f9ccc8;
    --ag-danger-border-2: #f5b8b8;
    --ag-danger-border-3: #f5c0c0;

    /* ---- Advertencia ---- */
    --ag-warning: #b07d12;
    --ag-warning-hover: #8a620e;
    --ag-warning-strong: #d4850a;
    --ag-warning-text: #b07a10;
    --ag-warning-dark: #9a6700;
    --ag-warning-bg: #fff4e0;
    --ag-warning-bg-2: #fffbee;
    --ag-warning-bg-3: #fef3d0;
    --ag-warning-border: #fde8a8;
    --ag-warning-border-2: #fad980;

    /* ---- Información ---- */
    --ag-info: #1a6fa8;
    --ag-info-dark: #1460a0;
    --ag-info-bg: #e0f0ff;
    --ag-info-bg-2: #e8f4ff;
    --ag-info-border: #90c8f0;
    --ag-info-border-2: #7eb3e8;

    /* ---- Confirmación (diálogos tipo "¿estás seguro?") ---- */
    --ag-confirm: #6c3fc7;
    --ag-confirm-bg: #ede8fd;

    /* ---- Escala azul de tablas/paginación/acordeón (DataTables, hover de fila,
       chips de página). Nombrados por orden de aparición, no por luminosidad —
       el objetivo es que cada literal tenga un nombre, no reordenar la paleta. ---- */
    --ag-blue-100: #f0f6ff;
    --ag-blue-150: #f5f8fd;
    --ag-blue-200: #eef4fb;
    --ag-blue-250: #e4e8f2;
    --ag-blue-300: #dce8f8;
    --ag-blue-400: #c8d9f0;
    --ag-blue-410: #c8d4e8;
    --ag-blue-420: #c8cfe0;
    --ag-blue-430: #c5d8f0;
    --ag-blue-440: #c5cfe0;
    --ag-blue-450: #c3d9f5;
    --ag-blue-460: #c0c8d8;
    --ag-blue-500: #b8d0ed;
    --ag-blue-600: #a0b8d8;

    /* ---- Grises de estado deshabilitado / superficies sutiles ---- */
    --ag-gray-disabled-bg: #f4f4f6;
    --ag-gray-disabled-border: #e0e0e6;
    --ag-gray-track: #f0f0f0;
    --ag-gray-thumb: #aaa;
    --ag-gray-subtle-bg: #fafbfd;
    --ag-gray-subtle-bg-2: #e8edf5;

    /* ---- No-color: antes todo literal, repetido a mano en cada regla ---- */
    --ag-radius-sm: 8px;
    --ag-radius-md: 10px;
    --ag-radius-lg: 14px;
    --ag-radius-xl: 18px;
    --ag-shadow-topbar: 0 1px 4px rgba(0, 0, 0, 0.06);
    --ag-shadow-card: 0 2px 10px rgba(0, 0, 0, 0.06);
    --ag-shadow-role-card: 0 4px 16px rgba(0, 26, 63, 0.25);
    --ag-shadow-calendar: 0 8px 32px rgba(0, 26, 63, 0.14);
    --ag-shadow-modal: 0 20px 60px rgba(0, 26, 63, 0.2);
    --ag-font-head: 'Poppins', system-ui, sans-serif;
    --ag-font-body: 'Public Sans', system-ui, -apple-system, sans-serif;
    --ag-z-sidebar: 900;
    --ag-z-topbar: 1000;
    --ag-z-modal: 2000;
    --ag-z-popover: 200;
    --ag-z-loading: 2050;
    --ag-z-toast: 2100;
}
