/* ============================================================
   BINGO 全站主题 · 唯一颜色源
   2026-10-29 建立
   规则：任何页面不得硬编码背景/文字色，只能引用这里的变量。
   切换方式：<html class="theme-light"> / theme-warm / theme-green
             不加 class = 深海蓝（默认）
             雅思机考等需要锁定的页面用 <html data-fixed-theme="cbt">
   ============================================================ */

/* ---------- 深海蓝（默认） ---------- */
:root {
    --bg-primary: #0A1129;
    --bg-secondary: #131A35;
    --bg-card: #18203D;
    --bg-card-hover: #1E2A4D;
    --bg-welcome: #0D2953;
    --text-primary: #F1F5F9;
    --text-secondary: #94A3B8;
    --text-muted: #64748B;
    --text-on-accent: #FFFFFF;
    --accent: #0066FF;
    --accent-light: #00CCFF;
    --accent-gradient: linear-gradient(135deg, #0066FF, #00CCFF);
    --success: #10B981;
    --warning: #FF6600;
    --danger: #EF4444;
    --info: #00CCFF;
    --border: rgba(255, 255, 255, 0.08);
    --overlay: rgba(4, 8, 20, 0.72);
    --shadow: 0 8px 30px rgba(0, 0, 0, 0.38);
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.28);
    color-scheme: dark;
}

/* ---------- 极简白 ---------- */
.theme-light {
    --bg-primary: #F8FAFC;
    --bg-secondary: #F1F5F9;
    --bg-card: #FFFFFF;
    --bg-card-hover: #E2E8F0;
    --bg-welcome: #EFF6FF;
    --text-primary: #0F172A;
    --text-secondary: #475569;
    --text-muted: #94A3B8;
    --text-on-accent: #FFFFFF;
    --accent: #2563EB;
    --accent-light: #3B82F6;
    --accent-gradient: linear-gradient(135deg, #2563EB, #06B6D4);
    --success: #059669;
    --warning: #EA580C;
    --danger: #DC2626;
    --info: #0891B2;
    --border: rgba(15, 23, 42, 0.08);
    --overlay: rgba(15, 23, 42, 0.42);
    --shadow: 0 8px 28px rgba(15, 23, 42, 0.12);
    --shadow-sm: 0 2px 8px rgba(15, 23, 42, 0.08);
    color-scheme: light;
}

/* ---------- 暖阳米 ---------- */
.theme-warm {
    --bg-primary: #FFFBEB;
    --bg-secondary: #FEF3C7;
    --bg-card: #FFFFFF;
    --bg-card-hover: #FDE68A;
    --bg-welcome: #FFF7ED;
    --text-primary: #431407;
    --text-secondary: #7C2D12;
    --text-muted: #B45309;
    --text-on-accent: #FFFFFF;
    --accent: #EA580C;
    --accent-light: #F97316;
    --accent-gradient: linear-gradient(135deg, #EA580C, #F59E0B);
    --success: #15803D;
    --warning: #DC2626;
    --danger: #B91C1C;
    --info: #D97706;
    --border: rgba(67, 20, 7, 0.10);
    --overlay: rgba(67, 20, 7, 0.40);
    --shadow: 0 8px 28px rgba(120, 53, 15, 0.12);
    --shadow-sm: 0 2px 8px rgba(120, 53, 15, 0.08);
    color-scheme: light;
}

/* ---------- 森林绿 ---------- */
.theme-green {
    --bg-primary: #F0FDF4;
    --bg-secondary: #DCFCE7;
    --bg-card: #FFFFFF;
    --bg-card-hover: #BBF7D0;
    --bg-welcome: #ECFDF5;
    --text-primary: #052E16;
    --text-secondary: #166534;
    --text-muted: #15803D;
    --text-on-accent: #FFFFFF;
    --accent: #16A34A;
    --accent-light: #22C55E;
    --accent-gradient: linear-gradient(135deg, #15803D, #10B981);
    --success: #047857;
    --warning: #CA8A04;
    --danger: #B91C1C;
    --info: #0D9488;
    --border: rgba(5, 46, 22, 0.08);
    --overlay: rgba(5, 46, 22, 0.40);
    --shadow: 0 8px 28px rgba(5, 46, 22, 0.12);
    --shadow-sm: 0 2px 8px rgba(5, 46, 22, 0.08);
    color-scheme: light;
}

/* ---------- 雅思机考：对标真机考（白底黑字，固定不跟随学生设置） ---------- */
.theme-cbt {
    --bg-primary: #FFFFFF;
    --bg-secondary: #F2F4F7;
    --bg-card: #FFFFFF;
    --bg-card-hover: #E8EDF3;
    --bg-welcome: #F7F9FC;
    --text-primary: #1A1A1A;
    --text-secondary: #4A4A4A;
    --text-muted: #767676;
    --text-on-accent: #FFFFFF;
    --accent: #1B4B8F;
    --accent-light: #2D6DB5;
    --accent-gradient: linear-gradient(135deg, #1B4B8F, #2D6DB5);
    --success: #1A7F4B;
    --warning: #B45309;
    --danger: #B3261E;
    --info: #1B4B8F;
    --border: #D8DEE6;
    --overlay: rgba(26, 26, 26, 0.45);
    --shadow: 0 6px 20px rgba(16, 24, 40, 0.10);
    --shadow-sm: 0 1px 4px rgba(16, 24, 40, 0.08);
    color-scheme: light;
}

/* ============================================================
   别名层：兼容各页面历史命名（引用时实时解析，不复制具体色值）
   ============================================================ */
:root,
.theme-light,
.theme-warm,
.theme-green,
.theme-cbt {
    --bg: var(--bg-primary);
    --bg-input: var(--bg-secondary);
    --bg-panel: var(--bg-card);
    --card: var(--bg-card);
    --card-bg: var(--bg-card);
    --card-border: var(--border);
    --nav-bg: var(--bg-secondary);
    --border-strong: var(--border);
    --hover: var(--bg-card-hover);
    --text: var(--text-primary);
    --text-main: var(--text-primary);
    --muted: var(--text-muted);
    --bg-gradient: linear-gradient(135deg, var(--bg-primary), var(--bg-secondary));
    --accent-glow: rgba(0, 102, 255, 0.35);
    --radius: 12px;
    --radius-sm: 8px;
}

/* 兜底：页面自己没写背景时，用主题底色，避免白底穿透 */
html,
body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}
