:root {
  --primary: #0d9488;
  --primary-dark: #0f766e;
  --primary-light: #14b8a6;
  --primary-soft: #f0fdfa;
  --secondary: #0d9488;
  --accent: #0891b2;
  --success: #10b981;
  --warning: #f59e0b;
  --danger: #ef4444;
  --bg: #ffffff;
  --bg-soft: #f9fafb;
  --canvas: #f8fafc;
  --border: #e5e7eb;
  --border-strong: #cbd5e1;
  --gray: #6b7280;
  --light: #f3f4f6;
  --white: #ffffff;
  --text: #111827;
  --text-2: #374151;
  --text-3: #6b7280;
  --text-muted: #9ca3af;
  --badge-critical-bg: #fee2e2;
  --badge-critical-text: #991b1b;
  --badge-high-bg: #ffedd5;
  --badge-high-text: #9a3412;
  --badge-medium-bg: #fef3c7;
  --badge-medium-text: #92400e;
  --badge-low-bg: #ccfbf1;
  --badge-low-text: #115e59;
  --alert-info: #115e59;
  --radius-sm: 8px;
  --radius-md: 12px;
  --container: 1400px;

  --font-display: "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  --shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 8px 24px rgba(15, 23, 42, 0.08);
  --focus-ring: 0 0 0 3px rgba(13, 148, 136, 0.35);
  --spacing-1: 4px;
  --spacing-2: 8px;
  --spacing-3: 12px;
  --spacing-4: 16px;
  --spacing-5: 20px;
  --spacing-6: 24px;
  --spacing-8: 32px;
  --spacing-10: 40px;
  --spacing-12: 48px;

  /* Deprecated compatibility aliases for templates awaiting migration. */
  --dark: var(--bg);
  --dark-light: var(--bg-soft);
  --dark-card: var(--bg);
  --glass: var(--bg);
  --glass-border: var(--border);
  --glass-strong: var(--bg-soft);
  --shadow-soft: var(--shadow-sm);
  --shadow-glow: var(--shadow-md);
  --text-secondary: var(--text-2);
  --text-tertiary: var(--text-3);
}
