/* ═══════════════════════════════════════════
   钢子出击 - iOS 26 Liquid Glass 白天模式
   ═══════════════════════════════════════════ */

body.light-theme {
  /* ── 基础色板 ── */
  --bg: #f2f2f7;
  --bg2: rgba(255,255,255,0.72);
  --card: rgba(255,255,255,0.68);
  --card2: rgba(255,255,255,0.55);
  --card-hover: rgba(255,255,255,0.85);
  --border: rgba(0,0,0,0.06);
  --border2: rgba(0,0,0,0.10);
  --text:#1c1c1e;
  --text2:#48484a;
  --text3:#595959; /* WCAG AA 修复：原 #636366 对比度不足 */
  --text-primary: #1c1c1e;
  --text-secondary: #48484a;
  --bg-tertiary: rgba(245,245,247,0.8);
  --accent: #007aff;
  --border-color: rgba(0,0,0,0.08);
  --text-muted: #595959;
  --muted: #595959;
  --surface: rgba(245,245,247,0.8);
  --green: #34c759;
  --green2: #28a745;
  --green-bg: rgba(52,199,89,0.12);
  --red: #ff3b30;
  --red2: #d32f2f;
  --red-bg: rgba(255,59,48,0.10);
  --yellow: #ff9500;
  --yellow-bg: rgba(255,149,0,0.10);
  --blue: #007aff;
  --blue-bg: rgba(0,122,255,0.10);
  --purple: #af52de;
  --purple-bg: rgba(175,82,222,0.10);
  --cyan: #32ade6;
  --cyan-bg: rgba(50,173,230,0.10);
  --orange: #ff9500;
  --orange-bg: rgba(255,149,0,0.10);
  --r: 14px;
  --r2: 20px;
  --shadow: 0 2px 16px rgba(0,0,0,0.06), 0 0 1px rgba(0,0,0,0.08);
  --glow-green: 0 0 20px rgba(52,199,89,0.12);
  --glow-red: 0 0 20px rgba(255,59,48,0.12);

  /* ── 覆盖背景 ── */
  background: #f2f2f7 !important;
  background-image:
    radial-gradient(ellipse 80% 60% at 20% -10%, rgba(0,122,255,0.06) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 90% 90%, rgba(52,199,89,0.05) 0%, transparent 50%) !important;
  color: var(--text);
}

/* ── 粒子画布：白天模式下隐藏 ── */
body.light-theme #particleCanvas {
  opacity: 0.15;
}

/* ── 滚动条 ── */
body.light-theme ::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.15);
}
body.light-theme ::-webkit-scrollbar-thumb:hover {
  background: rgba(0,0,0,0.25);
}

/* ── 底部行情条 ── */
body.light-theme .ticker-bar {
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border-top: 1px solid rgba(0,0,0,0.06);
  border-bottom: none;
}

/* ── 信号滚动条 ── */
body.light-theme .signal-ticker {
  background: linear-gradient(90deg, rgba(59,130,246,.04), rgba(0,200,130,.04), rgba(168,85,247,.04));
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
body.light-theme .signal-ticker::before {
  background: linear-gradient(90deg, rgba(255,255,255,0.9), transparent);
}
body.light-theme .signal-ticker::after {
  background: linear-gradient(270deg, rgba(255,255,255,0.9), transparent);
}

/* ── Header：液态玻璃 ── */
body.light-theme .sticky-top {
  background: rgba(255,255,255,0.72);
  backdrop-filter: saturate(180%) blur(20px);
  -webkit-backdrop-filter: saturate(180%) blur(20px);
}
body.light-theme .header {
  border-bottom: 1px solid rgba(0,0,0,0.08);
}
body.light-theme .logo-icon {
  background: linear-gradient(135deg, #007aff, #5ac8fa);
  box-shadow: 0 2px 12px rgba(0,122,255,0.25);
}
body.light-theme .logo h1 span {
  color: #007aff;
  background: rgba(0,122,255,0.10);
}
body.light-theme .status-pill {
  background: rgba(52,199,89,0.12);
  color: #28a745;
  border-color: rgba(52,199,89,0.30);
  text-shadow: none;
}
body.light-theme .status-pill.is-offline {
  background: rgba(255,59,48,0.10);
  color: #d32f2f;
  border-color: rgba(255,59,48,0.30);
}
body.light-theme .header-btn {
  background: rgba(255,255,255,0.6);
  border: 1px solid rgba(0,0,0,0.08);
  color: #48484a;
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
body.light-theme .header-btn:hover {
  background: rgba(255,255,255,0.85);
  color: #1c1c1e;
}

/* ── 导航 Tab ── */
body.light-theme .nav-tabs {
  background: rgba(255,255,255,0.6);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
body.light-theme .nav-tab {
  color: #8e8e93;
}
body.light-theme .nav-tab:hover {
  color: #48484a;
}
body.light-theme .nav-tab.active {
  color: #007aff;
  border-bottom-color: #007aff;
}

/* ── 卡片：毛玻璃 ── */
body.light-theme .card {
  background: rgba(255,255,255,0.68);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(0,0,0,0.12);
  box-shadow: 0 1px 4px rgba(0,0,0,0.08), 0 4px 16px rgba(0,0,0,0.05);
}
body.light-theme .card-head {
  border-bottom: 1px solid rgba(0,0,0,0.10);
}
body.light-theme .badge-yellow {
  color: #b45309;
  background: rgba(245,158,11,0.12);
}
body.light-theme .badge-gray {
  color: #475569;
  background: rgba(100,116,139,0.12);
}

/* ── 概览统计卡片 ── */
body.light-theme .stat-card {
  background: rgba(255,255,255,0.70);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.50);
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
body.light-theme .stat-card:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.06);
  border-color: rgba(0,0,0,0.08);
}

/* ── AI Hero 卡片 ── */
body.light-theme .ai-hero {
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,0.5);
  box-shadow: 0 2px 16px rgba(0,0,0,0.04);
}
body.light-theme .ai-hero.signal-buy {
  border-color: rgba(52,199,89,0.25);
}
body.light-theme .ai-hero.signal-sell {
  border-color: rgba(255,59,48,0.25);
}
body.light-theme .ai-hero.init-state {
  background: linear-gradient(180deg, rgba(255,255,255,0.72) 0%, rgba(0,122,255,0.03) 100%);
}

/* ── 角色卡 ── */
body.light-theme .role-card {
  background: rgba(255,255,255,0.65);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.45);
  box-shadow: 0 1px 4px rgba(0,0,0,0.03);
}
body.light-theme .role-card:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,0.06);
}

/* ── 裁决区 ── */
body.light-theme .debate-verdict {
  background: rgba(245,245,247,0.8);
  border: 1px solid rgba(0,0,0,0.06);
}

/* ── 骨架屏 ── */
body.light-theme .skeleton {
  background: linear-gradient(90deg, rgba(0,0,0,0.04) 25%, rgba(0,0,0,0.07) 37%, rgba(0,0,0,0.04) 63%);
  background-size: 400% 100%;
}
body.light-theme .skeleton-card {
  background: rgba(255,255,255,0.5);
  border: 1px solid rgba(0,0,0,0.05);
}

/* ── 按钮 ── */
body.light-theme .init-btn {
  background: linear-gradient(135deg, #007aff, #5ac8fa);
  border-color: transparent;
  box-shadow: 0 4px 16px rgba(0,122,255,0.20);
}
body.light-theme .debate-btn {
  border: 1px solid rgba(0,122,255,0.30);
  background: rgba(0,122,255,0.08);
  color: #007aff;
}
body.light-theme .debate-btn:hover {
  background: #007aff;
  color: #fff;
}

/* ── 表单 ── */
body.light-theme .symbol-select {
  background: rgba(255,255,255,0.7);
  border: 1px solid rgba(0,0,0,0.08);
  color: #1c1c1e;
}

/* ── 聊天窗 ── */
body.light-theme .chat-fab {
  background: linear-gradient(135deg, #007aff, #5ac8fa);
  box-shadow: 0 4px 20px rgba(0,122,255,0.30);
}
body.light-theme .chat-window {
  background: rgba(255,255,255,0.85);
  backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(255,255,255,0.5);
  box-shadow: 0 12px 48px rgba(0,0,0,0.12);
}
body.light-theme .chat-header {
  background: rgba(255,255,255,0.7);
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
body.light-theme .chat-msg.user {
  background: #007aff;
  color: #fff;
}
body.light-theme .chat-msg.assistant {
  background: rgba(245,245,247,0.9);
  color: #48484a;
}
body.light-theme .chat-input-bar {
  background: rgba(255,255,255,0.7);
  border-top: 1px solid rgba(0,0,0,0.06);
}
body.light-theme .chat-input {
  background: rgba(245,245,247,0.9);
  border: 1px solid rgba(0,0,0,0.08);
  color: #1c1c1e;
}
body.light-theme .chat-send {
  background: #007aff;
}

/* ── 配额/成本面板 ── */
body.light-theme .quota-ring::before {
  background: rgba(255,255,255,0.9);
}
body.light-theme .quota-stat-row {
  background: rgba(245,245,247,0.8);
}
body.light-theme .quota-strategy {
  background: rgba(255,149,0,0.06);
  border-left-color: #ff9500;
}
body.light-theme .breakdown-item,
body.light-theme .details-section,
body.light-theme .cost-stat-card {
  background: rgba(245,245,247,0.8);
  border-color: rgba(0,0,0,0.06);
}
body.light-theme .rt-stat,
body.light-theme .model-stat-item {
  background: rgba(245,245,247,0.7);
}
body.light-theme .quota-cost-projection {
  background: rgba(52,199,89,0.06);
  border-color: rgba(52,199,89,0.15);
}

/* ── 免责声明栏 ── */
body.light-theme .disclaimer-bar {
  background: rgba(255,255,255,0.80);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border-top: 1px solid rgba(0,0,0,0.06);
}
body.light-theme .disclaimer-bar-text {
  color: #8e8e93;
}
body.light-theme .disclaimer-bar-text strong {
  color: #ff9500;
}

/* ── 配额说明 ── */
body.light-theme .info-item {
  background: rgba(245,245,247,0.7);
}

/* ── 每日一句 ── */
body.light-theme .daily-quote {
  background: rgba(255,255,255,0.5);
  border-top: 1px solid rgba(0,0,0,0.05);
  color: #8e8e93;
}

/* ── Toast ── */
body.light-theme .app-toast {
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(0,0,0,0.06);
  color: #1c1c1e;
  box-shadow: 0 8px 32px rgba(0,0,0,0.10);
}
body.light-theme .app-confirm-box {
  background: rgba(255,255,255,0.92);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(0,0,0,0.06);
  box-shadow: 0 16px 48px rgba(0,0,0,0.12);
}

/* ── 热力图 ── */
body.light-theme .heatmap-cell {
  color: rgba(0,0,0,0.7);
}

/* ── 风险评估 ── */
body.light-theme .risk-assessment-block,
body.light-theme .debate-risk-assessment {
  background: rgba(255,149,0,0.05);
  border-color: rgba(0,0,0,0.05);
}
body.light-theme .disclaimer-block,
body.light-theme .debate-disclaimer {
  background: rgba(255,149,0,0.06);
  border-color: rgba(255,149,0,0.15);
}

/* ── 信号日志 ── */
body.light-theme .signal-item:hover {
  background: rgba(0,0,0,0.02);
}

/* ── 进度条 ── */
body.light-theme .metric-track,
body.light-theme .progress-track {
  background: rgba(0,0,0,0.04);
}

/* ── 主题切换按钮 ── */
.theme-toggle {
  font-size: 16px;
  padding: 6px 10px;
  cursor: pointer;
  background: none;
  border: 1px solid var(--border);
  border-radius: 8px;
  transition: all 0.3s;
  color: var(--text2);
}
body.light-theme .theme-toggle {
  background: rgba(255,255,255,0.6);
  border-color: rgba(0,0,0,0.08);
}

/* ── 登录页面白天模式 ── */
body.light-theme .login-container {
  background: rgba(255,255,255,0.72);
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.5);
  box-shadow: 0 16px 48px rgba(0,0,0,0.08);
}
body.light-theme .login-input {
  background: rgba(245,245,247,0.9);
  border-color: rgba(0,0,0,0.08);
  color: #1c1c1e;
}
body.light-theme .login-btn {
  background: linear-gradient(135deg, #007aff, #5ac8fa);
}

/* ── 监控面板覆盖 ── */
body.light-theme .health-item {
  background: rgba(245,245,247,0.7);
  border-color: rgba(0,0,0,0.05);
}
body.light-theme .health-item.healthy {
  background: rgba(52,199,89,0.08);
  border-color: rgba(52,199,89,0.20);
}
body.light-theme .health-item.degraded {
  background: rgba(255,149,0,0.08);
  border-color: rgba(255,149,0,0.20);
}
body.light-theme .health-item.unhealthy {
  background: rgba(255,59,48,0.08);
  border-color: rgba(255,59,48,0.20);
}

/* ── 账户总览英雄区 ── */
body.light-theme .account-hero-main {
  background: linear-gradient(135deg, rgba(59,130,246,0.10), rgba(139,92,246,0.08), rgba(59,130,246,0.10));
  background-size: 200% 200%;
  border: 1px solid rgba(59,130,246,0.15);
  box-shadow: 0 2px 20px rgba(59,130,246,0.06), 0 0 0 1px rgba(139,92,246,0.03);
}
body.light-theme .account-hero-value {
  color: var(--green);
}

/* ── 交易面板 ── */
body.light-theme .trade-status-item {
  background: rgba(245,245,247,0.7);
  border-color: rgba(0,0,0,0.05);
}
body.light-theme .trade-balance-item {
  background: rgba(245,245,247,0.7);
  border-color: rgba(0,0,0,0.05);
}
body.light-theme .balance-currency {
  color: #007aff;
}

/* ── 全局过渡动画 ── */
body, body * {
  transition-property: background-color, border-color, color, box-shadow;
  transition-duration: 0s;
}
body.theme-transition, body.theme-transition * {
  transition-duration: 0.35s !important;
  transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1) !important;
}

/* ===== 分析流水亮色适配 ===== */
body.light-theme .ai-feed-item {
  background: rgba(0,0,0,0.03);
  border-color: rgba(0,0,0,0.10);
}
body.light-theme .ai-feed-item:hover {
  background: rgba(0,0,0,0.05);
}
body.light-theme .ai-feed-kpi b {
  color: #1a1a1a;
}
body.light-theme .ai-feed-block {
  background: rgba(0,0,0,0.04);
  border-color: rgba(0,0,0,0.08);
}
body.light-theme .ai-feed-pre {
  color: #222;
}
body.light-theme .ai-feed-details summary {
  color: #1a1a1a;
}
body.light-theme .ai-role-mini {
  background: rgba(0,0,0,0.03);
  border-color: rgba(0,0,0,0.08);
}
body.light-theme .vote-chip {
  background: rgba(0,0,0,0.04);
}
body.light-theme .vote-chip-name {
  color: #333;
}
body.light-theme .ai-trade-badge.filled {
  background: rgba(34,197,94,0.10);
  color: #15803d;
}
body.light-theme .ai-trade-badge.skipped {
  background: rgba(100,116,139,0.08);
  color: #334155;
}
body.light-theme .ai-trade-badge.failed {
  background: rgba(239,68,68,0.08);
  color: #b91c1c;
}
body.light-theme .ai-trade-badge.no-record {
  background: rgba(100,116,139,0.06);
  color: #475569;
}
body.light-theme .ai-feed-tag.hold {
  color: #64748b;
  background: rgba(100,116,139,0.08);
}
/* 深度研判按钮 */
.ai-feed-deep-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: transparent;
  color: var(--text2, #888);
  cursor: pointer;
  transition: background .15s, color .15s;
}
.ai-feed-deep-btn:hover {
  background: var(--blue, #3b82f6);
  color: #fff;
  border-color: var(--blue, #3b82f6);
}



/* ===== 补充亮色覆盖（综合测试修复） ===== */

/* --card-bg 变量定义（引擎状态等组件使用） */
body.light-theme {
  --card-bg: #ffffff;
}

/* 交易记录 */
body.light-theme .trade-record {
  background: rgba(0,0,0,0.02);
  border-bottom-color: rgba(0,0,0,0.06);
}
body.light-theme .trade-record:hover {
  background: rgba(0,0,0,0.04);
}
body.light-theme .trade-detail-top {
  color: #1a1a2e;
}
body.light-theme .trade-detail-bottom {
  color: #666;
}

/* 持仓卡片 */
body.light-theme .pos-card {
  background: #fff;
  border-color: rgba(0,0,0,0.08);
}
body.light-theme .pos-card:hover {
  background: #fafafa;
}

/* 准确率类型项 */
body.light-theme .accuracy-type-item {
  background: rgba(0,0,0,0.03);
  border-color: rgba(0,0,0,0.08);
}
body.light-theme .accuracy-type-label {
  color: #333;
}

/* 准确率币种项 */
body.light-theme .accuracy-symbol-item {
  background: rgba(0,0,0,0.02);
  border-color: rgba(0,0,0,0.06);
}

/* 引擎状态网格 */
body.light-theme .engine-sym-row {
  background: #fff !important;
  border-color: rgba(0,0,0,0.08);
}
body.light-theme .engine-status-grid {
  background: transparent;
}

/* 平仓原因标签 */
body.light-theme .close-reason {
  font-weight: 600;
}
body.light-theme .close-reason.tp,
body.light-theme .close-reason.trail {
  color: #16a34a;
  background: rgba(22,163,74,0.1);
}
body.light-theme .close-reason.sl {
  color: #dc2626;
  background: rgba(220,38,38,0.1);
}
body.light-theme .close-reason.manual {
  color: #2563eb;
  background: rgba(37,99,235,0.1);
}
body.light-theme .close-reason.timeout {
  color: #d97706;
  background: rgba(217,119,6,0.1);
}
body.light-theme .close-reason.flip {
  color: #7c3aed;
  background: rgba(124,58,237,0.1);
}

/* 交易盈亏标签 */
body.light-theme .trade-pnl-pill.profit {
  color: #16a34a;
  background: rgba(22,163,74,0.1);
}
body.light-theme .trade-pnl-pill.loss {
  color: #dc2626;
  background: rgba(220,38,38,0.1);
}

/* 降低 backdrop-filter 强度以减少闪烁 */
@media (prefers-reduced-motion: reduce) {
  body.light-theme .card,
  body.light-theme .stat-card,
  body.light-theme .header-btn,
  body.light-theme .nav-tabs,
  body.light-theme .ticker-bar,
  body.light-theme .sticky-top {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

/* ═══════════════ AI 设置页亮色 ═══════════════ */

/* 左侧导航面板 */
body.light-theme .ai-tabs {
  background: rgba(255,255,255,.72);
  border-color: rgba(0,0,0,.08);
  box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
body.light-theme .ai-tabs-label {
  color: #8e8e93;
}
body.light-theme .ai-tab {
  color: #48484a;
}
body.light-theme .ai-tab:hover {
  background: rgba(0,0,0,.03);
  color: #1c1c1e;
}
body.light-theme .ai-tab.active {
  background: linear-gradient(135deg, rgba(0,122,255,.12), rgba(90,200,250,.08));
  color: #007aff;
  border-color: rgba(0,122,255,.2);
  box-shadow: 0 0 8px rgba(0,122,255,.06);
}
body.light-theme .ai-tab.active i {
  color: #007aff;
  text-shadow: none;
}

/* 内容卡片 */
body.light-theme .ai-card {
  background: rgba(255,255,255,.72);
  border-color: rgba(0,0,0,.1);
  box-shadow: 0 1px 4px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.03);
}
body.light-theme .ai-card:hover {
  border-color: rgba(0,122,255,.15);
}
body.light-theme .ai-card-head {
  border-bottom-color: rgba(0,0,0,.06);
  background: rgba(0,0,0,.01);
}
body.light-theme .ai-card-head h3 {
  color: #1c1c1e;
}
body.light-theme .ai-card-head h3 i {
  color: #007aff;
  text-shadow: none;
}

/* 设置行 */
body.light-theme .ai-row {
  border-bottom-color: rgba(0,0,0,.05);
}
body.light-theme .ai-row label {
  color: #48484a;
}

/* 输入控件 */
body.light-theme .ai-row input[type="number"],
body.light-theme .ai-row input[type="text"],
body.light-theme .ai-row select,
body.light-theme .ai-role-card input[type="number"],
body.light-theme .ai-role-card input[type="text"],
body.light-theme .ai-role-card select {
  background-color: rgba(0,0,0,.03);
  border-color: rgba(0,0,0,.12);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.06);
  color: #1c1c1e;
}
body.light-theme .ai-row input[type="number"]:hover,
body.light-theme .ai-row input[type="text"]:hover,
body.light-theme .ai-row select:hover {
  border-color: rgba(0,0,0,.2);
  background-color: rgba(0,0,0,.05);
}
body.light-theme .ai-row input:focus,
body.light-theme .ai-row select:focus,
body.light-theme .ai-role-card input:focus,
body.light-theme .ai-role-card select:focus {
  border-color: #007aff;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.04), 0 0 0 3px rgba(0,122,255,.12), 0 0 12px rgba(0,122,255,.06);
  background-color: rgba(0,122,255,.03);
}
body.light-theme .ai-row textarea,
body.light-theme .ai-row-full textarea,
body.light-theme .ai-role-card textarea {
  background-color: rgba(0,0,0,.03);
  border-color: rgba(0,0,0,.12);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.06);
  color: #1c1c1e;
}
body.light-theme .ai-row textarea:hover,
body.light-theme .ai-row-full textarea:hover,
body.light-theme .ai-role-card textarea:hover {
  border-color: rgba(0,0,0,.2);
  background-color: rgba(0,0,0,.05);
}
body.light-theme .ai-row textarea:focus,
body.light-theme .ai-row-full textarea:focus,
body.light-theme .ai-role-card textarea:focus {
  border-color: #007aff;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.04), 0 0 0 3px rgba(0,122,255,.12), 0 0 12px rgba(0,122,255,.06);
  background-color: rgba(0,122,255,.03);
}
body.light-theme .ai-row textarea::placeholder,
body.light-theme .ai-row input::placeholder {
  color: #8e8e93;
  opacity: .7;
}
body.light-theme .ai-row .ai-suffix {
  color: #8e8e93;
}
body.light-theme .ai-row select,
body.light-theme .ai-role-card select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23636366' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Toggle 开关 */
body.light-theme .ai-toggle-track {
  background: rgba(0,0,0,.14);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}
body.light-theme .ai-toggle input:checked + .ai-toggle-track {
  background: #34c759;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.06), 0 0 8px rgba(52,199,89,.15);
}
body.light-theme .ai-toggle-track::after {
  box-shadow: 0 1px 3px rgba(0,0,0,.15), 0 0 1px rgba(0,0,0,.08);
}

/* 按钮 */
body.light-theme .ai-btn-primary {
  background: #007aff;
}
body.light-theme .ai-btn-outline {
  border-color: rgba(0,0,0,.1);
  color: #48484a;
}
body.light-theme .ai-btn-outline:hover {
  background: rgba(0,0,0,.03);
  border-color: #007aff;
  color: #007aff;
}
body.light-theme .ai-btn-save {
  background: linear-gradient(135deg, #007aff, #5856d6);
  box-shadow: 0 4px 16px rgba(0,122,255,.2);
}
body.light-theme .ai-btn-save:hover {
  box-shadow: 0 6px 24px rgba(0,122,255,.28);
}

/* 角色卡片 */
body.light-theme .ai-role-card {
  background: rgba(255,255,255,.5);
  border-color: rgba(0,0,0,.08);
}
body.light-theme .ai-role-card:hover {
  border-color: rgba(0,122,255,.2);
  box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
body.light-theme .ai-role-header {
  border-bottom-color: rgba(0,0,0,.06);
}
body.light-theme .ai-role-emoji {
  background: rgba(0,0,0,.03);
}
body.light-theme .ai-role-name {
  color: #1c1c1e;
}
body.light-theme .ai-role-title {
  color: #8e8e93;
}
body.light-theme .ai-role-card .ai-row label {
  color: #48484a;
}

/* 滑块 */
body.light-theme .ai-slider-row label {
  color: #48484a;
}
body.light-theme .ai-slider-row input[type="range"] {
  background: rgba(0,0,0,.08);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.08);
}
body.light-theme .ai-slider-row input[type="range"]::-webkit-slider-thumb {
  background: #fff;
  border-color: #007aff;
  box-shadow: 0 1px 4px rgba(0,0,0,.12), 0 0 8px rgba(0,122,255,.12);
}
body.light-theme .ai-slider-value {
  color: #007aff;
  background: rgba(0,122,255,.06);
  border-color: rgba(0,122,255,.12);
}

/* 提示文本 */
body.light-theme .ai-hint {
  color: #8e8e93;
}

/* 分隔线 */
body.light-theme .ai-divider {
  background: rgba(0,0,0,.06);
}

/* 模板卡片 */
body.light-theme .ai-template-card {
  border-color: rgba(0,0,0,.08);
  background: rgba(255,255,255,.5);
}
body.light-theme .ai-template-card:hover {
  border-color: rgba(0,122,255,.3);
  background: rgba(0,122,255,.04);
}
body.light-theme .ai-template-card.active {
  border-color: #34c759;
  background: rgba(52,199,89,.06);
}
body.light-theme .ai-template-name {
  color: #1c1c1e;
}
body.light-theme .ai-template-desc {
  color: #8e8e93;
}

/* 统计 */
body.light-theme .ai-stat-label {
  color: #8e8e93;
}
body.light-theme .ai-stat-value {
  color: #1c1c1e;
}

/* 标签 */
body.light-theme .ai-tag {
  background: rgba(0,122,255,.08);
  color: #007aff;
  border-color: rgba(0,122,255,.15);
}
body.light-theme .ai-tag .remove:hover {
  color: #ff3b30;
}

/* 勾选框 */
body.light-theme .ai-checkbox {
  border-color: rgba(0,0,0,.1);
  color: #48484a;
}
body.light-theme .ai-checkbox.checked {
  border-color: #007aff;
  background: rgba(0,122,255,.08);
  color: #007aff;
}
body.light-theme .ai-checkbox:hover {
  background: rgba(0,0,0,.02);
}

/* 多选按钮 */
body.light-theme .ai-multi-btn {
  border-color: rgba(0,0,0,.08);
  color: #8e8e93;
}
body.light-theme .ai-multi-btn.active {
  border-color: #007aff;
  background: rgba(0,122,255,.08);
  color: #007aff;
}
body.light-theme .ai-multi-btn:hover {
  border-color: rgba(0,0,0,.15);
  color: #48484a;
}

/* 进度条 */
body.light-theme .ai-progress {
  background: rgba(0,0,0,.06);
}
body.light-theme .ai-progress-bar {
  background: linear-gradient(90deg, #007aff, #5ac8fa);
}

/* 加载状态 */
body.light-theme .ai-content-loading {
  color: #8e8e93;
}
body.light-theme .ai-content-loading i {
  color: #007aff;
}

/* 恢复默认按钮 */
body.light-theme .ai-btn-reset {
  border-color: rgba(0,0,0,.1);
  color: #8e8e93;
}
body.light-theme .ai-btn-reset:hover {
  border-color: #ff3b30;
  color: #ff3b30;
  background-color: rgba(255,59,48,.04);
}

/* 内联表单输入 */
body.light-theme .ai-inline-form input[type="text"] {
  background-color: rgba(0,0,0,.03);
  border-color: rgba(0,0,0,.12);
  box-shadow: inset 0 1px 2px rgba(0,0,0,.06);
  color: #1c1c1e;
}
body.light-theme .ai-inline-form input[type="text"]:focus {
  border-color: #007aff;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.04), 0 0 0 3px rgba(0,122,255,.12);
  background-color: rgba(0,122,255,.03);
}

/* 开发中标签 */
body.light-theme .ai-dev-badge {
  color: #b45309;
  background: rgba(245,158,11,.08);
  border-color: rgba(245,158,11,.2);
}

/* 可点击标签 */
body.light-theme .ai-tag-clickable:hover {
  background: rgba(0,122,255,.12);
  border-color: rgba(0,122,255,.25);
}

/* ── 确认弹窗 亮色 ──────────────────────── */
body.light-theme .ai-confirm-card {
  background: rgba(255,255,255,.92); border-color: rgba(0,0,0,.08);
  box-shadow: 0 16px 48px rgba(0,0,0,.12);
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
body.light-theme .ai-confirm-title { color: #1c1c1e; }
body.light-theme .ai-confirm-msg   { color: #48484a; }

/* ── 骨架屏 亮色 ────────────────────────── */
body.light-theme .ai-skeleton-line {
  background: linear-gradient(90deg, rgba(0,0,0,.04) 25%, rgba(0,0,0,.07) 37%, rgba(0,0,0,.04) 63%);
  background-size: 400% 100%;
}

/* ── 空状态 亮色 ────────────────────────── */
body.light-theme .ai-empty-state { color: #8e8e93; }

/* ── 信息气泡 亮色 ──────────────────────── */
body.light-theme .ai-info-tip { color: #8e8e93; }
body.light-theme .ai-info-tip::after { background: rgba(0,0,0,.8); }

/* ── 输入验证 亮色 ──────────────────────── */
body.light-theme .ai-input-error { border-color: #ff3b30 !important; box-shadow: 0 0 0 2px rgba(255,59,48,.12) !important; }
body.light-theme .ai-input-error-msg { color: #ff3b30; }

/* ── 预设按钮 亮色 ──────────────────────── */
body.light-theme .ai-preset-btn { border-color: rgba(0,0,0,.1); background: rgba(0,0,0,.02); color: #48484a; }
body.light-theme .ai-preset-btn:hover { border-color: #007aff; background: rgba(0,122,255,.06); color: #007aff; }

/* ── 时间线 亮色 ────────────────────────── */
body.light-theme .ai-timeline { border-color: rgba(0,0,0,.1); }
body.light-theme .ai-timeline-seg.disabled { opacity: .15; }
body.light-theme .ai-timeline-labels { color: #8e8e93; }

/* ── 滑块标签 亮色 ──────────────────────── */
body.light-theme .ai-slider-labels .conservative { color: #32ade6; }
body.light-theme .ai-slider-labels .aggressive { color: #ff3b30; }

/* ── 复制按钮 亮色 ──────────────────────── */
body.light-theme .ai-copy-btn { border-color: rgba(0,0,0,.1); color: #8e8e93; }
body.light-theme .ai-copy-btn:hover { border-color: #007aff; color: #007aff; background: rgba(0,122,255,.04); }

/* ── 保存成功 亮色 ──────────────────────── */
body.light-theme .ai-btn-save.saved { background: #34c759; box-shadow: 0 4px 16px rgba(52,199,89,.2); }

/* === 防闪烁：禁用所有 backdrop-filter === */
body.light-theme .card,
body.light-theme .stat-card,
body.light-theme .trade-record,
body.light-theme .pos-card,
body.light-theme .engine-sym-row,
body.light-theme .sticky-top,
body.light-theme .ticker-bar,
body.light-theme .nav-tabs,
body.light-theme .ai-hero,
body.light-theme .role-card,
body.light-theme .header-btn,
body.light-theme .status-pill,
body.light-theme .ai-tabs,
body.light-theme .ai-card {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
