/* ============================================
   PRIMOS CSS Variables
   Design tokens for colors, typography, spacing
   ============================================ */

:root {
  /* Brand Colors */
  --color-primary: #8B1538;
  --color-primary-hover: #a91d47;
  --color-primary-light: #c42255;
  --color-primary-dark: #5a0f25;

  /* Navigation / Header */
  --color-header-bg: #1a1a2e;
  --color-header-bg-alt: #16213e;

  /* Accent Colors */
  --color-accent-gold: #8B6914;
  --color-accent-gold-light: #a67c1a;

  /* Neutrals */
  --color-gray-50: #f9fafb;
  --color-gray-100: #f5f5f5;
  --color-gray-200: #e5e7eb;
  --color-gray-300: #d1d5db;
  --color-gray-400: #9ca3af;
  --color-gray-500: #6b7280;
  --color-gray-600: #4b5563;
  --color-gray-700: #374151;
  --color-gray-800: #1f2937;
  --color-gray-900: #111827;

  /* Status Colors */
  --color-success: #28a745;
  --color-success-light: #d4edda;
  --color-success-dark: #155724;

  --color-warning: #ffc107;
  --color-warning-light: #fff3cd;
  --color-warning-dark: #856404;

  --color-danger: #dc3545;
  --color-danger-light: #f8d7da;
  --color-danger-dark: #721c24;

  --color-info: #4a90d9;
  --color-info-light: #d1ecf1;
  --color-info-dark: #0c5460;

  /* Production Health Colors */
  --color-health-green: #4caf50;
  --color-health-green-border: #388e3c;
  --color-health-yellow: #ffc107;
  --color-health-yellow-border: #e6ac00;
  --color-health-red: #f44336;
  --color-health-red-border: #d32f2f;
  --color-health-gray: #9e9e9e;
  --color-health-gray-border: #757575;

  /* Production Status Colors */
  --color-status-critical: #dc3545;
  --color-status-critical-bg: #f8d7da;
  --color-status-behind: #fd7e14;
  --color-status-behind-bg: #ffe5d0;
  --color-status-at-risk: #ffc107;
  --color-status-at-risk-bg: #fff3cd;
  --color-status-on-track: #28a745;
  --color-status-on-track-bg: #d4edda;
  --color-status-scheduled: #6c757d;
  --color-status-scheduled-bg: #e2e3e5;

  /* Engineering Status Colors */
  --color-eng-review: #8b5cf6;
  --color-eng-review-bg: #f3e8ff;
  --color-eng-3d: #f59e0b;
  --color-eng-3d-bg: #fef3c7;
  --color-eng-2d: #3b82f6;
  --color-eng-2d-bg: #dbeafe;
  --color-eng-complete: #10b981;
  --color-eng-complete-bg: #d1fae5;
  --color-eng-blocked: #ef4444;
  --color-eng-blocked-bg: #fee2e2;

  /* Location Colors */
  --color-location-wpb: #1565c0;
  --color-location-wpb-bg: #e3f2fd;
  --color-location-tus: #f57c00;
  --color-location-tus-bg: #fff8e1;

  /* Typography */
  --font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif;
  --font-family-mono: 'Consolas', 'Monaco', 'Courier New', monospace;

  --font-size-xs: 11px;
  --font-size-sm: 12px;
  --font-size-base: 14px;
  --font-size-md: 16px;
  --font-size-lg: 18px;
  --font-size-xl: 20px;
  --font-size-2xl: 24px;
  --font-size-3xl: 28px;

  /* Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;

  /* Border Radius */
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;
  --radius-xl: 10px;
  --radius-2xl: 12px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 2px 5px rgba(0, 0, 0, 0.05);
  --shadow-lg: 0 2px 10px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-2xl: 0 10px 40px rgba(0, 0, 0, 0.2);

  /* Transitions */
  --transition-fast: 150ms ease;
  --transition-normal: 200ms ease;
  --transition-slow: 300ms ease;

  /* Z-Index Scale */
  --z-dropdown: 100;
  --z-sticky: 200;
  --z-modal-backdrop: 900;
  --z-modal: 1000;
  --z-tooltip: 1100;
  --z-toast: 1200;

  /* Mobile Touch Targets (WCAG 2.1 AA) */
  --touch-target-min: 44px;
  --touch-target-comfortable: 48px;
  --touch-target-large: 52px;

  /* Mobile Typography */
  --mobile-font-body: 16px;
  --mobile-font-label: 14px;
  --mobile-font-small: 12px;
  --mobile-font-h1: 24px;
  --mobile-font-h2: 20px;
  --mobile-font-h3: 18px;

  /* Mobile Spacing */
  --mobile-padding: 16px;
  --mobile-gap: 12px;
  --mobile-nav-height: 72px;
}
