/* Jarvis Web Suite — theme tokens.
 *
 * Three themes ship in v1: glass-aurora (default), terminal, bright.
 * Every dashboard CSS file consumes ONLY these custom-property names —
 * never raw hex/rgb literals. CI lint enforces this.
 */

/* ============ glass-aurora (default) ============ */
[data-theme="glass-aurora"] {
  --bg-canvas: radial-gradient(circle at 20% 0%, rgba(96,165,250,0.18) 0%, transparent 50%),
               radial-gradient(circle at 80% 100%, rgba(168,85,247,0.10) 0%, transparent 50%),
               linear-gradient(135deg, #0a0e1a 0%, #1a1f3a 100%);
  --bg-panel: rgba(255,255,255,0.04);
  --bg-panel-hover: rgba(255,255,255,0.06);
  --bg-elevated: rgba(20,25,45,0.95);

  --border-subtle: rgba(255,255,255,0.04);
  --border-default: rgba(255,255,255,0.08);
  --border-strong: rgba(255,255,255,0.16);

  --fg-primary: #e2e8f0;
  --fg-secondary: #94a3b8;
  --fg-tertiary: #64748b;
  --fg-on-accent: #ffffff;

  --accent: #60a5fa;
  --accent-hover: #3b82f6;
  --accent-subtle: rgba(96,165,250,0.18);

  --success: #4ade80;
  --success-subtle: rgba(74,222,128,0.12);
  --warning: #fbbf24;
  --warning-subtle: rgba(251,191,36,0.12);
  --danger: #f87171;
  --danger-subtle: rgba(248,113,113,0.12);
  --info: #60a5fa;
  --info-subtle: rgba(96,165,250,0.12);

  --shadow-low: 0 1px 2px rgba(0,0,0,0.3);
  --shadow-mid: 0 4px 12px rgba(0,0,0,0.4);
  --shadow-high: 0 30px 80px rgba(0,0,0,0.5);

  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;

  --font-display: 'Inter', system-ui, -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
}

/* ============ terminal ============ */
[data-theme="terminal"] {
  --bg-canvas: #0d1117;
  --bg-panel: #161b22;
  --bg-panel-hover: #1f2530;
  --bg-elevated: #1f2530;

  --border-subtle: #1f2530;
  --border-default: #2a2e35;
  --border-strong: #3a3f48;

  --fg-primary: #d8dde6;
  --fg-secondary: #8a8f97;
  --fg-tertiary: #6a6f77;
  --fg-on-accent: #0d1117;

  --accent: #6cb1ff;
  --accent-hover: #8ec5ff;
  --accent-subtle: rgba(108,177,255,0.18);

  --success: #4ade80;
  --success-subtle: rgba(74,222,128,0.12);
  --warning: #fbbf24;
  --warning-subtle: rgba(251,191,36,0.12);
  --danger: #f87171;
  --danger-subtle: rgba(248,113,113,0.12);
  --info: #6cb1ff;
  --info-subtle: rgba(108,177,255,0.12);

  --shadow-low: none;
  --shadow-mid: none;
  --shadow-high: 0 8px 24px rgba(0,0,0,0.6);

  --radius-sm: 4px;
  --radius-md: 4px;
  --radius-lg: 6px;

  --font-display: 'Inter', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
}

/* ============ bright ============ */
[data-theme="bright"] {
  --bg-canvas: #f8fafc;
  --bg-panel: #ffffff;
  --bg-panel-hover: #f1f5f9;
  --bg-elevated: #ffffff;

  --border-subtle: #f1f5f9;
  --border-default: #e2e8f0;
  --border-strong: #cbd5e1;

  --fg-primary: #0f172a;
  --fg-secondary: #475569;
  --fg-tertiary: #94a3b8;
  --fg-on-accent: #ffffff;

  --accent: #2563eb;
  --accent-hover: #1d4ed8;
  --accent-subtle: rgba(37,99,235,0.10);

  --success: #16a34a;
  --success-subtle: #dcfce7;
  --warning: #ca8a04;
  --warning-subtle: #fef9c3;
  --danger: #dc2626;
  --danger-subtle: #fee2e2;
  --info: #2563eb;
  --info-subtle: #dbeafe;

  --shadow-low: 0 1px 2px rgba(15,23,42,0.05);
  --shadow-mid: 0 4px 12px rgba(15,23,42,0.08);
  --shadow-high: 0 20px 40px rgba(15,23,42,0.12);

  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;

  --font-display: 'Inter', system-ui, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, monospace;
}

/* ============ kid-mode overlay ============ */
[data-theme="bright"][data-kid="true"] {
  --radius-sm: 10px;
  --radius-md: 14px;
  --radius-lg: 20px;
}
[data-theme="bright"][data-kid="true"] body {
  font-size: 17px;
  line-height: 1.65;
}
