@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800&family=Work+Sans:wght@300;400;500;600;700&display=swap');

:root {
    /* Visual Design System - Governamental Moderno & Elegante (Portal DIEP / SMSA-BH) */
    --color-primary: #0f3b5c;
    --color-primary-hover: #164e78;
    --color-primary-dark: #0a273e;
    --color-secondary: #2f6690;
    --color-secondary-light: #eef5fb;
    
    /* Branding Accent & Stamps */
    --color-accent: #a33b2e;
    --color-accent-dark: #7e2d22;
    --color-accent-light: #fdf2f0;
    
    /* Status & Utility Colors */
    --color-success: #198754;
    --color-warning: #ffc107;
    --color-danger: #dc3545;
    --color-info: #0dcaf0;

    /* Backgrounds & Surfaces */
    --color-paper: #f8fafc;
    --color-card: #ffffff;
    --color-line: #e2e8f0;
    --color-sage: #6e8f86;

    /* Text Colors */
    --text-color-primary: #0f172a;
    --text-color-secondary: #475569;
    --text-color-muted: #64748b;
    --text-color-light: #ffffff;

    /* Bootstrap Overrides Integration */
    --bs-primary: var(--color-primary);
    --bs-primary-rgb: 15, 59, 92;
    --bs-secondary: var(--color-secondary);
    --bs-font-sans-serif: 'Work Sans', system-ui, -apple-system, sans-serif;
    --bs-body-font-family: var(--font-body);
    --bs-body-color: var(--text-color-primary);
    --bs-body-bg: var(--color-paper);
    --bs-card-bg: var(--color-card);
    --bs-card-border-color: var(--color-line);
    --bs-card-border-radius: var(--radius-lg);

    /* Layout & Accessibility */
    --a11y-bar-height: 40px;
    --a11y-zoom: 1;

    /* Typography Scales */
    --font-heading: 'Outfit', 'Segoe UI', sans-serif;
    --font-body: 'Work Sans', 'Segoe UI', sans-serif;
    --font-mono: 'SFMono-Regular', Consolas, 'Liberation Mono', monospace;

    /* Border Radii */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 9999px;

    /* Shadow Elevations */
    --shadow-sm: 0 2px 4px rgba(15, 23, 42, 0.04), 0 1px 2px rgba(15, 23, 42, 0.06);
    --shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08), 0 2px 4px rgba(15, 23, 42, 0.04);
    --shadow-lg: 0 12px 28px rgba(15, 23, 42, 0.12), 0 4px 10px rgba(15, 23, 42, 0.06);
    --shadow-hover: 0 16px 36px rgba(15, 59, 92, 0.15), 0 6px 12px rgba(15, 59, 92, 0.08);

    /* Spacing System */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4rem;
}

/* Modo Alto Contraste para Acessibilidade */
html.a11y-contrast {
    --color-primary: #000000;
    --color-primary-hover: #1a1a1a;
    --color-secondary: #000000;
    --color-accent: #ffff00;
    --color-paper: #ffffff;
    --color-card: #ffffff;
    --color-line: #000000;
    --text-color-primary: #000000;
    --text-color-secondary: #000000;
    --text-color-muted: #000000;
    --bs-body-bg: #ffffff;
    --bs-body-color: #000000;
    --shadow-sm: none;
    --shadow-md: 0 0 0 2px #000000;
    --shadow-lg: 0 0 0 3px #000000;
}
