/* ===== 手动强制暗色模式 ===== */
html.theme-dark {
    --bg-primary: #0a0f1c;
    --bg-secondary: #111827;
    --bg-card: #151d2e;
    --bg-card-hover: #1a2540;
    --bg-panel: #0e1525;
    --border-color: rgba(201, 153, 58, 0.15);
    --border-gold: rgba(201, 153, 58, 0.3);

    --text-primary: #e8e0d0;
    --text-secondary: #a8a090;
    --text-muted: #6a6560;
    --text-gold: #c9993a;
    --text-jade: #3dab97;
    --text-red: #e06060;
    --text-blue: #60a0e0;

    --accent-gold: #c9993a;
    --accent-jade: #3dab97;
    --accent-crimson: #b93030;
    --accent-purple: #9a6ae0;
    --accent-blue: #5090d0;

    --gradient-gold: linear-gradient(135deg, #8a6a20 0%, #c9993a 50%, #8a6a20 100%);
    --gradient-jade: linear-gradient(135deg, #1a6b5a 0%, #3dab97 100%);
    --gradient-bg: linear-gradient(180deg, #0a0f1c 0%, #111827 50%, #0e1525 100%);

    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.4);
    --shadow-glow-gold: 0 0 20px rgba(201, 153, 58, 0.15);

    --text-on-gold: #fff;

    --rarity-1: #6a6a6a;
    --rarity-2: #4ac0e0;
    --rarity-3: #e0a030;
    --rarity-4: #c060e0;
    --rarity-5: #e04040;

}

html.theme-dark .game-page,
html.theme-dark .login-page {
    background: var(--gradient-bg);
}

html.theme-dark .login-bg-overlay {
    background:
        radial-gradient(ellipse at 20% 50%, rgba(201, 153, 58, 0.06) 0%, transparent 60%),
        radial-gradient(ellipse at 80% 20%, rgba(61, 171, 151, 0.04) 0%, transparent 60%),
        var(--gradient-bg);
}

/* ===== 手动强制日间模式 ===== */
/* ===== 水墨风浅色主题 (手动强制) ===== */
html.theme-light {
    --bg-primary: #f3f2f0;
    --bg-secondary: #eae9e7;
    --bg-card: #f9f9f8;
    --bg-card-hover: #eeedeb;
    --bg-panel: #f0efed;
    --border-color: rgba(60, 60, 60, 0.12);
    --border-gold: rgba(140, 60, 50, 0.25);

    --text-primary: #1a1a1a;
    --text-secondary: #4a5a5a;
    --text-muted: #8a9090;
    --text-gold: #b8463e;
    --text-jade: #3a6a7a;
    --text-red: #c04040;
    --text-blue: #3a5a8a;

    --accent-gold: #b8463e;
    --accent-jade: #3a6a7a;
    --accent-crimson: #a83030;
    --accent-purple: #6a5a8a;
    --accent-blue: #3a6a8a;

    --gradient-gold: linear-gradient(135deg, #b84a40 0%, #d06858 50%, #b84a40 100%);
    --gradient-jade: linear-gradient(135deg, #3a6a7a 0%, #5a8a9a 100%);
    --gradient-bg: linear-gradient(180deg, #f3f2f0 0%, #eae9e7 50%, #f0efed 100%);

    --shadow-sm: 0 2px 12px rgba(40, 40, 40, 0.06);
    --shadow-md: 0 4px 20px rgba(40, 40, 40, 0.08);
    --shadow-glow-gold: 0 0 20px rgba(184, 70, 62, 0.1);

    --text-on-gold: #fff;

    --rarity-1: #6a6a6a;
    --rarity-2: #3a7a8a;
    --rarity-3: #b08520;
    --rarity-4: #7a5a9a;
    --rarity-5: #c04040;


    --text-orange: #e07020;
    --text-gray: #6a7a7a;
    --text-green-light: #4a7a4a;
    --accent-orange: #e07020;
    --bg-glass: rgba(0, 0, 0, 0.025);
    --bg-glass-jade: rgba(58, 106, 122, 0.05);
    --border-jade: rgba(58, 106, 122, 0.15);
    --border-orange: rgba(224, 112, 32, 0.3);
    --bg-orange-glass: rgba(224, 112, 32, 0.06);
}

html.theme-light .login-bg-overlay {
    background:
        radial-gradient(ellipse at 30% 80%, rgba(58, 106, 122, 0.04) 0%, transparent 50%),
        radial-gradient(ellipse at 70% 90%, rgba(58, 106, 122, 0.03) 0%, transparent 40%),
        linear-gradient(175deg, transparent 60%, rgba(100, 120, 130, 0.06) 62%, rgba(100, 120, 130, 0.08) 65%, rgba(100, 120, 130, 0.04) 68%, transparent 72%),
        linear-gradient(170deg, transparent 65%, rgba(80, 100, 110, 0.08) 68%, rgba(80, 100, 110, 0.12) 72%, rgba(80, 100, 110, 0.06) 76%, transparent 80%),
        linear-gradient(168deg, transparent 72%, rgba(60, 80, 90, 0.1) 75%, rgba(60, 80, 90, 0.15) 80%, rgba(60, 80, 90, 0.08) 85%, transparent 90%),
        linear-gradient(180deg, transparent 88%, rgba(58, 106, 122, 0.04) 95%, rgba(58, 106, 122, 0.02) 100%),
        rgba(243, 242, 240, 0.85);
}
html.theme-light .btn-primary { color: #fff; }
html.theme-light input[type="text"],
html.theme-light input[type="email"],
html.theme-light input[type="password"],
html.theme-light input[type="number"],
html.theme-light select,
html.theme-light textarea { background: rgba(255, 255, 255, 0.7); border-color: rgba(60, 60, 60, 0.15); color: var(--text-primary); }
html.theme-light input[type="text"]::placeholder,
html.theme-light input[type="email"]::placeholder,
html.theme-light input[type="password"]::placeholder { color: var(--text-muted); }
html.theme-light .game-page { background: var(--gradient-bg); }
html.theme-light .log-combat { color: #c04040; }
html.theme-light .log-warning { color: #9a6a30; }
html.theme-light .log-info { color: #3a6a7a; }
html.theme-light .log-system { color: #3a6a7a; }
html.theme-light .log-gray { color: #7a8080; }
html.theme-light .log-spirit { color: #3a6a7a; }
html.theme-light .log-gold { color: #b8463e; }
html.theme-light .log-purple { color: #6a5a8a; }
html.theme-light .map-container svg text { fill: var(--text-primary); }
html.theme-light .chat-msg { border-color: var(--border-color); }
html.theme-light .chat-msg-assist {
    background: rgba(184, 70, 62, 0.08);
    border-left-color: var(--text-gold);
}
html.theme-light .chat-msg-assist:hover {
    background: rgba(184, 70, 62, 0.12);
}
html.theme-light .chat-assist-card .btn-recruit-join {
    background: rgba(184, 70, 62, 0.1);
    border-color: rgba(184, 70, 62, 0.28);
    color: var(--text-gold);
}
html.theme-light .chat-assist-card .btn-recruit-join:hover {
    background: rgba(184, 70, 62, 0.16);
    border-color: rgba(184, 70, 62, 0.42);
    color: var(--text-primary);
}
html.theme-light .chat-assist-report-status-victory {
    color: #256f54;
    background: rgba(94, 196, 160, 0.18);
    border-color: rgba(94, 196, 160, 0.32);
}
html.theme-light .chat-assist-report-status-danger {
    color: #9c4c47;
    background: rgba(184, 70, 62, 0.14);
    border-color: rgba(184, 70, 62, 0.24);
}
html.theme-light .chat-assist-report-status-neutral {
    color: #5e6468;
    background: rgba(80, 88, 96, 0.08);
    border-color: rgba(80, 88, 96, 0.18);
}
html.theme-light .chat-assist-report-logs {
    background: rgba(255, 251, 245, 0.72);
    border-color: rgba(184, 70, 62, 0.12);
}
html.theme-light .chat-assist-report-line.is-round {
    color: #5c5751;
}
html.theme-light .chat-assist-report-line.is-reward {
    color: #2f7a5d;
}
html.theme-light .chat-assist-report-line.is-danger {
    color: #a1554e;
}
html.theme-light .death-overlay { background: linear-gradient(180deg, #eeedeb 0%, #e5e4e2 100%); }
html.theme-light .death-title { color: #a83030; }
html.theme-light .death-subtitle { color: #4a5a5a; }
html.theme-light .death-info { color: #6a7a7a; }
html.theme-light .death-cause { color: #a83030; }
html.theme-light .death-stat-label { color: #5a6a6a; }
html.theme-light .death-stat-value { color: #a83030; }
html.theme-light .death-separator { border-color: rgba(60, 60, 60, 0.15); }
html.theme-light .btn-revive { color: #fff; }
html.theme-light .equip-slot { border-color: var(--border-color); background: var(--bg-card); }
html.theme-light .shop-item { border-color: var(--border-color); }
html.theme-light .bottom-action-bar { background: rgba(243, 242, 240, 0.95); border-top-color: var(--border-color); }
html.theme-light .game-time-display.night { color: #6a5a8a; background: rgba(106, 90, 138, 0.08); }
html.theme-light .rank-gold { color: #b8463e; }
html.theme-light .rank-silver { color: #5a6a6a; }
html.theme-light .rank-bronze { color: #7a6a50; }
html.theme-light ::-webkit-scrollbar-track { background: var(--bg-secondary); }
html.theme-light ::-webkit-scrollbar-thumb { background: rgba(60, 60, 60, 0.18); }
html.theme-light ::-webkit-scrollbar-thumb:hover { background: rgba(60, 60, 60, 0.28); }
html.theme-light .btn-trial { background: linear-gradient(135deg, rgba(184, 70, 62, 0.12), rgba(184, 70, 62, 0.04)); border-color: rgba(184, 70, 62, 0.3); color: #b8463e; }
html.theme-light .btn-trial:hover:not(:disabled) { background: linear-gradient(135deg, rgba(184, 70, 62, 0.2), rgba(184, 70, 62, 0.08)); }
html.theme-light .trial-result-fail { color: #a83030; }
html.theme-light .trial-log-defeat { color: #a83030; }
html.theme-light .trial-log-victory { color: #3a6a7a; }
/* 面板标题 - 墨渐隐下划线 */
html.theme-light .panel-title {
    border-bottom: none;
    background-image: linear-gradient(90deg, transparent 0%, rgba(60, 60, 60, 0.15) 20%, rgba(60, 60, 60, 0.2) 50%, rgba(60, 60, 60, 0.15) 80%, transparent 100%);
    background-size: 100% 1px;
    background-repeat: no-repeat;
    background-position: bottom;
}
/* 分割线 - 墨渐隐 */
html.theme-light .panel-section {
    border-bottom-color: transparent;
    background-image: linear-gradient(90deg, transparent 0%, rgba(60, 60, 60, 0.1) 30%, rgba(60, 60, 60, 0.1) 70%, transparent 100%);
    background-size: 100% 1px;
    background-repeat: no-repeat;
    background-position: bottom;
}
/* Logo - 墨色 */
html.theme-light .logo-title {
    color: #1a1a1a;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
/* Toast - 朱砂调 */
html.theme-light .toast {
    background: var(--bg-card);
    border-color: rgba(184, 70, 62, 0.2);
    color: #b8463e;
    box-shadow: 0 4px 20px rgba(40, 40, 40, 0.08);
}
/* 登录卡片 */
html.theme-light .login-card {
    background: rgba(249, 249, 248, 0.9);
    border-color: rgba(60, 60, 60, 0.08);
    box-shadow: 0 4px 24px rgba(40, 40, 40, 0.06);
}

/* ===== 水墨风：游戏页面硬编码暖色覆盖 ===== */
html.theme-light .header-realm {
    background: rgba(58, 106, 122, 0.08);
    border-color: rgba(58, 106, 122, 0.15);
}
html.theme-light .header-gametime {
    background: rgba(184, 70, 62, 0.06);
    border-color: rgba(184, 70, 62, 0.12);
}
html.theme-light .header-gametime.is-night {
    color: #6a5a8a;
    background: rgba(106, 90, 138, 0.08);
    border-color: rgba(106, 90, 138, 0.15);
}
html.theme-light .header-btn-group {
    background: rgba(60, 60, 60, 0.04);
}
html.theme-light .header-btn-group .btn-icon:hover {
    background: rgba(184, 70, 62, 0.08);
}
html.theme-light .header-btn-group .btn-icon.active {
    background: rgba(184, 70, 62, 0.12);
}

/* --- 按钮通用 --- */
html.theme-light .btn-icon.active {
    background: rgba(184, 70, 62, 0.08);
    box-shadow: 0 0 8px rgba(184, 70, 62, 0.06);
}

/* --- Beta / 更新 Banner --- */
html.theme-light .beta-banner-content {
    background: linear-gradient(90deg, rgba(184, 70, 62, 0.06) 0%, rgba(184, 70, 62, 0.12) 50%, rgba(184, 70, 62, 0.06) 100%);
    border-bottom-color: rgba(184, 70, 62, 0.12);
    animation: none;
}
html.theme-light .marquee-banner-content {
    background: linear-gradient(90deg, rgba(184, 70, 62, 0.08) 0%, rgba(184, 70, 62, 0.18) 50%, rgba(184, 70, 62, 0.08) 100%);
    border-bottom-color: rgba(184, 70, 62, 0.18);
}
html.theme-light .beta-banner-close {
    background: rgba(184, 70, 62, 0.08);
    border-color: rgba(184, 70, 62, 0.2);
}
html.theme-light .beta-banner-close:hover {
    background: rgba(184, 70, 62, 0.2);
}
html.theme-light .beta-group-number {
    text-shadow: none;
}
html.theme-light .update-banner {
    background: linear-gradient(90deg, rgba(58, 106, 122, 0.06) 0%, rgba(58, 106, 122, 0.12) 50%, rgba(58, 106, 122, 0.06) 100%);
    border-bottom-color: rgba(58, 106, 122, 0.15);
    animation: none;
}

/* --- 登录页面额外覆盖 --- */
html.theme-light .login-page {
    background-color: #f3f2f0;
    background-image: none;
}
html.theme-light .compare-highlight .compare-label {
    background: rgba(184, 70, 62, 0.1);
    border-color: rgba(184, 70, 62, 0.2);
}

/* --- 登录页 Form --- */
html.theme-light .form-divider span {
    background: var(--bg-card);
    color: var(--text-muted);
}

html.theme-light .logo-intro {
    color: #59544c;
}

html.theme-light .feature-item {
    background: rgba(60, 60, 60, 0.02);
    border-color: rgba(60, 60, 60, 0.08);
}

html.theme-light .feature-item:hover {
    border-color: rgba(184, 70, 62, 0.25);
}

html.theme-light .features-footer {
    color: #3a6a7a;
}

html.theme-light .anchor-chip {
    background:
        linear-gradient(180deg, rgba(184, 70, 62, 0.06), rgba(58, 106, 122, 0.03)),
        rgba(58, 106, 122, 0.04);
    border-color: rgba(184, 70, 62, 0.16);
    color: #8f5b24;
}

html.theme-light .anchor-chip:hover {
    background:
        linear-gradient(180deg, rgba(184, 70, 62, 0.1), rgba(58, 106, 122, 0.05)),
        rgba(58, 106, 122, 0.08);
    border-color: rgba(184, 70, 62, 0.26);
}

html.theme-light .landing-section {
    background: rgba(255, 255, 255, 0.8);
    border-color: rgba(60, 60, 60, 0.08);
    box-shadow: 0 12px 30px rgba(40, 30, 20, 0.05);
}

html.theme-light .landing-section-hero {
    background:
        radial-gradient(circle at top right, rgba(184, 70, 62, 0.08), transparent 32%),
        radial-gradient(circle at bottom left, rgba(58, 106, 122, 0.07), transparent 28%),
        rgba(255, 255, 255, 0.84);
}

html.theme-light .lore-quote {
    background: rgba(60, 60, 60, 0.03);
    border-left-color: rgba(184, 70, 62, 0.45);
}

html.theme-light .hero-banner-text {
    color: #7a746b;
}

html.theme-light .hero-mark {
    background: rgba(60, 60, 60, 0.02);
    border-color: rgba(60, 60, 60, 0.08);
}

html.theme-light .section-eyebrow {
    color: #3a6a7a;
}

html.theme-light .highlight-card,
html.theme-light .realm-stat,
html.theme-light .loop-step,
html.theme-light .community-box,
html.theme-light .faq-list details {
    background: rgba(60, 60, 60, 0.02);
    border-color: rgba(60, 60, 60, 0.08);
}

html.theme-light .info-pill {
    background: rgba(184, 70, 62, 0.08);
    color: #8f5b24;
    border-color: rgba(184, 70, 62, 0.14);
}

html.theme-light .ai-fact-item {
    background:
        linear-gradient(180deg, rgba(184, 70, 62, 0.03), rgba(60, 60, 60, 0.02)),
        rgba(60, 60, 60, 0.02);
    border-color: rgba(60, 60, 60, 0.08);
}

html.theme-light .world-lore-card,
html.theme-light .region-card,
html.theme-light .faction-card {
    background:
        linear-gradient(180deg, rgba(184, 70, 62, 0.03), rgba(60, 60, 60, 0.02)),
        rgba(60, 60, 60, 0.02);
    border-color: rgba(60, 60, 60, 0.08);
}

html.theme-light .source-note {
    color: #6d6a63;
}

/* --- 修炼状态条/文字 --- */
html.theme-light .meditation-bar-fill {
    background: linear-gradient(90deg, rgba(58, 106, 122, 0.3) 0%, rgba(58, 106, 122, 0.5) 50%, rgba(58, 106, 122, 0.3) 100%);
}
html.theme-light .stat-highlight {
    background: rgba(184, 70, 62, 0.04);
}
html.theme-light .stat-highlight:hover {
    background: rgba(184, 70, 62, 0.06);
}

/* --- 底部操作栏 --- */
html.theme-light .action-btn:hover {
    background: rgba(60, 60, 60, 0.06);
}
html.theme-light .action-btn.active,
html.theme-light .action-btn.primary {
    background: rgba(184, 70, 62, 0.06);
}
html.theme-light .action-btn.cultivate-active {
    background: rgba(58, 106, 122, 0.08);
}

/* --- 面板内各区块 --- */
html.theme-light .panel-stat-row:hover {
    background: rgba(60, 60, 60, 0.03);
}

/* --- 储物/物品 --- */
html.theme-light .inventory-item:hover {
    background: rgba(60, 60, 60, 0.04);
}

/* --- 功法/技能卡片 --- */
html.theme-light .technique-item {
    border-color: rgba(60, 60, 60, 0.08);
}
html.theme-light .technique-active {
    border-color: rgba(58, 106, 122, 0.2);
    background: rgba(58, 106, 122, 0.04);
}
html.theme-light .technique-badge {
    background: rgba(58, 106, 122, 0.1);
    color: #3a6a7a;
}

/* --- 弹窗/模态框 --- */
html.theme-light .modal-overlay {
    background: rgba(0, 0, 0, 0.3);
}
html.theme-light .modal-content,
html.theme-light .game-confirm-dialog {
    background: var(--bg-card);
    border-color: rgba(60, 60, 60, 0.1);
    box-shadow: 0 8px 32px rgba(40, 40, 40, 0.12);
}

/* --- 商铺 --- */
html.theme-light .shop-item:hover {
    border-color: rgba(184, 70, 62, 0.2);
    background: rgba(184, 70, 62, 0.03);
}

/* --- 地图 --- */
html.theme-light .map-container {
    background: var(--bg-card);
}
html.theme-light .map-node-name {
    text-shadow: none;
}
html.theme-light .map-node-range {
    background: rgba(60, 60, 60, 0.08);
    border-color: rgba(60, 60, 60, 0.12);
}
/* 浅色主题: 北荒郡 */
html.theme-light .map-region-beihuang {
    background:
        radial-gradient(ellipse at 50% 10%, rgba(100, 80, 160, 0.06) 0%, transparent 50%),
        radial-gradient(ellipse at 20% 70%, rgba(60, 100, 180, 0.04) 0%, transparent 50%),
        linear-gradient(180deg, #eae8f2 0%, #e4e2ec 40%, #e8e6ee 100%);
    border-color: rgba(100, 100, 160, 0.15);
}
html.theme-light .map-region-beihuang .map-node-dot {
    background: #6a8ad0;
    border-color: rgba(106, 138, 208, 0.4);
}
html.theme-light .map-region-beihuang .map-node-name {
    color: #4a5a7a;
    text-shadow: none;
}
html.theme-light .map-region-beihuang .map-node-range {
    background: rgba(230, 228, 240, 0.9);
    border-color: rgba(100, 100, 160, 0.15);
    color: #6a6a8a;
}
html.theme-light .map-region-beihuang .map-node-current .map-node-dot {
    background: linear-gradient(135deg, #7a9ce0, #9a8af0);
    border-color: rgba(122, 156, 224, 0.5);
    box-shadow: 0 0 10px rgba(122, 156, 224, 0.3);
}
html.theme-light .map-region-beihuang .map-node-current .map-node-name {
    color: #4a5a8a;
    text-shadow: none;
}
html.theme-light .map-region-beihuang .map-node-badge {
    background: linear-gradient(135deg, #6a8ad0, #8a7ae0);
    color: #fff;
}
html.theme-light .map-region-beihuang .map-node-open .map-node-name {
    color: #5a7ac0;
}
html.theme-light .map-region-beihuang .map-region-watermark {
    color: rgba(100, 80, 160, 0.04);
}
html.theme-light .map-node-desc {
    background: rgba(248, 248, 252, 0.96);
    border-color: rgba(100, 100, 160, 0.15);
    color: #4a5a6a;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}
html.theme-light .map-region-canghai {
    background:
        radial-gradient(ellipse at 50% 80%, rgba(40, 120, 180, 0.05) 0%, transparent 60%),
        radial-gradient(ellipse at 30% 30%, rgba(61, 171, 151, 0.04) 0%, transparent 50%),
        var(--bg-card);
}


/* --- 聊天 --- */
html.theme-light .chat-input-area {
    background: var(--bg-secondary);
    border-top-color: var(--border-color);
}

/* --- 九霄神庭/任务 --- */
html.theme-light .court-card {
    border-color: rgba(60, 60, 60, 0.08);
    background: var(--bg-card);
}
html.theme-light .task-card {
    border-color: rgba(60, 60, 60, 0.08);
}
html.theme-light .task-completed {
    border-color: rgba(58, 106, 122, 0.2);
}
html.theme-light .task-progress-fill {
    background: var(--accent-jade);
}
html.theme-light .btn-task-claim {
    background: rgba(184, 70, 62, 0.1);
    border-color: rgba(184, 70, 62, 0.25);
    color: #b8463e;
}

/* --- 装备框 border glow --- */
html.theme-light .equip-slot:hover {
    border-color: rgba(60, 60, 60, 0.2);
}

/* --- 灵宝司/储物 --- */
html.theme-light .storage-item {
    border-color: rgba(60, 60, 60, 0.08);
}

/* --- 排行榜项 --- */
html.theme-light .rank-item {
    border-color: rgba(60, 60, 60, 0.06);
}
html.theme-light .rank-item:hover {
    background: rgba(60, 60, 60, 0.03);
}

/* --- 市集 --- */
html.theme-light .market-item {
    border-color: rgba(60, 60, 60, 0.08);
}
html.theme-light .market-item:hover {
    border-color: rgba(184, 70, 62, 0.15);
}

/* --- 设置区域 --- */
html.theme-light .setting-row {
    border-color: rgba(60, 60, 60, 0.06);
}

/* --- 各类 btn-action (朱砂按钮) --- */
html.theme-light .btn-action {
    background: var(--bg-card);
    border-color: rgba(60, 60, 60, 0.15);
    color: var(--text-primary);
}
html.theme-light .btn-action:hover {
    background: var(--bg-card-hover);
    border-color: rgba(58, 106, 122, 0.3);
    color: #3a6a7a;
}

/* --- 日志默认左横条 --- */
html.theme-light .log-content p {
    border-left-color: currentColor;
}

/* --- 交易所 --- */
html.theme-light .exchange-preview-ok {
    color: #3a6a7a;
}
html.theme-light .exchange-preview-warn {
    color: #c04040;
}

/* --- 逮捕弹窗 --- */
html.theme-light .arrest-overlay {
    background: rgba(0, 0, 0, 0.6);
}

/* --- 试炼结果弹窗 --- */
html.theme-light .trial-result-dialog {
    background: var(--bg-card);
    border-color: rgba(60, 60, 60, 0.1);
}

/* --- 聊天气泡 --- */
html.theme-light .chat-bubble {
    background: var(--bg-card);
    border-color: rgba(60, 60, 60, 0.1);
    box-shadow: 0 4px 16px rgba(40, 40, 40, 0.08);
}

/* ===== 主题切换按钮样式 ===== */
.theme-switch-group {
    display: flex;
    gap: 4px;
    flex: 1;
}

.theme-btn {
    flex: 1;
    padding: 5px 0;
    font-size: 11px;
    font-family: var(--font-serif);
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s;
}

.theme-btn.active,
.theme-btn:hover {
    background: var(--bg-active);
    color: var(--text-main);
    border-color: var(--primary);
}

html.theme-light .font-select-btn.active {
    background: rgba(184, 70, 62, 0.1);
    border-color: rgba(184, 70, 62, 0.35);
    color: #b8463e;
}

html.theme-light .font-select-btn:hover {
    border-color: rgba(184, 70, 62, 0.25);
    color: var(--text-primary);
}

