/* ===== THEME OVERRIDES ===== */

/* Light Theme */
:root[data-theme="light"] {
  --bg: #F5F7FA;
  --bg-card: rgba(255, 255, 255, 0.92);
  --bg-card-hover: rgba(255, 255, 255, 0.98);
  --bg-elevated: rgba(245, 247, 250, 0.95);
  --border: rgba(0, 0, 0, 0.08);
  --border-light: rgba(0, 0, 0, 0.12);
  --text: #1A202C;
  --text-muted: #4A5568;
  --text-dim: #A0AEC0;
  --purple: #6C63FF;
  --purple-light: #8B7FFF;
  --purple-glow: rgba(108, 99, 255, 0.15);
  --teal: #00B894;
  --teal-dark: #00A876;
  --teal-glow: rgba(0, 184, 148, 0.15);
  --orange: #E2820A;
  --red: #DC2626;
  --glass-border: 1px solid rgba(0, 0, 0, 0.08);
  --bg-topnav: rgba(255, 255, 255, 0.85);
  --bg-dropdown: rgba(255, 255, 255, 0.98);
  --bg-hover: rgba(0, 0, 0, 0.04);
  --bg-body-pattern1: rgba(108, 99, 255, 0.03);
  --bg-body-pattern2: rgba(0, 184, 148, 0.02);
  --border-accent: linear-gradient(90deg, transparent, rgba(108, 99, 255, 0.2), rgba(0, 184, 148, 0.2), transparent);
  --scrollbar-thumb: rgba(0, 0, 0, 0.12);
  --scrollbar-hover: rgba(0, 0, 0, 0.2);
  --gradient-primary: linear-gradient(135deg, #6C63FF, #00B894);
  --gradient-btn-teal: linear-gradient(135deg, #00B894 0%, #00A876 100%);
  --chart-baseline: rgba(0, 0, 0, 0.1);
  --chart-etf-line: #6C63FF;
  --corr-positive-rgb: 0, 184, 148;
  --corr-negative-rgb: 220, 38, 38;
  --corr-diagonal: rgba(108, 99, 255, 0.2);
  --corr-text-hi: #1A202C;
  --corr-text-lo: #4A5568;
  --impact-high: #DC2626;
  --impact-high-bg: rgba(220, 38, 38, 0.1);
  --impact-medium: #E2820A;
  --impact-medium-bg: rgba(226, 130, 10, 0.1);
  --impact-low: #00B894;
  --impact-low-bg: rgba(0, 184, 148, 0.08);
  --badge-paid-bg: rgba(220, 38, 38, 0.08);
  --badge-paid-text: #DC2626;
  --badge-hot-bg: rgba(226, 130, 10, 0.08);
  --badge-hot-text: #C06A08;
  --badge-live-bg: rgba(0, 184, 148, 0.08);
  --badge-live-text: #00896B;
  --badge-new-bg: rgba(108, 99, 255, 0.08);
  --badge-new-text: #5A50E0;
  --badge-soon-bg: rgba(0, 0, 0, 0.04);
  --badge-soon-text: #9CA3AF;
  --badge-pro-bg: rgba(226, 130, 10, 0.08);
  --badge-pro-text: #C06A08;
  --input-bg: rgba(0, 0, 0, 0.03);
  --input-border: rgba(0, 0, 0, 0.1);
  --card-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
  --up-color: #00896B;
  --down-color: #DC2626;
  --bg-ticker: rgba(235, 238, 245, 0.95);
}

/* ── Light theme: ticker ribbon ── */
:root[data-theme="light"] .topnav-ticker {
  border-bottom: 1px solid rgba(0,0,0,0.08);
  border-top: 1px solid rgba(0,0,0,0.04);
}

/* ── Light theme: ecosystem page inline color fixes ── */
:root[data-theme="light"] .eco-stats-bar {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .tldr-box p {
  color: var(--text) !important;
}
:root[data-theme="light"] .explainer-box,
:root[data-theme="light"] .explainer-box p {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .updated-tag {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .btn-ghost {
  color: var(--text-muted) !important;
  border-color: rgba(0,0,0,0.15) !important;
}
:root[data-theme="light"] .btn-ghost:hover {
  background: rgba(0,0,0,0.04) !important;
  border-color: rgba(0,0,0,0.25) !important;
}
:root[data-theme="light"] .eco-hero-tagline {
  color: var(--text-muted);
}
/* Section titles & text in light mode */
:root[data-theme="light"] .section-title {
  color: var(--text);
}
:root[data-theme="light"] .section-text {
  color: var(--text-muted);
}
/* Step content text */
:root[data-theme="light"] .step-content p {
  color: var(--text-muted);
}
:root[data-theme="light"] .step-content h4 {
  color: var(--text);
}
/* Project cards */
:root[data-theme="light"] .project-card p {
  color: var(--text-muted);
}
/* Opportunities */
:root[data-theme="light"] .opp-info p {
  color: var(--text-muted);
}
:root[data-theme="light"] .opp-info h4 {
  color: var(--text);
}
/* Risk items */
:root[data-theme="light"] .risk-item p,
:root[data-theme="light"] .risk-item h4 {
  color: var(--text-muted);
}
/* Referral cards and pro tips */
:root[data-theme="light"] .referral-card p,
:root[data-theme="light"] .pro-tip p,
:root[data-theme="light"] .pro-tip {
  color: var(--text-muted);
}
/* Step badges in light mode */
:root[data-theme="light"] .step-badge {
  color: var(--text-dim) !important;
  background: rgba(0,0,0,0.05) !important;
  border-color: rgba(0,0,0,0.08) !important;
}
/* Referral links */
:root[data-theme="light"] .referral-link {
  color: var(--teal) !important;
}
/* Project card links */
:root[data-theme="light"] .project-card-link {
  color: var(--teal) !important;
}
/* Footer text */
:root[data-theme="light"] .footer p,
:root[data-theme="light"] .home-footer p {
  color: var(--text-muted);
}

/* Fun Theme */
:root[data-theme="fun"] {
  --bg: #0D001A;
  --bg-card: rgba(30, 5, 60, 0.85);
  --bg-card-hover: rgba(45, 10, 85, 0.9);
  --bg-elevated: rgba(25, 5, 50, 0.9);
  --border: rgba(255, 0, 255, 0.1);
  --border-light: rgba(255, 0, 255, 0.18);
  --text: #F0E6FF;
  --text-muted: #C4B5D9;
  --text-dim: #8B7AAF;
  --purple: #FF00FF;
  --purple-light: #FF66FF;
  --purple-glow: rgba(255, 0, 255, 0.35);
  --teal: #00FF88;
  --teal-dark: #00CC6A;
  --teal-glow: rgba(0, 255, 136, 0.3);
  --orange: #FFD700;
  --red: #FF3366;
  --glass-border: 1px solid rgba(255, 0, 255, 0.12);
  --bg-topnav: rgba(13, 0, 26, 0.85);
  --bg-dropdown: rgba(20, 2, 40, 0.98);
  --bg-hover: rgba(255, 0, 255, 0.06);
  --bg-body-pattern1: rgba(255, 0, 255, 0.04);
  --bg-body-pattern2: rgba(0, 255, 136, 0.03);
  --border-accent: linear-gradient(90deg, transparent, rgba(255, 0, 255, 0.5), rgba(0, 255, 136, 0.5), transparent);
  --scrollbar-thumb: rgba(255, 0, 255, 0.15);
  --scrollbar-hover: rgba(255, 0, 255, 0.25);
  --gradient-primary: linear-gradient(135deg, #FF00FF, #00FF88);
  --gradient-btn-teal: linear-gradient(135deg, #00FF88 0%, #00CC6A 100%);
  --chart-baseline: rgba(255, 0, 255, 0.12);
  --chart-etf-line: #FF66FF;
  --corr-positive-rgb: 0, 255, 136;
  --corr-negative-rgb: 255, 51, 102;
  --corr-diagonal: rgba(255, 0, 255, 0.35);
  --corr-text-hi: #ffffff;
  --corr-text-lo: #F0E6FF;
  --impact-high: #FF3366;
  --impact-high-bg: rgba(255, 51, 102, 0.15);
  --impact-medium: #FFD700;
  --impact-medium-bg: rgba(255, 215, 0, 0.12);
  --impact-low: #00FF88;
  --impact-low-bg: rgba(0, 255, 136, 0.12);
  --badge-paid-bg: rgba(255, 51, 102, 0.12);
  --badge-paid-text: #FF3366;
  --badge-hot-bg: rgba(255, 215, 0, 0.15);
  --badge-hot-text: #FFD700;
  --badge-live-bg: rgba(0, 255, 136, 0.12);
  --badge-live-text: #00FF88;
  --badge-new-bg: rgba(255, 0, 255, 0.12);
  --badge-new-text: #FF66FF;
  --badge-soon-bg: rgba(255, 255, 255, 0.05);
  --badge-soon-text: #8B7AAF;
  --badge-pro-bg: rgba(255, 215, 0, 0.12);
  --badge-pro-text: #FFD700;
  --input-bg: rgba(255, 0, 255, 0.04);
  --input-border: rgba(255, 0, 255, 0.12);
  --card-shadow: 0 4px 30px rgba(255, 0, 255, 0.15);
  --up-color: #00FF88;
  --down-color: #FF3366;
}

/* Fun theme font sizing */
:root[data-theme="fun"] {
  font-size: 17px;
}

/* ===== THEME SWITCHER ===== */
.theme-switcher {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border-radius: 8px;
  background: var(--input-bg);
  border: 1px solid var(--border);
}

.theme-btn {
  padding: 5px 10px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  border: none;
  background: transparent;
  color: var(--text-dim);
  font-family: inherit;
  transition: all 0.2s;
  white-space: nowrap;
  line-height: 1;
}

.theme-btn:hover {
  color: var(--text-muted);
  background: var(--bg-hover);
}

.theme-btn.active {
  background: var(--gradient-primary);
  color: #fff;
  box-shadow: 0 2px 8px rgba(108, 99, 255, 0.3);
}

/* ── Light theme: airdrops page ── */
:root[data-theme="light"] .ah-filterbar {
  background: rgba(0,0,0,0.02);
  border-color: rgba(0,0,0,0.08);
}
:root[data-theme="light"] .filter-pill:hover {
  border-color: rgba(0,0,0,0.2) !important;
}
:root[data-theme="light"] .filter-pill.active {
  background: rgba(108,99,255,0.12) !important;
  color: #5A50E0 !important;
  border-color: rgba(108,99,255,0.3) !important;
}
:root[data-theme="light"] .status-tab.active {
  background: rgba(108,99,255,0.14) !important;
  color: #5A50E0 !important;
}
:root[data-theme="light"] .watch-btn {
  color: rgba(0,0,0,0.15) !important;
}
:root[data-theme="light"] .watch-btn:hover {
  color: var(--orange) !important;
}
:root[data-theme="light"] .watch-btn.watched {
  color: var(--orange) !important;
}
/* Table rows */
:root[data-theme="light"] .airdrop-row:hover {
  background: rgba(0,0,0,0.025);
}
/* Chain badge & status badge — make text darker for light bg */
:root[data-theme="light"] .chain-badge {
  filter: saturate(1.2);
}
:root[data-theme="light"] .status-badge {
  filter: saturate(1.2);
}
/* KPI strip */
:root[data-theme="light"] .ah-kpi-strip {
  background: rgba(0,0,0,0.015);
  border-color: rgba(0,0,0,0.06);
}
/* Drawer (slide-out detail panel) */
:root[data-theme="light"] .ah-drawer,
:root[data-theme="light"] #airdropDrawer {
  background: #FFFFFF !important;
  border-color: rgba(0,0,0,0.1) !important;
}
:root[data-theme="light"] .ah-drawer-overlay {
  background: rgba(0,0,0,0.25);
}
:root[data-theme="light"] .drawer-header {
  background: rgba(245,247,250,0.95) !important;
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .drawer-title {
  color: var(--text) !important;
}
:root[data-theme="light"] .drawer-ticker {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .drawer-close:hover {
  background: rgba(239,68,68,0.1) !important;
}
:root[data-theme="light"] .drawer-ai-summary {
  background: linear-gradient(135deg, rgba(108,99,255,0.06) 0%, rgba(0,184,148,0.04) 100%) !important;
  border-color: rgba(108,99,255,0.15) !important;
}
:root[data-theme="light"] .drawer-ai-label {
  color: #6C63FF !important;
}
:root[data-theme="light"] .drawer-ai-text {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .drawer-steps {
  background: rgba(0,184,148,0.04) !important;
  border-color: rgba(0,184,148,0.12) !important;
}
:root[data-theme="light"] .drawer-steps-list li {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .drawer-section-title {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .drawer-desc,
:root[data-theme="light"] .drawer-body .detail-label {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .drawer-body .detail-value {
  color: var(--text) !important;
}
:root[data-theme="light"] .drawer-body .reward-value {
  color: var(--teal) !important;
}
:root[data-theme="light"] .drawer-details-grid {
  border-color: rgba(0,0,0,0.06) !important;
}
:root[data-theme="light"] .eligibility-item {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .status-badge.has-tooltip::after {
  background: #fff !important;
  border-color: rgba(249,115,22,0.3) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* ── Light theme: signals page modal ── */
:root[data-theme="light"] .modal-overlay {
  background: rgba(0,0,0,0.35) !important;
}
:root[data-theme="light"] .modal {
  background: #FFFFFF !important;
  border-color: rgba(0,0,0,0.1) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.15);
}
:root[data-theme="light"] .modal-close {
  background: rgba(0,0,0,0.05) !important;
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .modal-close:hover {
  background: rgba(0,0,0,0.1) !important;
  color: var(--text) !important;
}
:root[data-theme="light"] .modal-stat {
  background: rgba(0,0,0,0.02) !important;
  border-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .chart-container {
  background: rgba(0,0,0,0.02) !important;
  border-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .chart-tf-btn {
  border-color: rgba(0,0,0,0.12) !important;
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .chart-tf-btn.active {
  background: rgba(108,99,255,0.1) !important;
  color: #5A50E0 !important;
  border-color: rgba(108,99,255,0.3) !important;
}
:root[data-theme="light"] .bb-grid .bb-label {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .bb-grid .bb-value {
  color: var(--text) !important;
}

/* ── Light theme: home hero headline ── */
:root[data-theme="light"] .home-hero h1 {
  background: linear-gradient(135deg, #1A202C 0%, #2D3748 50%, #1A202C 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ── Light theme: funding rates page ── */
:root[data-theme="light"] .fr-card {
  background: var(--bg-card);
}
:root[data-theme="light"] .dex-tab.active {
  color: #5A50E0 !important;
  border-color: var(--purple) !important;
}
/* Monitor shell */
:root[data-theme="light"] .monitor-shell {
  border-color: rgba(0,0,0,0.1) !important;
}
:root[data-theme="light"] .monitor-topbar {
  background: #fff !important;
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .monitor-brand {
  border-right-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .monitor-title {
  color: var(--text) !important;
}
:root[data-theme="light"] .metric-card {
  border-right-color: rgba(0,0,0,0.06) !important;
  border-bottom-color: rgba(0,0,0,0.06) !important;
}
:root[data-theme="light"] .metric-label {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .metric-value,
:root[data-theme="light"] .metric-apr-val {
  color: var(--text) !important;
}
:root[data-theme="light"] .metric-sub {
  color: var(--text-dim) !important;
}
/* Exchange badges — darken text for light bg */
:root[data-theme="light"] .exch-badge.hl { color: #5A50E0 !important; }
:root[data-theme="light"] .exch-badge.aster { color: #3182CE !important; }
:root[data-theme="light"] .exch-badge.lighter { color: #B7950B !important; }
:root[data-theme="light"] .exch-badge.nado { color: #C06A08 !important; }
/* DEX chips */
:root[data-theme="light"] .dex-chip {
  color: var(--text-dim) !important;
  border-color: rgba(0,0,0,0.12) !important;
}
:root[data-theme="light"] .dex-chip.active-all { color: #00896B !important; border-color: rgba(0,184,148,0.4) !important; }
:root[data-theme="light"] .dex-chip.active-hl { color: #5A50E0 !important; }
:root[data-theme="light"] .dex-chip.active-aster { color: #3182CE !important; }
:root[data-theme="light"] .dex-chip.active-lighter { color: #B7950B !important; }
:root[data-theme="light"] .dex-chip.active-nado { color: #C06A08 !important; }
/* Table */
:root[data-theme="light"] .pairs-table th {
  color: var(--text-dim) !important;
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .pairs-table th:hover {
  color: var(--text) !important;
}
:root[data-theme="light"] .pairs-table td {
  border-bottom-color: rgba(0,0,0,0.04) !important;
}
:root[data-theme="light"] .pairs-table tr:hover td {
  background: rgba(0,0,0,0.02) !important;
}
:root[data-theme="light"] .pair-name,
:root[data-theme="light"] .price-val {
  color: var(--text) !important;
}
:root[data-theme="light"] .spread-normal {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .table-search {
  color: var(--text) !important;
}
:root[data-theme="light"] .table-search::placeholder {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .monitor-table-area {
  border-left-color: rgba(0,0,0,0.06) !important;
}
/* Dex tag colors - darken for readability */
:root[data-theme="light"] .dex-tag.lighter { color: #B7950B !important; }
:root[data-theme="light"] .dex-tag.nado { color: #C06A08 !important; }
/* Opportunities panel */
:root[data-theme="light"] .panel-header {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .opp-section-hdr {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .opp-tab {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .opp-tab:hover {
  color: var(--text) !important;
  border-color: rgba(0,0,0,0.2) !important;
}
:root[data-theme="light"] .opp-row {
  border-top-color: rgba(0,0,0,0.04) !important;
}
:root[data-theme="light"] .opp-row:hover {
  background: rgba(0,0,0,0.03) !important;
}
:root[data-theme="light"] .opp-dex-lbl {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .opp-delta-dex .dex-vs {
  color: var(--text-dim) !important;
}
/* Spotlight bar */
:root[data-theme="light"] .spotlight-bar {
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .spotlight-clear {
  background: rgba(0,0,0,0.05) !important;
  border-color: rgba(0,0,0,0.1) !important;
  color: var(--text-muted) !important;
}
:root[data-theme="light"] .spotlight-clear:hover {
  background: rgba(0,0,0,0.1) !important;
  color: var(--text) !important;
}
/* Spread filter */
:root[data-theme="light"] .spread-filter {
  color: var(--text-dim) !important;
}
/* Session elements */
:root[data-theme="light"] .session-clock {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .refresh-select {
  color: var(--text-muted) !important;
  background: rgba(0,0,0,0.03) !important;
}
/* Alert log */
:root[data-theme="light"] .monitor-alert-log {
  border-top-color: rgba(0,0,0,0.06) !important;
}
:root[data-theme="light"] .alert-log-hdr {
  border-bottom-color: rgba(0,0,0,0.04) !important;
}
:root[data-theme="light"] .alert-log-title {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .alert-ts {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .alert-msg {
  color: var(--text-muted) !important;
}
/* Order book modal */
:root[data-theme="light"] .ob-modal {
  background: #fff !important;
}
:root[data-theme="light"] .ob-hdr {
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
:root[data-theme="light"] .ob-title-txt {
  color: var(--text) !important;
}
:root[data-theme="light"] .ob-close {
  color: var(--text-dim) !important;
}
:root[data-theme="light"] .ob-close:hover {
  color: var(--text) !important;
}
:root[data-theme="light"] .ob-table th {
  color: var(--text-dim) !important;
}
/* Flash animations for light mode */
:root[data-theme="light"] .flash-up { animation: flash-green-light 0.5s ease !important; }
:root[data-theme="light"] .flash-down { animation: flash-red-light 0.5s ease !important; }
@keyframes flash-green-light { 0% { color: #00896B; } 100% { color: var(--text); } }
@keyframes flash-red-light { 0% { color: #DC2626; } 100% { color: var(--text); } }
/* Pro tip text */
:root[data-theme="light"] .pro-tip p {
  color: var(--text-muted) !important;
}

/* ── Light theme: general table/data elements ── */
:root[data-theme="light"] table thead th {
  color: var(--text-dim);
}
:root[data-theme="light"] table tbody td {
  color: var(--text);
}

/* ── Light theme: news page ── */
:root[data-theme="light"] .news-hero h1 {
  background: linear-gradient(135deg, #1A202C 0%, #2D3748 50%, #1A202C 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
:root[data-theme="light"] .asset-picker-card {
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .asset-ms-menu {
  box-shadow: 0 8px 30px rgba(0,0,0,0.12);
}
:root[data-theme="light"] .asset-ms-check {
  border-color: rgba(0,0,0,0.2);
}
:root[data-theme="light"] .picker-btn {
  border-color: rgba(0,0,0,0.12);
  color: var(--text-muted);
}
:root[data-theme="light"] .picker-btn:hover {
  border-color: rgba(0,0,0,0.25);
  color: var(--text);
  background: rgba(0,0,0,0.03);
}
:root[data-theme="light"] .news-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .news-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
  border-color: rgba(108,99,255,0.2);
}
:root[data-theme="light"] .etf-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .summary-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .refresh-info {
  background: rgba(108,99,255,0.06);
  border-color: rgba(108,99,255,0.12);
}
:root[data-theme="light"] .news-tag {
  background: rgba(108,99,255,0.08);
  color: #5A50E0;
}
:root[data-theme="light"] .etf-ticker {
  background: rgba(108,99,255,0.08);
  color: #5A50E0;
}

/* ── Light theme: Daily Spear email input ── */
:root[data-theme="light"] #spear-email {
  border-color: rgba(0,0,0,0.15) !important;
  background: rgba(0,0,0,0.03) !important;
  color: var(--text) !important;
}
:root[data-theme="light"] #spear-email:focus {
  border-color: rgba(0,184,148,0.5) !important;
  box-shadow: 0 0 0 3px rgba(0,184,148,0.1) !important;
}
:root[data-theme="light"] #spear-email::placeholder {
  color: var(--text-dim) !important;
}

/* ── Light theme: crypto symbol pages ── */
:root[data-theme="light"] .crypto-header-icon {
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}
:root[data-theme="light"] .crypto-stat-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .crypto-metrics {
  background: var(--bg-card);
  border: 1px solid var(--border);
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .crypto-metric-row {
  border-color: rgba(0,0,0,0.06);
}
:root[data-theme="light"] .crypto-about {
  background: var(--bg-card);
  border: 1px solid var(--border);
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .crypto-about p {
  color: var(--text-muted);
}
:root[data-theme="light"] .crypto-related .eco-grid-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .crypto-timerange button {
  border-color: rgba(0,0,0,0.1);
  color: var(--text-muted);
}
:root[data-theme="light"] .crypto-timerange button.active {
  background: var(--text);
  color: #fff;
}
:root[data-theme="light"] .crypto-timerange button:hover:not(.active) {
  background: rgba(0,0,0,0.05);
}

/* Button state classes for JS */
.btn-state-success { background: linear-gradient(135deg, #7C3AED, #9945FF) !important; color: #fff !important; }
.btn-state-error { background: linear-gradient(135deg, #EF4444, #DC2626) !important; color: #fff !important; }
.btn-state-duplicate { background: linear-gradient(135deg, #F59E0B, #D97706) !important; color: #fff !important; }

/* ── Light theme: signals AI analysis ── */
:root[data-theme="light"] .ai-analysis {
  background: linear-gradient(135deg, rgba(108,99,255,0.06), rgba(0,212,170,0.04));
  border-color: rgba(108,99,255,0.15);
}
:root[data-theme="light"] .ai-analysis-body p,
:root[data-theme="light"] .ai-news-item {
  color: var(--text-muted);
}
:root[data-theme="light"] .ai-news-item a {
  color: #5A50E0;
}

/* ── Light theme: signals page controls + how it works ── */
:root[data-theme="light"] .sig-tldr-box {
  background: rgba(108,99,255,0.06);
  border-color: rgba(108,99,255,0.18);
}
:root[data-theme="light"] .sig-tldr-box p {
  color: var(--text-muted);
}
:root[data-theme="light"] .sig-opp-item {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .sig-opp-info p {
  color: var(--text-muted);
}
:root[data-theme="light"] .sig-pro-tip {
  background: rgba(108,99,255,0.05);
}
:root[data-theme="light"] .sig-pro-tip p {
  color: var(--text-muted);
}
:root[data-theme="light"] .controls-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .count-pill {
  border-color: rgba(0,0,0,0.1);
  color: var(--text-muted);
}
:root[data-theme="light"] .count-pill:hover {
  background: rgba(0,0,0,0.04);
  border-color: rgba(0,0,0,0.2);
}
:root[data-theme="light"] .custom-sym-input {
  border-color: rgba(0,0,0,0.12);
  background: #fff;
}
:root[data-theme="light"] .custom-tag {
  background: rgba(108,99,255,0.08);
  border-color: rgba(108,99,255,0.18);
}

/* ── Light theme: watchlist page ── */
:root[data-theme="light"] .wl-card {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .wl-card:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}
:root[data-theme="light"] .wl-card-summary {
  border-top-color: rgba(0,0,0,0.06);
}
:root[data-theme="light"] .wl-card-summary-text {
  color: var(--text-muted);
}
:root[data-theme="light"] .wl-search {
  background: #fff;
  border-color: rgba(0,0,0,0.12);
}
:root[data-theme="light"] .wl-tldr-box {
  background: rgba(108,99,255,0.06);
  border-color: rgba(108,99,255,0.18);
}
:root[data-theme="light"] .wl-tldr-box p {
  color: var(--text-muted);
}
:root[data-theme="light"] .wl-opp-item {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .wl-opp-info p {
  color: var(--text-muted);
}

/* ── Light theme: correlation page ── */
:root[data-theme="light"] .corr-tldr-box {
  background: rgba(108,99,255,0.06);
  border-color: rgba(108,99,255,0.18);
}
:root[data-theme="light"] .corr-tldr-box p {
  color: var(--text-muted);
}
:root[data-theme="light"] .corr-opp-item {
  box-shadow: 0 1px 6px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .corr-opp-info p {
  color: var(--text-muted);
}
:root[data-theme="light"] .corr-pro-tip {
  background: rgba(108,99,255,0.05);
}
:root[data-theme="light"] .corr-pro-tip p {
  color: var(--text-muted);
}

/* ── Services page light mode ── */
:root[data-theme="light"] .svc-card {
  background: rgba(255,255,255,0.92);
  border-color: rgba(0,0,0,0.08);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
:root[data-theme="light"] .svc-card:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.1);
  border-color: rgba(0,0,0,0.12);
}
:root[data-theme="light"] .svc-card p {
  color: var(--text-muted);
}
:root[data-theme="light"] .svc-tag {
  background: rgba(0,0,0,0.04);
  color: var(--text-muted);
  border-color: rgba(0,0,0,0.08);
}
:root[data-theme="light"] .vis-signal-bars {
  background: linear-gradient(180deg, rgba(0,212,170,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-funding {
  background: linear-gradient(180deg, rgba(108,99,255,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-watchlist {
  background: linear-gradient(180deg, rgba(245,158,11,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-wl-coin {
  background: rgba(0,0,0,0.02);
  border-color: rgba(0,0,0,0.06);
}
:root[data-theme="light"] .vis-news {
  background: linear-gradient(180deg, rgba(167,139,250,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-news-line {
  background: rgba(0,0,0,0.06);
}
:root[data-theme="light"] .vis-corr {
  background: linear-gradient(180deg, rgba(0,212,170,0.04) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-airdrop {
  background: linear-gradient(180deg, rgba(249,115,22,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-dca {
  background: linear-gradient(180deg, rgba(245,158,11,0.06) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-depeg {
  background: linear-gradient(180deg, rgba(239,68,68,0.05) 0%, transparent 100%);
}
:root[data-theme="light"] .vis-depeg-peg {
  background: #fff;
  border-color: rgba(0,0,0,0.1);
  color: var(--text-muted);
}
