/* Light / dark theme tokens */
:root,
[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0B0E1A;
  --card: #141824;
  --card-elevated: #1a2030;
  --border: #1E2433;
  --text: #FFFFFF;
  --text-soft: #c5cce0;
  --muted: #8892B0;
  --shell-overlay: rgba(11, 14, 26, 0.82);
  --mesh-a: rgba(0, 240, 255, 0.09);
  --mesh-b: rgba(255, 215, 0, 0.05);
  --mesh-c: rgba(0, 255, 136, 0.06);
  --shadow-soft: 0 12px 36px rgba(0, 0, 0, 0.28);
  --input-bg: #0B0E1A;
}

[data-theme="light"] {
  color-scheme: light;
  --bg: #F0F4FA;
  --card: #FFFFFF;
  --card-elevated: #F8FAFD;
  --border: #D8E0EC;
  --text: #0B1220;
  --text-soft: #334155;
  --muted: #64748B;
  --shell-overlay: rgba(255, 255, 255, 0.9);
  --mesh-a: rgba(0, 180, 210, 0.08);
  --mesh-b: rgba(255, 180, 0, 0.05);
  --mesh-c: rgba(0, 180, 120, 0.06);
  --shadow-soft: 0 12px 32px rgba(15, 23, 42, 0.08);
  --input-bg: #FFFFFF;
}

html, body {
  background: var(--bg);
  color: var(--text);
}

/* Theme toggle control */
.theme-toggle {
  flex-shrink: 0;
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: var(--card);
  color: var(--text);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: var(--shadow-soft);
}

.theme-toggle:hover {
  border-color: rgba(0, 240, 255, 0.35);
  transform: translateY(-1px);
}

.theme-toggle svg {
  width: 1.05rem;
  height: 1.05rem;
}

.theme-toggle__sun { display: block; }
.theme-toggle__moon { display: none; }

[data-theme="light"] .theme-toggle__sun { display: none; }
[data-theme="light"] .theme-toggle__moon { display: block; }

.user-topbar__actions {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

/* Public site — light */
[data-theme="light"] .premium-mesh {
  opacity: 0.55;
  background:
    radial-gradient(ellipse 80% 50% at 10% -10%, var(--mesh-a), transparent 55%),
    radial-gradient(ellipse 60% 40% at 95% 20%, var(--mesh-b), transparent 50%),
    radial-gradient(ellipse 70% 45% at 50% 100%, var(--mesh-c), transparent 55%);
}

[data-theme="light"] .glass {
  background: var(--shell-overlay);
  border-bottom-color: var(--border);
  box-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
}

[data-theme="light"] .ticker {
  background: linear-gradient(180deg, #fff, #f8fafc);
  border-bottom-color: var(--border);
}

[data-theme="light"] .ticker__live {
  background: rgba(0, 180, 120, 0.08);
  border-right-color: var(--border);
  color: #059669;
}

[data-theme="light"] .ticker-item {
  border-right-color: var(--border);
}

[data-theme="light"] .ticker-item strong {
  color: var(--text);
}

[data-theme="light"] nav.glass a.hover\:text-white:hover,
[data-theme="light"] nav.glass a:hover {
  color: var(--text) !important;
}

[data-theme="light"] .bg-navy,
[data-theme="light"] .auth-card,
[data-theme="light"] .converter-panel,
[data-theme="light"] .news-item,
[data-theme="light"] .feature-card,
[data-theme="light"] .step-card,
[data-theme="light"] .testimonial-card,
[data-theme="light"] .trader-home-card,
[data-theme="light"] .security-panel,
[data-theme="light"] .faq-item,
[data-theme="light"] .pricing-card {
  background: var(--card) !important;
  border-color: var(--border) !important;
  box-shadow: var(--shadow-soft) !important;
}

[data-theme="light"] .home-section__title {
  background: linear-gradient(135deg, #0B1220 20%, #334155 70%, #0088aa);
  -webkit-background-clip: text;
  background-clip: text;
}

[data-theme="light"] footer.border-t {
  background: linear-gradient(180deg, transparent, rgba(0, 180, 210, 0.04));
}

[data-theme="light"] footer .text-white {
  color: var(--text) !important;
}

[data-theme="light"] .particle-bg::before {
  opacity: 0.15;
}

/* User app — light */
[data-theme="light"] .user-app-body {
  background: var(--bg);
  color: var(--text);
}

[data-theme="light"] .user-topbar {
  background: var(--shell-overlay);
  border-bottom-color: var(--border);
  box-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
}

[data-theme="light"] .user-topbar__greet,
[data-theme="light"] .user-topbar__title {
  color: var(--text);
}

[data-theme="light"] .bottom-nav {
  background: rgba(255, 255, 255, 0.94);
  border-top-color: var(--border);
  box-shadow: 0 -8px 30px rgba(15, 23, 42, 0.08);
}

[data-theme="light"] .bottom-nav__item {
  color: var(--muted);
}

[data-theme="light"] .bottom-nav__item.is-active {
  color: #0099bb;
}

[data-theme="light"] .app-section,
[data-theme="light"] .stat-card,
[data-theme="light"] .quick-action,
[data-theme="light"] .copy-traders-panel,
[data-theme="light"] .balance-hero,
[data-theme="light"] .live-chart-widget,
[data-theme="light"] .dash-market-snap,
[data-theme="light"] .dash-stock-strip,
[data-theme="light"] .dash-insight,
[data-theme="light"] .dash-kyc-banner,
[data-theme="light"] .stock-market-card,
[data-theme="light"] .stock-portfolio-hero,
[data-theme="light"] .stock-detail-hero,
[data-theme="light"] .trader-app-card,
[data-theme="light"] .copy-trader-card__inner,
[data-theme="light"] .dash-pulse,
[data-theme="light"] .wallet-card,
[data-theme="light"] .wallet-panel,
[data-theme="light"] .wallet-history,
[data-theme="light"] .wallet-nav {
  background: var(--card);
  border-color: var(--border);
  box-shadow: var(--shadow-soft);
  color: var(--text);
}

[data-theme="light"] .balance-hero--dash::before {
  opacity: 0.5;
}

[data-theme="light"] .trade-row__sub,
[data-theme="light"] .balance-hero__label,
[data-theme="light"] .stat-card span,
[data-theme="light"] .dash-greet__time,
[data-theme="light"] .copy-trader-card__sub,
[data-theme="light"] .stock-market-card__desc,
[data-theme="light"] .stock-market-card__sector,
[data-theme="light"] .text-mutedx {
  color: var(--muted) !important;
}

[data-theme="light"] .quick-action,
[data-theme="light"] .trade-row__name,
[data-theme="light"] .dash-greet__title,
[data-theme="light"] .copy-trader-card__name,
[data-theme="light"] .stock-market-card__name {
  color: var(--text-soft);
}

[data-theme="light"] .copy-trader-card {
  background: linear-gradient(145deg, rgba(0, 180, 210, 0.25), rgba(0, 140, 100, 0.15), var(--border));
}

[data-theme="light"] .dash-explore-card span:last-child {
  color: rgba(255, 255, 255, 0.85);
}

[data-theme="light"] .dash-explore-card strong,
[data-theme="light"] .dash-explore-card {
  color: #fff;
}

[data-theme="light"] .app-field input,
[data-theme="light"] .app-field select,
[data-theme="light"] .live-chart-widget__symbol {
  background: var(--input-bg);
  border-color: var(--border);
  color: var(--text);
}

[data-theme="light"] .user-flash--ok {
  background: rgba(0, 180, 120, 0.1);
}

[data-theme="light"] .user-flash--err {
  background: rgba(255, 107, 53, 0.1);
}

[data-theme="light"] ::-webkit-scrollbar-track {
  background: #e8eef6;
}

[data-theme="light"] ::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(0, 180, 210, 0.45), rgba(0, 140, 100, 0.35));
}

/* Admin — light */
[data-theme="light"] body.bg-space {
  background: var(--bg) !important;
  color: var(--text) !important;
}

[data-theme="light"] aside.bg-navy {
  background: var(--card) !important;
  border-color: var(--border) !important;
}

[data-theme="light"] .admin-nav a {
  color: var(--muted);
}

[data-theme="light"] .admin-nav a.active,
[data-theme="light"] .admin-nav a:hover {
  color: var(--text);
}

[data-theme="light"] header.border-b {
  border-color: var(--border);
  background: var(--card);
}
