fix(ui): 批量替换所有组件中残留的硬编码深色值以彻底支持浅色主题
构建并部署 BYW VoiceHub / 构建并推送容器镜像 (push) Canceled after 0s
构建并部署 BYW VoiceHub / 部署到生产服务器 (push) Canceled after 0s
构建并部署 BYW VoiceHub / Preflight 语法与构建检查 (push) Canceled after 1m27s

This commit is contained in:
2026-09-12 15:56:10 +08:00
parent 8b0934f6f4
commit 9fc5e3e607
42 changed files with 6081 additions and 300 deletions
+25 -25
View File
@@ -1528,7 +1528,7 @@ const getFirstChar = (text) => {
.mobile-top-progress .progress-fill {
height: 100%;
background: #0b5afe;
background: var(--bg-secondary, #0b5afe);
box-shadow: 0 0 8px rgba(11, 90, 254, 0.6);
border-radius: 0 1px 1px 0;
}
@@ -1729,7 +1729,7 @@ const getFirstChar = (text) => {
align-items: center;
justify-content: center;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: #ffffff;
color: var(--text-primary, #ffffff);
font-size: 18px;
font-weight: 600;
font-family:
@@ -1756,7 +1756,7 @@ const getFirstChar = (text) => {
line-height: 22px;
padding-bottom: 2px;
letter-spacing: -0.4px;
color: #ffffff;
color: var(--text-primary, #ffffff);
font-family:
'SF Pro', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', SimHei, Arial, Helvetica,
sans-serif;
@@ -1776,7 +1776,7 @@ const getFirstChar = (text) => {
overflow: hidden;
line-height: 20px;
letter-spacing: -0.4px;
color: #ffffff75;
color: var(--text-primary, #ffffff)75;
font-family:
'SF Pro', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', SimHei, Arial, Helvetica,
sans-serif;
@@ -1797,7 +1797,7 @@ const getFirstChar = (text) => {
align-items: center;
justify-content: center;
border-radius: 100px;
background: #00000042;
background: var(--bg-primary, #111111)42;
padding: 6px;
width: 32px;
height: 32px;
@@ -1814,7 +1814,7 @@ const getFirstChar = (text) => {
}
.close-icon {
color: #ffffff;
color: var(--text-primary, #ffffff);
font-size: 15px;
line-height: 1;
font-family:
@@ -1851,7 +1851,7 @@ const getFirstChar = (text) => {
display: flex;
flex-shrink: 0;
align-items: center;
border: 1px solid #1a1a1a;
border: 1px solid var(--border-secondary, #1a1a1a);
border-radius: 7px;
height: 8px;
width: 100%;
@@ -1864,14 +1864,14 @@ const getFirstChar = (text) => {
}
.ios-progress-bar:hover {
border-color: #333;
border-color: var(--border-secondary, #333);
box-shadow:
0 0 20px rgba(255, 255, 255, 0.1),
inset 0 1px 0 rgba(255, 255, 255, 0.1);
}
.progress-fill {
background: linear-gradient(90deg, #ffffffb2, #ffffff);
background: linear-gradient(90deg, var(--card-bg, #ffffff)b2, #ffffff);
height: 8px;
transition: width 0.1s linear;
border-radius: 7px;
@@ -1916,7 +1916,7 @@ const getFirstChar = (text) => {
}
.clickable-time:hover {
color: #ffffff;
color: var(--text-primary, #ffffff);
transform: scale(1.05);
}
@@ -1931,10 +1931,10 @@ const getFirstChar = (text) => {
display: flex;
align-items: center;
justify-content: center;
background: #ffffff1a;
background: var(--card-bg, #ffffff)1a;
border-radius: 4px;
padding: 0 8px;
color: #ffffffb3;
color: var(--text-primary, #ffffff)b3;
font-size: 10px;
font-weight: 600;
backdrop-filter: blur(10px);
@@ -1944,8 +1944,8 @@ const getFirstChar = (text) => {
}
.audio-quality-badge:hover {
background: #ffffff26;
color: #ffffff;
background: var(--card-bg, #ffffff)26;
color: var(--text-primary, #ffffff);
}
/* 控制按钮区域 */
@@ -1962,7 +1962,7 @@ const getFirstChar = (text) => {
.ios-control-btn {
background: none;
border: none;
color: #ffffff92;
color: var(--text-primary, #ffffff)92;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
display: flex;
@@ -1997,7 +1997,7 @@ const getFirstChar = (text) => {
}
.ios-control-btn:hover {
color: #ffffff;
color: var(--text-primary, #ffffff);
transform: scale(1.1);
box-shadow:
0 0 20px rgba(255, 255, 255, 0.2),
@@ -2196,7 +2196,7 @@ const getFirstChar = (text) => {
width: 60px;
line-height: 18px;
letter-spacing: 0.42px;
color: #ffffffb3;
color: var(--text-primary, #ffffff)b3;
font-family:
'SF Pro', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', SimHei, Arial, Helvetica,
sans-serif;
@@ -2215,10 +2215,10 @@ const getFirstChar = (text) => {
display: flex;
align-items: center;
justify-content: center;
background: #ffffff1a;
background: var(--card-bg, #ffffff)1a;
border-radius: 4px;
padding: 0 8px;
color: #ffffffb3;
color: var(--text-primary, #ffffff)b3;
font-size: 10px;
font-weight: 600;
backdrop-filter: blur(10px);
@@ -2228,8 +2228,8 @@ const getFirstChar = (text) => {
}
.audio-quality:hover {
background: #ffffff26;
color: #ffffff;
background: var(--card-bg, #ffffff)26;
color: var(--text-primary, #ffffff);
}
.audio-quality:active {
@@ -2251,13 +2251,13 @@ const getFirstChar = (text) => {
width: 39px;
font-size: 25px;
text-align: center;
color: #ffffff92;
color: var(--text-primary, #ffffff)92;
cursor: pointer;
transition: all 0.2s ease;
}
.lyrics-btn:hover {
color: #ffffff;
color: var(--text-primary, #ffffff);
transform: scale(1.1);
}
@@ -2265,7 +2265,7 @@ const getFirstChar = (text) => {
.control-btn {
line-height: 1;
font-size: 24px;
color: #ffffff;
color: var(--text-primary, #ffffff);
cursor: pointer;
transition: all 0.2s ease;
display: flex;
@@ -2290,7 +2290,7 @@ const getFirstChar = (text) => {
.play-pause-btn {
line-height: 44px;
font-size: 37px;
color: #ffffff;
color: var(--text-primary, #ffffff);
cursor: pointer;
transition: all 0.2s ease;
display: flex;