/* ══════════════════════════════════════════════════════════════════
   hw-theme.css — V.165 「玄紫星」深空紫主题层 (Void & Violet)
   老板反馈 (09-30 01:12): 「不行 这金色太土了 你重新设计一下配色」+「全权交给你」

   ── 为什么彻底放弃金 ──
     黑底+金 = 土豪金的默认配方, 连改 2 版都被判"土"。
     病根: ① 金用在边框/标签/徽章/标题/导航 → 处处是金 = 贬值
           ② 暖黑底 + 暖金 = 油腻;  ③ 全站单色说话, 无层次

   ── 本版设计法则 ──
     换赛道: 不做"贵金属", 做"深空科技"
     配比  88% 深空黑  +  8% 中性冷灰  +  4% 电光紫   ← 颜色更稀缺
     主点睛  电光紫 #4D7CFE  (品牌/激活/强调)
     次点睛  冰蓝   #22D3EE  (链接/图例/次强调)  ← 双色层次, 不单调
     高光    浅紫   #9BB4FF  (重点数值)
     深紫    收尾   #2B4ED8
     底色    深空黑 #07070C  (微紫调, 冷底 → 锐利不死板)
     文字    冷月白 #E8E9F2 / 次级 #989CB0

   铁律 (绝不触碰):
     · 涨跌色 --hw-up/--hw-down/--up/--down           (浮盈/浮亏)
     · 地球   .earth-bg/#aiEarth/#earthBg/three.js    (纯 JS 渲染)
     · 语义色 --ok/--err/--danger                       (绿=正常/红=危险)

   回滚: URL 加 ?theme=off   或   删 index.html 的 <link href="/hw-theme.css">
   备份: baoleme/backups/theme_20260930_0115/
   ══════════════════════════════════════════════════════════════════ */

/* ── ① 色板 token: 压过 v22/v24/v25/v29 所有皮肤 ───────────────── */
html.hw-theme:root,
html.hw-theme.v29-on:root,
html.hw-theme.v25-on:root,
html.hw-theme.v24-on:root,
html.hw-theme.v22-on:root{
  /* ── 底: 深空黑 (微紫调) ── */
  --hw-bg:#07070C!important;
  --hw-bg-elev:#0B0B12!important;
  --hw-surface:#101018!important;
  --hw-surface-2:#16161F!important;
  --hw-surface-3:#1D1D28!important;
  --hw-border:rgba(180,190,220,.09)!important;
  --hw-border-2:rgba(180,190,220,.17)!important;
  --bg:#07070C!important;--bg2:#0B0B12!important;--bg3:#16161F!important;--bg4:#1D1D28!important;
  --card:#101018!important;--card2:#16161F!important;
  --border:rgba(180,190,220,.09)!important;--border2:rgba(180,190,220,.17)!important;

  /* ── 字: 冷月白 (不用暖白) ── */
  --hw-text:#E8E9F2!important;
  --hw-muted:#989CB0!important;
  --hw-dim:#63667A!important;
  --txt:#E8E9F2!important;--sub:#989CB0!important;--dim:#63667A!important;--text:#E8E9F2!important;

  /* ── 主点睛: 电光紫 ── */
  --hw-brand:#4D7CFE!important;
  --hw-brand-soft:rgba(77,124,254,.13)!important;
  --hw-brand-line:rgba(77,124,254,.32)!important;
  --gold:#4D7CFE!important;--gold-bg:rgba(77,124,254,.11)!important;
  --hw-gold-hi:#9BB4FF!important;                       /* 浅紫高光 */
  --hw-gold-deep:#2B4ED8!important;                     /* 深紫收尾 */

  --hw-accent:#4D7CFE!important;
  --hw-accent-cyan:#22D3EE!important;                   /* 次点睛 → 冰蓝 */
  --hw-accent-soft:rgba(77,124,254,.11)!important;
  --hw-energy:#7DA0FF!important;                        /* 能量位 → 浅紫 */
  --hw-energy-soft:rgba(125,160,255,.13)!important;

  /* 旧变量族: 紫位→深紫, 青位→冰蓝(保双色层次), 蓝位→电光紫 */
  --blue:#4D7CFE!important;
  --purple:#2B4ED8!important;--purple-bg:rgba(43,78,216,.12)!important;
  --pink:#22D3EE!important;--pink-bg:rgba(34,211,238,.10)!important;
  --cyan:#22D3EE!important;--cyan-bg:rgba(34,211,238,.10)!important;
  --info:#22D3EE!important;--warning:#E8663D!important;--warn:#E8663D!important;
  --glow-purple:rgba(43,78,216,.10)!important;
  --glow-cyan:rgba(34,211,238,.07)!important;

  /* 皮肤局部变量 */
  --v22-accent:#4D7CFE!important;--v22-cyan:#22D3EE!important;--v22-violet:#2B4ED8!important;
  --v29-panel:rgba(12,12,20,.94)!important;
  --v29-panel2:rgba(16,16,26,.96)!important;
  --v29-line:rgba(77,124,254,.12)!important;
  --v29-ink:#E8E9F2!important;
  --v29-muted:#989CB0!important;

  /* ⛔ 不动: 涨跌色 / 语义色 */
}

/* ── ② 底色: 覆盖各处写死的黑 ─────────────────────────────── */
html.hw-theme.v24-on body,
html.hw-theme.v29-on body{background:#07070C!important}
html.hw-theme body{background:#07070C!important}
html.hw-theme .app,html.hw-theme .content,html.hw-theme main{background:transparent!important}

/* ── ③ 颜色"稀缺化": 卡片边框回归中性, 紫只留给强调 ─────────── */
html.hw-theme .panel,
html.hw-theme .hw-kpi,
html.hw-theme .kpi,
html.hw-theme .strat-card,
html.hw-theme .zone-block,
html.hw-theme .dept-block{
  border-top-color:rgba(77,124,254,.16)!important}
html.hw-theme .panel{border-top-color:rgba(180,190,220,.10)!important}

html.hw-theme.v24-on .panel-head h3,
html.hw-theme.v27-on .panel-head h3,
html.hw-theme.v25-on .hw-sec-h h3,
html.hw-theme.v29-on .panel-head h3,
html.hw-theme.v29-on .hw-sec-h h3{color:#4D7CFE!important}

/* ── ④ 文字: 皮肤层的冷白/冷灰 → 冷月白 ───────────────────── */
html.hw-theme.v29-on .content,
html.hw-theme.v29-on body{color:#E8E9F2!important}
html.hw-theme.v25-on .ai-hq .ai-ev .tt,
html.hw-theme .ai-ev .tt{color:#EDEEF6!important}
html.hw-theme.v25-on .ai-hq .ai-ev .sm,
html.hw-theme .ai-ev .sm{color:#9BA0B8!important}
html.hw-theme.v25-on .ai-hq .ai-ev .meta,
html.hw-theme .ai-ev .meta{color:#787C90!important}
html.hw-theme.v25-on .hw-kpi .hk-l,
html.hw-theme .hw-kpi .hk-l{color:#9BA0B8!important}
html.hw-theme.v25-on .hw-sec-h h3{color:#4D7CFE!important}
html.hw-theme.v13-on thead th{color:rgba(154,158,176,.92)!important}
html.hw-theme.v13-on .empty,
html.hw-theme.v13-on .empty-state,
html.hw-theme.v13-on [class*="empty"]{color:rgba(154,158,176,.66)!important}
html.hw-theme.v14-on .hw-kpi .hk-s,
html.hw-theme .hw-kpi .hk-s{color:rgba(154,158,176,.86)!important}
html.hw-theme.v22-on .panel-sub,
html.hw-theme .panel-sub{color:rgba(154,158,176,.72)!important}
html.hw-theme .hw-nav .hw-livechip.na{color:#989CB0!important}

/* ── ⑤ 反制 v29 的全局「动效封杀」, 只放行本层动效 ─────────────── */
html.hw-theme .hm-rise{animation-duration:.58s!important;animation-iteration-count:1!important;animation-fill-mode:forwards!important}
html.hw-theme .hm-focus{animation-duration:.62s!important;animation-iteration-count:1!important;animation-fill-mode:both!important}
html.hw-theme .hm-row{animation-duration:.34s!important;animation-iteration-count:1!important;animation-fill-mode:both!important}
html.hw-theme .hm-num{animation-duration:.42s!important;animation-iteration-count:1!important}
html.hw-theme .hm-sweep::after{animation-duration:1.15s!important;animation-iteration-count:1!important;animation-delay:.18s!important}
html.hw-theme .tab-page.active.hm-page{animation-duration:.34s!important;animation-iteration-count:1!important}
html.hw-theme .hm-pulse{animation-duration:2.1s!important;animation-iteration-count:infinite!important}
html.hw-theme .hm-glow:hover::before{animation-duration:2.6s!important;animation-iteration-count:infinite!important}

/* ── ⑥ v22 极光层: → 极淡紫 ─────────────────────────────────── */
html.hw-theme #hwAuroraV22 i{
  background:linear-gradient(120deg,rgba(77,124,254,.07),transparent 62%)!important}
html.hw-theme #hwAuroraV22{opacity:.8!important}

/* ── ⑦ 硬编码补漏 ─────────────────────────────────────────── */
html.hw-theme .hwm-btn:hover{background:rgba(77,124,254,.18)!important;color:#7DA0FF!important}
html.hw-theme #hwWall .wl-tag{
  background:rgba(77,124,254,.11)!important;
  border-color:rgba(77,124,254,.26)!important;color:#7DA0FF!important}
html.hw-theme .cmd-aihead{border-bottom-color:rgba(77,124,254,.14)!important}
html.hw-theme .cmd-aihead .d{background:#4D7CFE!important;box-shadow:0 0 10px rgba(77,124,254,.6)!important}
html.hw-theme .ai-ev-more{color:#7DA0FF!important}
html.hw-theme .ai-ev-more:hover{color:#9BB4FF!important}
html.hw-theme .lang-btn:hover{background:rgba(77,124,254,.18)!important;color:#7DA0FF!important}

/* ── ⑧ 数字: 回归冷月白 (颜色稀缺 → 不做彩色数字, 盈亏除外) ───── */
html.hw-theme .hw-kpi .hk-v,
html.hw-theme .kpi .value,
html.hw-theme .wl-kpi .v{color:#F2F3FA!important}
/* 唯一紫色数字: 显式标记(如杠杆) —— 保持稀缺性 */
html.hw-theme .c-gold,
html.hw-theme [class*="c-gold"]{color:#7DA0FF!important}
/* ⛔ 涨跌数字绝不套主题色: 盈亏保持绿/红 (浮盈浮亏色语义) */
html.hw-theme .c-up,html.hw-theme .up{color:var(--hw-up,#35d69c)!important}
html.hw-theme .c-down,html.hw-theme .down{color:var(--hw-down,#ff5f78)!important}

/* ── ⑨ 迷你柱: 中性 (仅末点保留主题色) ────────────────────── */
html.hw-theme .v12-spark i{background:rgba(180,190,220,.20)!important}
html.hw-theme .v12-spark i:last-child{background:#4D7CFE!important}

/* ── ⑩ 激活态: 克制细描边 ────────────────────────────────── */
html.hw-theme.v22-on .nav-item.active{
  background:linear-gradient(120deg,rgba(77,124,254,.10),rgba(77,124,254,.04))!important;
  color:#9BB4FF!important;
  box-shadow:inset 0 0 0 1px rgba(77,124,254,.20)!important;
}

/* ── ⑪ 金属感删除: 字标用"高光→主色"线性渐变 (去金属, 走"银河"感) ── */
html.hw-theme .topbar-left h1 .brand,
html.hw-theme .wl-brand,
html.hw-theme .c-gold,
html.hw-theme [class*="c-gold"]{
  background:linear-gradient(115deg,#DCE7FF 0%,#7DA0FF 45%,#4D7CFE 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important;
}
html.hw-theme .panel-head h3,
html.hw-theme .hw-sec-h h3,
html.hw-theme.v24-on .panel-head h3,
html.hw-theme.v25-on .hw-sec-h h3{
  background:linear-gradient(115deg,#C9D8FF 0%,#6E93FF 60%,#3F63E0 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important;
}
html.hw-theme.v22-on .nav-item.active,
html.hw-theme .hw-nav .nav-item.active{
  background:linear-gradient(115deg,#DCE7FF,#7DA0FF 45%,#4D7CFE)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important;color:transparent!important;
  box-shadow:none!important;
}
html.hw-theme.v22-on .nav-item.active::after{
  background:linear-gradient(180deg,#9BB4FF,#2B4ED8)!important;
  box-shadow:0 0 8px rgba(77,124,254,.55)!important;
}

/* ── ⑫ 1px 发丝紫边: 关键面板/卡片 (细, 不抢戏) ───────────── */
html.hw-theme .panel,
html.hw-theme .hw-sec,
html.hw-theme .zone-block{
  border-top:1px solid rgba(77,124,254,.22)!important;
  box-shadow:inset 0 1px 0 rgba(77,124,254,.05)!important;
}
html.hw-theme .tag,
html.hw-theme .badge,
html.hw-theme .pill{
  background:rgba(77,124,254,.10)!important;
  border-color:rgba(77,124,254,.32)!important;
}
/* CAUTION / 警示: 归位琥珀, 不占主题紫 (避免"警示被当装饰") */
html.hw-theme .c-warn,
html.hw-theme [class*="caution"],
html.hw-theme .hw-livechip.warn{color:#E8663D!important}

/* ── ⑬ 降噪 ─────────────────────────────────────────────── */
/* LIVE 胶囊: 荧光绿 → 紫线描边 + 低饱和绿点 */
html.hw-theme.v16-on .hw-nav .hw-livechip,
html.hw-theme .hw-livechip{
  color:#6fbf9b!important;
  background:rgba(46,158,122,.08)!important;
  border-color:rgba(77,124,254,.24)!important;
}
html.hw-theme .hw-livechip::before{
  box-shadow:0 0 5px rgba(111,191,155,.6)!important;
}
html.hw-theme .hw-statusbar .ss-k,
html.hw-theme .hw-nav-live .nl-k,
html.hw-theme .ss-k{color:#787C90!important}
html.hw-theme .hw-statusbar .ss-v.na,
html.hw-theme .ss-v.na{color:#63667A!important}
html.hw-theme .hw-statusbar .ss-v.ok{color:#6fbf9b!important}
html.hw-theme .hk-u,
html.hw-theme .kpi .value span,
html.hw-theme .hk-s{color:#9BA0B8!important}
html.hw-theme .v13-on .kpi .value span,
html.hw-theme.v13-on .kpi .value span{color:#9BA0B8!important;-webkit-text-fill-color:#9BA0B8!important}

/* ── ⑭ 无障碍 ────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce){
  html.hw-theme .hm-rise,
  html.hw-theme .hm-focus,
  html.hw-theme .hm-row,
  html.hw-theme .hm-num,
  html.hw-theme .hm-sweep::after,
  html.hw-theme .tab-page.active.hm-page{animation:none!important;opacity:1!important;
    transform:none!important;filter:none!important}
  html.hw-theme .hm-pulse{animation:none!important}
}
