:root {
  /* Brand: final effective values from the ERP page. */
  --color-primary: #2f6bdb;
  --color-primary-hover: #285fc7;
  --color-primary-pressed: #285fc7;
  --color-primary-soft: #eaf2ff;
  --color-brand-header: #2f66d5;

  /* Backgrounds. */
  --color-bg-app: #f6f8fb;
  --color-bg-surface: #ffffff;
  --color-bg-surface-soft: #f8fafd;
  --color-bg-hover: #f8fafd;
  --color-bg-selected: #eaf2ff;
  --color-bg-table-header: #f2f5f9;
  --color-bg-disabled: #fafbfc;
  --color-bg-rail: #eaf1f9;

  /* Text. */
  --color-text-primary: #304760;
  --color-text-secondary: #526a84;
  --color-text-tertiary: #8a9cb1;
  --color-text-placeholder: #a1afbf;
  --color-text-disabled: #a8b1bf;
  --color-text-table-header: #445a73;
  --color-text-table-body: #384f6b;

  /* Borders. */
  --color-border-default: #e3e9f0;
  --color-border-light: #e5eaf0;
  --color-border-input: #d5dfeb;
  --color-border-hover: #c4d1e1;
  --color-border-disabled: #edf0f4;
  --color-divider: #e5eaf0;
  --color-focus: #5b8de5;
  --color-focus-ring: rgba(47, 107, 219, .10);

  /* Navigation. */
  --color-nav-text: #607995;
  --color-nav-icon: #66819f;
  --color-nav-hover-bg: #e5edf7;
  --color-nav-hover-text: #486b96;
  --color-nav-active-bg: #dce9ff;
  --color-nav-divider: #d8e2ed;

  /* Status values found in the current page. Warning and info are undefined. */
  --color-success: #26a65b;
  --color-success-soft: #eaf8ef;
  --color-success-border: #bce8ca;
  --color-error: #e5484d;
  --color-error-soft: #fff0f0;
  --color-error-border: #f5c5c5;
  --color-badge-notification: #f04438;

  /* Radius: canonical scale plus effective compact exceptions. */
  --radius-sm: 6px;
  --radius-control-compact: 7px;
  --radius-md: 8px;
  --radius-select-menu: 10px;
  --radius-card-compact: 11px;
  --radius-lg: 12px;
  --radius-full: 999px;

  /* 滚动条：细滚动条 + 指定滑块色，轨道透明。
     宽度走细滚动条尺度（6px），圆角复用 --radius-full；hover 用指定加深色。 */
  --scrollbar-size: 6px;
  --scrollbar-thumb: #e2e7ee;
  --scrollbar-thumb-hover: #a1a6ad;
  --scrollbar-track: transparent;

  /* Shadows. */
  --shadow-card: 0 1px 2px rgba(15, 23, 42, .025);
  --shadow-select: 0 8px 20px rgba(16, 24, 40, .10);
  --shadow-dropdown: 0 8px 24px rgba(27, 48, 76, .12);
  --shadow-popover: 0 8px 24px rgba(27, 48, 76, .12);
  --shadow-dialog: 0 14px 40px rgba(27, 48, 76, .14);
  --shadow-toast: 0 3px 12px rgba(16, 24, 40, .08);

  /* Spacing values repeatedly used by the source page. */
  --space-2xs: 4px;
  --space-xs: 6px;
  --space-sm: 8px;
  --space-md: 10px;
  --space-lg: 12px;
  --space-xl: 14px;
  --space-2xl: 16px;
  --space-3xl: 20px;
  --space-4xl: 24px;

  /* Layout and control sizes. */
  --size-primary-rail: 64px;
  --size-side-nav: 210px;
  --size-top-header: 52px;
  --size-control-base: 36px;
  --size-control-compact: 34px;
  --size-table-header: 42px;
  --size-table-row: 44px;
  --size-pagination: 30px;
  --size-icon: 16px;
  --size-icon-sm: 14px;
  --size-icon-lg: 20px;
  --size-notification-popover: 240px;
  --size-user-menu: 212px;
  --size-position-menu: 232px;
  --size-dialog: 360px;

  /* Typography. */
  --font-family-sans: Inter, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  --font-size-xs: 12px;
  --font-size-sm: 13px;
  --font-size-md: 14px;
  --font-size-lg: 18px;
  --font-size-page-title: 23px;
  --line-height-xs: 16px;
  --line-height-sm: 18px;
  --line-height-md: 20px;
  --line-height-lg: 22px;
  --line-height-title: 30px;
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;

  color-scheme: light;
  font-family: var(--font-family-sans);
}
