:root {
    /* Paleta institucional real, extraída del logo oficial
       (favicon/web-app-manifest-512x512.png: rojo #e30613, azul #0a1f89) */
    --color-bg: #f7f7f4;
    --color-surface: #ffffff;
    --color-text: #10142b;
    --color-text-muted: #5b5f70;
    --color-primary: #0a1f89;
    --color-primary-dark: #071456;
    --color-accent: #e30613;
    --color-accent-dark: #b80510;
    --color-border: #e4e4df;
    --color-dark: #071233;
    --color-light: #ffffff;

    /* Estados */
    --color-success: #146c43;
    --color-danger: #b80510;

    /* Scrims para legibilidad de texto sobre fotografía (tinte navy, no negro puro) */
    --scrim-bottom: linear-gradient(180deg, rgba(7, 18, 51, 0) 0%, rgba(7, 18, 51, 0.18) 55%, rgba(7, 18, 51, 0.85) 100%);
    --scrim-subtle: linear-gradient(180deg, rgba(7, 18, 51, 0) 60%, rgba(7, 18, 51, 0.55) 100%);

    /* Tipografía: stacks de sistema hasta licenciar fuentes propias */
    --font-display: 'Iowan Old Style', 'Palatino Linotype', Palatino, Georgia, 'Times New Roman', serif;
    --font-body: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --font-mono: ui-monospace, 'SFMono-Regular', Consolas, monospace;

    /* Escala tipográfica */
    --fs-2xs: 0.75rem;
    --fs-xs: 0.875rem;
    --fs-sm: 1rem;
    --fs-md: 1.125rem;
    --fs-lg: 1.5rem;
    --fs-xl: 2rem;
    --fs-2xl: 2.75rem;
    --fs-3xl: 3.75rem;
    --fs-4xl: 5rem;

    /* Espaciado */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-6: 1.5rem;
    --space-8: 2rem;
    --space-12: 3rem;
    --space-16: 4rem;
    --space-24: 6rem;
    --space-32: 8rem;

    /* Bordes y sombras */
    --radius-sm: 2px;
    --radius-md: 4px;
    --shadow-card: 0 1px 2px rgba(16, 20, 18, 0.06), 0 8px 24px rgba(16, 20, 18, 0.08);
    --shadow-lifted: 0 20px 60px rgba(16, 20, 18, 0.18);

    /* Duraciones (sección 48 de la guía) */
    --duration-fast: 200ms;
    --duration-medium: 350ms;
    --duration-cinematic: 650ms;
    --ease-editorial: cubic-bezier(0.22, 1, 0.36, 1);

    /* Layout */
    --content-max: 1320px;
    --gutter: clamp(1.25rem, 4vw, 3rem);
}

@media (prefers-color-scheme: dark) {
    :root {
        /* El sitio público mantiene identidad institucional fija (no dark mode automático);
           reservado para uso futuro del admin si se decide soportarlo. */
    }
}
