/* Shared theme tokens (light/dark) */
:root {
  color-scheme: light dark;

  --bg: #0b0f17;
  --panel: #111827;
  --border: #243244;
  --text: #e5e7eb;
  --muted: #94a3b8;
  --danger: #ef4444;
  --ok: #22c55e;
  --btn: #1f2937;
  --btnHover: #273449;
  --focus: #60a5fa;
  --shadow: 0 12px 30px rgba(0,0,0,.35);
  --radius: 16px;
  --btnText: var(--text);
  --primaryBg: rgba(96,165,250,.18);
  --primaryBorder: rgba(96,165,250,.35);
  --primaryText: var(--text);
  --primaryHoverBg: rgba(96,165,250,.26);
  --accentBg: rgba(34,197,94,.16);
  --accentBorder: rgba(34,197,94,.28);
  --accentText: var(--text);
  --accentHoverBg: rgba(34,197,94,.24);
  --bgGlow1: rgba(59,130,246,.22);
  --bgGlow2: rgba(34,197,94,.16);

  /* Common translucent surfaces */
  --panelA: rgba(17,24,39,.92);
  --panelB: rgba(17,24,39,.74);
  --surface: rgba(2,6,23,.35);
  --surface2: rgba(2,6,23,.18);
  --borderA: rgba(36,50,68,.95);
  --borderB: rgba(36,50,68,.85);
  --inputBg: rgba(2,6,23,.55);

  /* Interaction */
  --hoverBg: rgba(255,255,255,.03);
  --glassBg: rgba(255,255,255,.01);
  --rowActiveBg: rgba(96,165,250,.06);

  /* Status + accents */
  --infoBorder: rgba(96,165,250,.45);
  --infoBg: rgba(96,165,250,.10);
  --infoHoverBg: rgba(96,165,250,.18);
  --infoText: rgba(191,219,254,.95);

  --warnBorder: rgba(250,204,21,.35);
  --warnBg: rgba(250,204,21,.08);
  --warnText: rgba(254,249,195,.95);

  --successBorder: rgba(34,197,94,.45);
  --successBg: rgba(34,197,94,.08);
  --successText: rgba(187,247,208,.95);

  --dangerBorder: rgba(239,68,68,.45);
  --dangerBg: rgba(239,68,68,.08);
  --dangerText: rgba(254,202,202,.95);

  --disabledBorder: rgba(148,163,184,.35);
  --disabledBg: rgba(148,163,184,.08);
  --disabledText: rgba(148,163,184,.95);

  /* Shared label/tag chips */
  --chipBg: var(--surface);
  --chipBorder: var(--borderA);
  --chipText: var(--muted);
  --panelSoftBg: var(--surface2);
  --panelSoftBorder: var(--borderA);

  /* Switch */
  --switchBg: rgba(36,50,68,.85);
  --switchBorder: rgba(36,50,68,.95);
  --switchKnob: rgba(229,231,235,.95);
  --switchOnBg: rgba(34,197,94,.22);
  --switchOnBorder: rgba(34,197,94,.35);

  /* Scrollbars */
  --scrollTrack: transparent;
  --scrollThumbTop: rgba(96,165,250,.42);
  --scrollThumb: rgba(148,163,184,.35);
  --scrollThumbHover: rgba(148,163,184,.55);
  --scrollThumbActive: rgba(96,165,250,.62);

  /* Home-specific tokens (shared palette) */
  --sa-bg: var(--bg);
  --sa-text: var(--text);
  --sa-muted: var(--muted);
  --sa-border-soft: var(--borderB);
  --sa-border-strong: var(--borderA);
  --sa-card-bg: var(--panelA);
  --sa-shadow-soft: var(--shadow);
  --sa-orange: #d9b963;
  --sa-orange-deep: #caa24d;
  --sa-orange-soft: rgba(217,185,99,.18);
  --sa-orange-soft2: rgba(217,185,99,.28);
  --sa-header-bg: var(--panelA);
  --sa-strip-bg: var(--panelA);
  --sa-mark-from: #60a5fa;
  --sa-mark-to: #d9b963;
}

:root[data-theme="light"] {
  --bg: #f8fafc;
  --panel: #ffffff;
  --border: #cbd5e1;
  --text: #0f172a;
  --muted: #334155;
  --danger: #dc2626;
  --ok: #16a34a;
  --btn: #0f172a;
  --btnHover: #111827;
  --focus: #2563eb;
  --shadow: 0 12px 30px rgba(2,6,23,.12);
  --bgGlow1: rgba(37,99,235,.16);
  --bgGlow2: rgba(22,163,74,.12);
  --panelA: rgba(255,255,255,.96);
  --panelB: rgba(255,255,255,.88);
  --surface: rgba(15,23,42,.05);
  --surface2: rgba(15,23,42,.03);
  --borderA: rgba(203,213,225,.95);
  --borderB: rgba(203,213,225,.75);
  --inputBg: rgba(255,255,255,.92);
  --primaryBg: var(--focus);
  --primaryBorder: rgba(37,99,235,.9);
  --primaryText: #ffffff;
  --primaryHoverBg: rgba(29,78,216,.95);
  --accentBg: rgba(22,163,74,.92);
  --accentBorder: rgba(22,163,74,.92);
  --accentText: #ffffff;
  --accentHoverBg: rgba(21,128,61,.95);

  /* Interaction */
  --hoverBg: rgba(15,23,42,.04);
  --glassBg: rgba(15,23,42,.02);
  --rowActiveBg: rgba(37,99,235,.08);

  /* Status + accents */
  --infoBorder: rgba(37,99,235,.40);
  --infoBg: rgba(37,99,235,.12);
  --infoHoverBg: rgba(37,99,235,.18);
  --infoText: #1e40af;

  --warnBorder: rgba(217,119,6,.42);
  --warnBg: rgba(245,158,11,.13);
  --warnText: #9a3412;

  --successBorder: rgba(22,163,74,.42);
  --successBg: rgba(22,163,74,.12);
  --successText: #166534;

  --dangerBorder: rgba(220,38,38,.42);
  --dangerBg: rgba(220,38,38,.12);
  --dangerText: #991b1b;

  --disabledBorder: rgba(71,85,105,.32);
  --disabledBg: rgba(100,116,139,.10);
  --disabledText: #475569;

  /* Shared label/tag chips */
  --chipBg: rgba(59,130,246,.08);
  --chipBorder: rgba(59,130,246,.22);
  --chipText: #1e3a8a;
  --panelSoftBg: rgba(59,130,246,.05);
  --panelSoftBorder: rgba(59,130,246,.16);

  /* Switch */
  --switchBg: rgba(203,213,225,.9);
  --switchBorder: rgba(203,213,225,.95);
  --switchKnob: rgba(255,255,255,.98);
  --switchOnBg: rgba(22,163,74,.16);
  --switchOnBorder: rgba(22,163,74,.35);

  /* Scrollbars */
  --scrollTrack: transparent;
  --scrollThumbTop: rgba(37,99,235,.28);
  --scrollThumb: rgba(15,23,42,.22);
  --scrollThumbHover: rgba(15,23,42,.35);
  --scrollThumbActive: rgba(37,99,235,.42);
}
