/**
 * 零号员工·日间主题覆盖层（零编译挂件配套样式）
 * ----------------------------------------------------------------
 * 全部规则以 html.ze-light 作用域生效，由 theme-widget.js 切换该 class；
 * 不带 ze-light 时本文件零副作用，夜间即编译产物自带的深色科技风。
 *
 * 设计语言：工行红 #c7000b 为核心色，白色为主底色，金色细网格底纹点缀；
 * 图表卡片与钻取弹窗同样转白（后端图表文字/轴线用中性灰蓝 #8891a7，
 * 深浅两底均可读，canvas 无需随主题重渲染）；
 * 唯一深色孤岛：.thinking-overlay 全屏分析动画，深色更有引擎氛围，
 * 孤岛内部通过重新声明 CSS 变量恢复夜间取值，内部规则无需逐条覆盖。
 */

/* ---------------- 设计 token 覆盖 ---------------- */
html.ze-light {
  --bg-deep: #faf8f5;
  --bg-panel: rgba(255, 255, 255, .92);
  --border-glow: rgba(199, 0, 11, .3);
  --text-main: #2a2a35;
  --text-sub: rgba(42, 42, 53, .55);
}

/* 深色孤岛：恢复夜间变量，内部引用 var(...) 的规则自动回到深色取值；
   color 需显式重置，否则会从 body 继承到日间的深色文字 */
html.ze-light .thinking-overlay {
  --bg-panel: rgba(18, 24, 46, .72);
  --text-main: hsla(0, 0%, 100%, .92);
  --text-sub: hsla(0, 0%, 100%, .55);
  color: var(--text-main);
}

/* ---------------- 页面背景：白底 + 金色细网格底纹 ---------------- */
html.ze-light .app-bg {
  background:
    radial-gradient(ellipse 60% 40% at 15% 0, rgba(199, 0, 11, .05), transparent 60%),
    radial-gradient(ellipse 50% 35% at 90% 10%, rgba(191, 155, 72, .12), transparent 60%),
    linear-gradient(rgba(191, 155, 72, .05) 1px, transparent 0),
    linear-gradient(90deg, rgba(191, 155, 72, .05) 1px, transparent 0),
    linear-gradient(160deg, #fdfcfa, #faf8f5 55%, #f6f0e6);
  background-size: auto, auto, 42px 42px, 42px 42px, auto;
}

/* ---------------- 顶栏 ---------------- */
html.ze-light .navbar {
  background: linear-gradient(90deg, rgba(199, 0, 11, .07), rgba(255, 255, 255, .82) 55%);
  border-bottom: 1px solid rgba(199, 0, 11, .18);
  box-shadow: 0 2px 14px rgba(160, 120, 60, .08);
}
html.ze-light .model-badge {
  color: #a06a00;
  background: rgba(245, 166, 35, .1);
  border-color: rgba(184, 134, 11, .35);
}
/* 「重新上传」按钮（顶栏 + 识别页底部）带内联白色文字/边框样式，
   白底下会隐形，需 !important 压过内联声明 */
html.ze-light .navbar .el-button.is-plain,
html.ze-light .rec-footer .el-button.is-plain {
  color: #c7000b !important;
  border-color: rgba(199, 0, 11, .45) !important;
  background: rgba(199, 0, 11, .04) !important;
}
html.ze-light .navbar .el-button.is-plain:hover,
html.ze-light .rec-footer .el-button.is-plain:hover {
  color: #a00009 !important;
  background: rgba(199, 0, 11, .12) !important;
}

/* ---------------- 玻璃面板 → 白卡 ---------------- */
html.ze-light .glass-panel {
  background: var(--bg-panel);
  border: 1px solid rgba(42, 42, 53, .08);
  box-shadow: 0 8px 28px rgba(160, 120, 60, .1);
}
html.ze-light .glass-panel:hover {
  border-color: var(--border-glow);
  box-shadow: 0 8px 32px rgba(199, 0, 11, .14);
}
/* 图表卡片：随 glass-panel 一起转白，仅重调卡内文字与徽标对比度 */
html.ze-light .chart-insight {
  color: rgba(42, 42, 53, .65);
  border-top-color: rgba(42, 42, 53, .14);
}
html.ze-light .ai-corner {
  color: #a06a00;
  border-color: rgba(184, 134, 11, .45);
  background: rgba(245, 166, 35, .1);
}

/* ---------------- 首页 ---------------- */
html.ze-light .feat {
  background: #fff;
  border: 1px solid rgba(42, 42, 53, .08);
  box-shadow: 0 4px 16px rgba(160, 120, 60, .07);
}
html.ze-light .feat i { color: #b8860b; }
html.ze-light .upload-zone { border-color: rgba(199, 0, 11, .4); }
html.ze-light .up-icon { text-shadow: 0 0 18px rgba(232, 72, 63, .25); }
html.ze-light .rec-ok { text-shadow: none; color: #1c9e56; }
html.ze-light .t-dimension { color: #1873b8; border-color: rgba(24, 115, 184, .35); background: rgba(24, 115, 184, .07); }
html.ze-light .t-metric { color: #c7000b; border-color: rgba(199, 0, 11, .35); background: rgba(199, 0, 11, .06); }
html.ze-light .t-date { color: #a06a00; border-color: rgba(184, 134, 11, .4); background: rgba(245, 166, 35, .08); }

/* 字段悬浮说明气泡（原为强制深色 !important，需同级覆盖） */
html.ze-light .field-pop {
  background: #fff !important;
  border: 1px solid rgba(199, 0, 11, .25) !important;
  color: #3a3a45 !important;
  box-shadow: 0 8px 24px rgba(160, 120, 60, .18) !important;
}
html.ze-light .field-pop .popper__arrow:after { border-top-color: #fff !important; }
html.ze-light .field-pop .pop-title { color: #b8860b; }

/* ---------------- 驾驶舱（DOM 部分） ---------------- */
html.ze-light .conclusion-text { color: #3a3a45; }
html.ze-light .model-name { color: #a06a00; }
html.ze-light .kpi-trend.up { color: #1c9e56; }
html.ze-light .kpi-value {
  background: linear-gradient(90deg, #c7000b, #b8860b);
  -webkit-background-clip: text;
  background-clip: text;
}
html.ze-light .kpi-unit { -webkit-text-fill-color: rgba(42, 42, 53, .55); }

/* AI 经营报告（白卡上的 markdown 配色） */
html.ze-light .report-content { color: #3a3a45; }
html.ze-light .markdown-body h2 { color: #c7000b; border-left-color: #c7000b; }
html.ze-light .markdown-body h3 { color: #a06a00; }
html.ze-light .markdown-body strong { color: #2a2a35; }
html.ze-light .markdown-body hr { border-top-color: rgba(42, 42, 53, .15); }

/* ---------------- Element UI ---------------- */
html.ze-light .el-table td.el-table__cell,
html.ze-light .el-table th.el-table__cell.is-leaf { border-color: rgba(42, 42, 53, .1) !important; }
html.ze-light .el-table--enable-row-hover .el-table__body tr:hover > td.el-table__cell {
  background: rgba(199, 0, 11, .05) !important;
}
/* 弹窗统一转白（含钻取弹窗 drill-dialog） */
html.ze-light .el-dialog {
  background: #fff;
  border: 1px solid rgba(199, 0, 11, .18);
  box-shadow: 0 20px 60px rgba(60, 40, 20, .2);
}
/* 钻取弹窗（AI 分析界面）：标题/洞察文字由白色系转深色系 */
html.ze-light .drill-title { color: #2a2a35; }
html.ze-light .drill-insight {
  border-color: rgba(184, 134, 11, .35);
  background: rgba(245, 166, 35, .07);
}
html.ze-light .insight-head { color: #a06a00; }
html.ze-light .insight-body { color: #3a3a45; }
html.ze-light .insight-body strong { color: #c7000b; }
html.ze-light .insight-model { color: rgba(42, 42, 53, .38); }
html.ze-light ::-webkit-scrollbar-thumb { background: rgba(199, 0, 11, .3); }
html.ze-light ::-webkit-scrollbar-track { background: rgba(42, 42, 53, .05); }

/* ---------------- 挂件：预警中心 ---------------- */
html.ze-light .ze-al-pill {
  background: rgba(255, 255, 255, .97);
  border-color: rgba(199, 0, 11, .35);
  box-shadow: 0 6px 20px rgba(160, 120, 60, .18);
}
html.ze-light .ze-al-pill-txt { color: #2a2a35; }
html.ze-light .ze-al-panel {
  background: rgba(255, 255, 255, .98);
  border-color: rgba(199, 0, 11, .25);
  box-shadow: 0 12px 40px rgba(60, 40, 20, .22);
}
html.ze-light .ze-al-summary { color: #3a3a45; border-bottom-color: rgba(42, 42, 53, .1); }
html.ze-light .ze-al-item { color: #3a3a45; }
html.ze-light .ze-al-empty { color: rgba(42, 42, 53, .5); }
html.ze-light .ze-al-actions { border-top-color: rgba(42, 42, 53, .1); }
html.ze-light .ze-al-btn { background: rgba(199, 0, 11, .06); border-color: rgba(199, 0, 11, .4); color: #c7000b; }
html.ze-light .ze-al-btn:hover { background: rgba(199, 0, 11, .14); color: #a00009; }

/* ---------------- 挂件：聊天助手（面板转白，红色头部保留） ---------------- */
html.ze-light #ze-chat-panel {
  background: rgba(255, 255, 255, .99);
  border-color: rgba(199, 0, 11, .25);
  box-shadow: 0 12px 40px rgba(60, 40, 20, .22);
}
html.ze-light .ze-msg-bot {
  background: rgba(42, 42, 53, .05);
  color: #333;
  border-color: rgba(42, 42, 53, .08);
}
html.ze-light .ze-msg-bot b { color: #a06a00; }
html.ze-light .ze-msg-bot code { background: rgba(245, 166, 35, .16); color: #a06a00; }
html.ze-light .ze-sug { background: rgba(199, 0, 11, .06); border-color: rgba(199, 0, 11, .4); color: #c7000b; }
html.ze-light .ze-sug:hover { background: rgba(199, 0, 11, .14); color: #a00009; }
html.ze-light .ze-typing i { background: rgba(42, 42, 53, .4); }
html.ze-light .ze-chat-foot { border-top-color: rgba(42, 42, 53, .1); }
html.ze-light .ze-chat-input {
  background: rgba(42, 42, 53, .04);
  border-color: rgba(42, 42, 53, .15);
  color: #2a2a35;
}
html.ze-light .ze-chat-input::placeholder { color: rgba(42, 42, 53, .4); }
html.ze-light .ze-mini-chart { background: rgba(42, 42, 53, .04); border-color: rgba(42, 42, 53, .08); }
html.ze-light .ze-mc-title { color: rgba(42, 42, 53, .55); }
html.ze-light .ze-mc-row { color: #3a3a45; }
html.ze-light .ze-mc-track { background: rgba(42, 42, 53, .08); }
html.ze-light .ze-mc-val { color: #a06a00; }

/* ---------------- 挂件：语音播报 / 样例数据 ---------------- */
html.ze-light #ze-voice-fab {
  background: #fff;
  border-color: rgba(199, 0, 11, .4);
  box-shadow: 0 4px 16px rgba(160, 120, 60, .2);
}
html.ze-light #ze-voice-fab svg { fill: #c7000b; }
html.ze-light .ze-voice-tip {
  background: #fff;
  border-color: rgba(199, 0, 11, .3);
  color: #3a3a45;
  box-shadow: 0 6px 20px rgba(60, 40, 20, .18);
}
html.ze-light #ze-sample-btn {
  color: #a06a00;
  border-color: rgba(184, 134, 11, .5);
  background: rgba(245, 166, 35, .1);
}
html.ze-light #ze-sample-btn:hover { background: rgba(245, 166, 35, .22); color: #7c5200; }
