diff --git a/README.md b/README.md
index 06509fc..1ec0ecb 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,12 @@
+## 多彩霓虹主题 · 2026-10-21
+
+全站采用玫红、橙金、薄荷绿、紫色与电光蓝多彩面板,包含彩虹渐变趋势图、极光登录背景及统一的导航、表格和 AI 对话样式。以下 12 张配图均于 2026-10-21 从当前运行版本重新采集。
+
+完整操作录屏与本次交付包:[交付树中的 2026-10-21 版本](https://code.xinmi.cloud/depei/panel-delivery-tree/src/branch/main/交付包/smart-parking-delivery-20261021)。
+
## 目录
- [一、详细功能描述](#一详细功能描述)
@@ -112,7 +118,7 @@
- **低延迟流媒体**:RTMP 收流 + Nginx-RTMP/FFmpeg 转 HLS 分发,兼顾实时性与浏览器兼容性。
- **本地地图引擎**:Leaflet + 地图瓦片本地化切分与存储,支持自定义园区地图。
- **私有化一键交付**:Docker Compose 编排前后端、数据库、媒体服务,一条命令完成部署。
-- **统一暗色面板设计体系**:玻璃拟态 + 霓虹光效 + 响应式布局,视觉统一、辨识度高。
+- **多彩霓虹面板设计体系**:五色指标卡 + 彩虹趋势图 + 极光玻璃背景 + 响应式布局,视觉统一、辨识度高。
- **AI 能力可插拔**:支持标准 Chat Completions 协议,可按需切换 TokenFree 上的 Kimi / Qwen / Claude 等模型。
## 四、应用场景
diff --git a/docs/screenshots/ai-chat.png b/docs/screenshots/ai-chat.png
index 6c57f4e..3707995 100644
Binary files a/docs/screenshots/ai-chat.png and b/docs/screenshots/ai-chat.png differ
diff --git a/docs/screenshots/ai-settings.png b/docs/screenshots/ai-settings.png
index 5a9648d..f4144ef 100644
Binary files a/docs/screenshots/ai-settings.png and b/docs/screenshots/ai-settings.png differ
diff --git a/docs/screenshots/alarm-rule-management.png b/docs/screenshots/alarm-rule-management.png
index 485d043..3c1d468 100644
Binary files a/docs/screenshots/alarm-rule-management.png and b/docs/screenshots/alarm-rule-management.png differ
diff --git a/docs/screenshots/alarms.png b/docs/screenshots/alarms.png
index 00fb077..609c7af 100644
Binary files a/docs/screenshots/alarms.png and b/docs/screenshots/alarms.png differ
diff --git a/docs/screenshots/camera-management.png b/docs/screenshots/camera-management.png
index 8a0c887..753ac0d 100644
Binary files a/docs/screenshots/camera-management.png and b/docs/screenshots/camera-management.png differ
diff --git a/docs/screenshots/campus-state.png b/docs/screenshots/campus-state.png
index 138880b..3496eb3 100644
Binary files a/docs/screenshots/campus-state.png and b/docs/screenshots/campus-state.png differ
diff --git a/docs/screenshots/login.png b/docs/screenshots/login.png
index fd787ae..3dfde77 100644
Binary files a/docs/screenshots/login.png and b/docs/screenshots/login.png differ
diff --git a/docs/screenshots/map-management.png b/docs/screenshots/map-management.png
index cab0a98..4bdc76b 100644
Binary files a/docs/screenshots/map-management.png and b/docs/screenshots/map-management.png differ
diff --git a/docs/screenshots/monitoring-screen.png b/docs/screenshots/monitoring-screen.png
index f5d635a..f3beb9d 100644
Binary files a/docs/screenshots/monitoring-screen.png and b/docs/screenshots/monitoring-screen.png differ
diff --git a/docs/screenshots/overview.png b/docs/screenshots/overview.png
index ee3811c..77cd691 100644
Binary files a/docs/screenshots/overview.png and b/docs/screenshots/overview.png differ
diff --git a/docs/screenshots/user-info.png b/docs/screenshots/user-info.png
index 5f24303..4cbff7d 100644
Binary files a/docs/screenshots/user-info.png and b/docs/screenshots/user-info.png differ
diff --git a/docs/screenshots/user-management.png b/docs/screenshots/user-management.png
index c886b54..8e8301d 100644
Binary files a/docs/screenshots/user-management.png and b/docs/screenshots/user-management.png differ
diff --git a/frontend/src/app.tsx b/frontend/src/app.tsx
index 84acf44..689a224 100644
--- a/frontend/src/app.tsx
+++ b/frontend/src/app.tsx
@@ -1,5 +1,6 @@
import { defineApp } from 'umi';
import './global.less';
import './styles/dazzle.less';
+import './styles/spectrum.less';
export default defineApp({});
\ No newline at end of file
diff --git a/frontend/src/pages/login/index.module.less b/frontend/src/pages/login/index.module.less
index 5ee0051..55f6e89 100644
--- a/frontend/src/pages/login/index.module.less
+++ b/frontend/src/pages/login/index.module.less
@@ -279,3 +279,16 @@
color: #a5f3fc;
text-shadow: 0 0 14px rgba(34, 211, 238, 0.75);
}
+
+/* Spectrum login: saturated aurora, readable midnight glass. */
+.loginPage {
+ background: radial-gradient(ellipse at 12% 20%, #7b185c 0%, transparent 48%), radial-gradient(ellipse at 88% 15%, #44259b 0%, transparent 45%), radial-gradient(ellipse at 78% 95%, #075d65 0%, transparent 48%), radial-gradient(ellipse at 5% 95%, #874019 0%, transparent 45%), #100c29;
+}
+.loginPanel {
+ border-color: #c084fc;
+ background: linear-gradient(145deg, rgba(79, 26, 85, .94), rgba(22, 21, 55, .97) 55%, rgba(9, 57, 64, .96));
+ box-shadow: 0 30px 80px #09051c, -18px 0 65px #f43f5e30, 18px 0 65px #22d3ee35;
+}
+.orbOne { background: radial-gradient(circle at 30% 30%, #ffcf6c80, #fb458c40 60%, transparent 70%); border-color: #ffb46c; }
+.orbTwo { background: radial-gradient(circle at 30% 30%, #b599ff80, #26dfd440 60%, transparent 70%); border-color: #ae92ff; }
+.brandRow h1 { color: #fff0fb; }
diff --git a/frontend/src/pages/overview/index.tsx b/frontend/src/pages/overview/index.tsx
index ab240aa..c9686ea 100644
--- a/frontend/src/pages/overview/index.tsx
+++ b/frontend/src/pages/overview/index.tsx
@@ -16,7 +16,7 @@ import './index.less';
type OverviewData =
ServiceTypes['GET /api/user/getOverviewStats']['res']['data'];
-const PALETTE = ['#22d3ee', '#fb7185', '#94a3b8'];
+const PALETTE = ['#42f5ba', '#ff668f', '#ffc56b'];
const Overview: FC = () => {
const [data, setData] = useState();
@@ -183,6 +183,7 @@ const TrendChart: FC<{