diff --git a/ui/css/style.css b/ui/css/style.css index 2722931..45521f4 100644 --- a/ui/css/style.css +++ b/ui/css/style.css @@ -329,17 +329,60 @@ select.input option { background: var(--bg-card); } /* 交易趋势图(rant 2026-08-23T16:01:07 需求 2):SVG 折线图,无外部依赖 */ .tx-trend { padding: 10px 16px 8px; border-bottom: 1px solid var(--border); } .tx-trend-title { color: var(--text-mute); font-size: 12px; margin-bottom: 2px; } +/* 指标切换(rant 2026-08-23T16:17:18 需求 2) */ +.tx-trend-switch { display: flex; gap: 6px; margin: 6px 0 8px; flex-wrap: wrap; } +.tsw-btn { + border: 1px solid var(--border); + background: transparent; + color: var(--text-dim); + padding: 3px 12px; + border-radius: 999px; + cursor: pointer; + font-size: 12px; +} +.tsw-btn:hover { color: var(--text); } +.tsw-btn.active { background: var(--accent-soft); border-color: var(--accent); color: var(--accent-text); } +.tx-trend-chart { position: relative; } .tx-trend svg { width: 100%; height: auto; display: block; } -.tx-trend-grid { stroke: var(--border); stroke-width: 1; } +.tx-trend-grid { stroke: var(--border); stroke-width: 1; stroke-dasharray: 3 4; } .tx-trend-axis { fill: var(--text-mute); font-size: 10px; } -.tx-trend svg .tx-trend-inc { fill: none; stroke: var(--ok); stroke-width: 2; } -.tx-trend svg .tx-trend-exp { fill: none; stroke: var(--danger-text); stroke-width: 2; } -.tx-trend svg circle.tx-trend-inc { fill: var(--ok); stroke: none; } -.tx-trend svg circle.tx-trend-exp { fill: var(--danger-text); stroke: none; } -.tx-trend-legend { display: flex; gap: 18px; font-size: 12px; color: var(--text-mute); padding-top: 2px; } +/* 平滑折线 + 渐变面积(指标色随切换,rant 2026-08-23T16:17:18 需求 1) */ +.tx-trend svg .trend-line { fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; } +.tx-trend svg .trend-area { stroke: none; } +.tx-trend svg .trend-dot { fill: var(--bg-card); stroke-width: 1.5; } +.tx-trend svg .tg-0 { stop-opacity: 0; } +.tx-trend svg .tg-1 { stop-opacity: 0; } +.tx-trend svg.m-exp .trend-line { stroke: var(--danger-text); } +.tx-trend svg.m-exp .trend-dot { stroke: var(--danger-text); } +.tx-trend svg.m-exp .tg-0 { stop-color: var(--danger-text); stop-opacity: 0.22; } +.tx-trend svg.m-exp .tg-1 { stop-color: var(--danger-text); } +.tx-trend svg.m-inc .trend-line { stroke: var(--ok); } +.tx-trend svg.m-inc .trend-dot { stroke: var(--ok); } +.tx-trend svg.m-inc .tg-0 { stop-color: var(--ok); stop-opacity: 0.22; } +.tx-trend svg.m-inc .tg-1 { stop-color: var(--ok); } +.tx-trend svg.m-net .trend-line { stroke: var(--accent-text); } +.tx-trend svg.m-net .trend-dot { stroke: var(--accent-text); } +.tx-trend svg.m-net .tg-0 { stop-color: var(--accent-text); stop-opacity: 0.22; } +.tx-trend svg.m-net .tg-1 { stop-color: var(--accent-text); } +.tx-trend svg.m-tok .trend-line { stroke: var(--warn); } +.tx-trend svg.m-tok .trend-dot { stroke: var(--warn); } +.tx-trend svg.m-tok .tg-0 { stop-color: var(--warn); stop-opacity: 0.22; } +.tx-trend svg.m-tok .tg-1 { stop-color: var(--warn); } +/* 悬停引导线 + tooltip */ +.tx-trend-guide { position: absolute; top: 2px; bottom: 6px; width: 1px; background: var(--text-dim); opacity: 0.45; display: none; pointer-events: none; } +.tx-trend-tip { + position: absolute; display: none; pointer-events: none; + background: var(--bg-card); border: 1px solid var(--border); border-radius: 8px; + padding: 6px 9px; font-size: 12px; color: var(--text); + box-shadow: var(--shadow); z-index: 5; white-space: nowrap; line-height: 1.5; +} +.tx-trend-tip b { color: var(--accent-text); font-weight: 600; } +.tx-trend-legend { display: flex; gap: 18px; font-size: 12px; color: var(--text-mute); padding-top: 4px; align-items: center; } .tx-trend-dot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 5px; vertical-align: middle; } -.tx-trend-dot.inc { background: var(--ok); } .tx-trend-dot.exp { background: var(--danger-text); } +.tx-trend-dot.inc { background: var(--ok); } +.tx-trend-dot.net { background: var(--accent-text); } +.tx-trend-dot.tok { background: var(--warn); } .tx-trend-empty { color: var(--text-mute); font-size: 13px; padding: 14px 16px; border-bottom: 1px solid var(--border); } .table-wrap { overflow-x: auto; } diff --git a/ui/index.html b/ui/index.html index 07c9410..4f99571 100644 --- a/ui/index.html +++ b/ui/index.html @@ -5,7 +5,7 @@