/*
NC Veteran Business Directory - Design Tokens
Single source of truth for custom properties previously duplicated across
ncvet-theme.css, patriotic-theme.css, and ios-modern.css :root blocks
(2026-08-12 audit, Month 1 item). Load this file before those three.

This is a mechanical merge (every name/value already in use, deduplicated into
one block) - it does not collapse the overlapping-but-distinct color families
(--nc-red / --nc-red-vibrant / --patriot-red, --nc-navy / --nc-navy-vibrant /
--patriot-blue / --patriot-blue-dark) down to single canonical colors. That's a
brand/design decision, not something to pick silently in a mechanical cleanup -
flagged as a follow-up if the team wants to reduce the palette itself.
*/

:root {
    /* ===== NC Patriotic palette (ncvet-theme.css + ios-modern.css) ===== */
    --nc-navy: #003366;
    --nc-navy-vibrant: #0047AB;
    --nc-carolina-blue: #7BAFD4;
    --nc-blue: #7BAFD4;
    --nc-blue-vibrant: #56CCF2;
    --nc-red: #C8102E;
    --nc-red-vibrant: #FF3B30;
    --nc-gold: #FFB81C;
    --nc-gold-vibrant: #FFD60A;
    --nc-white: #FFFFFF;
    --nc-light-gray: #F5F5F5;
    --nc-medium-gray: #E0E0E0;
    --nc-dark-gray: #333333;

    /* ===== Patriotic accent palette (patriotic-theme.css) ===== */
    --patriot-red: #DC143C;
    --patriot-red-dark: #B22222;
    --patriot-red-darker: #8B0000;
    --patriot-blue: #0047AB;
    --patriot-blue-dark: #003380;
    --patriot-blue-darker: #002266;

    /* ===== iOS-inspired system colors (ios-modern.css) ===== */
    --ios-primary: #007AFF;
    --ios-secondary: #5856D6;
    --ios-success: #34C759;
    --ios-warning: #FF9500;
    --ios-danger: #FF3B30;

    /* ===== Surface colors ===== */
    --surface-primary: #FFFFFF;
    --surface-secondary: #F2F2F7;
    --surface-tertiary: #E5E5EA;
    --surface-glass: rgba(255, 255, 255, 0.72);
    --surface-glass-dark: rgba(0, 0, 0, 0.32);

    /* ===== Text colors ===== */
    --text-primary: #000000;
    --text-secondary: #3C3C43;
    --text-tertiary: #475569;
    --text-quaternary: #C7C7CC;

    /* ===== Gradients (ncvet-theme.css) ===== */
    --nc-gradient-patriotic: linear-gradient(135deg, var(--nc-navy) 0%, var(--nc-carolina-blue) 100%);
    --nc-gradient-hero: linear-gradient(rgba(0,51,102,0.85), rgba(123,175,212,0.85));

    /* ===== Shadows (ncvet-theme.css legacy names) ===== */
    --nc-shadow-sm: 0 2px 4px rgba(0,0,0,0.1);
    --nc-shadow-md: 0 4px 6px rgba(0,0,0,0.1);
    --nc-shadow-lg: 0 10px 15px rgba(0,0,0,0.1);
    --nc-shadow-xl: 0 20px 25px rgba(0,0,0,0.15);

    /* ===== Shadows (iOS-style layered, ios-modern.css) ===== */
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.05), 0 2px 4px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.08), 0 4px 6px rgba(0, 0, 0, 0.05);
    --shadow-xl: 0 20px 25px rgba(0, 0, 0, 0.1), 0 10px 10px rgba(0, 0, 0, 0.04);
    --shadow-2xl: 0 25px 50px rgba(0, 0, 0, 0.15);

    /* ===== Border radius ===== */
    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 20px;
    --radius-2xl: 28px;
    --radius-full: 9999px;

    /* ===== Spacing scale ===== */
    --space-xs: 4px;
    --space-sm: 8px;
    --space-md: 16px;
    --space-lg: 24px;
    --space-xl: 32px;
    --space-2xl: 48px;

    /* ===== Transitions ===== */
    --nc-transition: all 0.3s ease;
    --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-smooth: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-bounce: 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/* Dark mode support (was in ios-modern.css) */
@media (prefers-color-scheme: dark) {
    :root {
        --surface-primary: #000000;
        --surface-secondary: #1C1C1E;
        --surface-tertiary: #2C2C2E;
        --surface-glass: rgba(28, 28, 30, 0.72);
        --text-primary: #FFFFFF;
        --text-secondary: #EBEBF5;
        --text-tertiary: #475569;
    }
}
