:root {
  /* --- Light Mode Defaults (Zinc Scale) --- */
  --bg-base: #ffffff;
  --bg-page: #fafafa;      /* zinc-50 */
  --bg-card: #ffffff;      /* white */
  --bg-card-hover: #fafafa;
  --bg-elevated: #f4f4f5;  /* zinc-100 */
  --bg-sidebar: rgba(255, 255, 255, 0.95);
  --bg-input: #ffffff;
  
  --text-primary: #18181b;   /* zinc-900 */
  --text-secondary: #52525b; /* zinc-600 */
  --text-muted: #71717a;     /* zinc-500 */
  --text-placeholder: #a1a1aa; /* zinc-400 */
  
  --border-default: #e4e4e7; /* zinc-200 */
  --border-subtle: #f4f4f5;  /* zinc-100 */
  --border-focus: #a1a1aa;   /* zinc-400 */
  
  /* Usage: box-shadow: var(--shadow-sm); */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.03);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.04);
  
  /* --- Glassmorphism (Light) --- */
  --glass-bg: rgba(255, 255, 255, 0.75);
  --glass-bg-hover: rgba(255, 255, 255, 0.85);
  --glass-border: 1px solid rgba(228, 228, 231, 0.6);
  --glass-blur: blur(12px);
  --glass-shadow: 0 4px 20px rgba(0, 0, 0, 0.05), 0 8px 40px rgba(0, 0, 0, 0.03);
  --glass-ring: 0 0 0 1px rgba(0, 0, 0, 0.03);

  /* --- Accents (Shared) --- */
  --accent-primary: #3b82f6;       /* blue-500 */
  --accent-primary-hover: #2563eb; /* blue-600 */
  --accent-success: #10b981;       /* emerald-500 */
  --accent-success-soft: rgba(16, 185, 129, 0.1);
  --accent-warning: #f59e0b;       /* amber-500 */
  --accent-warning-soft: rgba(245, 158, 11, 0.1);
  --accent-danger: #ef4444;        /* red-500 */
  --accent-danger-soft: rgba(239, 68, 68, 0.1);
  --accent-info: #3b82f6;          /* blue-500 */
  --status-red: #ef4444;
  --status-green: #10b981;
  --status-yellow: #f59e0b;
  --status-blue: #3b82f6;
  
  --text-warning-bold: #92400e;    /* amber-800 for Light Mode */
  --text-info-bold: #1e40af;       /* blue-800 for Light Mode */
}

[data-theme="dark"] {
  /* --- Dark Mode Overrides (Slate Scale - Preserved) --- */
  --bg-base: #111827;
  --bg-page: #0f172a;      /* slate-900 */
  --bg-card: rgba(30, 41, 59, 0.7); /* glass base */
  --bg-card-hover: rgba(51, 65, 85, 0.8);
  --bg-elevated: #1e293b;  /* slate-800 */
  --bg-sidebar: rgba(15, 23, 42, 0.95);
  --bg-input: rgba(15, 23, 42, 0.6);

  --text-primary: #f8fafc;   /* slate-50 */
  --text-secondary: #94a3b8; /* slate-400 */
  --text-muted: #64748b;     /* slate-500 */
  --text-placeholder: #475569; /* slate-600 */
  
  --border-default: rgba(255, 255, 255, 0.1);
  --border-subtle: rgba(255, 255, 255, 0.05);
  --border-focus: rgba(255, 255, 255, 0.2);
  
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.5);

  /* --- Glassmorphism (Dark) --- */
  --glass-bg: rgba(30, 41, 59, 0.7);
  --glass-bg-hover: rgba(51, 65, 85, 0.8);
  --glass-border: 1px solid rgba(255, 255, 255, 0.1);
  --glass-blur: blur(12px);
  --glass-shadow: 0 8px 32px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.2);
  --glass-ring: 0 0 0 1px rgba(255, 255, 255, 0.05);
  
  /* Accents are shared but soft backgrounds might need tuning */
  --accent-success-soft: rgba(16, 185, 129, 0.2);
  --accent-warning-soft: rgba(245, 158, 11, 0.2);
  --accent-danger-soft: rgba(239, 68, 68, 0.2);

  --text-warning-bold: #fbbf24;    /* amber-400 for Dark Mode */
  --text-info-bold: #60a5fa;       /* blue-400 for Dark Mode */
}
