/* ============================================
   DESIGN SYSTEM VARIABLES
   Industrial Compliance Theme
   ============================================ */

:root {
    /* ============================================
       COLORS - Industrial Safety Palette
       ============================================ */

    /* Primary */
    --color-charcoal: #1a1a1a;
    --color-warm-black: #2d2d2d;
    --color-cream: #faf8f3;
    --color-warm-white: #ffffff;

    /* Safety Accents (inspired by OSHA signage) */
    --color-safety-amber: #ff9500;
    --color-safety-orange: #ff6b35;
    --color-safety-yellow: #ffc425;

    /* Neutrals */
    --color-mid-gray: #666666;
    --color-light-gray: #e8e4dc;
    --color-highlight: rgba(255, 149, 0, 0.15);

    /* ============================================
       TYPOGRAPHY
       ============================================ */

    /* Font Families */
    --font-display: 'Work Sans', sans-serif;
    --font-body: 'Lora', Georgia, serif;
    --font-mono: 'SF Mono', 'Monaco', 'Courier New', monospace;

    /* Font Sizes - Mobile Base */
    --text-xs: 14px;
    --text-sm: 16px;
    --text-base: 18px;
    --text-lg: 22px;
    --text-xl: 32px;
    --text-2xl: 48px;
    --text-3xl: 56px;

    /* Font Weights */
    --weight-normal: 400;
    --weight-medium: 500;
    --weight-semibold: 600;
    --weight-bold: 700;
    --weight-black: 800;

    /* Line Heights */
    --leading-tight: 1.1;
    --leading-snug: 1.3;
    --leading-normal: 1.5;
    --leading-relaxed: 1.7;

    /* ============================================
       SPACING
       ============================================ */
    --space-xs: 8px;
    --space-sm: 16px;
    --space-md: 24px;
    --space-lg: 48px;
    --space-xl: 72px;
    --space-2xl: 96px;
    --space-3xl: 128px;

    /* ============================================
       EFFECTS
       ============================================ */

    /* Shadows */
    --shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --shadow-medium: 0 4px 16px rgba(0, 0, 0, 0.12);
    --shadow-hard: 0 8px 24px rgba(0, 0, 0, 0.16);
    --shadow-xl: 0 16px 48px rgba(0, 0, 0, 0.20);

    /* Border Radius */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-full: 100px;

    /* Transitions */
    --transition-fast: 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);

    /* Z-Index Scale */
    --z-base: 1;
    --z-overlay: 10;
    --z-dropdown: 100;
    --z-modal: 1000;
    --z-toast: 10000;
}

/* ============================================
   RESPONSIVE TYPOGRAPHY
   ============================================ */
@media (min-width: 768px) {
    :root {
        --text-xl: 42px;
        --text-2xl: 64px;
        --text-3xl: 80px;
    }
}

@media (min-width: 1024px) {
    :root {
        --text-3xl: 96px;
    }
}
