/* ==========================================================================
   火蜘蛛 CRM — 设计令牌
   色板/字体/圆角与对标站（Broctagon AXIS CRM）保持一致：黑色主色系
   品牌：www.huozhizhu.com
   ========================================================================== */

:root {
  /* ---- 主色 ---- */
  --q-primary: #000000;
  --q-primary-rgb: 0, 0, 0;
  --q-secondary: #323c46;
  --q-secondary-rgb: 50, 60, 70;
  --q-accent: #ffffff;

  /* ---- 功能色 ---- */
  --q-positive: #42b549;
  --q-positive-soft: #eaf7ec;
  --q-negative: #df3031;
  --q-negative-soft: #fdecec;
  --q-info: #31ccec;
  --q-info-soft: #e9f9fd;
  --q-warning: #f9a64c;
  --q-warning-soft: #fef4e9;

  /* ---- 暗色 ---- */
  --q-dark: #2c3235;
  --q-dark-page: #23282a;
  --q-nebula: #0d0d1a;
  --q-nebula-a: #a78bfa;
  --q-nebula-b: #67e8f9;

  /* ---- 品牌灰阶（N 越大越深）---- */
  --q-brand-grey-1: #f7f8f9;
  --q-brand-grey-2: #eef0f2;
  --q-brand-grey-3: #e0e3e6;
  --q-brand-grey-4: #b8bec5;
  --q-brand-grey-5: #7d858e;
  --q-brand-grey-6: #4a525a;
  --q-brand-grey-7: #2c3235;

  --q-brand-bg-1: #ffffff;
  --q-brand-bg-2: #fafbfc;

  /* ---- 语义别名 ---- */
  --bg-page: var(--q-brand-grey-1);
  --bg-surface: #ffffff;
  --bg-subtle: var(--q-brand-grey-2);
  --bg-field: rgba(0, 0, 0, .035);
  --text-primary: var(--q-brand-grey-7);
  --text-secondary: var(--q-brand-grey-5);
  --text-muted: var(--q-brand-grey-4);
  --text-invert: #ffffff;
  --border-color: var(--q-brand-grey-3);
  --border-strong: var(--q-brand-grey-4);

  /* ---- 圆角 ---- */
  --radius-badge: 4px;
  --radius-field: 8px;
  --radius-btn: 10px;
  --radius-card: 12px;
  --radius-pill: 999px;

  /* ---- 间距 ---- */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;

  /* ---- 字体 ---- */
  --font-sans: Avenir, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "PingFang SC", "Microsoft YaHei", "Noto Sans", Helvetica, Arial, sans-serif;
  --font-title: var(--font-sans);
  --font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, "Courier New", monospace;

  /* ---- 字重 ---- */
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  /* ---- 阴影 ---- */
  --shadow-1: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);
  --shadow-2: 0 2px 6px 4px #edf1f4;
  --shadow-3: 0 6px 20px rgba(20, 25, 30, .10);
  --shadow-focus: 0 0 0 3px rgba(0, 0, 0, .08);

  /* ---- 布局 ---- */
  --drawer-w: 244px;
  --topbar-h: 58px;
  --z-drawer: 40;
  --z-topbar: 50;
  --z-dropdown: 60;
  --z-toast: 90;
  --z-modal: 100;
}

/* ---- 深色模式 ---- */
body.theme-dark {
  --bg-page: #1b1f21;
  --bg-surface: #23282a;
  --bg-subtle: #2c3235;
  --bg-field: rgba(255, 255, 255, .06);
  --text-primary: #e8eaec;
  --text-secondary: #9aa3ab;
  --text-muted: #7d858e;
  --border-color: #343a3e;
  --border-strong: #454c51;
  --q-brand-grey-3: #343a3e;
  --q-brand-grey-1: #23282a;
  --shadow-2: 0 2px 6px 4px rgba(0, 0, 0, .3);
}

/* ---- 可选：火橙强调色（默认关闭，加 class 到 <body> 启用）---- */
body.brand-fire-accent {
  --accent-fire: #ff5a1f;
  --accent-fire-hover: #e64a12;
  --accent-fire-soft: #fff1ea;
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

body {
  background: var(--bg-page);
  color: var(--text-primary);
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

a { color: var(--q-primary); text-decoration: none; }
a:hover { text-decoration: underline; }

/* 数字统一等宽，便于表格对齐 */
.num, .money, td.num, th.num {
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--q-brand-grey-4); border-radius: 6px; border: 3px solid transparent; background-clip: content-box; }
::-webkit-scrollbar-thumb:hover { background: var(--q-brand-grey-5); background-clip: content-box; }

@media print {
  body { background: #fff; }
}
