:root {
  --color-primary: #f59e0b;
  --color-primary-dark: #b45309;
  --color-blue: #3b82f6;
  --color-blue-dark: #1e3a8a;
  --text: #111827;
  --text-strong: #0b0f19;
  --text-muted: #6b7280;
  --color-brand-green: #71a100;
  --color-success: #22c55e;
  --color-danger: #ef4444;
  --color-info: #0ea5e9;
  --color-indigo: #4f46e5;
  --color-white: #ffffff;
  --color-neutral-25: #f8fafc;
  --color-neutral-50: #f9fafb;
  --color-neutral-100: #f3f4f6;
  --color-neutral-indigo-50: #eef2ff;
  --color-border: #e5e7eb;
  --color-neutral-300: #d1d5db;
  --color-neutral-400: #9ca3af;
  --color-neutral-500: #6b7280;
  --color-neutral-700: #374151;
  --color-neutral-800: #1f2937;
  --color-warm-50: #fff7e6;
  --color-warm-100: #ffe7bf;
  --bg: var(--color-white);
  --primary: var(--color-primary);
  --primary-dark: var(--color-primary-dark);
  --accent: var(--color-amber, #f59e0b);
  --success: var(--color-success);
  --danger: var(--color-danger);
  --info: var(--color-info);
  --muted: var(--color-neutral-500);
  --border: var(--color-border);
  --hero-start: var(--color-blue-dark);
  --hero-end: var(--color-blue);
}
:root[data-theme="light"] {
  --bg: var(--color-white);
  --text: #111827;
  --text-strong: #0b0f19;
  --text-muted: #6b7280;
  --border: #e5e7eb;
  --hero-start: var(--color-blue-dark);
  --hero-end: var(--color-blue);
}
:root[data-theme="dark"] {
  --bg: #0b1220;
  --text: #e5e7eb;
  --text-strong: #f1f5f9;
  --text-muted: #94a3b8;
  --color-white: #0f172a;
  --border: #1f2937;
  --hero-start: #0b1020;
  --hero-end: #1e293b;
}
body {
  background: var(--bg);
  color: var(--text);
}
h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--text-strong);
}
p,
li,
small,
span {
  color: var(--text);
}
a {
  color: var(--color-indigo);
}
a:hover {
  color: var(--primary);
}
button,
.btn,
.btn-primary {
  background: var(--primary);
  color: #111827;
  border: 1px solid var(--primary-dark);
}
button:hover,
.btn:hover,
.btn-primary:hover {
  background: var(--primary-dark);
  color: #fff;
}
.theme-toggle {
  position: fixed;
  left: 16px;
  bottom: 16px;
  z-index: 9999;
  background: var(--bg);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 9999px;
  padding: 10px 14px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  font: inherit;
}
.theme-toggle:hover {
  background: var(--color-neutral-100);
}
