diff --git a/frontend/src/components/ExtDimensionAnalysis.tsx b/frontend/src/components/ExtDimensionAnalysis.tsx
index 30b04cf..7d5de5e 100644
--- a/frontend/src/components/ExtDimensionAnalysis.tsx
+++ b/frontend/src/components/ExtDimensionAnalysis.tsx
@@ -296,8 +296,8 @@ export function ExtDimensionAnalysis({
页面按分析菜单配置读取扩展数据源,使用分组字段生成榜单,并严格按照 detail_columns 渲染明细列。
-
-
+
+
diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx
index c5e8ee4..9dd9235 100644
--- a/frontend/src/pages/Dashboard.tsx
+++ b/frontend/src/pages/Dashboard.tsx
@@ -325,24 +325,25 @@ function EmotionRadar({ radar, score }: { radar: OverviewMarket['radar']; score:
+ {/* 中心/网格用 CSS 变量取色, 亮暗主题自动切换 (SVG 属性支持 hsl(var(--x))) */}
-
-
-
+
+
+
{gridPolygons.map(g => (
))}
- {points.map(p =>
)}
+ {points.map(p =>
)}
- {points.map(p =>
)}
+ {points.map(p =>
)}
{score}
{points.map(p => (
diff --git a/frontend/src/pages/backtest/StrategyBacktest.tsx b/frontend/src/pages/backtest/StrategyBacktest.tsx
index bc951c5..30f89b1 100644
--- a/frontend/src/pages/backtest/StrategyBacktest.tsx
+++ b/frontend/src/pages/backtest/StrategyBacktest.tsx
@@ -186,7 +186,8 @@ const fmtLots = (v: number | null | undefined) => {
}
const statValueColor = (v: number | null | undefined) => {
- if (v == null || Number.isNaN(v) || v === 0) return '#f8fafc'
+ // 中性值继承页面前景色 (亮暗主题都可读), 不再写死近白色
+ if (v == null || Number.isNaN(v) || v === 0) return 'inherit'
return v > 0 ? '#f87171' : '#34d399'
}
@@ -383,7 +384,7 @@ function Stat({ label, value, color }: { label: ReactNode; value: string; color?
{label}
{value}