/* =====================================================
   themes.css — theme + accent color tokens
   ===================================================== */

:root {
  --accent-green: #22c55e;
  --accent-green-soft: #16a34a33;
  --accent-purple: #a855f7;
  --accent-purple-soft: #a855f733;
  --accent-blue: #3b82f6;
  --accent-blue-soft: #3b82f633;
  --accent-orange: #f97316;
  --accent-orange-soft: #f9731633;

  --radius-card: 16px;
  --radius-input: 12px;
  --radius-pill: 999px;

  --shadow-soft: 0 6px 20px rgba(0, 0, 0, 0.18);
  --shadow-strong: 0 10px 40px rgba(0, 0, 0, 0.35);
}

/* ----- Dark (default) — deep dark green base ----- */
[data-theme="dark"] {
  --bg-1: #061613;
  --bg-2: #0e2a23;
  --bg-3: #112f27;
  --surface: #122e26;
  --surface-2: #163a30;
  --surface-stroke: #1f4f42;
  --text-1: #e8fbef;
  --text-2: #a9c8bc;
  --text-3: #7ea293;
  --error: #ef4444;
  --success: #22c55e;
  --gradient-app: radial-gradient(1200px 600px at 90% -10%, #0d3a2b 0%, transparent 60%),
    radial-gradient(800px 600px at -10% 110%, #0c2a23 0%, transparent 60%),
    linear-gradient(180deg, #061613 0%, #050f0d 100%);
  --gradient-card: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.01) 100%);
}

/* ----- Light ----- */
[data-theme="light"] {
  --bg-1: #f5faf7;
  --bg-2: #eaf3ee;
  --bg-3: #ffffff;
  --surface: #ffffff;
  --surface-2: #f5faf7;
  --surface-stroke: #d8e6df;
  --text-1: #0d1f1a;
  --text-2: #36504a;
  --text-3: #6b8a82;
  --error: #dc2626;
  --success: #16a34a;
  --gradient-app: radial-gradient(1200px 600px at 90% -10%, #d4f0e0 0%, transparent 60%),
    radial-gradient(800px 600px at -10% 110%, #e7f3ec 0%, transparent 60%),
    linear-gradient(180deg, #f5faf7 0%, #eaf3ee 100%);
  --gradient-card: linear-gradient(180deg, rgba(255, 255, 255, 0.6) 0%, rgba(255, 255, 255, 0.2) 100%);
}

/* ----- Midnight — dark with purple ----- */
[data-theme="midnight"] {
  --bg-1: #0a0816;
  --bg-2: #14102a;
  --bg-3: #1b163b;
  --surface: #181336;
  --surface-2: #1f1947;
  --surface-stroke: #2c2466;
  --text-1: #efe8ff;
  --text-2: #b8a8df;
  --text-3: #897ab4;
  --error: #f87171;
  --success: #4ade80;
  --gradient-app: radial-gradient(1200px 600px at 90% -10%, #2a1d6b 0%, transparent 60%),
    radial-gradient(800px 600px at -10% 110%, #1e1149 0%, transparent 60%),
    linear-gradient(180deg, #0a0816 0%, #060410 100%);
  --gradient-card: linear-gradient(180deg, rgba(168, 85, 247, 0.08) 0%, rgba(168, 85, 247, 0.02) 100%);
}

/* ----- Accent colors map ----- */
[data-accent="green"] {
  --accent: var(--accent-green);
  --accent-soft: var(--accent-green-soft);
  --accent-rgb: 34, 197, 94;
}
[data-accent="purple"] {
  --accent: var(--accent-purple);
  --accent-soft: var(--accent-purple-soft);
  --accent-rgb: 168, 85, 247;
}
[data-accent="blue"] {
  --accent: var(--accent-blue);
  --accent-soft: var(--accent-blue-soft);
  --accent-rgb: 59, 130, 246;
}
[data-accent="orange"] {
  --accent: var(--accent-orange);
  --accent-soft: var(--accent-orange-soft);
  --accent-rgb: 249, 115, 22;
}

/* Midnight defaults its own accent if user hasn't picked one */
[data-theme="midnight"]:not([data-accent]) {
  --accent: var(--accent-purple);
  --accent-soft: var(--accent-purple-soft);
  --accent-rgb: 168, 85, 247;
}
