@agile-team/wl-skills-ui 1.9.0 → 1.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,15 @@ All notable changes to **@agile-team/wl-skills-ui** will be documented in this f
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
 
7
+ ## [1.9.1] - 2026-07-20
8
+
9
+ ### Fixed
10
+
11
+ - 按《烟台华新数智化信息化改造项目 UI 规范 v1》纠正主色色阶:常规 `#002A8F`、悬停 `#1A3F9A`、点击 `#002681`、禁用 `#B2BFDD`,不再把 PPT 元数据中的 `#2254F4` 当作业务按钮主色。
12
+ - 新增 Element Plus 主按钮四态强覆盖;BaseQuery/BaseToolbar 查询与主操作按钮的 hover 从旧 `primary-light-3` 改为客户规范 `primary-light-1`。
13
+ - 所有 vendor 半透明主色效果统一读取 `--el-color-primary-rgb`,清除 SCSS 中旧亮蓝 RGB 和 fallback,避免 token 已改但阴影、选中态仍有色差。
14
+ - 同步颜色规范、Design Token Skill、README 和发布产物;发布校验新增客户主色色阶与旧亮蓝残留检查。
15
+
7
16
  ## [1.9.0] - 2026-07-18
8
17
 
9
18
  ### Added
package/README.md CHANGED
@@ -62,6 +62,7 @@ wl-skills-ui/
62
62
  ├── styles/ # L1+L2+L3 SCSS 实现
63
63
  │ ├── tokens/ # SCSS 变量映射层($wk-* → CSS 变量)
64
64
  │ ├── element/ # L1 Element Plus 控件对齐
65
+ │ │ ├── _button.scss # 主按钮四态强覆盖(设计规范色阶)
65
66
  │ │ ├── _table.scss
66
67
  │ │ ├── _form.scss
67
68
  │ │ ├── _dialog.scss
@@ -199,7 +200,7 @@ yarn add @agile-team/wl-skills-ui
199
200
  |---|---|---|
200
201
  | `element-plus` | **`2.2.6-prod.3`** | 集团 jh- 定制版;EP 2.3.0 起引入 `.el-input__wrapper`,与 jh-ui 3.x 不兼容 |
201
202
  | `@jhlc/jh-ui` | **`3.1.0`** | SCSS 皮肤包,`.com-text` label 包裹 + `.has-colon` 冒号注入(wl-skills-ui 已统一屏蔽表单冒号) |
202
- | `@agile-team/wl-skills-ui` | `^1.9.0` | 已对齐上述组合的 DOM 假设 |
203
+ | `@agile-team/wl-skills-ui` | `^1.9.1` | 已对齐上述组合的 DOM 假设与客户主色色阶 |
203
204
 
204
205
  三种识别方式,任选其一:
205
206
 
@@ -213,7 +214,13 @@ yarn add @agile-team/wl-skills-ui
213
214
 
214
215
  ## 版本亮点
215
216
 
216
- 当前 v1.9.0
217
+ 当前 v1.9.1
218
+
219
+ - **客户主色纠偏**:严格按《烟台华新数智化信息化改造项目 UI 规范 v1》统一主色为 `#002A8F`,并同步完整深浅色阶。
220
+ - **按钮四态强覆盖**:主按钮常规 `#002A8F`、悬停 `#1A3F9A`、点击 `#002681`、禁用 `#B2BFDD`;`html body` 高特异性和填充按钮 `!important` 抵御 Element Plus、jh-ui 与旧业务皮肤覆盖。
221
+ - **单源防漂移**:主色半透明场景统一读取 `--el-color-primary-rgb`,发布校验会阻断 token、SCSS、按钮状态或文档重新漂移到旧亮蓝。
222
+
223
+ 上一版 v1.9.0:
217
224
 
218
225
  - **独立闭环**:不依赖 kit/design/bd 即可安装、审计、修复、复检、快照和回退;存在 kit 的 page-spec 时只复用页面模式与组件命名约定,不形成运行时硬依赖。
219
226
  - **CLI 真实一致**:统一入口正式支持 `audit/drift/exempt/snapshot`,未知命令非零退出,`audit --refresh-baseline` 可维护增量治理基线。
@@ -230,8 +237,8 @@ yarn add @agile-team/wl-skills-ui
230
237
 
231
238
  上一版 v1.8.15:
232
239
 
233
- - **jh-drag-row 上下分栏手柄覆盖**:新增 `styles/vendors/_jh-drag-row.scss`,补齐此前缺失的 `jh-drag-row`(上下/主从表)手柄覆盖,与 `_jh-drag-col.scss`(左右)同源风格。以本包主色 `#2254f4` 为准,用 `!important` 确定性层叠压过 common-core 组件 Props 默认值
234
- - **平台包职责澄清**:`@jhlc/jh-ui` 是纯 SCSS 包(零组件),所有 `jh-*`/`Base*`/`C_*` 组件来自 `@jhlc/common-core`。本包作为化妆层精准层叠覆盖二者视觉,不改平台层源码——L0 token 用 `:root body` 压过 jh-ui 编译产物的 `:root`(`#2254f4` > jh-ui `#4368ff`),L2 直接写目标属性 + `!important` 绕过组件 `var()` 引用。**项目装了本包后,一切以本包为准**
240
+ - **jh-drag-row 上下分栏手柄覆盖**:新增 `styles/vendors/_jh-drag-row.scss`,补齐此前缺失的 `jh-drag-row`(上下/主从表)手柄覆盖,与 `_jh-drag-col.scss`(左右)同源风格。手柄颜色统一跟随 `--el-color-primary`,不再保留独立色值
241
+ - **平台包职责澄清**:`@jhlc/jh-ui` 是纯 SCSS 包(零组件),所有 `jh-*`/`Base*`/`C_*` 组件来自 `@jhlc/common-core`。本包作为化妆层精准层叠覆盖二者视觉,不改平台层源码——L0 token 用 `:root body` 压过 jh-ui 编译产物的 `:root`,L2 直接写目标属性 + `!important` 绕过组件 `var()` 引用。**项目装了本包后,一切以本包为准**
235
242
 
236
243
  上一版 v1.8.14:
237
244
 
@@ -642,7 +649,7 @@ export const myRules = [
642
649
  | 字号 | [design/spec/typography.md](design/spec/typography.md) |
643
650
  | 间距 | [design/spec/spacing.md](design/spec/spacing.md) |
644
651
 
645
- 主色:`#4368ff` → `--el-color-primary`(与 Element Plus 默认蓝对齐)
652
+ 客户规范主色:`#002a8f` → `--el-color-primary`;业务代码只引用 token,不直接硬编码色值。
646
653
 
647
654
  ---
648
655
 
package/SKILL.md CHANGED
@@ -282,7 +282,7 @@ npx wl-ui check --project [项目根目录]
282
282
  - background: #fb2323;
283
283
  + background: var(--el-color-danger);
284
284
  ```
285
- **已覆盖颜色**:`#409eff/#3a7afe/#4368ff`→primary,`#fb2323/#f56c6c`→danger,`#0cc859/#67c23a`→success,`#ffaf27/#e6a23c`→warning,`#ecf5ff`→primary-light-9
285
+ **已覆盖颜色**:`#409eff/#3a7afe/#4368ff/#2254f4/#002a8f`→primary,`#fb2323/#f56c6c/#bb2d3f`→danger,`#0cc859/#67c23a/#2bb268`→success,`#ffaf27/#e6a23c/#ea9a13`→warning,`#ecf5ff/#e5eaf4`→primary-light-9
286
286
 
287
287
  #### R017 — 编号/工号/证件号列缺少 renderBadge【高危】
288
288
  **检测**:`columnsDef()` / `columns` 数组中,label 含“编号”“工号”“证件号”但没有 `renderBadge` / `defaultSlot`(脚本式列定义)
@@ -2,14 +2,29 @@
2
2
 
3
3
  ## 品牌色系
4
4
 
5
- | Token | 值 | 用途 |
6
- | ---------------------------- | --------- | -------------------------- |
7
- | `--el-color-primary` | `#4368ff` | 主色调:按钮、链接、激活态 |
8
- | `--el-color-primary-light-9` | `#f0f3ff` | 主色浅底:Tag 背景 |
9
- | `--el-color-success` | `#0cc859` | 成功/正常/启用状态 |
10
- | `--el-color-warning` | `#ffaf27` | 警告/待处理状态 |
11
- | `--el-color-danger` | `#FB2323` | 危险/失败/停用状态 |
12
- | `--el-color-info` | `#909399` | 中性/辅助信息 |
5
+ > 单一依据:《烟台华新数智化信息化改造项目 UI 规范 v1》“颜色-主色/功能色”页。
6
+
7
+ | Token | | 用途 |
8
+ | ----------------------------- | --------------- | ---------------------------- |
9
+ | `--el-color-primary` | `#002a8f` | 主按钮常规、链接、选中态 |
10
+ | `--el-color-primary-rgb` | `0, 42, 143` | 主色透明背景、阴影和选中底色 |
11
+ | `--el-color-primary-light-1` | `#1a3f9a` | 主按钮悬停 |
12
+ | `--el-color-primary-light-2` | `#3355a5` | 柔和主题蓝 |
13
+ | `--el-color-primary-light-3` | `#4d6ab1` | 辅助高亮 |
14
+ | `--el-color-primary-light-4` | `#667fbc` | 辅助高亮 |
15
+ | `--el-color-primary-light-5` | `#8094c7` | 主色边框 |
16
+ | `--el-color-primary-light-6` | `#99aad2` | 浅色辅助 |
17
+ | `--el-color-primary-light-7` | `#b2bfdd` | 主按钮禁用 |
18
+ | `--el-color-primary-light-8` | `#ccd4e9` | 浅色辅助 |
19
+ | `--el-color-primary-light-9` | `#e5eaf4` | 浅色/白底悬浮 |
20
+ | `--el-color-primary-dark-1` | `#002681` | 主按钮点击 |
21
+ | `--el-color-primary-dark-2` | `#002272` | 深色辅助 |
22
+ | `--el-color-primary-dark-3` | `#001d64` | 深色辅助 |
23
+ | `--el-color-primary-dark-4` | `#001956` | 最深品牌蓝 |
24
+ | `--el-color-success` | `#2bb268` | 成功/正常/启用状态 |
25
+ | `--el-color-warning` | `#ea9a13` | 警告/待处理状态 |
26
+ | `--el-color-danger` | `#bb2d3f` | 危险/失败/停用状态 |
27
+ | `--el-color-info` | `#909399` | 中性/辅助信息 |
13
28
 
14
29
  ## 文本色系
15
30
 
@@ -1,18 +1,19 @@
1
1
  :root body {
2
- --el-color-primary: #2254f4;
3
- --el-color-primary-light-1: #3865f5;
4
- --el-color-primary-light-2: #5178f6;
5
- --el-color-primary-light-3: #7a98f8;
6
- --el-color-primary-light-4: #91aaf9;
7
- --el-color-primary-light-5: #a8bbfa;
8
- --el-color-primary-light-6: #bfccfc;
9
- --el-color-primary-light-7: #d3ddfd;
10
- --el-color-primary-light-8: #e6ebfe;
11
- --el-color-primary-light-9: #f2f5ff;
12
- --el-color-primary-dark-1: #1b43c3;
13
- --el-color-primary-dark-2: #1738a3;
14
- --el-color-primary-dark-3: #102873;
15
- --el-color-primary-dark-4: #0a1a4d;
2
+ --el-color-primary: #002a8f;
3
+ --el-color-primary-rgb: 0, 42, 143;
4
+ --el-color-primary-light-1: #1a3f9a;
5
+ --el-color-primary-light-2: #3355a5;
6
+ --el-color-primary-light-3: #4d6ab1;
7
+ --el-color-primary-light-4: #667fbc;
8
+ --el-color-primary-light-5: #8094c7;
9
+ --el-color-primary-light-6: #99aad2;
10
+ --el-color-primary-light-7: #b2bfdd;
11
+ --el-color-primary-light-8: #ccd4e9;
12
+ --el-color-primary-light-9: #e5eaf4;
13
+ --el-color-primary-dark-1: #002681;
14
+ --el-color-primary-dark-2: #002272;
15
+ --el-color-primary-dark-3: #001d64;
16
+ --el-color-primary-dark-4: #001956;
16
17
  --el-color-success: #2bb268;
17
18
  --el-color-success-light-1: #40ba77;
18
19
  --el-color-success-light-2: #55c286;
package/dist/tokens.css CHANGED
@@ -1,18 +1,19 @@
1
1
  :root body {
2
- --el-color-primary: #2254f4;
3
- --el-color-primary-light-1: #3865f5;
4
- --el-color-primary-light-2: #5178f6;
5
- --el-color-primary-light-3: #7a98f8;
6
- --el-color-primary-light-4: #91aaf9;
7
- --el-color-primary-light-5: #a8bbfa;
8
- --el-color-primary-light-6: #bfccfc;
9
- --el-color-primary-light-7: #d3ddfd;
10
- --el-color-primary-light-8: #e6ebfe;
11
- --el-color-primary-light-9: #f2f5ff;
12
- --el-color-primary-dark-1: #1b43c3;
13
- --el-color-primary-dark-2: #1738a3;
14
- --el-color-primary-dark-3: #102873;
15
- --el-color-primary-dark-4: #0a1a4d;
2
+ --el-color-primary: #002a8f;
3
+ --el-color-primary-rgb: 0, 42, 143;
4
+ --el-color-primary-light-1: #1a3f9a;
5
+ --el-color-primary-light-2: #3355a5;
6
+ --el-color-primary-light-3: #4d6ab1;
7
+ --el-color-primary-light-4: #667fbc;
8
+ --el-color-primary-light-5: #8094c7;
9
+ --el-color-primary-light-6: #99aad2;
10
+ --el-color-primary-light-7: #b2bfdd;
11
+ --el-color-primary-light-8: #ccd4e9;
12
+ --el-color-primary-light-9: #e5eaf4;
13
+ --el-color-primary-dark-1: #002681;
14
+ --el-color-primary-dark-2: #002272;
15
+ --el-color-primary-dark-3: #001d64;
16
+ --el-color-primary-dark-4: #001956;
16
17
  --el-color-success: #2bb268;
17
18
  --el-color-success-light-1: #40ba77;
18
19
  --el-color-success-light-2: #55c286;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agile-team/wl-skills-ui",
3
- "version": "1.9.0",
3
+ "version": "1.9.1",
4
4
  "description": "企业级 UI 风格对齐框架 — Vue + Element Plus 项目通用化妆/原生双模式(tokens / element / vendors / layouts / runtime / scanner / fixer / skills)",
5
5
  "type": "module",
6
6
  "main": "./es/index.js",
@@ -118,7 +118,21 @@ export const TOKEN_MAP = {
118
118
  "#409eff": "var(--el-color-primary)",
119
119
  "#3a7afe": "var(--el-color-primary)",
120
120
  "#4368ff": "var(--el-color-primary)",
121
+ "#2254f4": "var(--el-color-primary)",
121
122
  "#002a8f": "var(--el-color-primary)",
123
+ "#1a3f9a": "var(--el-color-primary-light-1)",
124
+ "#3355a5": "var(--el-color-primary-light-2)",
125
+ "#4d6ab1": "var(--el-color-primary-light-3)",
126
+ "#667fbc": "var(--el-color-primary-light-4)",
127
+ "#8094c7": "var(--el-color-primary-light-5)",
128
+ "#99aad2": "var(--el-color-primary-light-6)",
129
+ "#b2bfdd": "var(--el-color-primary-light-7)",
130
+ "#ccd4e9": "var(--el-color-primary-light-8)",
131
+ "#e5eaf4": "var(--el-color-primary-light-9)",
132
+ "#002681": "var(--el-color-primary-dark-1)",
133
+ "#002272": "var(--el-color-primary-dark-2)",
134
+ "#001d64": "var(--el-color-primary-dark-3)",
135
+ "#001956": "var(--el-color-primary-dark-4)",
122
136
  "#1890ff": "var(--el-color-primary)",
123
137
  "#fb2323": "var(--el-color-danger)",
124
138
  "#f56c6c": "var(--el-color-danger)",
@@ -127,8 +141,10 @@ export const TOKEN_MAP = {
127
141
  "#0cc859": "var(--el-color-success)",
128
142
  "#67c23a": "var(--el-color-success)",
129
143
  "#52c41a": "var(--el-color-success)",
144
+ "#2bb268": "var(--el-color-success)",
130
145
  "#ffaf27": "var(--el-color-warning)",
131
146
  "#e6a23c": "var(--el-color-warning)",
132
147
  "#faad14": "var(--el-color-warning)",
148
+ "#ea9a13": "var(--el-color-warning)",
133
149
  "#ecf5ff": "var(--el-color-primary-light-9)",
134
150
  };
@@ -18,11 +18,14 @@ applyTo: "**/*.{vue,scss,css}"
18
18
  ### 品牌色
19
19
 
20
20
  ```css
21
- --el-color-primary /* #4368ff主色:按钮/链接/激活 */
22
- --el-color-primary-light-9 /* #f0f3ff主色浅底:Tag背景 */
23
- --el-color-success /* #0cc859成功/正常/启用 */
24
- --el-color-warning /* #ffaf27警告/待处理 */
25
- --el-color-danger /* #FB2323危险/失败/停用 */
21
+ --el-color-primary /* #002a8f主按钮常规/链接/选中 */
22
+ --el-color-primary-light-1 /* #1a3f9a主按钮悬停 */
23
+ --el-color-primary-dark-1 /* #002681主按钮点击 */
24
+ --el-color-primary-light-7 /* #b2bfdd主按钮禁用 */
25
+ --el-color-primary-light-9 /* #e5eaf4主色浅底/Tag背景 */
26
+ --el-color-success /* #2bb268 — 成功/正常/启用 */
27
+ --el-color-warning /* #ea9a13 — 警告/待处理 */
28
+ --el-color-danger /* #bb2d3f — 危险/失败/停用 */
26
29
  --el-color-info /* #909399 — 中性/辅助 */
27
30
  ```
28
31
 
@@ -81,7 +84,7 @@ npx wl-ui fix --target src
81
84
 
82
85
  | hex | → CSS Token |
83
86
  | ----------------------------- | --------------------------------- |
84
- | `#409eff` `#3a7afe` `#4368ff` | `var(--el-color-primary)` |
87
+ | `#409eff` `#3a7afe` `#4368ff` `#2254f4` `#002a8f` | `var(--el-color-primary)` |
85
88
  | `#fb2323` `#f56c6c` | `var(--el-color-danger)` |
86
89
  | `#0cc859` `#67c23a` | `var(--el-color-success)` |
87
90
  | `#ffaf27` `#e6a23c` | `var(--el-color-warning)` |
@@ -8,6 +8,15 @@
8
8
 
9
9
  ### 类型规则
10
10
 
11
+ 主按钮色值严格遵循客户 UI 规范,禁止使用 `#2254F4`、`#4368FF` 或 Element Plus 默认蓝替代:
12
+
13
+ | 状态 | Token | 规范色值 |
14
+ |---|---|---|
15
+ | 常规 | `--el-color-primary` | `#002A8F` |
16
+ | hover / focus | `--el-color-primary-light-1` | `#1A3F9A` |
17
+ | active / 点击 | `--el-color-primary-dark-1` | `#002681` |
18
+ | disabled | `--el-color-primary-light-7` | `#B2BFDD` |
19
+
11
20
  | 操作语义 | type | plain | 说明 |
12
21
  |----------|-------------|--------|----------------|
13
22
  | 新增/添加 | `primary` | false | 蓝色填充 |
@@ -0,0 +1,39 @@
1
+ // Element Plus 主按钮 — 严格对齐《烟台华新数智化信息化改造项目 UI 规范 v1》
2
+ // 常规 #002A8F / 悬停 #1A3F9A / 点击 #002681 / 禁用 #B2BFDD。
3
+ // 使用 html body 提升 token 覆盖特异性;填充按钮同时以 !important 抵御 jh-ui/业务旧皮肤硬编码。
4
+
5
+ html body .el-button--primary {
6
+ --el-button-bg-color: var(--el-color-primary);
7
+ --el-button-border-color: var(--el-color-primary);
8
+ --el-button-hover-bg-color: var(--el-color-primary-light-1);
9
+ --el-button-hover-border-color: var(--el-color-primary-light-1);
10
+ --el-button-active-color: var(--el-color-primary-dark-1);
11
+ --el-button-active-bg-color: var(--el-color-primary-dark-1);
12
+ --el-button-active-border-color: var(--el-color-primary-dark-1);
13
+ --el-button-disabled-bg-color: var(--el-color-primary-light-7);
14
+ --el-button-disabled-border-color: var(--el-color-primary-light-7);
15
+ --el-button-outline-color: var(--el-color-primary-light-5);
16
+ }
17
+
18
+ html body
19
+ .el-button.el-button--primary:not(.is-link):not(.is-text):not(.is-plain):not(.is-disabled) {
20
+ background-color: var(--el-color-primary) !important;
21
+ border-color: var(--el-color-primary) !important;
22
+
23
+ &:hover,
24
+ &:focus {
25
+ background-color: var(--el-color-primary-light-1) !important;
26
+ border-color: var(--el-color-primary-light-1) !important;
27
+ }
28
+
29
+ &:active {
30
+ background-color: var(--el-color-primary-dark-1) !important;
31
+ border-color: var(--el-color-primary-dark-1) !important;
32
+ }
33
+ }
34
+
35
+ html body
36
+ .el-button.el-button--primary.is-disabled:not(.is-link):not(.is-text):not(.is-plain) {
37
+ background-color: var(--el-color-primary-light-7) !important;
38
+ border-color: var(--el-color-primary-light-7) !important;
39
+ }
@@ -8,8 +8,8 @@ html body .el-upload {
8
8
 
9
9
  .el-upload-dragger:hover,
10
10
  .el-upload-dragger.is-dragover {
11
- border-color: var(--el-color-primary, #2254f4);
12
- background: var(--el-color-primary-light-9, #f2f5ff);
11
+ border-color: var(--el-color-primary, #002a8f);
12
+ background: var(--el-color-primary-light-9, #e5eaf4);
13
13
  }
14
14
 
15
15
  .el-upload__tip {
@@ -1,6 +1,7 @@
1
1
  // styles/element/index.scss — Element Plus 覆盖层汇总
2
2
  // 前置:design/tokens/base.css 必须最先在 index.html 中加载
3
3
 
4
+ @forward './button';
4
5
  @forward './pagination';
5
6
  @forward './form';
6
7
  @forward './table';
@@ -13,20 +13,21 @@
13
13
  @forward '../vendors/index';
14
14
 
15
15
  :root body {
16
- --el-color-primary: #2254f4;
17
- --el-color-primary-light-1: #3865f5;
18
- --el-color-primary-light-2: #5178f6;
19
- --el-color-primary-light-3: #7a98f8;
20
- --el-color-primary-light-4: #91aaf9;
21
- --el-color-primary-light-5: #a8bbfa;
22
- --el-color-primary-light-6: #bfccfc;
23
- --el-color-primary-light-7: #d3ddfd;
24
- --el-color-primary-light-8: #e6ebfe;
25
- --el-color-primary-light-9: #f2f5ff;
26
- --el-color-primary-dark-1: #1b43c3;
27
- --el-color-primary-dark-2: #1738a3;
28
- --el-color-primary-dark-3: #102873;
29
- --el-color-primary-dark-4: #0a1a4d;
16
+ --el-color-primary: #002a8f;
17
+ --el-color-primary-rgb: 0, 42, 143;
18
+ --el-color-primary-light-1: #1a3f9a;
19
+ --el-color-primary-light-2: #3355a5;
20
+ --el-color-primary-light-3: #4d6ab1;
21
+ --el-color-primary-light-4: #667fbc;
22
+ --el-color-primary-light-5: #8094c7;
23
+ --el-color-primary-light-6: #99aad2;
24
+ --el-color-primary-light-7: #b2bfdd;
25
+ --el-color-primary-light-8: #ccd4e9;
26
+ --el-color-primary-light-9: #e5eaf4;
27
+ --el-color-primary-dark-1: #002681;
28
+ --el-color-primary-dark-2: #002272;
29
+ --el-color-primary-dark-3: #001d64;
30
+ --el-color-primary-dark-4: #001956;
30
31
 
31
32
  --el-color-danger: #bb2d3f;
32
33
  --el-color-danger-light-3: #d16b78;
@@ -85,20 +85,21 @@ $wk-sidebar-width: var(--el-sidebar-width) !default;
85
85
  // 选择器 :root body 特异性 (0,1,1) > Element Plus 的 :root (0,1,0),
86
86
  // 保证无论 CSS 加载顺序如何,我们的变量始终优先。
87
87
  :root body {
88
- --el-color-primary: #2254f4;
89
- --el-color-primary-light-1: #3865f5;
90
- --el-color-primary-light-2: #5178f6;
91
- --el-color-primary-light-3: #7a98f8;
92
- --el-color-primary-light-4: #91aaf9;
93
- --el-color-primary-light-5: #a8bbfa;
94
- --el-color-primary-light-6: #bfccfc;
95
- --el-color-primary-light-7: #d3ddfd;
96
- --el-color-primary-light-8: #e6ebfe;
97
- --el-color-primary-light-9: #f2f5ff;
98
- --el-color-primary-dark-1: #1b43c3;
99
- --el-color-primary-dark-2: #1738a3;
100
- --el-color-primary-dark-3: #102873;
101
- --el-color-primary-dark-4: #0a1a4d;
88
+ --el-color-primary: #002a8f;
89
+ --el-color-primary-rgb: 0, 42, 143;
90
+ --el-color-primary-light-1: #1a3f9a;
91
+ --el-color-primary-light-2: #3355a5;
92
+ --el-color-primary-light-3: #4d6ab1;
93
+ --el-color-primary-light-4: #667fbc;
94
+ --el-color-primary-light-5: #8094c7;
95
+ --el-color-primary-light-6: #99aad2;
96
+ --el-color-primary-light-7: #b2bfdd;
97
+ --el-color-primary-light-8: #ccd4e9;
98
+ --el-color-primary-light-9: #e5eaf4;
99
+ --el-color-primary-dark-1: #002681;
100
+ --el-color-primary-dark-2: #002272;
101
+ --el-color-primary-dark-3: #001d64;
102
+ --el-color-primary-dark-4: #001956;
102
103
  --el-color-success: #2bb268;
103
104
  --el-color-success-light-1: #40ba77;
104
105
  --el-color-success-light-2: #55c286;
@@ -12,9 +12,9 @@
12
12
  --ag-header-foreground-color: #374151;
13
13
  --ag-border-color: rgba(0, 0, 0, 0.06);
14
14
  --ag-row-border-color: rgba(0, 0, 0, 0.06);
15
- --ag-row-hover-color: rgba(34, 84, 244, 0.06);
16
- --ag-selected-row-background-color: rgba(34, 84, 244, 0.10);
17
- --ag-range-selection-border-color: rgba(34, 84, 244, 0.4);
15
+ --ag-row-hover-color: rgba(var(--el-color-primary-rgb), 0.06);
16
+ --ag-selected-row-background-color: rgba(var(--el-color-primary-rgb), 0.10);
17
+ --ag-range-selection-border-color: rgba(var(--el-color-primary-rgb), 0.4);
18
18
  --ag-font-size: 13px;
19
19
  --ag-font-family: inherit;
20
20
  --ag-row-height: 26px;
@@ -98,11 +98,11 @@
98
98
 
99
99
  .ag-row:hover,
100
100
  .ag-row.ag-row-hover {
101
- background-color: rgba(34, 84, 244, 0.06) !important;
101
+ background-color: rgba(var(--el-color-primary-rgb), 0.06) !important;
102
102
  }
103
103
 
104
104
  .ag-row.ag-row-selected {
105
- background-color: rgba(34, 84, 244, 0.10) !important;
105
+ background-color: rgba(var(--el-color-primary-rgb), 0.10) !important;
106
106
  }
107
107
 
108
108
  // ── 单元格 ────────────────────────────────────────────────────────────────────
@@ -266,9 +266,9 @@
266
266
  height: 12px;
267
267
  // 三个点用 box-shadow 模拟
268
268
  width: 36px;
269
- background: radial-gradient(circle at 6px 6px, #2254f4 3.5px, transparent 3.5px),
270
- radial-gradient(circle at 18px 6px, #2254f4 3.5px, transparent 3.5px),
271
- radial-gradient(circle at 30px 6px, #2254f4 3.5px, transparent 3.5px);
269
+ background: radial-gradient(circle at 6px 6px, var(--el-color-primary) 3.5px, transparent 3.5px),
270
+ radial-gradient(circle at 18px 6px, var(--el-color-primary) 3.5px, transparent 3.5px),
271
+ radial-gradient(circle at 30px 6px, var(--el-color-primary) 3.5px, transparent 3.5px);
272
272
  animation: ag-dot-bounce 1.2s ease-in-out infinite;
273
273
  opacity: 0.7;
274
274
  }
@@ -38,7 +38,7 @@
38
38
  outline: none;
39
39
  border: none;
40
40
  background: transparent;
41
- color: var(--el-color-primary-light-2, #5178f6);
41
+ color: var(--el-color-primary-light-2, #3355a5);
42
42
  transition: background-color 0.13s ease, color 0.13s ease;
43
43
  flex-shrink: 0;
44
44
 
@@ -49,7 +49,7 @@
49
49
  &.jh-op-view {
50
50
  &:hover:not(:disabled) {
51
51
  color: var(--el-color-primary);
52
- background: rgba(34, 84, 244, 0.09);
52
+ background: rgba(var(--el-color-primary-rgb), 0.09);
53
53
  }
54
54
  }
55
55
  // 编辑 — hover 翠绿
@@ -70,7 +70,7 @@
70
70
  &.jh-op-log {
71
71
  &:hover:not(:disabled) {
72
72
  color: var(--el-color-primary);
73
- background: rgba(34, 84, 244, 0.09);
73
+ background: rgba(var(--el-color-primary-rgb), 0.09);
74
74
  }
75
75
  }
76
76
  // 审核 — hover 翠绿
@@ -83,8 +83,8 @@
83
83
  // 提交 — hover 主色
84
84
  &.jh-op-send {
85
85
  &:hover:not(:disabled) {
86
- color: var(--el-color-primary, #2254f4);
87
- background: rgba(34, 84, 244, 0.09);
86
+ color: var(--el-color-primary, #002a8f);
87
+ background: rgba(var(--el-color-primary-rgb), 0.09);
88
88
  }
89
89
  }
90
90
  // 保存(内联表格用)— hover 翠绿
@@ -139,8 +139,8 @@
139
139
 
140
140
  svg { width: 12px; height: 12px; flex-shrink: 0; }
141
141
  &:hover:not(:disabled) {
142
- background: rgba(34, 84, 244, 0.10);
143
- color: var(--el-color-primary, #2254f4);
142
+ background: rgba(var(--el-color-primary-rgb), 0.10);
143
+ color: var(--el-color-primary, #002a8f);
144
144
  }
145
145
  &:active:not(:disabled) { opacity: 0.65; }
146
146
  &:disabled {
@@ -163,7 +163,7 @@
163
163
  border-radius: 4px;
164
164
  border: none;
165
165
  background: transparent;
166
- color: var(--el-color-primary, #2254f4);
166
+ color: var(--el-color-primary, #002a8f);
167
167
  font-size: 12px;
168
168
  font-weight: 500;
169
169
  cursor: pointer;
@@ -174,8 +174,8 @@
174
174
  flex-shrink: 0;
175
175
 
176
176
  &:hover:not(:disabled) {
177
- background: rgba(34, 84, 244, 0.08);
178
- color: var(--el-color-primary, #2254f4);
177
+ background: rgba(var(--el-color-primary-rgb), 0.08);
178
+ color: var(--el-color-primary, #002a8f);
179
179
  }
180
180
  &:active:not(:disabled) { opacity: 0.55; }
181
181
  &:disabled {
@@ -248,14 +248,14 @@
248
248
  .jh-riskno-badge {
249
249
  display: inline-block;
250
250
  padding: 2px 6px;
251
- background: rgba(34, 84, 244, 0.08);
251
+ background: rgba(var(--el-color-primary-rgb), 0.08);
252
252
  color: var(--el-color-primary);
253
253
  border-radius: 4px;
254
254
  font-family: 'SFMono-Regular', 'Consolas', 'Monaco', monospace;
255
255
  font-size: 11.5px;
256
256
  font-weight: 600;
257
257
  letter-spacing: 0.03em;
258
- border: 1px solid rgba(34, 84, 244, 0.18);
258
+ border: 1px solid rgba(var(--el-color-primary-rgb), 0.18);
259
259
  white-space: nowrap;
260
260
  max-width: 100%;
261
261
  overflow: hidden;
@@ -308,12 +308,12 @@
308
308
  }
309
309
 
310
310
  &--info {
311
- background: rgba(34, 84, 244, 0.10);
311
+ background: rgba(var(--el-color-primary-rgb), 0.10);
312
312
  color: var(--el-color-primary);
313
313
  }
314
314
 
315
315
  &--default {
316
- background: rgba(34, 84, 244, 0.10);
316
+ background: rgba(var(--el-color-primary-rgb), 0.10);
317
317
  color: var(--el-color-primary);
318
318
  }
319
319
  }
@@ -328,7 +328,7 @@
328
328
  transition: background-color 0.15s, color 0.15s;
329
329
 
330
330
  &:not(.el-button--danger):hover {
331
- background-color: rgba(34, 84, 244, 0.08) !important;
331
+ background-color: rgba(var(--el-color-primary-rgb), 0.08) !important;
332
332
  color: var(--el-color-primary) !important;
333
333
  }
334
334
  }
@@ -401,7 +401,7 @@
401
401
  &:hover {
402
402
  border-color: var(--el-color-primary);
403
403
  color: var(--el-color-primary);
404
- background: rgba(34, 84, 244, 0.04);
404
+ background: rgba(var(--el-color-primary-rgb), 0.04);
405
405
  }
406
406
  }
407
407
  }
@@ -437,7 +437,7 @@
437
437
  &:hover {
438
438
  border-color: var(--el-color-primary) !important;
439
439
  color: var(--el-color-primary) !important;
440
- background: rgba(34, 84, 244, 0.04) !important;
440
+ background: rgba(var(--el-color-primary-rgb), 0.04) !important;
441
441
  }
442
442
  }
443
443
  }
@@ -460,7 +460,7 @@
460
460
  }
461
461
  &:focus {
462
462
  border-color: var(--el-color-primary) !important;
463
- box-shadow: 0 0 0 2px rgba(34, 84, 244, 0.12) !important;
463
+ box-shadow: 0 0 0 2px rgba(var(--el-color-primary-rgb), 0.12) !important;
464
464
  }
465
465
  }
466
466
 
@@ -493,7 +493,7 @@
493
493
  .el-date-editor.el-input__wrapper.is-focus,
494
494
  .el-date-editor.el-input__wrapper:focus-within,
495
495
  .el-textarea__inner:focus {
496
- box-shadow: 0 0 0 1.5px var(--el-color-primary, #2254f4) inset !important;
496
+ box-shadow: 0 0 0 1.5px var(--el-color-primary, #002a8f) inset !important;
497
497
  }
498
498
 
499
499
  .el-form-item__label,
@@ -95,15 +95,15 @@
95
95
  line-height: 1 !important;
96
96
  padding: 0 10px !important;
97
97
  font-size: 12px !important;
98
- background-color: var(--el-color-primary, #2254f4) !important;
99
- border-color: var(--el-color-primary, #2254f4) !important;
98
+ background-color: var(--el-color-primary, #002a8f) !important;
99
+ border-color: var(--el-color-primary, #002a8f) !important;
100
100
  color: #ffffff !important;
101
101
  transition: background-color 0.15s, box-shadow 0.15s;
102
102
 
103
103
  &:hover {
104
- background-color: var(--el-color-primary-light-3, #7a98f8) !important;
105
- border-color: var(--el-color-primary-light-3, #7a98f8) !important;
106
- box-shadow: 0 2px 8px rgba(34, 84, 244, 0.25);
104
+ background-color: var(--el-color-primary-light-1, #1a3f9a) !important;
105
+ border-color: var(--el-color-primary-light-1, #1a3f9a) !important;
106
+ box-shadow: 0 2px 8px rgba(var(--el-color-primary-rgb), 0.25);
107
107
  }
108
108
  &:active { opacity: 0.85; }
109
109
  }
@@ -123,7 +123,7 @@
123
123
  &:hover {
124
124
  color: var(--el-color-primary) !important;
125
125
  border-color: var(--el-color-primary-light-5) !important;
126
- background-color: rgba(34, 84, 244, 0.04) !important;
126
+ background-color: rgba(var(--el-color-primary-rgb), 0.04) !important;
127
127
  }
128
128
  }
129
129
  }
@@ -178,14 +178,14 @@
178
178
 
179
179
  // ── 主操作:填充蓝(新增/新建/申请)─────────────────────────────────
180
180
  &.el-button--primary {
181
- background-color: var(--el-color-primary, #2254f4) !important;
182
- border-color: var(--el-color-primary, #2254f4) !important;
181
+ background-color: var(--el-color-primary, #002a8f) !important;
182
+ border-color: var(--el-color-primary, #002a8f) !important;
183
183
  color: #ffffff !important;
184
184
 
185
185
  &:hover {
186
- background-color: var(--el-color-primary-light-3, #7a98f8) !important;
187
- border-color: var(--el-color-primary-light-3, #7a98f8) !important;
188
- box-shadow: 0 2px 8px rgba(34, 84, 244, 0.28);
186
+ background-color: var(--el-color-primary-light-1, #1a3f9a) !important;
187
+ border-color: var(--el-color-primary-light-1, #1a3f9a) !important;
188
+ box-shadow: 0 2px 8px rgba(var(--el-color-primary-rgb), 0.28);
189
189
  }
190
190
  &:active { opacity: 0.85; }
191
191
  }
@@ -225,7 +225,7 @@
225
225
  &:hover {
226
226
  color: var(--el-color-primary) !important;
227
227
  border-color: var(--el-color-primary-light-5) !important;
228
- background-color: rgba(34, 84, 244, 0.04) !important;
228
+ background-color: rgba(var(--el-color-primary-rgb), 0.04) !important;
229
229
  }
230
230
  }
231
231
 
@@ -312,8 +312,8 @@
312
312
 
313
313
  .el-dropdown-menu .el-dropdown-menu__item:hover,
314
314
  .el-dropdown-menu .el-dropdown-menu__item:focus {
315
- color: var(--el-color-primary, #2254f4) !important;
316
- background-color: rgba(34, 84, 244, 0.08) !important;
315
+ color: var(--el-color-primary, #002a8f) !important;
316
+ background-color: rgba(var(--el-color-primary-rgb), 0.08) !important;
317
317
  }
318
318
 
319
319
  .el-dropdown-menu .el-dropdown-menu__item .el-icon,
@@ -38,10 +38,10 @@ html .drag-col-container > .slider-col {
38
38
  &:hover {
39
39
  background: linear-gradient(
40
40
  to right,
41
- rgba(34, 84, 244, 0.06) 3px,
41
+ rgba(var(--el-color-primary-rgb), 0.06) 3px,
42
42
  var(--el-color-primary) 3px,
43
43
  var(--el-color-primary) 7px,
44
- rgba(34, 84, 244, 0.06) 7px
44
+ rgba(var(--el-color-primary-rgb), 0.06) 7px
45
45
  ) !important;
46
46
 
47
47
  &::after {
@@ -54,10 +54,10 @@ html .drag-col-container > .slider-col {
54
54
  &:active {
55
55
  background: linear-gradient(
56
56
  to right,
57
- rgba(34, 84, 244, 0.1) 2.5px,
57
+ rgba(var(--el-color-primary-rgb), 0.1) 2.5px,
58
58
  var(--el-color-primary) 2.5px,
59
59
  var(--el-color-primary) 7.5px,
60
- rgba(34, 84, 244, 0.1) 7.5px
60
+ rgba(var(--el-color-primary-rgb), 0.1) 7.5px
61
61
  ) !important;
62
62
  }
63
63
  }
@@ -47,10 +47,10 @@ html .drager_row > .slider_row {
47
47
  &:hover {
48
48
  background: linear-gradient(
49
49
  to bottom,
50
- rgba(34, 84, 244, 0.06) 3px,
50
+ rgba(var(--el-color-primary-rgb), 0.06) 3px,
51
51
  var(--el-color-primary) 3px,
52
52
  var(--el-color-primary) 7px,
53
- rgba(34, 84, 244, 0.06) 7px
53
+ rgba(var(--el-color-primary-rgb), 0.06) 7px
54
54
  ) !important;
55
55
 
56
56
  &::after {
@@ -63,10 +63,10 @@ html .drager_row > .slider_row {
63
63
  &:active {
64
64
  background: linear-gradient(
65
65
  to bottom,
66
- rgba(34, 84, 244, 0.1) 2.5px,
66
+ rgba(var(--el-color-primary-rgb), 0.1) 2.5px,
67
67
  var(--el-color-primary) 2.5px,
68
68
  var(--el-color-primary) 7.5px,
69
- rgba(34, 84, 244, 0.1) 7.5px
69
+ rgba(var(--el-color-primary-rgb), 0.1) 7.5px
70
70
  ) !important;
71
71
  }
72
72
  }
@@ -17,7 +17,7 @@
17
17
 
18
18
  &:hover {
19
19
  color: var(--el-color-primary) !important;
20
- background-color: rgba(34, 84, 244, 0.06) !important;
20
+ background-color: rgba(var(--el-color-primary-rgb), 0.06) !important;
21
21
  }
22
22
 
23
23
  // 当前页 → 品牌蓝填充
@@ -49,7 +49,7 @@
49
49
 
50
50
  &:hover:not(:disabled) {
51
51
  color: var(--el-color-primary) !important;
52
- background-color: rgba(34, 84, 244, 0.06) !important;
52
+ background-color: rgba(var(--el-color-primary-rgb), 0.06) !important;
53
53
  }
54
54
 
55
55
  &:disabled { opacity: 0.4; cursor: not-allowed; }
@@ -89,7 +89,7 @@
89
89
 
90
90
  // ── Hover(非选中行)──────────────────────────────────────────────────────
91
91
  &:hover {
92
- background-color: rgba(34, 84, 244, 0.07) !important;
92
+ background-color: rgba(var(--el-color-primary-rgb), 0.07) !important;
93
93
 
94
94
  &::before { transform: translateY(-50%) scale(1); opacity: 0.55; }
95
95
 
@@ -113,7 +113,7 @@
113
113
 
114
114
  // ── 选中状态 ──────────────────────────────────────────────────────────────────
115
115
  .drag-left .el-tree-node.is-current > .el-tree-node__content {
116
- background-color: rgba(34, 84, 244, 0.10) !important;
116
+ background-color: rgba(var(--el-color-primary-rgb), 0.10) !important;
117
117
  box-shadow: inset 3px 0 0 var(--el-color-primary) !important;
118
118
  font-weight: 500;
119
119
  color: var(--el-color-primary) !important;
@@ -147,7 +147,7 @@
147
147
 
148
148
  // hover 时加深一点
149
149
  &:hover {
150
- background-color: rgba(34, 84, 244, 0.15) !important;
150
+ background-color: rgba(var(--el-color-primary-rgb), 0.15) !important;
151
151
  }
152
152
  }
153
153
 
@@ -107,8 +107,8 @@ html body .el-select .el-input > .el-input__inner {
107
107
  .el-select .el-input.is-focus > .el-input__inner,
108
108
  .el-date-editor.is-focus > .el-input__inner,
109
109
  .el-date-editor .el-input.is-focus > .el-input__inner {
110
- border-color: var(--el-color-primary, #2254f4) !important;
111
- box-shadow: 0 0 0 1px var(--el-color-primary, #2254f4) inset;
110
+ border-color: var(--el-color-primary, #002a8f) !important;
111
+ box-shadow: 0 0 0 1px var(--el-color-primary, #002a8f) inset;
112
112
  }
113
113
 
114
114
  // 4) error 红色边框(兼容 EP 2.2.x DOM;
@@ -8,8 +8,8 @@
8
8
  // 主背景:双径向渐变替换纯灰
9
9
  html body .portal-main {
10
10
  background:
11
- radial-gradient(ellipse at 15% 0%, rgba(34, 84, 244, 0.09) 0%, transparent 45%),
12
- radial-gradient(ellipse at 85% 85%, rgba(122, 152, 248, 0.07) 0%, transparent 45%),
11
+ radial-gradient(ellipse at 15% 0%, rgba(var(--el-color-primary-rgb), 0.09) 0%, transparent 45%),
12
+ radial-gradient(ellipse at 85% 85%, rgba(var(--el-color-primary-rgb), 0.05) 0%, transparent 45%),
13
13
  #eef0f8 !important;
14
14
  }
15
15
 
@@ -18,13 +18,13 @@ html body .portal-header {
18
18
  background: rgba(255, 255, 255, 0.88) !important;
19
19
  backdrop-filter: blur(12px) !important;
20
20
  -webkit-backdrop-filter: blur(12px) !important;
21
- box-shadow: 0 1px 16px rgba(34, 84, 244, 0.08) !important;
22
- border-bottom: 1px solid rgba(34, 84, 244, 0.07) !important;
21
+ box-shadow: 0 1px 16px rgba(var(--el-color-primary-rgb), 0.08) !important;
22
+ border-bottom: 1px solid rgba(var(--el-color-primary-rgb), 0.07) !important;
23
23
  }
24
24
 
25
25
  // 平台标题:蓝紫渐变文字
26
26
  html body .portal-text {
27
- background: linear-gradient(135deg, #2254f4 0%, #7a98f8 100%) !important;
27
+ background: linear-gradient(135deg, var(--el-color-primary) 0%, var(--el-color-primary-light-3) 100%) !important;
28
28
  -webkit-background-clip: text !important;
29
29
  -webkit-text-fill-color: transparent !important;
30
30
  background-clip: text !important;
@@ -35,7 +35,7 @@ html body .portal-text {
35
35
  html body .portal-bg {
36
36
  border-radius: 14px !important;
37
37
  overflow: hidden !important;
38
- box-shadow: 0 8px 32px rgba(34, 84, 244, 0.12) !important;
38
+ box-shadow: 0 8px 32px rgba(var(--el-color-primary-rgb), 0.12) !important;
39
39
  }
40
40
 
41
41
  // 综合待办卡片:玻璃质感
@@ -44,21 +44,21 @@ html body .portal-zh {
44
44
  backdrop-filter: blur(20px) !important;
45
45
  -webkit-backdrop-filter: blur(20px) !important;
46
46
  border-radius: 14px !important;
47
- border: 1px solid rgba(34, 84, 244, 0.12) !important;
48
- box-shadow: 0 8px 32px rgba(34, 84, 244, 0.1) !important;
47
+ border: 1px solid rgba(var(--el-color-primary-rgb), 0.12) !important;
48
+ box-shadow: 0 8px 32px rgba(var(--el-color-primary-rgb), 0.1) !important;
49
49
  overflow: hidden !important;
50
50
  }
51
51
 
52
52
  // 通知待办 Tab 激活下划线
53
53
  html body .portal-tabs .el-tabs__active-bar {
54
- background: linear-gradient(90deg, #2254f4 0%, #7a98f8 100%) !important;
54
+ background: linear-gradient(90deg, var(--el-color-primary) 0%, var(--el-color-primary-light-3) 100%) !important;
55
55
  }
56
56
  html body .portal-tabs .el-tabs__item.is-active {
57
- color: #2254f4 !important;
57
+ color: var(--el-color-primary) !important;
58
58
  font-weight: 600 !important;
59
59
  }
60
60
  html body .portal-tabs .el-tabs__item:hover {
61
- color: #2254f4 !important;
61
+ color: var(--el-color-primary) !important;
62
62
  }
63
63
 
64
64
  // 子系统区域卡片:玻璃质感
@@ -68,8 +68,8 @@ html body .portal-mainMiddle {
68
68
  backdrop-filter: blur(20px) !important;
69
69
  -webkit-backdrop-filter: blur(20px) !important;
70
70
  border-radius: 14px !important;
71
- border: 1px solid rgba(34, 84, 244, 0.12) !important;
72
- box-shadow: 0 8px 32px rgba(34, 84, 244, 0.1) !important;
71
+ border: 1px solid rgba(var(--el-color-primary-rgb), 0.12) !important;
72
+ box-shadow: 0 8px 32px rgba(var(--el-color-primary-rgb), 0.1) !important;
73
73
  overflow: hidden !important;
74
74
  }
75
75
 
@@ -83,14 +83,14 @@ html body .portal-childrenSystem {
83
83
  }
84
84
 
85
85
  &:hover .children-name {
86
- color: var(--el-color-primary, #2254f4) !important;
86
+ color: var(--el-color-primary, #002a8f) !important;
87
87
  font-weight: 600 !important;
88
88
  }
89
89
  }
90
90
 
91
91
  // 区块标题左竖线:蓝紫渐变
92
92
  html body .portal-line {
93
- background: linear-gradient(180deg, #2254f4 0%, #7a98f8 100%) !important;
93
+ background: linear-gradient(180deg, var(--el-color-primary) 0%, var(--el-color-primary-light-3) 100%) !important;
94
94
  border-radius: 2px !important;
95
95
  }
96
96
 
@@ -102,7 +102,7 @@ html body .portal-font {
102
102
 
103
103
  // 消息数量角标:主色背景
104
104
  html body .portal-tabs-label .num {
105
- background: var(--el-color-primary, #2254f4) !important;
105
+ background: var(--el-color-primary, #002a8f) !important;
106
106
  color: #fff !important;
107
107
  border-radius: 10px !important;
108
108
  font-weight: 600 !important;
@@ -110,5 +110,5 @@ html body .portal-tabs-label .num {
110
110
 
111
111
  // 消息行 hover
112
112
  html body .portal-tabs-row:hover {
113
- color: var(--el-color-primary, #2254f4) !important;
113
+ color: var(--el-color-primary, #002a8f) !important;
114
114
  }