/* ============================================================
   dark.css — 暗色主题（[data-theme="dark"] 作用域）
   原则：深色底 + 提亮文字/描边/图标；品牌紫保留但提高亮度保对比；
   阴影减弱、靠表面明度分层；内联浅色 tint 用 !important 接管。
   ============================================================ */

[data-theme="dark"] {
  /* 表面 */
  --bg-page:   #0e1117;
  --bg-card:   #161b26;
  --bg-subtle: #1b2130;
  --bg-mute:   #202839;
  --surface:   #161b26;
  --surface-2: #1d2432;
  --bubble-ai: #1d2432;
  --field-bg:  #10141d;
  --chip-bg:   #1a2130;
  --nav-bg:    rgba(14,17,23,.92);

  /* 文字 */
  --text-1: #e9edf5;
  --text-2: #b6c0d0;
  --text-3: #8b96a8;
  --text-4: #6d7889;

  /* 边框 */
  --border:      #2a3242;
  --border-soft: #222a3a;

  /* 品牌在深色下的提亮变体 */
  --brand-800: #c4b5fd;
  --brand-700: #b39dfc;
  --brand-600: #a78bfa;
  --indigo-d:  #a5b4fc;

  /* 阴影收敛 */
  --sh-xs: 0 1px 2px rgba(0,0,0,.4);
  --sh-sm: 0 2px 8px rgba(0,0,0,.35);
  --sh-md: 0 4px 16px -2px rgba(0,0,0,.45);
  --sh-lg: 0 12px 32px -8px rgba(0,0,0,.55);
  --sh-brand: 0 10px 30px -12px rgba(124,58,237,.45);
}

/* ---- 表面替换 ---- */
[data-theme="dark"] #app { background: var(--bg-page); }
[data-theme="dark"] .card,
[data-theme="dark"] .list,
[data-theme="dark"] .tile,
[data-theme="dark"] .kn-card,
[data-theme="dark"] .scenario-card,
[data-theme="dark"] .case-card,
[data-theme="dark"] .formula-card,
[data-theme="dark"] .stat-box,
[data-theme="dark"] .info-block,
[data-theme="dark"] .insight-card,
[data-theme="dark"] .q-card,
[data-theme="dark"] .sug-card,
[data-theme="dark"] .enne-card,
[data-theme="dark"] .rec-item,
[data-theme="dark"] .mode-card,
[data-theme="dark"] .step-node,
[data-theme="dark"] .plan-card,
[data-theme="dark"] .modal,
[data-theme="dark"] .sheet,
[data-theme="dark"] .pick-card,
[data-theme="dark"] .msg-avatar,
[data-theme="dark"] .tool-item .ti-box,
[data-theme="dark"] .search-bar { background: var(--surface); }
[data-theme="dark"] .sheet .grab { background: var(--border); }

[data-theme="dark"] .input,
[data-theme="dark"] .textarea,
[data-theme="dark"] .select { background: var(--field-bg); border-color: var(--border); color: var(--text-1); }
[data-theme="dark"] .input:focus, [data-theme="dark"] .textarea:focus { border-color: var(--brand-500); }
[data-theme="dark"] .chip { background: var(--chip-bg); color: var(--text-2); border-color: var(--border); }
[data-theme="dark"] .chip.active { color: #fff; border-color: transparent; }

/* ---- 导航 / Tab ---- */
[data-theme="dark"] .navbar, [data-theme="dark"] .tabbar { background: var(--nav-bg); border-color: var(--border-soft); }
[data-theme="dark"] .tabbar .tab { color: #6d7889; }
[data-theme="dark"] .tabbar .tab.active { color: var(--brand-600); }
[data-theme="dark"] .dlg-scene { background: var(--nav-bg); }
[data-theme="dark"] .dlg-input { background: var(--nav-bg); }

/* ---- 对话气泡 ---- */
[data-theme="dark"] .bubble.ai { background: var(--bubble-ai); color: var(--text-1); border-color: rgba(255,255,255,.06); }
[data-theme="dark"] .bubble.ai::before { border-color: transparent var(--bubble-ai) transparent transparent; }
[data-theme="dark"] .emotion-chip { background: rgba(255,255,255,.06); }
[data-theme="dark"] .msg-act-btn { color: var(--indigo-d); }
[data-theme="dark"] .opening-card { background: rgba(124,58,237,.12); border-color: rgba(124,58,237,.25); }

/* ---- 标签深色变体 ---- */
[data-theme="dark"] .tag-indigo { background: rgba(99,102,241,.18); color: #a5b4fc; }
[data-theme="dark"] .tag-green  { background: rgba(16,185,129,.16); color: #6ee7b7; }
[data-theme="dark"] .tag-amber  { background: rgba(245,158,11,.16); color: #fcd34d; }
[data-theme="dark"] .tag-rose   { background: rgba(244,63,94,.16);  color: #fda4af; }
[data-theme="dark"] .tag-purple { background: rgba(139,92,246,.18); color: #c4b5fd; }
[data-theme="dark"] .tag-gray   { background: var(--bg-mute); color: var(--text-3); }

/* ---- 内联浅色 tint 卡片接管 ---- */
[data-theme="dark"] .hero-card { background: #1a2130 !important; border-color: #2a3448 !important; }
[data-theme="dark"] .hero-card .hc-title, [data-theme="dark"] .hero-card .hc-sub { color: #dce4f2 !important; }
[data-theme="dark"] .metric-card { background: #1a2130 !important; border-color: #2a3448 !important; }
[data-theme="dark"] .mc-n { color: #c4b5fd !important; }
[data-theme="dark"] #pf-quota .mc-n { color: #6ee7b7 !important; }
[data-theme="dark"] .hl-card { background: rgba(99,102,241,.14); }
[data-theme="dark"] .auth-card { background: rgba(22,27,38,.92); border-color: var(--border); }
[data-theme="dark"] .auth-wrap { background: linear-gradient(160deg,#0e1117 0%,#131826 55%,#171233 100%); }
[data-theme="dark"] .gender-pick .gp { background: var(--surface); }
[data-theme="dark"] .seg button.active { background: var(--surface-2); color: var(--brand-600); }

/* ---- 文字/数字在深色下的可读性 ---- */
[data-theme="dark"] .sb-n, [data-theme="dark"] .dr-score { color: #c4b5fd; }
[data-theme="dark"] .formula-struct { color: #c4b5fd; background: rgba(99,102,241,.12); }
[data-theme="dark"] .grad-text, [data-theme="dark"] .grad-text-2 { background: linear-gradient(135deg,#a78bfa,#8ba3f9); -webkit-background-clip: text; background-clip: text; }
[data-theme="dark"] .ba-col.bad { background: rgba(239,68,68,.14); color: #fca5a5; }
[data-theme="dark"] .ba-col.good { background: rgba(16,185,129,.14); color: #6ee7b7; }
[data-theme="dark"] .strategy-box { background: var(--surface-2); }
[data-theme="dark"] .score-mini .sm { background: var(--surface-2); }
[data-theme="dark"] .sm .v { color: #c4b5fd; }

/* ---- 图表 / 骨架 / 杂项 ---- */
[data-theme="dark"] .skeleton { background: linear-gradient(90deg,#1b2130 25%,#232b3b 50%,#1b2130 75%); background-size:400% 100%; }
[data-theme="dark"] .switch { background: #3a4356; }
[data-theme="dark"] .kn-arrow, [data-theme="dark"] .li-arrow { color: #4a5568; }
[data-theme="dark"] .insight-tag { background: rgba(99,102,241,.2); color: #a5b4fc; }
[data-theme="dark"] .badge-gold { box-shadow: 0 4px 12px rgba(245,158,11,.25); }
[data-theme="dark"] .page-foot .pf-slogan { color: var(--text-4); }
[data-theme="dark"] .empty .e-ico { color: var(--text-4); }
[data-theme="dark"] .float-back.dark { background: rgba(255,255,255,.14); }
[data-theme="dark"] { --ok-text: #6ee7b7; --warn-text: #fcd34d; --body-bg: #0f0b1e; }
[data-theme="dark"] .card { background: var(--surface) !important; border-color: var(--border-soft) !important; }
[data-theme="dark"] #pf-eq .mc-ico { color: #a5b4fc !important; }
[data-theme="dark"] #pf-quota .mc-ico { color: #6ee7b7 !important; }
[data-theme="dark"] .step-node { background: var(--surface-2); color: var(--text-3); border-color: var(--border); }
[data-theme="dark"] .btn-ghost { background: var(--surface-2); color: var(--text-1); border-color: var(--border); }
[data-theme="dark"] .btn-soft { background: rgba(139,92,246,.18); color: #c4b5fd; }
[data-theme="dark"] .list-row .li-title { color: var(--text-1); }
[data-theme="dark"] .sug-pc .pc.pro { color: #4ade80; }
[data-theme="dark"] .sug-pc .pc.con { color: #f87171; }
[data-theme="dark"] .st-eg { background: rgba(99,102,241,.12); }
