style: 全局 UI 主题皮肤重构与样式模块化

引入 Element Plus 主题定制和主题皮肤 composable,将全局
样式拆分为组件级独立 CSS 文件(侧边栏、顶栏、工作台等),
统一色彩变量和间距规范,重构所有视图和组件样式以适配新
主题系统,优化图表和知识图谱组件视觉表现,提取审计和差
旅报销相关子组件。
This commit is contained in:
caoxiaozhu
2026-05-27 09:17:57 +08:00
parent df49103f23
commit 2dcc72102d
112 changed files with 10983 additions and 8996 deletions

View File

@@ -51,8 +51,8 @@
width: 6px;
height: 6px;
border-radius: 999px;
background: #10b981;
box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.12);
background: var(--success);
box-shadow: 0 0 0 3px rgba(var(--success-rgb), 0.12);
}
.validation-section--risk .validation-section-title {
@@ -69,13 +69,13 @@
gap: 6px;
margin: 0;
padding: 0 0 0 18px;
color: #0f766e;
color: var(--success-hover);
font-size: 13px;
line-height: 1.55;
}
.validation-list li::marker {
color: #14b8a6;
color: var(--success);
}
.validation-section--risk .risk-advice-list {
@@ -383,7 +383,7 @@
padding: 18px;
overflow: auto;
background:
linear-gradient(180deg, rgba(240, 253, 244, .5) 0%, rgba(255, 255, 255, 0) 140px),
linear-gradient(180deg, color-mix(in srgb, var(--theme-primary-soft) 55%, transparent) 0%, rgba(255, 255, 255, 0) 140px),
#fff;
}
@@ -415,8 +415,8 @@
display: grid;
place-items: center;
border-radius: 999px;
background: #ecfdf5;
color: #059669;
background: var(--theme-primary-soft);
color: var(--theme-primary-active);
font-size: 18px;
}
@@ -471,9 +471,9 @@
}
.ai-composer-surface:focus-within {
border-color: rgba(16, 185, 129, .58);
border-color: rgba(var(--theme-primary-rgb), .58);
background: #fff;
box-shadow: 0 0 0 3px rgba(16, 185, 129, .11), 0 10px 24px rgba(15, 23, 42, .06);
box-shadow: 0 0 0 3px var(--theme-focus-ring), 0 10px 24px rgba(15, 23, 42, .06);
}
.ai-composer textarea {
@@ -552,14 +552,14 @@
.ai-send-btn {
border: 0;
background: #10b981;
background: var(--theme-primary);
color: #fff;
box-shadow: 0 8px 18px rgba(16, 185, 129, .20);
box-shadow: 0 8px 18px var(--theme-primary-shadow);
}
.ai-send-btn:hover {
background: #0ea672;
box-shadow: 0 10px 22px rgba(16, 185, 129, .24);
background: var(--theme-primary-active);
box-shadow: 0 10px 22px rgba(var(--theme-primary-rgb), .24);
}
.ai-upload-btn:active,
@@ -650,7 +650,7 @@
.ai-preview-empty i {
font-size: 32px;
color: #10b981;
color: var(--theme-primary);
}
.ai-preview-actions {
@@ -681,10 +681,10 @@
}
.ai-preview-primary {
border: 1px solid #059669;
background: #059669;
border: 1px solid var(--theme-primary);
background: var(--theme-primary);
color: #fff;
box-shadow: 0 8px 20px rgba(5, 150, 105, .18);
box-shadow: 0 8px 20px var(--theme-primary-shadow);
}
.ai-preview-secondary:hover {
@@ -692,7 +692,7 @@
}
.ai-preview-primary:hover {
background: #047857;
background: var(--theme-primary-active);
}
.ai-preview-secondary:disabled,
@@ -957,7 +957,7 @@
}
.validation-pill.ready {
background: #f0fdf4;
border-color: #bbf7d0;
color: #166534;
background: var(--success-soft);
border-color: var(--success-line);
color: var(--success-active);
}