/* 蓝色政企风格主题：只覆盖设计令牌，组件规则与紫色主题共用 */
body.theme-blue {
  /* 语义色 */
  --primary: #2262d6;
  --primary-dark: #1a4fae;
  --primary-weak: #f2f6fb;
  --primary-soft: #eef2f9;
  --primary-soft-hover: #e3eaf5;
  --primary-border: #c3d3ea;
  --primary-ring: rgba(34, 98, 214, .16);
  --primary-shadow: rgba(34, 98, 214, .30);
  --grad: linear-gradient(135deg, #2f74e8 0%, #1d55c0 100%);
  --grad-hover: linear-gradient(135deg, #2a68d6, #1a4fae);
  --bg: #eef1f6;
  --border: #dfe5ee;
  --text: #1f2d3d;
  --muted: #7b8798;
  /* 结构 */
  --side-w: 226px;
  --radius: 10px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 10px;
  --radius-xl: 10px;
  --radius-pill: 5px;
  /* 组件令牌 */
  --table-head-bg: #f2f6fb;
  --row-hover: #f4f8fd;
  --list-hover-bg: #f2f6fb;
  --list-active-bg: #e8f0fc;
  --bubble-ai-bg: #f5f8fd;
  --toast-bg: #1f2d3d;
  --detail-bg: #f8fafd;
  --track-bg: #e2e8f2;
  --shadow: 0 2px 8px rgba(31, 61, 114, .08);
  --shadow-sm: 0 2px 6px rgba(31, 61, 114, .10);
  --seg-active-bg: var(--primary);
  --seg-active-fg: #fff;
  --tab-active-bg: var(--primary);
  --tab-border-color: var(--border);
  --tab-shadow: none;
  --chip-active-bg: var(--primary);
  --chip-shadow: none;
}

/* ---------- 侧边栏：蓝色渐变、白色卡片式选中 ---------- */
body.theme-blue .side {
  background: linear-gradient(180deg, #2750ae 0%, #1c3a85 100%);
  padding: 0 0 16px;
}
body.theme-blue .side .logo {
  padding: 22px 20px 18px; font-size: 16px; border-bottom: 1px solid rgba(255,255,255,.14);
  margin-bottom: 10px;
}
body.theme-blue .side .logo-dot { background: #fff; box-shadow: none; }
body.theme-blue .side nav a { margin: 4px 12px; border-radius: var(--radius-sm); color: rgba(255,255,255,.88); }
body.theme-blue .side nav a:hover { background: rgba(255,255,255,.12); color: #fff; }
body.theme-blue .side nav a.active {
  background: #fff; color: #1d55c0;
  box-shadow: 0 4px 14px rgba(9, 30, 80, .35);
}
body.theme-blue .side-tip {
  background: rgba(255,255,255,.14); box-shadow: none; color: #eaf1ff;
  border: 1px solid rgba(255,255,255,.18);
}

/* ---------- 顶栏：白条 ---------- */
body.theme-blue .topbar {
  background: #fff; padding: 13px 26px; border-bottom: 1px solid var(--border);
}
body.theme-blue .topbar .title { font-size: 16px; }

/* ---------- 主题结构差异 ---------- */
body.theme-blue .seg button.active { box-shadow: none; }
body.theme-blue .week-title { border: 1px solid var(--border); }
body.theme-blue .report-doc { border: 1px solid var(--border); }
body.theme-blue .empty { border: 1px dashed #c9d4e4; background: #fbfcfe; }
body.theme-blue .login-wrap { background: linear-gradient(150deg, #12275e 0%, #1d55c0 60%, #2f74e8 100%); }
body.theme-blue .login-card { border-radius: 14px; }

@media (max-width: 760px) {
  body.theme-blue .side { width: auto; }
}
