/* Theme preset overrides. The active theme is set by admin/frontend.php
   (settings.site_theme) and emitted as a body class: theme-gold | theme-dark |
   theme-rose | theme-blue. These rules selectively override the default :root
   variables in style.css. */

/* ---- Dark mode ---- */
body.theme-dark .page-shell,
body.theme-dark .main-content,
body.theme-dark .admin-content,
body.theme-dark .card,
body.theme-dark .card-rose,
body.theme-dark .admin-section,
body.theme-dark .admin-card-form,
body.theme-dark .input,
body.theme-dark .modal,
body.theme-dark .promo-card,
body.theme-dark .announce-bar,
body.theme-dark .header-rose,
body.theme-dark .brand-center,
body.theme-dark .disclosure-panel,
body.theme-dark .balance-card {
  background: #1a202c !important;
  color: #e2e8f0 !important;
}
body.theme-dark {
  background: #111827;
}
body.theme-dark .text-gold { color: #f6d365; }
/* The promo card is dark, so --gold-ink (a dark-on-light text gold) fails
   against it. Pale gold, matching .text-gold above. */
body.theme-dark .promo-card a { color: #f6d365; }
body.theme-dark .admin-topbar,
body.theme-dark .admin-side-foot {
  background: #111827;
  border-color: #374151;
}
body.theme-dark .admin-topbar h1 { color: #f1f5f9; }
body.theme-dark .admin-who-name { color: #f1f5f9; }
body.theme-dark .input {
  background: #1f2937;
  border-color: #374151;
  color: #e2e8f0;
}
body.theme-dark .input::placeholder { color: #6b7280; }
body.theme-dark .empty-hint,
body.theme-dark .text-caption { color: #9ca3af; }
body.theme-dark .field-label,
body.theme-dark h2, body.theme-dark h3, body.theme-dark h4 { color: #e2e8f0; }
body.theme-dark .header-rose {
  background: linear-gradient(135deg, #2d3748, #1a202c);
}

/* Member app bottom bar: keep the icon boxes readable against the dark
   surface instead of leaving the translucent white bar from the light theme. */
body.theme-dark .bottom-nav {
  background: rgba(17, 24, 39, .94);
  border-color: #374151;
  box-shadow: 0 -6px 22px rgba(0, 0, 0, .5);
}
body.theme-dark .nav-link { color: #9ca3af; }
body.theme-dark .nav-link:hover { color: #e5e7eb; }
body.theme-dark .nav-link .ico { background: #1f2937; }

/* ---- Rose gold ---- */
body.theme-rose {
  --gold: #e8a0bf;
  --gold-dark: #c76e8e;
  --gold-ink: #b0506e;
  --gold-soft: #f9d8e6;
  --gold-leaf: #dfa0b8;
  --surface: #fdf2f8;
  --cream: #fff0f5;
  --rose: #f0c8d8;
  --rose-light: #f5dce8;
  --rose-bg: #fff5f8;
  --rose-border: #ecc8d8;
  --rose-mid: #f8e8f0;
  --rose-ink: #b25a72;
  --on-gold: #4a1e30;
}

/* ---- Ocean blue ---- */
body.theme-blue {
  --gold: #3b82f6;
  --gold-dark: #2563eb;
  --gold-ink: #1e40af;
  --gold-soft: #bfdbfe;
  --gold-leaf: #60a5fa;
  --surface: #eff6ff;
  --cream: #dbeafe;
  --rose: #93c5fd;
  --rose-light: #bfdbfe;
  --rose-bg: #eff6ff;
  --rose-border: #bfdbfe;
  --rose-mid: #dbeafe;
  --rose-ink: #1d4ed8;
  --on-gold: #1e3a8a;
}
