/* ============ ELN 主题变量（亮/暗，04-UI 设计规约） ============ */
:root {
  --primary: #3370ff;
  --primary-dark: #2b5fd9;
  --topbar-bg: linear-gradient(90deg, #1e3a8a 0%, #2144a0 60%, #2b57c4 100%);
  --sidebar-bg: #ffffff;
  --sidebar-hover: #f0f5ff;
  --sidebar-active: #e8f1ff;
  --sidebar-text: #333f52;
  --content-bg: #f5f7fa;
  --card-bg: #ffffff;
  --border: #e4e9f0;
  --text: #24292f;
  --text-secondary: #6b7280;
  --table-header-bg: #2144a0;
  --table-header-text: #ffffff;
  --row-hover: #f0f6ff;
  --success: #52c41a;
  --warning: #e6a23c;
  --danger: #f56c6c;
  --info: #909399;
  --tag-bg: #e8f1ff;
  --tag-text: #3370ff;
  --shadow: 0 2px 8px rgba(15, 34, 78, 0.08);
  --radius: 6px;
}
html.dark {
  --primary: #3d7fff;
  --topbar-bg: linear-gradient(90deg, #0d1530 0%, #101a3a 60%, #14224e 100%);
  --sidebar-bg: #1f2329;
  --sidebar-hover: #2a2f38;
  --sidebar-active: #1d3054;
  --sidebar-text: #cfd6e4;
  --content-bg: #141414;
  --card-bg: #1d1f24;
  --border: #33363d;
  --text: #e5eaf3;
  --text-secondary: #8d93a1;
  --table-header-bg: #182a5c;
  --row-hover: #232a3a;
  --tag-bg: #1d3054;
  --tag-text: #7aa7ff;
  --shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
}
* { box-sizing: border-box; }
html, body { height: 100%; }

/* ---- 主题色切换（皮肤） ---- */
html.accent-teal { --primary: #0e9e9e; --primary-dark: #0b8080; --table-header-bg: #0b6b6b; --sidebar-active: #e0f5f5; --tag-bg: #e0f5f5; --tag-text: #0e9e9e; }
html.accent-teal .topbar { background: linear-gradient(90deg, #0b3d3d 0%, #0b6b6b 60%, #0e8f8f 100%); }
html.accent-purple { --primary: #7a5cff; --primary-dark: #6848e0; --table-header-bg: #5b3fd1; --sidebar-active: #efe9ff; --tag-bg: #efe9ff; --tag-text: #7a5cff; }
html.accent-purple .topbar { background: linear-gradient(90deg, #2c1e6e 0%, #4a33a8 60%, #6848e0 100%); }
html.accent-green { --primary: #2fa84f; --primary-dark: #279144; --table-header-bg: #237f3d; --sidebar-active: #e5f6ea; --tag-bg: #e5f6ea; --tag-text: #2fa84f; }
html.accent-green .topbar { background: linear-gradient(90deg, #14421f 0%, #1d6b31 60%, #279144 100%); }
html.dark.accent-teal { --sidebar-active: #10333a; --tag-bg: #10333a; }
html.dark.accent-purple { --sidebar-active: #241d4e; --tag-bg: #241d4e; }
html.dark.accent-green { --sidebar-active: #143a20; --tag-bg: #143a20; }
html.dark.accent-blue { --sidebar-active: #1d3054; }
body {
  margin: 0;
  font-family: "PingFang SC", "Microsoft YaHei", "Segoe UI", system-ui, sans-serif;
  font-size: 14px;
  color: var(--text);
  background: var(--content-bg);
}
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #c1c9d6; border-radius: 4px; }
html.dark ::-webkit-scrollbar-thumb { background: #3a3f4b; }
