/* ═══════════════════════════════════════════════════════
   Dark Mode 超轻量覆盖（已合并至 app.css 设计令牌）
   仅保留 app.css 未覆盖的特殊组件与 JS 内联样式兜底
   ═══════════════════════════════════════════════════════ */
body:not(.day) {
  background: var(--bg) !important;
  color: var(--text) !important;
}

/* ── 卡片 ── */
body:not(.day) .card {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  box-shadow: var(--shadow-sm) !important;
}
body:not(.day) .card-title { color: var(--text) !important; }

/* ── 表单聚焦 ── */
body:not(.day) .form-item input:focus,
body:not(.day) .form-item select:focus,
body:not(.day) .form-item textarea:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.15) !important;
}

/* ── 按钮禁用态 ── */
body:not(.day) .btn-primary:disabled {
  background: #3a3a4a !important;
  border-color: #3a3a4a !important;
  color: #6a6a7a !important;
}

/* ── 表格 ── */
body:not(.day) th {
  background: var(--bg3) !important;
  color: var(--text2) !important;
  border-bottom-color: var(--border) !important;
}
body:not(.day) td {
  border-bottom-color: #1e1e1e !important;
  color: var(--text) !important;
}
body:not(.day) tr:hover td { background: var(--bg3) !important; }

/* ── 标签 ── */
body:not(.day) .tag-green { background: var(--tag-green); color: var(--tag-green-text); }
body:not(.day) .tag-blue { background: var(--tag-blue); color: var(--tag-blue-text); }
body:not(.day) .tag-orange { background: var(--tag-orange); color: var(--tag-orange-text); }
body:not(.day) .tag-red { background: var(--tag-red); color: var(--tag-red-text); }

/* ── 统计卡 ── */
body:not(.day) .stat-card {
  background: var(--bg2) !important;
  border-color: var(--border) !important;
}
body:not(.day) .stat-card .num { color: var(--accent) !important; }
body:not(.day) .stat-card .label { color: var(--text2) !important; }

/* ── 日志条（微博跟帖等 JS 生成） ── */
body:not(.day) .wl-t { color: #5a5a6e; }
body:not(.day) .wl-m { color: var(--text2); }
body:not(.day) .wl-ok { background: rgba(34,197,94,.13); border-left-color: rgba(74,222,128,.5); }
body:not(.day) .wl-ok .wl-m { color: var(--success); }
body:not(.day) .wl-fail { background: rgba(239,68,68,.13); border-left-color: rgba(248,113,113,.5); }
body:not(.day) .wl-fail .wl-m { color: var(--error); }
body:not(.day) .wl-end { background: rgba(255,255,255,.09); border-left-color: rgba(255,255,255,.32); }
body:not(.day) .wl-end .wl-m { color: #f1f1f7; }
body:not(.day) .wl-warn { background: rgba(245,158,11,.13); border-left-color: rgba(251,191,36,.5); }
body:not(.day) .wl-warn .wl-m { color: var(--warning); }
body:not(.day) .wl-start { background: rgba(59,130,246,.13); border-left-color: rgba(96,165,250,.5); }
body:not(.day) .wl-start .wl-m { color: #7cb3ff; }

/* ── 微博卡片 ── */
body:not(.day) .wt-card { border: 1px solid var(--border); }
body:not(.day) .wt-post { color: var(--text); }
body:not(.day) .wt-me { background: rgba(96,165,250,.12); }
body:not(.day) .wt-them { background: rgba(255,255,255,.06); }
body:not(.day) .wt-who { color: var(--accent); }
body:not(.day) .wt-txt { color: var(--text2); }

/* ── 模态框 ── */
body:not(.day) .modal {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  box-shadow: var(--shadow) !important;
}
body:not(.day) .modal-title { color: var(--text) !important; }

/* ── 二维码 ── */
body:not(.day) .qr-wrap img { border-color: var(--border); }

/* ── SOP 卡片 ── */
body:not(.day) .sop-rule-card {
  background: var(--bg3) !important;
  border-color: var(--border) !important;
}

/* ── 饼图图例 ── */
body:not(.day) .analysis-pie-legend-item { color: var(--text) !important; }

/* ── 代码片段 ── */
body:not(.day) code {
  background: var(--bg3) !important;
  color: var(--text2) !important;
}

/* ── JS 内联样式兜底（浅色→暗色） ── */
body:not(.day) #weekly-matrix td div[style*="background"]{background:transparent!important;border-color:var(--border)!important}
body:not(.day) #weekly-matrix td div[style*="border:2px dashed"]{border-color:var(--border)!important}
body:not(.day) #weekly-matrix td{background:transparent!important;border:1px solid var(--border)!important}
body:not(.day) #weekly-matrix th{background:transparent!important;color:var(--text2)!important}
body:not(.day) #weekly-matrix td:hover{background:transparent!important}
body:not(.day) td[style*="background:#f8f9fb"]{background:transparent!important;border-right-color:var(--border)!important}
body:not(.day) [style*="background:#f0f7ff"]{background:transparent!important}
body:not(.day) [style*="background:#fffbe6"]{background:transparent!important}
body:not(.day) [style*="background:#f9f9f9"]{background:transparent!important}
body:not(.day) [style*="background:#fafafa"]{background:transparent!important}
body:not(.day) [style*="background:#f8f9fb"]{background:transparent!important}
body:not(.day) [style*="background:#f5f7fa"]{background:transparent!important}
body:not(.day) [style*="background:#f5f5f5"]{background:transparent!important}
body:not(.day) [style*="background:#f0f0f0"]{background:transparent!important}
body:not(.day) [style*="background:#fff7e6"]{background:transparent!important;border-color:var(--border)!important;color:var(--text2)!important}
body:not(.day) [style*="background:#f6ffed"]{background:transparent!important;border-color:var(--border)!important;color:var(--text2)!important}
body:not(.day) [style*="background:#e8f3ff"]{background:transparent!important;border-color:var(--border)!important;color:var(--text2)!important}
body:not(.day) [style*="background:#fff"]{background:transparent!important}
body:not(.day) [style*="color:#1a1f2e"]{color:var(--text)!important}
body:not(.day) [style*="color:#666"]{color:var(--text2)!important}
body:not(.day) [style*="color:#999"]{color:var(--text2)!important}
body:not(.day) [style*="color:#d9d9d9"]{color:var(--border)!important}
body:not(.day) [style*="color:#d46b08"]{color:var(--accent)!important}
body:not(.day) [style*="color:#bbb"]{color:var(--text2)!important}
body:not(.day) [style*="color:#ccc"]{color:var(--text2)!important}
body:not(.day) [style*="border-color:#e0e0e0"]{border-color:var(--border)!important}
body:not(.day) [style*="border-color:#e8eaed"]{border-color:var(--border)!important}
body:not(.day) [style*="#e0e0e0"]{border-color:var(--border)!important}
body:not(.day) [style*="#e8e8e8"]{border-color:var(--border)!important}
/* ── 2026-11-05 补兜底：JS 注入蓝系 / 面板亮灰 / 群选中态 ── */
body:not(.day) [style*="background:#1677ff"]{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--accent-text)!important}
body:not(.day) [style*="color:#1677ff"]{color:var(--accent)!important}
body:not(.day) [style*="border-color:#1677ff"]{border-color:var(--accent)!important}
body:not(.day) [style*="border:2px solid #1677ff"]{border-color:var(--accent)!important}
body:not(.day) [style*="background:#e6f4ff"]{background:rgba(201,169,97,.12)!important;border-color:var(--accent)!important}
body:not(.day) [style*="background:#e8f3ff"]{background:rgba(201,169,97,.12)!important}
body:not(.day) [style*="background:#f0f2f5"]{background:var(--bg2)!important}

/* ── 2026-11-06 UI 统一补充兜底：JS 动态注入亮色 ── */
body:not(.day) [style*="background:#f5f5f5"]{background:var(--bg3)!important}
body:not(.day) [style*="background:#f0f0f0"]{background:var(--bg3)!important}
body:not(.day) [style*="background:#f7f8fa"]{background:var(--bg3)!important}
body:not(.day) [style*="background:#f9f9f9"]{background:var(--bg3)!important}
body:not(.day) [style*="background:#f5f7fa"]{background:var(--bg3)!important}
body:not(.day) [style*="background:#f0f5ff"]{background:var(--bg3)!important;border-color:var(--border)!important}
body:not(.day) [style*="background:#f0f2f5"]{background:var(--bg3)!important}
body:not(.day) [style*="border:1px solid #d9d9d9"]{border-color:var(--border)!important}
body:not(.day) [style*="border:1px solid #e0e0e0"]{border-color:var(--border)!important}
body:not(.day) [style*="border:1px solid #e5e5e5"]{border-color:var(--border)!important}
body:not(.day) [style*="border:1px solid #e8e8e8"]{border-color:var(--border)!important}
body:not(.day) [style*="border:1px solid #eee"]{border-color:var(--border)!important}
body:not(.day) [style*="border:1px solid #f0f0f0"]{border-color:var(--border)!important}
body:not(.day) [style*="border-bottom:1px solid #f0f0f0"]{border-bottom-color:var(--border)!important}
body:not(.day) [style*="border-top:1px solid #f0f0f0"]{border-top-color:var(--border)!important}
body:not(.day) [style*="border-top:1px solid #f2f2f2"]{border-top-color:var(--border)!important}
body:not(.day) [style*="border-right:1px solid #f0f0f0"]{border-right-color:var(--border)!important}
body:not(.day) [style*="border-color:#ffe0e0"]{border-color:var(--tag-red)!important}
body:not(.day) [style*="background:#ffe0e0"]{background:var(--tag-red)!important}
