/* Proton Light Theme — claude-dashboard-rewrite 2026-04-21
 *
 * 策略:
 *   1. html[data-theme="light"] 下重定义 tokens.css 里所有变量为浅色
 *   2. 硬编码 inline style (color:#fff / bg:rgba(...)) 用 !important 在 light 下 override
 *   3. 不改 tokens.css / primitives.css / sidebar.css (ownership: store-redesign / sidebar-rewrite)
 *   4. 默认 data-theme=dark 时本文件不生效, 零 regression
 *
 * 扩展规则 (给其他 cc):
 *   - 所有新 inline style 都改用 var(--bg-surface) / var(--text-primary) 等 token
 *   - 若必须 hardcode, 同步加一条 html[data-theme="light"] ... !important 覆盖
 */

/* ============================================================
 *  Light Theme Tokens (覆盖 tokens.css 的 :root 深色定义)
 * ============================================================ */
html[data-theme="light"] {
    color-scheme: light;

    /* ===== Legacy global-r73.css 变量覆盖 (必须!很多 .m-card / .h-pill / store 套餐卡都在引用) ===== */
    --bg: #FAFAFC;
    --card-bg: #FFFFFF;
    --card-strong: #FFFFFF;
    --card-border: #E5E4EE;
    --text: #1C1B24;
    --sub: #5A5770;
    --sub-text: #5A5770;
    --text-dim: #9896A8;
    --border: rgba(109,74,255,0.14);

    /* ===== pt-* Proton 语义变量组 (global-r73 里, cc4g02-* 和 store 大量用) ===== */
    --pt-bg: #FAFAFC;
    --pt-card: #FFFFFF;
    --pt-card-strong: #FFFFFF;
    --pt-modal-bg: linear-gradient(180deg, #FFFFFF 0%, #FAFAFC 100%);
    --pt-text: #1C1B24;
    --pt-text-sub: #5A5770;
    --pt-text-mut: #9896A8;
    --pt-text-disabled: #CAC8D8;
    --pt-border: #E5E4EE;
    --pt-border-hover: rgba(109,74,255,0.28);
    --pt-border-focus: rgba(109,74,255,0.45);
    --pt-input: #F5F5F9;
    --pt-input-focus: rgba(109,74,255,0.10);
    --pt-success: #1EA74A;
    --pt-danger: #DA2921;
    --pt-warning: #D97B0C;
    --pt-purple-soft: rgba(109,74,255,0.08);
    --pt-purple-glow: rgba(109,74,255,0.16);
    --pt-purple-line: rgba(109,74,255,0.28);
    /* VIP 品牌色保持不变: --blue --green --purple --orange --red --gold (语义徽章) */

    /* ===== store 独立 :root 变量 (template_css.v15.js 里 <style>:root{} 注入) ===== */
    --border-color: #E5E4EE;
    --sub: #5A5770;
    --hg-proton: #6D4AFF;
    --hg-proton-deep: #5639E0;
    --hg-proton-soft: rgba(109,74,255,0.08);
    --hg-proton-glow: rgba(109,74,255,0.18);

    /* ===== carpool 独立 :root 变量 (carpool/template.js 里 <style>:root{} 注入) ===== */
    --cp-bg: #FAFAFC;
    --cp-surface: #FFFFFF;
    --cp-card: #FFFFFF;
    --cp-border: #E5E4EE;
    --cp-border-h: rgba(109,74,255,0.28);
    --cp-text: #1C1B24;
    --cp-text2: #5A5770;

    /* ===== profile / secure / common 变量 ===== */
    --card-surface: #FFFFFF;
    --page-bg: #FAFAFC;

    /* 核心背景层 */
    --bg-page:     #FAFAFC;      /* 页面最底 */
    --bg-surface:  #FFFFFF;      /* 卡片/面板 */
    --bg-elevated: #F5F5F9;      /* 次级卡片/嵌套 */
    --bg-hover:    #EFEEF7;      /* hover 状态 */
    --bg-input:    #F5F5F9;      /* 输入框底 */

    /* 边框 (深色用 rgba(255,255,255,...), 浅色用纯色更清晰) */
    --border-subtle: #ECEBF3;
    --border-default: #D9D7E4;
    --border-strong: #B6B2CE;
    --border-focus: var(--proton-purple-500);

    /* 文字 */
    --text-primary:   #1C1B24;
    --text-secondary: #5A5770;
    --text-tertiary:  #8A87A3;
    --text-onpurple:  #FFFFFF;

    /* 语义色 — 浅底下降低亮度避免刺眼 */
    --success: #1EA74A;
    --warning: #D97B0C;
    --danger:  #DA2921;
    --info:    var(--proton-purple-500);

    /* 阴影 — 浅底用紫色阴影而非黑 */
    --shadow-sm:      0 1px 2px rgba(28, 27, 36, .06);
    --shadow-md:      0 4px 12px rgba(109, 74, 255, .08);
    --shadow-lg:      0 8px 32px rgba(109, 74, 255, .12);
    --shadow-modal:   0 24px 64px rgba(28, 27, 36, .18);
    --shadow-glow-purple: 0 0 0 4px rgba(109, 74, 255, .18);
}

/* ============================================================
 *  Inline hardcoded-color override (!important 必要)
 *  按"最小覆盖"原则,只覆盖用户能看到的顶层区块
 * ============================================================ */

/* === 根级背景 === */
html[data-theme="light"],
html[data-theme="light"] body {
    background: var(--bg-page) !important;
    color: var(--text-primary) !important;
}

/* === Dashboard home-view === */
html[data-theme="light"] .home-view-container,
html[data-theme="light"] .pc-container {
    background: transparent !important;
    color: var(--text-primary) !important;
}

/* hg-page-loading & hg-loader (2 处启动 splash 都是硬编码 #000) */
html[data-theme="light"] #hg-page-loading,
html[data-theme="light"] #hg-loader {
    background: var(--bg-page) !important;
    color: var(--text-secondary) !important;
}

/* === Sidebar 侧栏 === */
html[data-theme="light"] .hg-sidebar,
html[data-theme="light"] #hg-sidebar {
    background: #EEEDF7 !important;        /* Proton Mail 侧栏的浅紫白 */
    color: var(--text-primary) !important;
    border-right: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .hg-sidebar-brand,
html[data-theme="light"] .hg-brand-title { color: var(--text-primary) !important; }
html[data-theme="light"] .hg-brand-sub,
html[data-theme="light"] .hg-group-title,
html[data-theme="light"] .hg-mobile-title { color: var(--text-secondary) !important; }
html[data-theme="light"] .hg-nav-item { color: var(--text-primary) !important; }
html[data-theme="light"] .hg-nav-item:hover { background: #E1DFF0 !important; color: var(--proton-purple-500) !important; }
html[data-theme="light"] .hg-nav-item.active {
    background: rgba(109, 74, 255, 0.10) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .hg-nav-group-header { color: var(--text-primary) !important; }
html[data-theme="light"] .hg-nav-group-header:hover { background: #E1DFF0 !important; }
html[data-theme="light"] .hg-chevron,
html[data-theme="light"] .hg-hamburger { color: var(--text-secondary) !important; }
html[data-theme="light"] .hg-logout-btn { color: var(--danger) !important; }
html[data-theme="light"] .hg-logout-btn:hover { background: rgba(218, 41, 33, 0.08) !important; }
html[data-theme="light"] .hg-sidebar-footer { border-top: 1px solid var(--border-subtle) !important; }
html[data-theme="light"] .hg-sf-btn {
    background: var(--bg-surface) !important; color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .hg-sf-btn.hg-sf-accent {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important; border: 0 !important;
}

/* Mobile header */
html[data-theme="light"] .hg-mobile-header {
    background: var(--bg-surface) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .hg-sidebar-overlay { background: rgba(28, 27, 36, 0.28) !important; }

/* === Cards / Panels (Dashboard / store / profile 常用) === */
html[data-theme="light"] .panel,
html[data-theme="light"] .m-card,
html[data-theme="light"] .mbh-card,
html[data-theme="light"] .mh-hero,
html[data-theme="light"] .node-item,
html[data-theme="light"] .access-security-panel,
html[data-theme="light"] #ui-online-devices-card,
html[data-theme="light"] .eco-card,
html[data-theme="light"] .user-vip-card,
html[data-theme="light"] .sub-core-v3,
html[data-theme="light"] .asp-endpoints,
html[data-theme="light"] .asp-tiers {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: var(--shadow-sm) !important;
}

/* 嵌套卡片内的暗紫 → 浅紫 */
html[data-theme="light"] .metric-strip,
html[data-theme="light"] .main-grid { background: transparent !important; }

/* 圆环(mbh/mh)的黑底内芯 */
html[data-theme="light"] .mh-ring-core,
html[data-theme="light"] .mbh-main,
html[data-theme="light"] .mh-strip { background: transparent !important; color: var(--text-primary) !important; }

/* 输入框 */
html[data-theme="light"] input[type="text"],
html[data-theme="light"] input[type="password"],
html[data-theme="light"] input[type="email"],
html[data-theme="light"] input[type="search"],
html[data-theme="light"] input[type="number"],
html[data-theme="light"] textarea,
html[data-theme="light"] select {
    background: var(--bg-input) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] input::placeholder,
html[data-theme="light"] textarea::placeholder { color: var(--text-tertiary) !important; }
html[data-theme="light"] input:focus,
html[data-theme="light"] textarea:focus {
    border-color: var(--border-focus) !important;
    box-shadow: var(--shadow-glow-purple) !important;
    outline: none !important;
}

/* === Buttons === */
html[data-theme="light"] .hg-btn-primary,
html[data-theme="light"] .mh-btn-primary,
html[data-theme="light"] .mbh-cta,
html[data-theme="light"] .sub-inactive-btn,
html[data-theme="light"] .btn-unlock {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important; border: 0 !important;
    box-shadow: 0 2px 10px rgba(109, 74, 255, 0.30) !important;
}
html[data-theme="light"] .hg-btn-ghost,
html[data-theme="light"] .mh-btn-secondary,
html[data-theme="light"] .ni-btn {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .hg-btn-danger {
    background: var(--danger) !important; color: #fff !important; border: 0 !important;
}
html[data-theme="light"] .ni-btn.accent {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important; border: 0 !important;
}

/* === Toast 深底即可,浅色不改 (Proton 亦如此) === */
html[data-theme="light"] #hg-toast-container .hg-toast {
    background: #1C1B24 !important;
    color: #F5F3FF !important;
    border: 1px solid rgba(109, 74, 255, 0.22) !important;
}

/* === Modal === */
html[data-theme="light"] .modal-overlay,
html[data-theme="light"] .hg-modal-overlay {
    background: rgba(28, 27, 36, 0.35) !important;
}
html[data-theme="light"] .modal-box,
html[data-theme="light"] .hg-modal-box,
html[data-theme="light"] .hg-modal-header,
html[data-theme="light"] .hg-modal-body,
html[data-theme="light"] .hg-modal-footer {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-subtle) !important;
}
html[data-theme="light"] .hg-modal-title { color: var(--text-primary) !important; }
html[data-theme="light"] .btn-close-modal { color: var(--text-secondary) !important; }

/* === 通用 text utility (硬编码白字 → 黑字) === */
html[data-theme="light"] .greeting-title,
html[data-theme="light"] .mh-greet,
html[data-theme="light"] .mbh-title,
html[data-theme="light"] .mbh-meta-val,
html[data-theme="light"] .sub-url-input {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .greeting-eyebrow,
html[data-theme="light"] .gea-meta,
html[data-theme="light"] .mh-id-label,
html[data-theme="light"] .mh-meta-k,
html[data-theme="light"] .mbh-eyebrow,
html[data-theme="light"] .mbh-meta-label,
html[data-theme="light"] .mbh-subtitle,
html[data-theme="light"] .panel-title,
html[data-theme="light"] .m-label,
html[data-theme="light"] .m-sub,
html[data-theme="light"] .sub-text,
html[data-theme="light"] .ni-desc,
html[data-theme="light"] .eco-desc {
    color: var(--text-secondary) !important;
}

/* === VIP / status badge 保留紫+绿+橙 不强制转紫 (用户要区分) === */
/* (不覆盖 .vip-badge / .ni-tag 等语义徽章) */

/* === Eco / feature cards === */
html[data-theme="light"] .eco-title-row { color: var(--text-primary) !important; }

/* === Phosphor icons: 默认色用 token === */
html[data-theme="light"] i[class*="ph-"] { /* 不强制改 icon 颜色, 让各自的 inline 覆盖 */ }

/* === 水平/垂直分割线 === */
html[data-theme="light"] hr,
html[data-theme="light"] .gea-sep,
html[data-theme="light"] .mh-strip-sep,
html[data-theme="light"] .mbh-sep {
    border-color: var(--border-subtle) !important;
    background: var(--border-subtle) !important;
}

/* === #sub-toggle modal (runtime 生成的 sub 管理 modal) === */
html[data-theme="light"] #hg-sub-toggle-modal > div {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}

/* ============================================================
 *  P1.5 深度覆盖 (2026-04-21 用户反馈"浅色模式看不清")
 *  处理: gradient/rgba 复合背景 + 内部嵌套暗块 + 渐变 overlay
 * ============================================================ */

/* === 会员卡 (.mbh-card) 及其内部渐变 overlay === */
html[data-theme="light"] .mbh-card {
    background: linear-gradient(180deg, #FFFFFF, #FAFAFC) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .mbh-grad-overlay {
    background: radial-gradient(ellipse at 30% 0%, rgba(109,74,255,0.08), transparent 60%) !important;
    opacity: 1 !important;
}
html[data-theme="light"] .mbh-ring-bg { stroke: #E5E4EE !important; }
html[data-theme="light"] .mbh-emblem,
html[data-theme="light"] .mh-ring-big,
html[data-theme="light"] .mh-ring-mid,
html[data-theme="light"] .mh-ring-dir { color: var(--text-primary) !important; }
html[data-theme="light"] .mbh-benefit-chip {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
    border: 1px solid rgba(109,74,255,0.18) !important;
}

/* === 手机 hero 条 + 背景 === */
html[data-theme="light"] .mh-hero {
    background: linear-gradient(180deg, #FFFFFF, #F5F5F9) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .mh-hero-bg,
html[data-theme="light"] .mh-scan { opacity: .25 !important; }
html[data-theme="light"] .mh-id-label { color: var(--text-secondary) !important; }
html[data-theme="light"] .mh-ring-bg  { stroke: #E5E4EE !important; }
html[data-theme="light"] .mh-meta-item,
html[data-theme="light"] .mh-strip,
html[data-theme="light"] .mh-strip-item {
    background: rgba(109,74,255,0.04) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .mh-strip-v { color: var(--text-primary) !important; }
html[data-theme="light"] .mh-strip-v-danger { color: var(--danger) !important; }

/* === dash-header + header-right 余额佣金 === */
html[data-theme="light"] .dash-header,
html[data-theme="light"] .greeting-area,
html[data-theme="light"] .header-right { background: transparent !important; }
html[data-theme="light"] .h-pill {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .h-pill .pill-val { color: var(--text-primary) !important; }
html[data-theme="light"] .h-pill .pill-label { color: var(--text-secondary) !important; }
html[data-theme="light"] .h-btn {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .h-btn.primary {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important; border: 0 !important;
}
html[data-theme="light"] .greeting-sub { color: var(--text-secondary) !important; }
html[data-theme="light"] .user-vip-card {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .uvc-title { color: var(--text-primary) !important; }
html[data-theme="light"] .uvc-sub { color: var(--text-secondary) !important; }

/* === Metric strip 指标卡 (覆盖 gradient / rgba 条) === */
html[data-theme="light"] .m-card {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .m-card .m-val,
html[data-theme="light"] .m-card #ui-traffic-val { color: var(--text-primary) !important; }
html[data-theme="light"] .m-card .m-val span { color: var(--text-secondary) !important; }
html[data-theme="light"] .m-bar-bg { background: #E9E7F5 !important; }
html[data-theme="light"] .m-status { background: rgba(109,74,255,0.08) !important; color: var(--proton-purple-500) !important; }

/* === 主体订阅主区 (.sub-core-v3 / #ui-sub-main / 状态栏 / active / inactive) === */
html[data-theme="light"] .sub-core-v3,
html[data-theme="light"] #ui-sub-main,
html[data-theme="light"] #ui-sub-active-panel,
html[data-theme="light"] #ui-sub-inactive-panel {
    background: transparent !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .sub-state-bar {
    background: rgba(109,74,255,0.06) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .sub-state-txt,
html[data-theme="light"] .sub-state-txt b { color: var(--text-primary) !important; }
html[data-theme="light"] .sub-state-btn {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .sub-state-btn:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .sub-input-wrap {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .sub-url-input {
    background: transparent !important;
    color: var(--text-primary) !important;
    border: 0 !important;
}
html[data-theme="light"] .sub-btn {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .sub-btn:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .sub-meta-grid .sub-meta {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .sub-meta-lbl { color: var(--text-secondary) !important; }
html[data-theme="light"] .sub-meta-val { color: var(--text-primary) !important; }
html[data-theme="light"] .sub-inactive-card {
    background: linear-gradient(180deg, #FFFFFF, #F5F5F9) !important;
    border: 1px dashed var(--border-default) !important;
}
html[data-theme="light"] .sub-inactive-title { color: var(--text-primary) !important; }
html[data-theme="light"] .sub-inactive-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .sub-inactive-icon { color: var(--proton-purple-500) !important; }

/* === 锁屏覆盖层 === */
html[data-theme="light"] .sub-lock {
    background: linear-gradient(180deg, #FFFFFF, #F7F6FE) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .sub-lock .lock-title { color: var(--text-primary) !important; }
html[data-theme="light"] .sub-lock .lock-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .sub-lock .lock-icon { color: var(--proton-purple-500) !important; }
html[data-theme="light"] .lock-perks .lock-perk { color: var(--text-secondary) !important; }

/* === 节点 / 订阅矩阵 === */
html[data-theme="light"] #api-nodes-container { background: transparent !important; }
html[data-theme="light"] .node-item {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .node-item.locked { background: var(--bg-elevated) !important; }
html[data-theme="light"] .ni-title { color: var(--text-primary) !important; }
html[data-theme="light"] .ni-desc  { color: var(--text-secondary) !important; }
html[data-theme="light"] .locked-overlay {
    background: rgba(250,250,252,0.85) !important;
    backdrop-filter: blur(2px);
}

/* === 接入安全 / endpoint === */
html[data-theme="light"] .access-security-panel {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .asp-title { color: var(--text-primary) !important; }
html[data-theme="light"] .asp-ep {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .ep-name { color: var(--text-primary) !important; }
html[data-theme="light"] .ep-status { color: var(--success) !important; }
html[data-theme="light"] .asp-domain-title { color: var(--text-primary) !important; }
html[data-theme="light"] .asp-domain-desc  { color: var(--text-secondary) !important; }
html[data-theme="light"] .asp-tier-line { background: var(--border-default) !important; }

/* === 客户端下载 dl-list === */
html[data-theme="light"] .dl-list .dl-item {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .dl-list .dl-item:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .dl-item .dl-left { color: var(--text-primary) !important; }

/* === 客户端徽章 tools-wrap === */
html[data-theme="light"] .tools-wrap .t-badge {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}

/* === 在线设备 ui-online-devices-card === */
html[data-theme="light"] #ui-online-devices-card {
    background: rgba(109,74,255,0.04) !important;
    border: 1px solid rgba(109,74,255,0.18) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] #ui-online-devices-card a { color: var(--proton-purple-500) !important; }
html[data-theme="light"] #ui-online-devices-list > div {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}

/* === eco 增值生态 === */
html[data-theme="light"] .eco-card {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .eco-card:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--proton-purple-500) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .eco-name { color: var(--text-primary) !important; }
html[data-theme="light"] .eco-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .eco-title-row,
html[data-theme="light"] .eco-title-row i { color: var(--text-primary) !important; }

/* === 流量狂欢 banner (保留深色强调,但稍调和) === */
html[data-theme="light"] .traffic-carnival-entry {
    background: linear-gradient(135deg, #2B1E5C, #1C1742) !important;
    border: 1px solid rgba(109,74,255,0.35) !important;
    color: #F5F3FF !important;
    box-shadow: 0 8px 24px rgba(109,74,255,0.18) !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-title,
html[data-theme="light"] .traffic-carnival-entry .tce-sub,
html[data-theme="light"] .traffic-carnival-entry .tce-sub b { color: #F5F3FF !important; }

/* === sub-panel (cc4g02-1 模块) === */
html[data-theme="light"] [id^="cc-sp-"],
html[data-theme="light"] .cc-sp-url-card,
html[data-theme="light"] .cc-sp-chip {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-default) !important;
}
html[data-theme="light"] .cc-sp-url-title { color: var(--text-primary) !important; }
html[data-theme="light"] .cc-sp-url-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .cc-sp-url-input {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .cc-sp-url-btn {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .cc-sp-coll-head {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}

/* === 兜底: 全站常见深色 hex 作为 background (所有 views 都用) === */
html[data-theme="light"] [style*="background:#14121E"],
html[data-theme="light"] [style*="background: #14121E"],
html[data-theme="light"] [style*="background:#0B0B14"],
html[data-theme="light"] [style*="background: #0B0B14"],
html[data-theme="light"] [style*="background:#0B0B13"],
html[data-theme="light"] [style*="background: #0B0B13"],
html[data-theme="light"] [style*="background:#1C1A28"],
html[data-theme="light"] [style*="background: #1C1A28"],
html[data-theme="light"] [style*="background:#121214"],
html[data-theme="light"] [style*="background: #121214"],
html[data-theme="light"] [style*="background:#16161A"],
html[data-theme="light"] [style*="background: #16161A"],
html[data-theme="light"] [style*="background:#1D1D1F"],
html[data-theme="light"] [style*="background: #1D1D1F"],
html[data-theme="light"] [style*="background:#111"],
html[data-theme="light"] [style*="background: #111"],
html[data-theme="light"] [style*="background:#000"],
html[data-theme="light"] [style*="background: #000"],
html[data-theme="light"] [style*="background:#0F0D1A"],
html[data-theme="light"] [style*="background: #0F0D1A"],
html[data-theme="light"] [style*="background:#16141F"],
html[data-theme="light"] [style*="background: #16141F"],
html[data-theme="light"] [style*="background:#191725"],
html[data-theme="light"] [style*="background: #191725"],
html[data-theme="light"] [style*="background:#25223A"],
html[data-theme="light"] [style*="background: #25223A"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.2)"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.3)"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.4)"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.5)"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.6)"],
html[data-theme="light"] [style*="background:rgba(0,0,0,0.85)"],
html[data-theme="light"] [style*="background:rgba(20,20,24"],
html[data-theme="light"] [style*="background: rgba(20,20,24"],
html[data-theme="light"] [style*="background:rgba(18,18,20"],
html[data-theme="light"] [style*="background: rgba(18,18,20"],
html[data-theme="light"] [style*="background:rgba(22,22,30"],
html[data-theme="light"] [style*="background: rgba(22,22,30"],
html[data-theme="light"] [style*="background:rgba(26,22,48"],
html[data-theme="light"] [style*="background: rgba(26,22,48"] {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-default) !important;
}

/* === 深色 linear-gradient 作 page container 兜底 (最常见起始色) === */
html[data-theme="light"] [style*="linear-gradient(135deg,#0B"],
html[data-theme="light"] [style*="linear-gradient(135deg, #0B"],
html[data-theme="light"] [style*="linear-gradient(180deg,#0B"],
html[data-theme="light"] [style*="linear-gradient(180deg, #0B"],
html[data-theme="light"] [style*="linear-gradient(180deg,#14"],
html[data-theme="light"] [style*="linear-gradient(180deg, #14"],
html[data-theme="light"] [style*="linear-gradient(135deg,#14"],
html[data-theme="light"] [style*="linear-gradient(135deg, #14"],
html[data-theme="light"] [style*="linear-gradient(180deg,#12"],
html[data-theme="light"] [style*="linear-gradient(180deg, #12"],
html[data-theme="light"] [style*="linear-gradient(180deg,#1C"],
html[data-theme="light"] [style*="linear-gradient(180deg, #1C"],
html[data-theme="light"] [style*="linear-gradient(135deg,#1C"],
html[data-theme="light"] [style*="linear-gradient(135deg, #1C"],
html[data-theme="light"] [style*="linear-gradient(180deg,#16"],
html[data-theme="light"] [style*="linear-gradient(180deg, #16"],
html[data-theme="light"] [style*="linear-gradient(135deg,#16"],
html[data-theme="light"] [style*="linear-gradient(135deg, #16"],
html[data-theme="light"] [style*="linear-gradient(180deg,#1D"],
html[data-theme="light"] [style*="linear-gradient(180deg, #1D"],
html[data-theme="light"] [style*="linear-gradient(135deg,rgba(26,22,48"],
html[data-theme="light"] [style*="linear-gradient(180deg,rgba(26,22,48"],
html[data-theme="light"] [style*="linear-gradient(180deg, rgba(26,22,48"] {
    background: linear-gradient(180deg, #FFFFFF 0%, #FAFAFC 100%) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-default) !important;
}

/* === 补齐 rgba 白 0.05/0.15/0.2/0.25 兜底 === */
html[data-theme="light"] [style*="rgba(255,255,255,0.05)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.05)"],
html[data-theme="light"] [style*="rgba(255,255,255,.05)"] {
    background-color: rgba(109,74,255,0.05) !important;
    border-color: rgba(109,74,255,0.16) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.15)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.15)"],
html[data-theme="light"] [style*="rgba(255,255,255,.15)"] {
    background-color: rgba(109,74,255,0.12) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.2)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.2)"],
html[data-theme="light"] [style*="rgba(255,255,255,.2)"] {
    background-color: rgba(109,74,255,0.15) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.25)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.25)"],
html[data-theme="light"] [style*="rgba(255,255,255,.25)"] {
    background-color: rgba(109,74,255,0.18) !important;
}

/* === 常见深色 hex 作为 color (文字) 在浅底对比弱 → text-primary === */
html[data-theme="light"] [style*="color:#fff"],
html[data-theme="light"] [style*="color: #fff"],
html[data-theme="light"] [style*="color:#FFF"],
html[data-theme="light"] [style*="color:#FFFFFF"],
html[data-theme="light"] [style*="color: #FFFFFF"],
html[data-theme="light"] [style*="color:#F5F3FF"],
html[data-theme="light"] [style*="color: #F5F3FF"],
html[data-theme="light"] [style*="color:#F5F5F7"],
html[data-theme="light"] [style*="color: #F5F5F7"],
html[data-theme="light"] [style*="color:#FDFCFF"],
html[data-theme="light"] [style*="color: #FDFCFF"],
html[data-theme="light"] [style*="color:#E5DCFF"],
html[data-theme="light"] [style*="color: #E5DCFF"],
html[data-theme="light"] [style*="color:#D2D2D7"],
html[data-theme="light"] [style*="color: #D2D2D7"],
html[data-theme="light"] [style*="color:#D1D1D6"],
html[data-theme="light"] [style*="color: #D1D1D6"],
html[data-theme="light"] [style*="color:#F3D27E"],
html[data-theme="light"] [style*="color: #F3D27E"] {
    color: var(--text-primary) !important;
}

/* === 灰字硬编码 (浅底对比不够) → text-secondary === */
html[data-theme="light"] [style*="color:#86868b"],
html[data-theme="light"] [style*="color:#86868B"],
html[data-theme="light"] [style*="color: #86868B"],
html[data-theme="light"] [style*="color:#6c7a93"],
html[data-theme="light"] [style*="color: #6c7a93"],
html[data-theme="light"] [style*="color:#6e6e73"],
html[data-theme="light"] [style*="color: #6e6e73"],
html[data-theme="light"] [style*="color:#B0B0BD"],
html[data-theme="light"] [style*="color: #B0B0BD"] {
    color: var(--text-secondary) !important;
}

/* === 边框深色 hex 兜底 === */
html[data-theme="light"] [style*="border:1px solid rgba(255,255,255,0.0"],
html[data-theme="light"] [style*="border:1px solid rgba(255,255,255,.0"],
html[data-theme="light"] [style*="border:1px solid rgba(255,255,255,0.1)"],
html[data-theme="light"] [style*="border:1px solid rgba(255,255,255,0.12)"] {
    border-color: var(--border-default) !important;
}

/* ============================================================
 *  P2.1 Store / Carpool / VIP-perk class-level 覆盖
 *  这些是 CSS 规则 (非 inline), attribute selector 抓不到
 * ============================================================ */

/* === Store 套餐卡 + 功能卡 === */
html[data-theme="light"] .plan-card,
html[data-theme="light"] .pkg-card,
html[data-theme="light"] .feat-card,
html[data-theme="light"] .fe-feature-card,
html[data-theme="light"] .fe-plan-card,
html[data-theme="light"] .app-card,
html[data-theme="light"] .super-card,
html[data-theme="light"] .pricing-card {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .plan-card:hover,
html[data-theme="light"] .feat-card:hover {
    border-color: var(--proton-purple-500) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .plan-card *:not(.plan-badge):not(.plan-tag):not(i[class*="ph-"]),
html[data-theme="light"] .feat-card *:not(i[class*="ph-"]) { color: inherit; }
html[data-theme="light"] .plan-price,
html[data-theme="light"] .plan-name,
html[data-theme="light"] .feat-title { color: var(--text-primary) !important; }
html[data-theme="light"] .plan-desc,
html[data-theme="light"] .feat-desc,
html[data-theme="light"] .plan-features li { color: var(--text-secondary) !important; }

/* === Store 顶部 quick-act 按钮 === */
html[data-theme="light"] .quick-act-btn,
html[data-theme="light"] [class*="quick-act"]:not(i) {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .quick-act-btn:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--proton-purple-500) !important;
    color: var(--proton-purple-500) !important;
}

/* === Store marquee 应用轮播 === */
html[data-theme="light"] .marquee-app,
html[data-theme="light"] .marquee-item,
html[data-theme="light"] .marquee-track .app,
html[data-theme="light"] .app-marquee-item {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}

/* === Store 大 CTA / 授权超市 banner === */
html[data-theme="light"] [class*="gateway"],
html[data-theme="light"] [class*="cta-banner"],
html[data-theme="light"] [class*="bottom-banner"] {
    background: linear-gradient(135deg, #FFFFFF, #F5F5F9) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}

/* === Carpool 服务卡片 + drawer + chat === */
html[data-theme="light"] .drawer-panel {
    background: #FFFFFF !important;
    border-left: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .drawer-overlay {
    background: rgba(28,27,36,0.35) !important;
}
html[data-theme="light"] .chat-container,
html[data-theme="light"] .chat-input-box,
html[data-theme="light"] .msg-bubble,
html[data-theme="light"] .cp-user-card,
html[data-theme="light"] .cp-form,
html[data-theme="light"] .cp-search-box {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .cp-tab,
html[data-theme="light"] .cp-tabs,
html[data-theme="light"] .dp-nav,
html[data-theme="light"] .cp-filter-tag {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .cp-tab.active,
html[data-theme="light"] .dp-nav-btn.active,
html[data-theme="light"] .cp-filter-tag.active {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .cf-textarea,
html[data-theme="light"] .sv-val {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .btn-submit,
html[data-theme="light"] .sc-btn-buy {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    border: 0 !important;
}
html[data-theme="light"] .dp-close {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .tag,
html[data-theme="light"] .lbl-user,
html[data-theme="light"] .lbl-official {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .sc-prog-bar {
    background: rgba(109,74,255,0.08) !important;
}

/* === profile 安全中心 + 其他独立页的 container === */
html[data-theme="light"] [class*="secure-card"],
html[data-theme="light"] [class*="account-card"],
html[data-theme="light"] [class*="profile-card"],
html[data-theme="light"] [class*="pfx-"],
html[data-theme="light"] [id*="profile-"],
html[data-theme="light"] [id*="secure-"] {
    background: var(--bg-surface) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}

/* === VIP 徽章 tag 不动 (语义色) === */
/* .plan-badge / .plan-tag / .vip-badge / .hg-badge-* 保留原状 */

/* ============================================================
 *  P2.2 Sidebar nav-item 文字兜底
 *  触发: 用户反馈 "节点列表" 字样部分字符不可见
 *  原因: 某些浏览器扩展 (翻译/广告屏蔽/安全扩展) 识别"节点"关键词
 *        注入 CSS 改色或 visibility 隐藏个别字符
 *  修复: 给 nav-item > span 加高特异性 !important 强制可见
 *  同时: 强制字体 stack 排除 emoji font fallback
 *  注: 以下规则不在 html[data-theme=light] 作用域, 两种模式都生效
 * ============================================================ */
.hg-sidebar .hg-nav-item > span,
.hg-sidebar .hg-nav-item > span * {
    color: rgba(255, 255, 255, 0.85) !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: inline !important;
    font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "SF Pro Text", "Helvetica Neue", Arial, sans-serif !important;
}
.hg-sidebar .hg-nav-item.active > span {
    color: #FFFFFF !important;
}
html[data-theme="light"] .hg-sidebar .hg-nav-item > span,
html[data-theme="light"] .hg-sidebar .hg-nav-item > span * {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .hg-sidebar .hg-nav-item.active > span {
    color: var(--proton-purple-500) !important;
}

/* ============================================================
 *  Round 1a — Page-scoped 精修: /dashboard + /store
 *  2026-04-22
 * ============================================================ */

/* ================================================
 * Page: /dashboard
 *  - home/style.js 里关键 class 的浅色专属重写
 *  - 不走全局 attribute selector, 更精准对比
 * ================================================ */
html[data-theme="light"] .home-view-container .m-card,
html[data-theme="light"] .home-view-container .panel {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .home-view-container .panel-title {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .home-view-container .panel-title .pt-action {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .home-view-container .panel-title .pt-action:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .home-view-container .h-pill:hover {
    background: var(--bg-elevated) !important;
    border-color: var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .h-btn:hover {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .home-view-container .m-card .m-bar-bg {
    background: #ECEBF3 !important;
}
html[data-theme="light"] .home-view-container .sub-input-wrap {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .sub-btn {
    background: rgba(109,74,255,0.05) !important;
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .home-view-container .sub-btn:hover {
    background: rgba(109,74,255,0.12) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .home-view-container .t-badge {
    background: rgba(109,74,255,0.04) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .home-view-container .t-badge:hover {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.22) !important;
}
html[data-theme="light"] .home-view-container .node-item {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .node-item:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .home-view-container .ni-btn {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .ni-btn:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .home-view-container .ni-btn.accent {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    border: 0 !important;
}
html[data-theme="light"] .home-view-container .node-item.locked::before {
    background: rgba(250,250,252,0.85) !important;
}
html[data-theme="light"] .home-view-container .btn-unlock {
    background: linear-gradient(135deg, #D4AF37, #B8941E) !important;
    color: #1a1200 !important;
    border: 0 !important;
    box-shadow: 0 4px 12px rgba(212,175,55,0.28) !important;
}
/* sub-lock rgba(8,8,10,0.92) 未被全局兜底覆盖 */
html[data-theme="light"] .home-view-container .sub-lock {
    background: linear-gradient(180deg, rgba(255,255,255,0.96), rgba(250,250,252,0.92)) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .access-security-panel {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .asp-ep:hover {
    background: var(--bg-elevated) !important;
}
html[data-theme="light"] .home-view-container .asp-tier-line {
    background: var(--border-default) !important;
}
html[data-theme="light"] .home-view-container .domain-strip {
    background: linear-gradient(135deg, rgba(212,175,55,0.06), rgba(212,175,55,0.02)) !important;
    border: 1px solid rgba(212,175,55,0.22) !important;
}
html[data-theme="light"] .home-view-container .ds-icon {
    background: rgba(212,175,55,0.10) !important;
}
html[data-theme="light"] .home-view-container .eco-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
/* Modal overlay + modal-box 明确覆盖 */
html[data-theme="light"] .modal-overlay {
    background: rgba(28,27,36,0.45) !important;
    backdrop-filter: blur(10px);
}
html[data-theme="light"] .modal-box {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-lg) !important;
}
html[data-theme="light"] .btn-close-modal:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
}

/* VIP 徽章 v0 深底在浅底下调 */
html[data-theme="light"] .vip-badge.v0 {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
}

/* ================================================
 * Page: /store
 *  - template_css.v15 + template_css_redesign.v10 里的硬编码深色
 * ================================================ */
/* VIP 新卡 #0D0D0F */
html[data-theme="light"] .vip-card-new {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .vc-n-subtitle {
    color: var(--text-secondary) !important;
}

/* 套餐预览卡 .bb-pv-card rgba(18,18,22,0.95) */
html[data-theme="light"] .bb-pv-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .bb-pv-card:hover {
    border-color: rgba(109,74,255,0.30) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .bb-pv-region {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .bb-pv-bw,
html[data-theme="light"] .bb-pv-price span,
html[data-theme="light"] .bb-pv-lock span {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .bb-pv-lock {
    background: var(--bg-elevated) !important;
    border: 1px dashed rgba(255,159,10,0.35) !important;
}
html[data-theme="light"] .bb-pv-lock:hover {
    border-color: rgba(255,159,10,0.55) !important;
}

/* 流量狂欢 banner 保留深紫强调 (这是 CTA 视觉锚点,保留) */
html[data-theme="light"] .traffic-carnival-entry .tce-arrow {
    background: rgba(255,255,255,0.25) !important;
    color: #fff !important;
}
html[data-theme="light"] .traffic-carnival-entry:hover .tce-arrow {
    background: rgba(255,255,255,0.45) !important;
}

/* 余额 box */
html[data-theme="light"] .balance-box {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}

/* 充值按钮 橙色保留(金融 CTA) */
/* .btn-recharge 保持 --vip1 橙色 */

/* 应用 marquee 应用条 */
html[data-theme="light"] .apps-marquee-title {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .apps-marquee-wrapper {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .app-badge {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}

/* 功能卡 feat-card 彻底覆盖 */
html[data-theme="light"] .feat-card {
    background: linear-gradient(145deg, #FFFFFF, #FAFAFC) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .feat-card:hover {
    background: linear-gradient(145deg, #FFFFFF, #F5F5F9) !important;
    border-color: rgba(109,74,255,0.28) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .feat-title {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .feat-desc {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .feat-action-btn {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .feat-card:hover .feat-action-btn {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    border: 0 !important;
}
html[data-theme="light"] .feat-mobile-arrow {
    color: var(--text-tertiary) !important;
}

/* 套餐 tabs / 周期切换 */
html[data-theme="light"] .tabs,
html[data-theme="light"] .vp-tabs,
html[data-theme="light"] .pc-cycle-tabs {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .tabs .active,
html[data-theme="light"] .vp-btn.active,
html[data-theme="light"] .pc-cycle-btn.active {
    background: #FFFFFF !important;
    color: var(--proton-purple-500) !important;
    box-shadow: 0 2px 8px rgba(109,74,255,0.14) !important;
}
html[data-theme="light"] .vp-label {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .vp-btn:hover,
html[data-theme="light"] .pc-cycle-btn:hover {
    background: rgba(109,74,255,0.08) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .v0 {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
}

/* Checkout 结账 modal: .apple-split-box 左白右黑 → 都改浅色 */
html[data-theme="light"] .apple-split-box {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .split-left {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .split-right {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border-left: 1px solid var(--border-subtle) !important;
}

/* state-bargain / state-carnival 红 + 粉橙渐变 — 作为促销强调保留 (视觉锚点) */

/* locked 套餐 class */
html[data-theme="light"] .locked {
    background: transparent !important;
    color: var(--text-tertiary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .unlocked {
    background: rgba(30,167,74,0.10) !important;
    color: #1EA74A !important;
    border: 1px solid rgba(30,167,74,0.28) !important;
}

/* ============================================================
 * Round 1a P2 — store 高特异性 override (胜过 v13 的 0,4,3)
 * 用户反馈: 黑底卡仍在, 要求全浅不留深色
 * ============================================================ */

/* feat-card 6 个功能卡 (Emby/AppleID/ISP/专线/流媒体/充值) */
html[data-theme="light"] body .store-container > .features-grid > .feat-card,
html[data-theme="light"] #cc-extras-wrap > .cc-extras-body > .features-grid > .feat-card,
html[data-theme="light"] .store-container .feat-card,
html[data-theme="light"] .feat-card {
    background: linear-gradient(145deg, #FFFFFF 0%, #FAFAFC 100%) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] body .store-container .feat-card:hover,
html[data-theme="light"] .store-container .feat-card:hover,
html[data-theme="light"] .feat-card:hover {
    background: linear-gradient(145deg, #FFFFFF 0%, #F5F5F9 100%) !important;
    border-color: rgba(109,74,255,0.30) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .store-container .feat-card .feat-title,
html[data-theme="light"] .feat-card .feat-title { color: var(--text-primary) !important; }
html[data-theme="light"] .store-container .feat-card .feat-desc,
html[data-theme="light"] .feat-card .feat-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .store-container .feat-card .feat-icon-box,
html[data-theme="light"] .feat-card .feat-icon-box {
    background: rgba(109,74,255,0.08) !important;
    border: 1px solid rgba(109,74,255,0.18) !important;
}
html[data-theme="light"] .store-container .feat-card .feat-mobile-arrow,
html[data-theme="light"] .feat-card .feat-mobile-arrow { color: var(--text-tertiary) !important; }

/* quick-action-group 顶部 3 按钮 (高特异性) */
html[data-theme="light"] html body .store-container .apps-marquee-container > .quick-action-group,
html[data-theme="light"] .store-container .apps-marquee-container .quick-action-group,
html[data-theme="light"] .quick-action-group {
    background: transparent !important;
}
html[data-theme="light"] .store-container .quick-action-group > *,
html[data-theme="light"] .quick-action-group > a,
html[data-theme="light"] .quick-action-group > button,
html[data-theme="light"] .quick-action-group > div {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .store-container .quick-action-group > *:hover,
html[data-theme="light"] .quick-action-group > *:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
}

/* apps-marquee 容器 + 内部 app-badge */
html[data-theme="light"] .store-container .apps-marquee-container,
html[data-theme="light"] .apps-marquee-container {
    background: transparent !important;
}
html[data-theme="light"] .store-container .apps-marquee-container .apps-marquee-wrapper,
html[data-theme="light"] .apps-marquee-wrapper {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .store-container .apps-marquee-container .apps-marquee-wrapper .apps-marquee-content .app-badge,
html[data-theme="light"] .apps-marquee-content .app-badge,
html[data-theme="light"] .app-badge {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .app-badge-sub,
html[data-theme="light"] .apps-marquee-content .app-badge .app-badge-sub {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .apps-marquee-title { color: var(--text-secondary) !important; }

/* 顶部流量狂欢 banner (用户要求改浅) */
html[data-theme="light"] .traffic-carnival-entry,
html[data-theme="light"] .traffic-carnival-pinned {
    background: linear-gradient(135deg, #FFFFFF 0%, #F5F5F9 100%) !important;
    color: var(--text-primary) !important;
    border: 1px solid rgba(109,74,255,0.24) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .traffic-carnival-entry:hover {
    border-color: rgba(109,74,255,0.42) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-icon {
    color: var(--proton-purple-500) !important;
    filter: drop-shadow(0 2px 6px rgba(109,74,255,0.18)) !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-title {
    color: var(--text-primary) !important;
    text-shadow: none !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-sub {
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-sub b {
    color: var(--proton-purple-600) !important;
    text-shadow: none !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-arrow {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .traffic-carnival-entry:hover .tce-arrow {
    background: rgba(109,74,255,0.18) !important;
}

/* HGFAST-Pro 顶部标识条 (图里是深紫底) */
html[data-theme="light"] .store-container .store-header,
html[data-theme="light"] .store-container [class*="hgfast-pro"],
html[data-theme="light"] .store-container .pro-badge-bar {
    background: linear-gradient(135deg, #F5F3FF 0%, #EEEAFF 100%) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}

/* features-grid 外层 wrap */
html[data-theme="light"] .store-container > .features-grid,
html[data-theme="light"] .features-grid { background: transparent !important; }

/* ============================================================
 * 确保 /dashboard 顶部的同款 traffic-carnival 也用浅色
 * (用户在 dashboard 也能看到,保持两页一致)
 * ============================================================ */
html[data-theme="light"] .home-view-container .traffic-carnival-entry {
    background: linear-gradient(135deg, #FFFFFF 0%, #F5F5F9 100%) !important;
    color: var(--text-primary) !important;
    border: 1px solid rgba(109,74,255,0.24) !important;
}
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-title,
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-sub {
    color: var(--text-primary) !important;
    text-shadow: none !important;
}
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-sub b {
    color: var(--proton-purple-600) !important;
}

/* ============================================================
 * Round 1a P3 — 侧栏 nav-item "节点列表" 文字最终加固
 * (之前写过一版 rgba(255,255,255,0.85) + visibility:visible)
 * 补: 针对 #text 节点的 inline-block 强制重绘
 * ============================================================ */
.hg-sidebar .hg-nav-item > span,
.hg-sidebar .hg-nav-item > span > *,
.hg-sidebar .hg-nav-item > span::before,
.hg-sidebar .hg-nav-item > span::after {
    color: inherit;
}
.hg-sidebar .hg-nav-item {
    color: rgba(255,255,255,0.85) !important;
}
html[data-theme="light"] .hg-sidebar .hg-nav-item {
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 1b — Page: /node (节点列表)
 * ============================================================ */
html[data-theme="light"] .nd-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .nd-icon-box {
    background: linear-gradient(135deg, #32D74B, var(--proton-purple-500)) !important;
    color: #fff !important;
    border: 1px solid rgba(109,74,255,0.18) !important;
}
html[data-theme="light"] .hud-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .hud-label { color: var(--text-secondary) !important; }
html[data-theme="light"] .map-container {
    background: linear-gradient(180deg, #F5F3FF 0%, #FAFAFC 100%) !important;
    border: 1px solid rgba(109,74,255,0.22) !important;
    box-shadow: inset 0 0 60px rgba(109,74,255,0.06), var(--shadow-sm) !important;
}
html[data-theme="light"] .filter-btn {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .filter-btn.active {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.30) !important;
}
html[data-theme="light"] .filter-btn:hover:not(.active) {
    color: var(--proton-purple-500) !important;
    background: rgba(109,74,255,0.05) !important;
}
html[data-theme="light"] .node-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .node-card:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.30) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .nc-name { color: var(--text-primary) !important; }

/* ============================================================
 *  Round 2 — Page: /emby (影视解锁)
 *  emby 有独立 --em-* 变量组, 一次覆盖几乎全部
 * ============================================================ */
html[data-theme="light"] {
    --em-bg: #FAFAFC;
    --em-card: #FFFFFF;
    --em-card-hover: var(--bg-elevated);
    --em-border: var(--border-default);
    --em-blue: #0A84FF;       /* 品牌色保留 */
    --em-purple: var(--proton-purple-500);
    --em-green: #1EA74A;
    --em-red: #DA2921;
    --em-orange: #D97B0C;
    --em-tg: #1E90D0;
    --text-sub: var(--text-secondary);  /* emby 用这个别名 */
}
html[data-theme="light"] .lock-title,
html[data-theme="light"] .em-section-title {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .em-intro-card,
html[data-theme="light"] .step-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .em-intro-card p,
html[data-theme="light"] .step-list li {
    color: var(--text-primary) !important;
}
html[data-theme="light"] .em-warning-box {
    background: rgba(217,123,12,0.08) !important;
    border-left: 4px solid var(--em-orange) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .em-warning-text { color: var(--text-primary) !important; }
html[data-theme="light"] .step-list li .bullet {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .em-title-icon {
    background: linear-gradient(135deg, var(--proton-purple-500), #0A84FF) !important;
    color: #fff !important;
    box-shadow: 0 6px 20px rgba(109,74,255,0.22) !important;
}
html[data-theme="light"] .btn-unlock {
    background: linear-gradient(135deg, var(--em-red), #B01E18) !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(218,41,33,0.28) !important;
}
html[data-theme="light"] .app-dl-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .app-dl-card:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .tg-btn {
    background: var(--em-tg) !important;
    color: #fff !important;
}

/* ============================================================
 *  Round 2 — Page: /apps (应用下载)
 * ============================================================ */
html[data-theme="light"] .ax-hero p { color: var(--text-secondary) !important; }
html[data-theme="light"] .ax-ha-primary {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .ax-ha-sec {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .ax-ha-sec:hover {
    background: var(--bg-elevated) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .ax-cat {
    color: var(--text-secondary) !important;
    background: transparent !important;
}
html[data-theme="light"] .ax-cat:hover {
    background: rgba(109,74,255,0.05) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .ax-cat.on {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.28) !important;
    box-shadow: 0 2px 8px rgba(109,74,255,0.10) !important;
}
html[data-theme="light"] .ax-search input {
    background: var(--bg-elevated) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
}
html[data-theme="light"] .ax-search input:focus {
    border-color: rgba(109,74,255,0.45) !important;
    box-shadow: 0 0 0 3px rgba(109,74,255,0.12) !important;
    background: #FFFFFF !important;
}
html[data-theme="light"] .ax-search input::placeholder { color: var(--text-tertiary) !important; }
html[data-theme="light"] .ax-card {
    background: #FFFFFF !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .ax-card:hover {
    background: #FFFFFF !important;
    border-color: rgba(109,74,255,0.28) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .ax-card.rec {
    background: linear-gradient(160deg, rgba(109,74,255,0.05), #FFFFFF) !important;
    border-color: rgba(109,74,255,0.25) !important;
}
html[data-theme="light"] .ax-rec {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
}
html[data-theme="light"] .pl-ios {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .pl-and {
    background: rgba(30,167,74,0.08) !important;
    color: #1EA74A !important;
}

/* ============================================================
 *  Round 2 — Page: /appleid (苹果 ID)
 *  view 规模小 + 主要结构已被全局兜底覆盖
 *  这里加 scope 兜底 + 几个 class 强覆盖
 * ============================================================ */
html[data-theme="light"] [class*="appleid"],
html[data-theme="light"] [class*="apple-id"],
html[data-theme="light"] [class*="aid-"] {
    color: var(--text-primary);
}
html[data-theme="light"] .aid-card,
html[data-theme="light"] [class*="appleid-card"],
html[data-theme="light"] [class*="apple-id-box"] {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}

/* ============================================================
 *  Round 3 — Page: /ai
 * ============================================================ */
html[data-theme="light"] .ai-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 50% 0%, rgba(109,74,255,0.06) 0%, transparent 50%),
        radial-gradient(circle at 50% 100%, rgba(176,38,255,0.04) 0%, transparent 50%) !important;
}
html[data-theme="light"] .ai-logo-box {
    background: linear-gradient(135deg, rgba(10,132,255,0.10), rgba(176,38,255,0.10)) !important;
    border: 1px solid rgba(109,74,255,0.28) !important;
    color: var(--proton-purple-500) !important;
    box-shadow: 0 4px 18px rgba(109,74,255,0.14) !important;
}
html[data-theme="light"] .ai-page-title {
    color: var(--text-primary) !important;
    text-shadow: none !important;
}
html[data-theme="light"] .ai-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .ai-terminal {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .ai-term-title { color: var(--text-primary) !important; }
html[data-theme="light"] .ai-term-title span { color: var(--text-secondary) !important; }
html[data-theme="light"] .ai-btn-launch {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    box-shadow: 0 8px 24px rgba(109,74,255,0.24) !important;
}

/* ============================================================
 *  Round 3 — Page: /tasks (每日抽奖)
 *  view 主要靠 inline style 渲染, 大部分已被全局兜底覆盖
 *  这里加 scope 兜底 + 常见 class
 * ============================================================ */
html[data-theme="light"] [class*="task-card"],
html[data-theme="light"] [class*="reward-card"],
html[data-theme="light"] [class*="lottery-card"],
html[data-theme="light"] .prize-tier,
html[data-theme="light"] .reward-item,
html[data-theme="light"] .wheel-container {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] [class*="prize-"],
html[data-theme="light"] [class*="lottery-"],
html[data-theme="light"] [class*="task-"] { color: inherit; }
html[data-theme="light"] [class*="task-"] .title { color: var(--text-primary) !important; }
html[data-theme="light"] [class*="task-"] .desc { color: var(--text-secondary) !important; }

/* ============================================================
 *  Round 3 — Page: /broadband (海外家宽)
 * ============================================================ */
html[data-theme="light"] .bx h1 { color: var(--text-primary) !important; }
html[data-theme="light"] .bx .sub { color: var(--text-secondary) !important; }
html[data-theme="light"] .bx-tab {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .bx-tab.on {
    background: #FFFFFF !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.30) !important;
    box-shadow: 0 2px 8px rgba(109,74,255,0.10) !important;
}
html[data-theme="light"] .bx-f {
    background: var(--bg-elevated) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .bx-f.on {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.30) !important;
}
html[data-theme="light"] .bx-nd {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .bx-nd:hover {
    border-color: rgba(109,74,255,0.28) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .bx-nd::after {
    background: linear-gradient(135deg, rgba(109,74,255,0.03), transparent) !important;
}
html[data-theme="light"] .bx-nd-loc { color: var(--text-primary) !important; }
html[data-theme="light"] .bx-nd-isp { color: var(--text-secondary) !important; }
html[data-theme="light"] .bx-tag {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-secondary) !important;
}

/* ============================================================
 *  Round 4 — Page: /isp (独享线路)
 * ============================================================ */
html[data-theme="light"] .isp-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 80% 20%, rgba(30,167,74,0.04) 0%, transparent 40%),
        radial-gradient(circle at 20% 80%, rgba(109,74,255,0.05) 0%, transparent 40%) !important;
}
html[data-theme="light"] .isp-icon-box {
    background: linear-gradient(135deg, rgba(30,167,74,0.12), rgba(109,74,255,0.10)) !important;
    color: #1EA74A !important;
    border: 1px solid rgba(30,167,74,0.28) !important;
}
html[data-theme="light"] .isp-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .isp-tabs-wrap {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .isp-tab { color: var(--text-secondary) !important; }
html[data-theme="light"] .isp-tab:hover:not(.active) {
    color: var(--proton-purple-500) !important;
    background: rgba(109,74,255,0.05) !important;
}
html[data-theme="light"] .isp-tab.active {
    background: rgba(30,167,74,0.10) !important;
    color: #1EA74A !important;
    border: 1px solid rgba(30,167,74,0.30) !important;
    box-shadow: 0 4px 14px rgba(30,167,74,0.14) !important;
}
html[data-theme="light"] .isp-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 4 — Page: /tiktok
 * ============================================================ */
html[data-theme="light"] .tk-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 10% 0%, rgba(0, 242, 254, 0.03) 0%, transparent 40%),
        radial-gradient(circle at 90% 100%, rgba(254, 9, 121, 0.03) 0%, transparent 40%) !important;
}
html[data-theme="light"] .glitch-text {
    text-shadow: 2px 0 var(--tk-cyan), -2px 0 var(--tk-pink) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .tk-tabs {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .tk-tab { color: var(--text-secondary) !important; }
html[data-theme="light"] .tk-tab:hover:not(.active) {
    color: var(--proton-purple-500) !important;
    background: rgba(109,74,255,0.05) !important;
}
html[data-theme="light"] .tk-tab.active {
    background: linear-gradient(135deg, rgba(0, 242, 254, 0.12), rgba(254, 9, 121, 0.12)) !important;
    color: var(--text-primary) !important;
    border: 1px solid rgba(254, 9, 121, 0.22) !important;
}

/* ============================================================
 *  Round 4 — Page: /game
 *  game 有独立 --gm-* 变量, 覆盖
 * ============================================================ */
html[data-theme="light"] {
    --gm-bg: #FAFAFC;
    --gm-card: #FFFFFF;
    --gm-card-hover: var(--bg-elevated);
    --gm-border: var(--border-default);
    --gm-green: #1EA74A;
    --gm-green-glow: rgba(30,167,74,0.22);
}
html[data-theme="light"] .gm-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 15% 15%, rgba(30,167,74,0.04) 0%, transparent 40%),
        radial-gradient(circle at 85% 85%, rgba(109,74,255,0.05) 0%, transparent 40%) !important;
}
html[data-theme="light"] .gm-logo-box {
    background: linear-gradient(135deg, rgba(30,167,74,0.10), rgba(109,74,255,0.08)) !important;
    border: 1px solid rgba(30,167,74,0.30) !important;
    color: #1EA74A !important;
    box-shadow: 0 4px 20px rgba(30,167,74,0.16) !important;
}
html[data-theme="light"] .gm-page-title {
    color: var(--text-primary) !important;
    text-shadow: none !important;
}
html[data-theme="light"] .gm-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .gm-ping-monitor {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .gm-pm-title { color: var(--text-primary) !important; }
html[data-theme="light"] .gm-node-item {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 5 — Page: /enterprise (企业定制)
 * ============================================================ */
html[data-theme="light"] .ent-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 10% 20%, rgba(212,175,55,0.05) 0%, transparent 40%),
        radial-gradient(circle at 90% 80%, rgba(109,74,255,0.05) 0%, transparent 40%) !important;
}
html[data-theme="light"] .ent-page-title {
    background: linear-gradient(135deg, #B8941E, #8B6914) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    text-shadow: none !important;
}
html[data-theme="light"] .ent-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .ent-qa-btn:hover {
    background: rgba(109,74,255,0.08) !important;
    border-color: rgba(212,175,55,0.45) !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08) !important;
}
html[data-theme="light"] .section-title { color: var(--text-primary) !important; }

/* ============================================================
 *  Round 5 — Page: /relay (端口转发)
 * ============================================================ */
html[data-theme="light"] {
    --rl-bg: #FAFAFC;
    --rl-card: #FFFFFF;
    --rl-card-hover: var(--bg-elevated);
    --rl-border: var(--border-default);
    --rl-border-light: var(--border-strong);
    --rl-sub: var(--text-secondary);
}
html[data-theme="light"] .rl-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 20% 0%, rgba(109,74,255,0.04) 0%, transparent 40%),
        radial-gradient(circle at 80% 100%, rgba(176,38,255,0.04) 0%, transparent 40%) !important;
}
html[data-theme="light"] .rl-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.08), rgba(176,38,255,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
    box-shadow: 0 4px 18px rgba(109,74,255,0.14) !important;
}
html[data-theme="light"] .rl-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .rl-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .rl-topology-panel {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .rl-tp-icon {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}

/* ============================================================
 *  Round 5 — Page: /sub (订阅管理)
 * ============================================================ */
html[data-theme="light"] {
    --sub-bg: #FAFAFC;
    --sub-card: #FFFFFF;
    --sub-card-hover: var(--bg-elevated);
    --sub-border: var(--border-default);
    --sub-blue: #0A84FF;
    --sub-muted: var(--text-secondary);
    --sub-purple: var(--proton-purple-500);
}
html[data-theme="light"] .sub-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 80% 20%, rgba(109,74,255,0.05) 0%, transparent 40%),
        radial-gradient(circle at 20% 80%, rgba(176,38,255,0.04) 0%, transparent 40%) !important;
}
html[data-theme="light"] .sub-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.10), rgba(176,38,255,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
    box-shadow: 0 4px 18px rgba(109,74,255,0.14) !important;
}
html[data-theme="light"] .sub-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .sub-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .sub-page-desc b { color: var(--proton-purple-500) !important; }
html[data-theme="light"] .sub-forge-panel {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-md) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .sub-sec-title { color: var(--text-primary) !important; }

/* ============================================================
 *  Round 6 — Page: /rule (分流规则)
 * ============================================================ */
html[data-theme="light"] {
    --ru-bg: #FAFAFC;
    --ru-card: #FFFFFF;
    --ru-card-hover: var(--bg-elevated);
    --ru-border: var(--border-default);
    --ru-blue: #0A84FF;
    --ru-sub: var(--text-secondary);
}
html[data-theme="light"] .ru-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 10% 20%, rgba(109,74,255,0.05) 0%, transparent 40%),
        radial-gradient(circle at 90% 80%, rgba(10,132,255,0.05) 0%, transparent 40%) !important;
}
html[data-theme="light"] .ru-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.10), rgba(10,132,255,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .ru-page-title,
html[data-theme="light"] .ru-section-title { color: var(--text-primary) !important; }
html[data-theme="light"] .ru-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .ru-page-desc b { color: var(--proton-purple-500) !important; }

/* ============================================================
 *  Round 6 — Page: /speedtest (测速工具)
 * ============================================================ */
html[data-theme="light"] {
    --sp-bg: #FAFAFC;
    --sp-card: #FFFFFF;
    --sp-card-hover: var(--bg-elevated);
    --sp-border: var(--border-default);
    --sp-cyan: #0A84FF;
    --sp-sub: var(--text-secondary);
}
html[data-theme="light"] .sp-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 50% 20%, rgba(109,74,255,0.05) 0%, transparent 50%),
        radial-gradient(circle at 50% 80%, rgba(30,167,74,0.03) 0%, transparent 50%) !important;
}
html[data-theme="light"] .sp-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .sp-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .sp-radar-dashboard {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-md) !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 6 — Page: /topup (充值商城)
 * ============================================================ */
html[data-theme="light"] .tu-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 15% 20%, rgba(212,175,55,0.05) 0%, transparent 50%),
        radial-gradient(circle at 85% 80%, rgba(109,74,255,0.05) 0%, transparent 50%) !important;
}
html[data-theme="light"] .tu-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .tu-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .tu-balance-pill {
    background: linear-gradient(145deg, rgba(109,74,255,0.08), rgba(109,74,255,0.03)) !important;
    border: 1px solid rgba(109,74,255,0.28) !important;
    color: var(--text-primary) !important;
    box-shadow: 0 4px 14px rgba(109,74,255,0.12) !important;
}
html[data-theme="light"] .tu-cat-btn {
    background: var(--bg-elevated) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .tu-cat-btn:hover:not(.active) {
    background: rgba(109,74,255,0.05) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .tu-cat-btn.active {
    background: rgba(109,74,255,0.10) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.35) !important;
}

/* ============================================================
 *  Round 7 — Page: /radar (追剧日历)
 * ============================================================ */
html[data-theme="light"] {
    --rd-bg: #FAFAFC;
    --rd-card: #FFFFFF;
    --rd-card-hover: var(--bg-elevated);
    --rd-border: var(--border-default);
    --rd-blue: #0A84FF;
    --rd-sub: var(--text-secondary);
}
html[data-theme="light"] .rd-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 10% 30%, rgba(218,41,33,0.04) 0%, transparent 50%),
        radial-gradient(circle at 90% 70%, rgba(109,74,255,0.05) 0%, transparent 50%) !important;
}
html[data-theme="light"] .rd-logo-box {
    background: linear-gradient(135deg, rgba(218,41,33,0.08), rgba(109,74,255,0.08)) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .rd-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .rd-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .rd-sync-bar.ok {
    background: rgba(30,167,74,0.08) !important;
    border: 1px solid rgba(30,167,74,0.25) !important;
    color: #1EA74A !important;
}
html[data-theme="light"] .rd-sync-bar.err {
    background: rgba(218,41,33,0.08) !important;
    border: 1px solid rgba(218,41,33,0.25) !important;
    color: #DA2921 !important;
}

/* ============================================================
 *  Round 7 — Page: /order (历史订单)
 *  order 用了 global --bg/--card-bg/--sub 变量, 已被前面覆盖
 * ============================================================ */
html[data-theme="light"] .order-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 80% 20%, rgba(191,90,242,0.05) 0%, transparent 40%),
        radial-gradient(circle at 20% 80%, rgba(109,74,255,0.05) 0%, transparent 40%) !important;
}
html[data-theme="light"] .order-title-icon {
    background: linear-gradient(135deg, #FFFFFF, #F5F5F9) !important;
    border: 1px solid var(--border-default) !important;
    color: var(--proton-purple-500) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .order-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .btn-header-action {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .btn-header-action:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.28) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .btn-header-action.primary {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: 0 6px 18px rgba(109,74,255,0.28) !important;
}

/* ============================================================
 *  Round 7 — Page: /traffic (流量统计)
 * ============================================================ */
html[data-theme="light"] .tf-title { color: var(--text-primary) !important; }
html[data-theme="light"] .tf-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .tf-stat,
html[data-theme="light"] .tf-chart-box {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .tf-stat-label,
html[data-theme="light"] .tf-stat-unit { color: var(--text-secondary) !important; }

/* ============================================================
 *  Round 8 — 多 view 共享变量覆盖
 *  coupon/reseller/check/devices 都用 --xx-bg/card/border/sub pattern
 * ============================================================ */
html[data-theme="light"] {
    /* coupon */
    --cp-bg: #FAFAFC; --cp-card: #FFFFFF; --cp-card-hover: var(--bg-elevated);
    --cp-border: var(--border-default); --cp-blue: #0A84FF;
    /* reseller */
    --re-bg: #FAFAFC; --re-card: #FFFFFF; --re-card-hover: var(--bg-elevated);
    --re-border: var(--border-default); --re-gold: #B8941E;
    /* check */
    --ch-bg: #FAFAFC; --ch-card: #FFFFFF; --ch-card-hover: var(--bg-elevated);
    --ch-border: var(--border-default); --ch-cyan: #0A84FF;
    /* devices */
    --dv-bg: #FAFAFC; --dv-card: #FFFFFF; --dv-card-hover: var(--bg-elevated);
    --dv-border: var(--border-default); --dv-cyan: #0A84FF;
    /* invite uses global --sub/--gold */
    --gold: #B8941E;
    /* reset common sub fallback for multiple views */
    --cp-sub: var(--text-secondary);
    --re-sub: var(--text-secondary);
    --ch-sub: var(--text-secondary);
    --dv-sub: var(--text-secondary);
    /* cyan glow soften for all */
    --cp-blue-glow: rgba(10,132,255,0.14);
    --re-gold-glow: rgba(212,175,55,0.16);
    --ch-cyan-glow: rgba(10,132,255,0.14);
    --dv-cyan-glow: rgba(10,132,255,0.14);
}

/* coupon */
html[data-theme="light"] .cp-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 50% 0%, rgba(109,74,255,0.05) 0%, transparent 50%),
        radial-gradient(circle at 50% 100%, rgba(191,90,242,0.04) 0%, transparent 50%) !important;
}
html[data-theme="light"] .cp-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.10), rgba(191,90,242,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .cp-page-title { color: var(--text-primary) !important; text-shadow: none !important; }
html[data-theme="light"] .cp-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .cp-redeem-panel {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-md) !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 8 — Page: /invite
 * ============================================================ */
html[data-theme="light"] .invite-mesh-bg {
    background: var(--bg-page) !important;
}
html[data-theme="light"] .invite-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .btn-partner-apply {
    background: linear-gradient(135deg, #FFFFFF, #FAFAFC) !important;
    border: 1px solid rgba(212,175,55,0.35) !important;
    color: #B8941E !important;
}
html[data-theme="light"] .btn-partner-apply:hover {
    background: rgba(212,175,55,0.08) !important;
    border-color: rgba(212,175,55,0.50) !important;
    box-shadow: 0 4px 16px rgba(212,175,55,0.16) !important;
}
html[data-theme="light"] .kpi-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 *  Round 8 — Page: /reseller
 * ============================================================ */
html[data-theme="light"] .re-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 50% 20%, rgba(212,175,55,0.05) 0%, transparent 50%),
        radial-gradient(circle at 50% 80%, rgba(109,74,255,0.04) 0%, transparent 50%) !important;
}
html[data-theme="light"] .re-logo-box {
    background: linear-gradient(135deg, rgba(212,175,55,0.10), rgba(255,159,10,0.06)) !important;
    border: 1px solid rgba(212,175,55,0.35) !important;
    color: #B8941E !important;
}
html[data-theme="light"] .re-page-title { color: var(--text-primary) !important; text-shadow: none !important; }
html[data-theme="light"] .re-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .re-page-desc b { color: #B8941E !important; }

/* ============================================================
 *  Round 9 — Page: /check
 * ============================================================ */
html[data-theme="light"] .ch-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 50% 10%, rgba(109,74,255,0.05) 0%, transparent 50%),
        radial-gradient(circle at 50% 90%, rgba(30,167,74,0.03) 0%, transparent 50%) !important;
}
html[data-theme="light"] .ch-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.10), rgba(30,167,74,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .ch-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .ch-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .ch-page-desc b { color: var(--proton-purple-500) !important; }

/* ============================================================
 *  Round 9 — Page: /devices (设备管理)
 * ============================================================ */
html[data-theme="light"] .dv-mesh-bg {
    background-color: var(--bg-page) !important;
    background-image:
        radial-gradient(circle at 20% 20%, rgba(109,74,255,0.05) 0%, transparent 45%),
        radial-gradient(circle at 80% 80%, rgba(218,41,33,0.03) 0%, transparent 45%) !important;
}
html[data-theme="light"] .dv-logo-box {
    background: linear-gradient(135deg, rgba(109,74,255,0.10), rgba(176,38,255,0.06)) !important;
    border: 1px solid rgba(109,74,255,0.30) !important;
    color: var(--proton-purple-500) !important;
}
html[data-theme="light"] .dv-page-title { color: var(--text-primary) !important; }
html[data-theme="light"] .dv-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .dv-page-desc b { color: var(--proton-purple-500) !important; }

/* ============================================================
 *  Round 9 — Page: /knowledge (使用教程)
 * ============================================================ */
html[data-theme="light"] .knowledge-mesh-bg {
    background: var(--bg-page) !important;
    background-image: radial-gradient(circle at 50% 0%, #F5F3FF 0%, var(--bg-page) 80%) !important;
}
html[data-theme="light"] .knowledge-page-title span {
    background: linear-gradient(135deg, var(--text-primary), var(--text-secondary)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}
html[data-theme="light"] .knowledge-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .kl-stat-item { color: var(--text-secondary) !important; }
html[data-theme="light"] .kl-stat-num { color: var(--text-primary) !important; }

/* ============================================================
 *  Round 10 — Page: /ticket (在线客服)
 * ============================================================ */
html[data-theme="light"] .ticket-mesh-bg {
    background: var(--bg-page) !important;
}
html[data-theme="light"] .ticket-page-desc { color: var(--text-secondary) !important; }
html[data-theme="light"] .btn-primary-new {
    background: linear-gradient(135deg, var(--proton-purple-500), var(--proton-purple-600)) !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .ticket-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .ticket-card:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.28) !important;
    box-shadow: var(--shadow-md) !important;
}

/* ============================================================
 *  Round 10 — Page: /profile (账户设置)
 *  profile 已经用 var(--bg-elevated)/var(--text-primary) 等 tokens
 *  这里加 .pfx-* 补强
 * ============================================================ */
html[data-theme="light"] .pfx-crumb .cur { color: var(--text-secondary) !important; }
html[data-theme="light"] .pfx-nav-item {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .pfx-nav-item:hover {
    background: var(--bg-elevated) !important;
    color: var(--proton-purple-500) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .pfx-rowlist .ss-card {
    background: #FFFFFF !important;
    border: 1px solid var(--border-default) !important;
    color: var(--text-primary) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .pfx-rowlist .ss-card:hover {
    background: var(--bg-elevated) !important;
    border-color: rgba(109,74,255,0.28) !important;
}
html[data-theme="light"] .pfx-rowlist .ss-card.gold-unlocked {
    background: linear-gradient(90deg, rgba(212,175,55,0.06), #FFFFFF 60%) !important;
    border-color: rgba(212,175,55,0.30) !important;
}
html[data-theme="light"] .pfx-rowlist .ss-card.gold-unlocked:hover {
    background: linear-gradient(90deg, rgba(212,175,55,0.10), var(--bg-elevated) 60%) !important;
}
html[data-theme="light"] .pfx-rowlist .ss-card.gold-locked {
    background: var(--bg-elevated) !important;
    opacity: 0.72;
}
html[data-theme="light"] .pfx-rowlist .ss-card.gold-locked:hover {
    background: var(--bg-elevated) !important;
    opacity: 1;
}
/* profile / secure-settings 通用兜底 */
html[data-theme="light"] [id*="profile"],
html[data-theme="light"] [id*="secure"],
html[data-theme="light"] [class*="pfx-"] {
    color: inherit;
}
html[data-theme="light"] .pfx-container,
html[data-theme="light"] .pfx-main,
html[data-theme="light"] .pfx-card,
html[data-theme="light"] .pfx-section {
    background: transparent !important;
    color: var(--text-primary) !important;
}

/* ============================================================
 * ============== DARK MODE REFINEMENT =======================
 *  把 views 里硬编码的 #1a1a1c / #161618 / #0a0a0c / #030305
 *  等深色 hex 全部替换为 theme.css 新 token --bg-surface-1/2 等
 *  让深色下的层级清晰 (canvas → surface-1 → surface-2 → surface-3)
 * ============================================================ */

/* ================================================
 * Dark: /node (节点列表) — 用户反馈"显示有问题"
 * ================================================ */
html[data-theme="dark"] .hud-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-default) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="dark"] .map-container {
    background: var(--bg-surface-2) !important;
    border: 1px solid rgba(155,125,255,0.18) !important;
    box-shadow: inset 0 0 60px rgba(155,125,255,0.10), var(--shadow-md) !important;
}
html[data-theme="dark"] .node-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="dark"] .node-card:hover {
    background: var(--bg-surface-2) !important;
    border-color: var(--border-default) !important;
}
html[data-theme="dark"] .nc-name { color: var(--text-primary) !important; }
html[data-theme="dark"] .filter-btn {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-secondary) !important;
}
html[data-theme="dark"] .filter-btn.active {
    background: rgba(155,125,255,0.14) !important;
    color: var(--brand-300) !important;
    border-color: rgba(155,125,255,0.35) !important;
}
html[data-theme="dark"] .filter-btn:hover:not(.active) {
    color: var(--text-primary) !important;
    background: var(--bg-surface-3) !important;
}
html[data-theme="dark"] .nd-page-desc { color: var(--text-secondary) !important; }
html[data-theme="dark"] .hud-label { color: var(--text-secondary) !important; }

/* ================================================
 * Dark: /dashboard 核心组件层级 refinement
 * ================================================ */
html[data-theme="dark"] .home-view-container .m-card,
html[data-theme="dark"] .home-view-container .panel,
html[data-theme="dark"] .home-view-container .mh-hero,
html[data-theme="dark"] .home-view-container .mbh-card,
html[data-theme="dark"] .home-view-container .eco-card,
html[data-theme="dark"] .home-view-container .access-security-panel,
html[data-theme="dark"] .home-view-container #ui-online-devices-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="dark"] .home-view-container .node-item {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="dark"] .home-view-container .sub-input-wrap {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-default) !important;
}
/* 订阅紫卡在深色下: 用 brand-50 (深紫低饱和) 而非浅紫,否则字看不见 */
html[data-theme="dark"] .sub-core-v3,
html[data-theme="dark"] #ui-sub-main,
html[data-theme="dark"] .sub-state-bar {
    background: linear-gradient(135deg, #2A1F4D 0%, #1F1733 100%) !important;
    color: var(--text-primary) !important;
    border: 1px solid rgba(155,125,255,0.22) !important;
}
html[data-theme="dark"] .sub-state-txt,
html[data-theme="dark"] .sub-state-txt b,
html[data-theme="dark"] #ui-sub-remain,
html[data-theme="dark"] #ui-sub-last-fetch,
html[data-theme="dark"] .sub-meta-val {
    color: var(--text-primary) !important;
}
html[data-theme="dark"] .sub-meta-lbl { color: var(--text-secondary) !important; }

/* ================================================
 * Dark: /store 核心
 * ================================================ */
html[data-theme="dark"] .feat-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="dark"] .feat-card:hover {
    background: var(--bg-surface-2) !important;
    border-color: var(--border-default) !important;
}
html[data-theme="dark"] .feat-title { color: var(--text-primary) !important; }
html[data-theme="dark"] .feat-desc { color: var(--text-secondary) !important; }
html[data-theme="dark"] .plan-card,
html[data-theme="dark"] .pkg-card,
html[data-theme="dark"] .vip-card-new,
html[data-theme="dark"] .bb-pv-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="dark"] .apps-marquee-wrapper {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="dark"] .app-badge {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}
html[data-theme="dark"] .quick-action-group > *,
html[data-theme="dark"] .store-container .quick-action-group > a,
html[data-theme="dark"] .store-container .quick-action-group > button {
    background: var(--bg-surface-1) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
}

/* ================================================
 * Dark: 所有 view 的 *-mesh-bg 背景 (页面最底)
 *  让整站深色 canvas 统一成紫黑 #0E0B17, 不再是杂色
 * ================================================ */
html[data-theme="dark"] .ai-mesh-bg,
html[data-theme="dark"] .isp-mesh-bg,
html[data-theme="dark"] .tk-bg,
html[data-theme="dark"] .gm-mesh-bg,
html[data-theme="dark"] .ent-mesh-bg,
html[data-theme="dark"] .rl-mesh-bg,
html[data-theme="dark"] .sub-mesh-bg,
html[data-theme="dark"] .ru-mesh-bg,
html[data-theme="dark"] .sp-mesh-bg,
html[data-theme="dark"] .tu-mesh-bg,
html[data-theme="dark"] .rd-mesh-bg,
html[data-theme="dark"] .order-mesh-bg,
html[data-theme="dark"] .cp-mesh-bg,
html[data-theme="dark"] .re-mesh-bg,
html[data-theme="dark"] .ch-mesh-bg,
html[data-theme="dark"] .dv-mesh-bg,
html[data-theme="dark"] .invite-mesh-bg,
html[data-theme="dark"] .knowledge-mesh-bg,
html[data-theme="dark"] .ticket-mesh-bg {
    background-color: var(--bg-canvas) !important;
}

/* ================================================
 * Dark: 所有 view 常见深硬编码 hex 兜底
 *  把 .xx-card / .xx-ping-monitor / .xx-terminal 等
 *  都 push 到 --bg-surface-1
 * ================================================ */
html[data-theme="dark"] .ai-terminal,
html[data-theme="dark"] .rl-topology-panel,
html[data-theme="dark"] .sub-forge-panel,
html[data-theme="dark"] .sp-radar-dashboard,
html[data-theme="dark"] .cp-redeem-panel,
html[data-theme="dark"] .gm-ping-monitor,
html[data-theme="dark"] .isp-card,
html[data-theme="dark"] .em-intro-card,
html[data-theme="dark"] .step-card,
html[data-theme="dark"] .ticket-card,
html[data-theme="dark"] .kpi-card,
html[data-theme="dark"] .tf-stat,
html[data-theme="dark"] .tf-chart-box,
html[data-theme="dark"] .ax-card,
html[data-theme="dark"] .bx-nd,
html[data-theme="dark"] .app-dl-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
}

/* 输入框 / tabs 在深色下用 surface-2 */
html[data-theme="dark"] .isp-tabs-wrap,
html[data-theme="dark"] .tk-tabs,
html[data-theme="dark"] .bx-tab,
html[data-theme="dark"] .tu-cat-btn,
html[data-theme="dark"] .ax-search input,
html[data-theme="dark"] .ax-ha-sec {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-secondary) !important;
}

/* ================================================
 * Dark: 确保 body/html 用新 canvas
 * ================================================ */
html[data-theme="dark"],
html[data-theme="dark"] body {
    background: var(--bg-canvas) !important;
    color: var(--text-primary) !important;
}

/* ================================================
 * Dark: 侧栏 FREE 徽章修复 (用户问题 3)
 *  原 .hg-badge-free 在深色下可能错位
 * ================================================ */
html[data-theme="dark"] .hg-badge-free,
html[data-theme="dark"] em.hg-badge-free {
    background: var(--badge-free-bg) !important;
    color: var(--badge-free-fg) !important;
}
html[data-theme="dark"] .hg-badge-hot {
    background: var(--badge-hot-bg) !important;
    color: var(--badge-hot-fg) !important;
}
html[data-theme="dark"] .hg-badge-new {
    background: var(--badge-new-bg) !important;
    color: var(--badge-new-fg) !important;
}
html[data-theme="dark"] .hg-badge-pro {
    background: var(--badge-pro-bg) !important;
    color: var(--badge-pro-fg) !important;
}

/* ============================================================
 * ============== LIGHT MODE v2 COMFORT TUNE =================
 *  用户方案 2026-04-22 落地 (映射到 hgfast 真实 class):
 *   1) 紫底糊成一片 → 白底 + 细描边
 *   2) 卡片靠描边稳住不漂浮
 *   3) 紫色收敛到主 CTA / VIP / 选中
 *   4) 订阅已启用 → 浅绿调
 *   5) 产品 CTA 默认中性灰,hover 紫
 * ============================================================ */

/* 流量狂欢 banner (用户: .lottery-banner) 映射 → .traffic-carnival-entry */
html[data-theme="light"] .traffic-carnival-entry,
html[data-theme="light"] .traffic-carnival-pinned,
html[data-theme="light"] .home-view-container .traffic-carnival-entry {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: none !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .traffic-carnival-entry:hover,
html[data-theme="light"] .home-view-container .traffic-carnival-entry:hover {
    border-color: var(--brand-300) !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="light"] .traffic-carnival-entry .tce-title,
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-title { color: var(--text-primary) !important; text-shadow: none !important; }
html[data-theme="light"] .traffic-carnival-entry .tce-sub,
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-sub { color: var(--text-secondary) !important; }
html[data-theme="light"] .traffic-carnival-entry .tce-sub b,
html[data-theme="light"] .home-view-container .traffic-carnival-entry .tce-sub b { color: var(--brand-600) !important; text-shadow: none !important; }
html[data-theme="light"] .traffic-carnival-entry .tce-arrow {
    background: var(--bg-surface-3) !important;
    color: var(--brand-500) !important;
}
html[data-theme="light"] .traffic-carnival-entry:hover .tce-arrow {
    background: var(--brand-50) !important;
}

/* 三按钮 (用户: .quick-action-card) 映射 → .store-container .quick-action-group > * */
html[data-theme="light"] html body .store-container .apps-marquee-container > .quick-action-group > *,
html[data-theme="light"] .store-container .quick-action-group > *,
html[data-theme="light"] .quick-action-group > * {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}
html[data-theme="light"] .store-container .quick-action-group > *:hover,
html[data-theme="light"] .quick-action-group > *:hover {
    border-color: var(--brand-300) !important;
    box-shadow: var(--shadow-md) !important;
    transform: translateY(-2px) !important;
    color: var(--brand-600) !important;
    background: var(--bg-surface-1) !important;
}

/* 订阅已启用 (用户: .subscription-active-card) → 浅绿调
   映射: .sub-core-v3 / #ui-sub-main / .sub-state-bar / #ui-sub-active-panel */
html[data-theme="light"] .home-view-container .sub-core-v3,
html[data-theme="light"] .home-view-container #ui-sub-main,
html[data-theme="light"] .sub-core-v3 {
    background: linear-gradient(135deg, #F0FBF4 0%, #E8F8EE 100%) !important;
    border: 1px solid #CFEBDA !important;
    border-radius: var(--radius-lg) !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .home-view-container .sub-state-bar {
    background: rgba(34,197,94,0.06) !important;
    border: 1px solid #CFEBDA !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] .home-view-container .sub-state-txt,
html[data-theme="light"] .home-view-container .sub-state-txt b {
    color: var(--success-fg) !important;
    font-weight: 700 !important;
}
html[data-theme="light"] .home-view-container #ui-sub-remain,
html[data-theme="light"] .home-view-container .sub-meta-val {
    color: var(--text-primary) !important;
    font-weight: 800 !important;
}
html[data-theme="light"] .home-view-container .sub-meta-lbl {
    color: var(--text-tertiary) !important;
}
html[data-theme="light"] .home-view-container .sub-state-dot.ok {
    background: var(--success-solid) !important;
    box-shadow: 0 0 6px rgba(34,197,94,0.5) !important;
}
html[data-theme="light"] .home-view-container .sub-state-btn {
    background: #FFFFFF !important;
    color: var(--success-fg) !important;
    border: 1px solid #CFEBDA !important;
}
html[data-theme="light"] .home-view-container .sub-state-btn:hover {
    background: #F0FBF4 !important;
}
html[data-theme="light"] .home-view-container .sub-input-wrap {
    background: #FFFFFF !important;
    border: 1px solid #CFEBDA !important;
}

/* 加强特异性: 用 id selector 压过 home/style.js 里 .sub-state-bar 的 linear-gradient 紫色 */
html[data-theme="light"] #ui-sub-main .sub-state-bar,
html[data-theme="light"] #ui-sub-main,
html[data-theme="light"] #ui-sub-active-panel,
html[data-theme="light"] #ui-sub-inactive-panel {
    background: linear-gradient(135deg, #F0FBF4 0%, #E8F8EE 100%) !important;
    border: 1px solid #CFEBDA !important;
    color: var(--text-primary) !important;
}
html[data-theme="light"] #ui-sub-main .sub-state-bar {
    background: rgba(34,197,94,0.10) !important;
    border: 1px solid #CFEBDA !important;
}

/* 4 张指标卡 (用户: .stat-card) → .home-view-container .m-card
   统一白底 + 细描边, 不要 4 种彩色渐变 */
html[data-theme="light"] .home-view-container .m-card {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: none !important;
}
html[data-theme="light"] .home-view-container .m-card:hover {
    border-color: var(--border-default) !important;
    box-shadow: var(--shadow-sm) !important;
}
html[data-theme="light"] .home-view-container .m-card .m-glow {
    display: none !important;  /* 关掉装饰色块 glow */
}
/* m-label 图标容器保留彩色但用 info/success/warning/danger-bg 低饱和 */
html[data-theme="light"] .home-view-container .m-card .m-label {
    color: var(--text-tertiary) !important;
}

/* 流媒体图标卡 (用户: .streaming-icon-card) → .app-badge / .marquee-item */
html[data-theme="light"] .app-badge,
html[data-theme="light"] .apps-marquee-content .app-badge,
html[data-theme="light"] .marquee-item {
    background: var(--bg-surface-1) !important;
    border: 1px solid var(--border-subtle) !important;
    color: var(--text-primary) !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}
html[data-theme="light"] .app-badge:hover,
html[data-theme="light"] .marquee-item:hover {
    border-color: var(--border-default) !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-sm) !important;
}

/* 产品卡 CTA (用户: .product-cta) → .feat-action-btn
   原: 所有紫胶囊 → 默认灰, hover 紫 */
html[data-theme="light"] .feat-card .feat-action-btn,
html[data-theme="light"] .feat-action-btn {
    background: var(--bg-surface-3) !important;
    color: var(--text-secondary) !important;
    border: 1px solid var(--border-subtle) !important;
    transition: all 0.2s ease !important;
}
html[data-theme="light"] .feat-card:hover .feat-action-btn,
html[data-theme="light"] .feat-action-btn:hover {
    background: var(--brand-50) !important;
    color: var(--brand-600) !important;
    border-color: var(--brand-100) !important;
}

/* 购物车按钮 (用户: .btn-cart) → .h-btn.primary */
html[data-theme="light"] .home-view-container .h-btn.primary,
html[data-theme="light"] .h-btn.primary {
    background: var(--bg-surface-2) !important;
    color: var(--brand-500) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: none !important;
}
html[data-theme="light"] .home-view-container .h-btn.primary:hover {
    background: var(--brand-50) !important;
    border-color: var(--brand-100) !important;
}

/* 订阅计划那种 tab 按钮 (用户: .btn-subscription-plan) → .sub-state-btn / tabs
   改中性灰,给 VIP5 黑金让出强调位 */
html[data-theme="light"] .tabs,
html[data-theme="light"] .vp-tabs,
html[data-theme="light"] .pc-cycle-tabs {
    background: var(--bg-surface-2) !important;
    border: 1px solid var(--border-subtle) !important;
}
html[data-theme="light"] .vp-btn,
html[data-theme="light"] .pc-cycle-btn {
    background: transparent !important;
    color: var(--text-secondary) !important;
}
html[data-theme="light"] .vp-btn.active,
html[data-theme="light"] .pc-cycle-btn.active,
html[data-theme="light"] .tabs .active {
    background: var(--bg-surface-1) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--border-subtle) !important;
    box-shadow: var(--shadow-xs) !important;
}

/* body / 页面底 收敛到 bg-canvas, 不再带紫色 */
html[data-theme="light"] body,
html[data-theme="light"] .home-view-container,
html[data-theme="light"] .pc-container,
html[data-theme="light"] .store-container {
    background: var(--bg-canvas) !important;
}

/* 侧栏激活态 (用户建议: 更淡的灰底 + 紫色左侧竖线) */
html[data-theme="light"] .hg-sidebar .hg-nav-item.active {
    background: var(--bg-surface-3) !important;
    color: var(--brand-600) !important;
    box-shadow: inset 3px 0 0 var(--brand-500) !important;
}
html[data-theme="light"] .hg-sidebar .hg-nav-item:hover:not(.active) {
    background: var(--bg-surface-2) !important;
    color: var(--text-primary) !important;
}

/* HGFAST-Pro 顶部横幅 — 保留深紫但窄一些 */
html[data-theme="light"] .store-container .store-header,
html[data-theme="light"] .store-container [class*="hgfast-pro"],
html[data-theme="light"] .store-container .pro-badge-bar {
    background: var(--bg-topbar) !important;
    color: var(--text-on-topbar) !important;
    border: 0 !important;
}
html[data-theme="light"] [style*="color:#fff"],
html[data-theme="light"] [style*="color: #fff"],
html[data-theme="light"] [style*="color:#F5F3FF"],
html[data-theme="light"] [style*="color: #F5F3FF"] {
    color: var(--text-primary) !important;
}

/* ============================================================
 *  P1.6 极细调 (2026-04-21 用户第二次反馈"看不清")
 *  重点: ID selector 强特异性 + rgba(255,255,255,X) 半透白 attr 兜底 + 灰字对比提升
 * ============================================================ */

/* === ID selector 强覆盖 (压过 style.js 里可能的 #id{color:#fff} 规则) === */
html[data-theme="light"] #ui-username,
html[data-theme="light"] #mh-username,
html[data-theme="light"] #ui-balance,
html[data-theme="light"] #ui-commission,
html[data-theme="light"] #ui-plan-title,
html[data-theme="light"] #ui-plan-expire,
html[data-theme="light"] #ui-traffic-val,
html[data-theme="light"] #ui-traffic-up,
html[data-theme="light"] #ui-traffic-down,
html[data-theme="light"] #ui-conn-up,
html[data-theme="light"] #ui-conn-down,
html[data-theme="light"] #ui-conn-sub,
html[data-theme="light"] #ui-sub-url-input,
html[data-theme="light"] #ui-sub-state-text,
html[data-theme="light"] #ui-sub-remain,
html[data-theme="light"] #ui-sub-last-fetch,
html[data-theme="light"] #mbh-title,
html[data-theme="light"] #mbh-subtitle,
html[data-theme="light"] #mbh-state-label,
html[data-theme="light"] #mbh-days,
html[data-theme="light"] #mbh-expire,
html[data-theme="light"] #uvc-title,
html[data-theme="light"] #uvc-sub,
html[data-theme="light"] #mh-plan,
html[data-theme="light"] #mh-expire,
html[data-theme="light"] #mh-balance,
html[data-theme="light"] #mh-commission,
html[data-theme="light"] #mh-devices,
html[data-theme="light"] #mh-traffic-used,
html[data-theme="light"] #mh-traffic-total,
html[data-theme="light"] #mh-traffic-up,
html[data-theme="light"] #mh-traffic-down { color: var(--text-primary) !important; }

/* greeting-title 内部 span 兜底 (可能 style.js 里有 #ui-username{color:white}) */
html[data-theme="light"] .greeting-title,
html[data-theme="light"] .greeting-title > span,
html[data-theme="light"] .greeting-area,
html[data-theme="light"] .greeting-area * { color: var(--text-primary); }
html[data-theme="light"] .greeting-area .greeting-eyebrow,
html[data-theme="light"] .greeting-area .gea-meta,
html[data-theme="light"] .greeting-area .gea-rotate { color: var(--text-secondary) !important; }
html[data-theme="light"] .net-dot { background: var(--success) !important; }

/* === rgba(255,255,255,X) 半透白兜底 (深底用的"玻璃", 浅底变透明) === */
html[data-theme="light"] [style*="rgba(255,255,255,0.02)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.02)"],
html[data-theme="light"] [style*="rgba(255,255,255,.02)"] {
    background-color: rgba(109,74,255,0.025) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.03)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.03)"],
html[data-theme="light"] [style*="rgba(255,255,255,.03)"] {
    background-color: rgba(109,74,255,0.03) !important;
}
/* .h-pill 原规则 rgba(255,255,255,0.03) — 不走 inline selector, 单独覆盖 */
html[data-theme="light"] .h-pill { background: var(--bg-surface) !important; }
html[data-theme="light"] [style*="rgba(255,255,255,0.04)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.04)"],
html[data-theme="light"] [style*="rgba(255,255,255,.04)"] {
    background-color: rgba(109,74,255,0.04) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.06)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.06)"],
html[data-theme="light"] [style*="rgba(255,255,255,.06)"] {
    background-color: rgba(109,74,255,0.06) !important;
    border-color: rgba(109,74,255,0.18) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.08)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.08)"],
html[data-theme="light"] [style*="rgba(255,255,255,.08)"] {
    background-color: rgba(109,74,255,0.08) !important;
}
html[data-theme="light"] [style*="rgba(255,255,255,0.1)"],
html[data-theme="light"] [style*="rgba(255, 255, 255, 0.1)"],
html[data-theme="light"] [style*="rgba(255,255,255,.1)"] {
    background-color: rgba(109,74,255,0.1) !important;
}

/* === 灰字改 text-secondary (原色 #8e8e93 / #c8c8cc / #aaa 在白底对比弱) === */
html[data-theme="light"] [style*="color:#8e8e93"],
html[data-theme="light"] [style*="color: #8e8e93"],
html[data-theme="light"] [style*="color:#8E8E93"],
html[data-theme="light"] [style*="color:#c8c8cc"],
html[data-theme="light"] [style*="color: #c8c8cc"],
html[data-theme="light"] [style*="color:#a1a1a6"],
html[data-theme="light"] [style*="color: #a1a1a6"],
html[data-theme="light"] [style*="color:#aaa"],
html[data-theme="light"] [style*="color: #aaa"],
html[data-theme="light"] [style*="color:#888"],
html[data-theme="light"] [style*="color: #888"],
html[data-theme="light"] [style*="color:rgba(235,235,245"],
html[data-theme="light"] [style*="color: rgba(235,235,245"] {
    color: var(--text-secondary) !important;
}

/* var(--sub-text) / var(--text-dim) 这些老 global.css 变量 (是深底灰,在浅底对比弱) */
html[data-theme="light"] [style*="color:var(--sub-text)"],
html[data-theme="light"] [style*="color: var(--sub-text)"],
html[data-theme="light"] [style*="color:var(--text-dim)"],
html[data-theme="light"] [style*="color: var(--text-dim)"] {
    color: var(--text-secondary) !important;
}

/* === dashed / hr 虚线边框在浅底下也改浅 === */
html[data-theme="light"] [style*="border:1px dashed rgba(255,255,255"] {
    border-color: rgba(109,74,255,0.22) !important;
}

/* === SF Mono 数字显示 (监控值) === */
html[data-theme="light"] [style*="font-family:'SF Mono'"],
html[data-theme="light"] [style*="font-family: 'SF Mono'"] {
    color: var(--text-primary);
}

/* === 剩余问题兜底: 放在文件末确保最高优先级 === */
html[data-theme="light"] .home-view-container *,
html[data-theme="light"] .home-view-container *::before,
html[data-theme="light"] .home-view-container *::after {
    /* 不整体强塞 color, 避免把 VIP 紫/状态橙/红误伤 */
}

/* === Scrollbar (webkit, 浅底用浅色) === */
html[data-theme="light"] ::-webkit-scrollbar { width: 10px; height: 10px; }
html[data-theme="light"] ::-webkit-scrollbar-track { background: transparent; }
html[data-theme="light"] ::-webkit-scrollbar-thumb {
    background: rgba(109, 74, 255, 0.22); border-radius: 6px;
}
html[data-theme="light"] ::-webkit-scrollbar-thumb:hover { background: rgba(109, 74, 255, 0.38); }

/* ============================================================
 *  Theme Toggle Widget
 * ============================================================ */
.hg-theme-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    color: var(--text-primary);
    font-size: var(--fs-sm);
    font-weight: 700;
    cursor: pointer;
    transition: background var(--dur-fast) var(--ease-out),
                border-color var(--dur-fast) var(--ease-out),
                color var(--dur-fast) var(--ease-out);
    width: 100%;
    text-align: left;
    font-family: inherit;
    line-height: 1;
    margin-bottom: 8px;
}
.hg-theme-toggle:hover {
    background: var(--bg-hover);
    color: var(--proton-purple-500);
    border-color: var(--border-default);
}
.hg-theme-toggle i { font-size: 16px; flex-shrink: 0; }
.hg-theme-toggle .label { flex: 1; }
.hg-theme-toggle .indicator {
    width: 34px; height: 18px; border-radius: 10px;
    background: var(--border-default);
    position: relative; flex-shrink: 0;
    transition: background var(--dur-normal) var(--ease-out);
}
.hg-theme-toggle .indicator::after {
    content: '';
    position: absolute; top: 2px; left: 2px;
    width: 14px; height: 14px; border-radius: 50%;
    background: var(--text-primary);
    transition: left var(--dur-normal) var(--ease-out),
                background var(--dur-normal) var(--ease-out);
}
html[data-theme="light"] .hg-theme-toggle .indicator { background: var(--proton-purple-500); }
html[data-theme="light"] .hg-theme-toggle .indicator::after {
    left: 18px; background: #fff;
}

/* BETA 标签 */
.hg-theme-toggle .beta-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 6px;
    border-radius: 4px;
    background: linear-gradient(135deg, #FFA726, #FF6D3E);
    color: #fff;
    font-size: 9px;
    font-weight: 900;
    letter-spacing: 0.4px;
    line-height: 1;
    white-space: nowrap;
    flex-shrink: 0;
}
html[data-theme="light"] .hg-theme-toggle .beta-badge {
    background: linear-gradient(135deg, #D97B0C, #C94B1A);
}
