*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* ── Dark theme (default) ──────────────────────────────────────────────── */
:root {
  --bg: #0a0a0a;
  --surface: #111111;
  --surface-2: #1a1a1a;
  --border: #2a2a2a;
  --text-primary: #ffffff;
  --text-secondary: #c0c4cc;
  --text-muted: #7a7f8e;
  --gold: #c9a96e;
  --gold-dark: #a07840;
  --gold-glow: rgba(201,169,110,0.15);
  --green: #10b981;
  --red: #ef4444;
  --input-bg: #111111;
  --card-bg: #111111;
  font-family: 'DM Sans', system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* ── Light theme ───────────────────────────────────────────────────────── */
.light-theme {
  --bg: #f5f5f0;
  --surface: #ffffff;
  --surface-2: #f0efeb;
  --border: #d4d2cc;
  --text-primary: #1a1a1a;
  --text-secondary: #4a4a4a;
  --text-muted: #6b6b6b;
  --gold: #a07840;
  --gold-dark: #8a6530;
  --gold-glow: rgba(160,120,64,0.12);
  --green: #059669;
  --red: #dc2626;
  --input-bg: #ffffff;
  --card-bg: #ffffff;
}

/* Light theme scrollbar */
.light-theme ::-webkit-scrollbar-track { background: #e8e7e3; }
.light-theme ::-webkit-scrollbar-thumb { background: #a07840; border-color: #e8e7e3; }
.light-theme ::-webkit-scrollbar-thumb:hover { background: #8a6530; }

/* Light theme input fixes — date/time pickers */
.light-theme input[type="date"],
.light-theme input[type="time"] {
  color-scheme: light;
}

html, body, #root { height: 100%; background: var(--bg); color: var(--text-primary); }
h1, h2, h3 { font-family: 'Syne', sans-serif; }
button { font-family: inherit; }

/* ── Scrollbar — 20px wide, prominent ──────────────────────────────── */
::-webkit-scrollbar { width: 20px; }
::-webkit-scrollbar-track { background: var(--surface); }
::-webkit-scrollbar-thumb { background: var(--gold-dark); border-radius: 10px; border: 4px solid var(--surface); }
::-webkit-scrollbar-thumb:hover { background: var(--gold); }
