mirror of
https://github.com/ZHANGTIANYAO1/teamspeak-music-bot.git
synced 2026-10-02 04:52:50 +08:00
1051 lines
20 KiB
SCSS
1051 lines
20 KiB
SCSS
/* ===== 手机端适配补丁,不改原组件 ===== */
|
|
|
|
@media (max-width: 768px) {
|
|
:root {
|
|
--navbar-height: 52px;
|
|
--mobile-tabbar-height: 60px;
|
|
--mobile-mini-player-height: 74px;
|
|
}
|
|
|
|
html,
|
|
body,
|
|
#app {
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
* {
|
|
min-width: 0;
|
|
}
|
|
|
|
button,
|
|
input,
|
|
textarea,
|
|
select {
|
|
max-width: 100%;
|
|
}
|
|
|
|
button,
|
|
a,
|
|
.nav-link,
|
|
.m-tab,
|
|
.bot-ctrl-btn,
|
|
.link-dialog-btn,
|
|
.play-all-btn,
|
|
.expand-btn,
|
|
.source-tab,
|
|
.source-tab-label {
|
|
min-width: 0;
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
body {
|
|
-webkit-text-size-adjust: 100%;
|
|
}
|
|
|
|
input,
|
|
textarea,
|
|
select {
|
|
font-size: 16px !important;
|
|
}
|
|
|
|
/* 页面主体 */
|
|
.main-content {
|
|
padding: calc(var(--navbar-height) + 14px) 14px calc(var(--mobile-tabbar-height) + var(--mobile-mini-player-height) + env(safe-area-inset-bottom) + 18px) !important;
|
|
max-width: 100vw !important;
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
/* 顶部导航 */
|
|
.navbar {
|
|
height: var(--navbar-height) !important;
|
|
min-height: var(--navbar-height) !important;
|
|
padding: 0 12px !important;
|
|
flex-wrap: nowrap !important;
|
|
align-items: center !important;
|
|
gap: 8px !important;
|
|
}
|
|
|
|
.logo {
|
|
font-size: 16px !important;
|
|
line-height: 36px !important;
|
|
margin-right: auto !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.nav-right {
|
|
margin-left: 0 !important;
|
|
gap: 8px !important;
|
|
}
|
|
|
|
.nav-links {
|
|
display: none !important;
|
|
}
|
|
|
|
.nav-links::-webkit-scrollbar {
|
|
display: none !important;
|
|
}
|
|
|
|
.nav-link {
|
|
flex: 0 0 auto !important;
|
|
min-width: max-content !important;
|
|
padding: 8px 12px !important;
|
|
font-size: 13px !important;
|
|
line-height: 1 !important;
|
|
writing-mode: horizontal-tb !important;
|
|
white-space: nowrap !important;
|
|
border-radius: 10px !important;
|
|
background: var(--bg-card) !important;
|
|
}
|
|
|
|
.bot-selector-btn {
|
|
max-width: min(180px, 54vw) !important;
|
|
min-height: 36px !important;
|
|
padding: 7px 10px !important;
|
|
font-size: 13px !important;
|
|
}
|
|
|
|
.bot-selector-name {
|
|
max-width: 96px !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.settings-btn {
|
|
width: 36px !important;
|
|
height: 36px !important;
|
|
display: grid !important;
|
|
place-items: center !important;
|
|
background: var(--bg-card) !important;
|
|
border-radius: 10px !important;
|
|
}
|
|
|
|
.bot-dropdown {
|
|
position: fixed !important;
|
|
top: calc(var(--navbar-height) + 4px) !important;
|
|
left: 12px !important;
|
|
right: 12px !important;
|
|
width: auto !important;
|
|
min-width: 0 !important;
|
|
max-width: none !important;
|
|
}
|
|
|
|
.bot-dropdown-row {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.bot-dropdown-item {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.link-dialog {
|
|
width: calc(100vw - 28px) !important;
|
|
min-width: 0 !important;
|
|
max-width: calc(100vw - 28px) !important;
|
|
padding: 16px !important;
|
|
}
|
|
|
|
.link-dialog-actions {
|
|
flex-wrap: wrap !important;
|
|
}
|
|
|
|
.link-dialog-btn {
|
|
flex: 1 1 120px !important;
|
|
}
|
|
|
|
.m-tabbar {
|
|
height: calc(var(--mobile-tabbar-height) + env(safe-area-inset-bottom)) !important;
|
|
padding-bottom: env(safe-area-inset-bottom) !important;
|
|
}
|
|
|
|
.m-tab {
|
|
flex: 1 1 0 !important;
|
|
max-width: 25% !important;
|
|
padding: 6px 4px !important;
|
|
text-align: center !important;
|
|
}
|
|
|
|
.m-tab .tab-label {
|
|
display: block !important;
|
|
width: 100% !important;
|
|
line-height: 1.15 !important;
|
|
white-space: nowrap !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
}
|
|
|
|
.m-player {
|
|
bottom: calc(var(--mobile-tabbar-height) + env(safe-area-inset-bottom) + 8px) !important;
|
|
left: 8px !important;
|
|
right: 8px !important;
|
|
width: auto !important;
|
|
min-width: 0 !important;
|
|
gap: 6px !important;
|
|
padding-left: 8px !important;
|
|
padding-right: 8px !important;
|
|
}
|
|
|
|
.m-player .cover-art {
|
|
flex: 0 0 40px !important;
|
|
}
|
|
|
|
.m-player-info {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.m-player-controls {
|
|
display: flex !important;
|
|
align-items: center !important;
|
|
gap: 3px !important;
|
|
flex: 0 0 auto !important;
|
|
}
|
|
|
|
.m-player-name,
|
|
.m-player-artist {
|
|
display: block !important;
|
|
max-width: 100% !important;
|
|
line-height: 1.25 !important;
|
|
}
|
|
|
|
.m-player-btn {
|
|
width: 26px !important;
|
|
height: 32px !important;
|
|
flex: 0 0 26px !important;
|
|
padding: 0 !important;
|
|
font-size: 19px !important;
|
|
}
|
|
|
|
.m-volume-popover {
|
|
right: 0 !important;
|
|
width: min(260px, calc(100vw - 32px)) !important;
|
|
}
|
|
|
|
.section-title {
|
|
min-width: 0 !important;
|
|
max-width: 100% !important;
|
|
flex-wrap: wrap !important;
|
|
align-items: center !important;
|
|
gap: 8px 10px !important;
|
|
line-height: 1.25 !important;
|
|
}
|
|
|
|
.section-title > span:first-child,
|
|
.page-title {
|
|
min-width: 0 !important;
|
|
overflow-wrap: anywhere !important;
|
|
}
|
|
|
|
.source-tabs {
|
|
margin-left: 0 !important;
|
|
max-width: 100% !important;
|
|
flex-wrap: wrap !important;
|
|
}
|
|
|
|
.source-tab,
|
|
.source-tab-label {
|
|
flex: 0 1 auto !important;
|
|
white-space: nowrap !important;
|
|
line-height: 1.1 !important;
|
|
}
|
|
|
|
/* 歌单详情页 */
|
|
.playlist-page {
|
|
width: 100% !important;
|
|
max-width: 100vw !important;
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
.playlist-hero {
|
|
display: flex !important;
|
|
flex-direction: column !important;
|
|
align-items: flex-start !important;
|
|
gap: 16px !important;
|
|
margin-bottom: 22px !important;
|
|
}
|
|
|
|
.playlist-hero .cover-art,
|
|
.playlist-hero img {
|
|
width: 150px !important;
|
|
height: 150px !important;
|
|
max-width: 42vw !important;
|
|
max-height: 42vw !important;
|
|
flex-shrink: 0 !important;
|
|
}
|
|
|
|
.playlist-meta {
|
|
width: 100% !important;
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.playlist-title {
|
|
font-size: 24px !important;
|
|
line-height: 1.25 !important;
|
|
margin-bottom: 8px !important;
|
|
word-break: break-word !important;
|
|
white-space: normal !important;
|
|
}
|
|
|
|
.playlist-desc,
|
|
.playlist-stats {
|
|
font-size: 12px !important;
|
|
}
|
|
|
|
.play-all-btn {
|
|
width: 100% !important;
|
|
justify-content: center !important;
|
|
padding: 12px 16px !important;
|
|
border-radius: 14px !important;
|
|
}
|
|
|
|
/* 歌曲列表 */
|
|
.song-list {
|
|
width: 100% !important;
|
|
max-width: 100% !important;
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
.song-item {
|
|
grid-template-columns: 28px 44px minmax(0, 1fr) auto !important;
|
|
gap: 8px !important;
|
|
padding: 8px 10px !important;
|
|
}
|
|
|
|
.song-cover {
|
|
width: 44px !important;
|
|
height: 44px !important;
|
|
}
|
|
|
|
.song-info,
|
|
.song-text,
|
|
.song-name,
|
|
.song-artist {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.song-name,
|
|
.song-artist {
|
|
overflow: hidden !important;
|
|
white-space: nowrap !important;
|
|
text-overflow: ellipsis !important;
|
|
}
|
|
|
|
.song-name {
|
|
font-size: 12px !important;
|
|
}
|
|
|
|
.song-artist {
|
|
font-size: 11px !important;
|
|
}
|
|
|
|
.song-card {
|
|
display: flex !important;
|
|
align-items: center !important;
|
|
gap: 8px !important;
|
|
width: 100% !important;
|
|
padding: 8px 6px !important;
|
|
}
|
|
|
|
.song-card .cover-art {
|
|
width: 42px !important;
|
|
height: 42px !important;
|
|
}
|
|
|
|
.song-card .song-index {
|
|
width: 22px !important;
|
|
flex: 0 0 22px !important;
|
|
font-size: 12px !important;
|
|
}
|
|
|
|
.song-card .song-info {
|
|
flex: 1 1 auto !important;
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.song-card .song-name-row {
|
|
min-width: 0 !important;
|
|
max-width: 100% !important;
|
|
}
|
|
|
|
.song-card .song-name,
|
|
.song-card .song-artist {
|
|
min-width: 0 !important;
|
|
max-width: 100% !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.song-card .platform-badge {
|
|
max-width: 58px !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.song-card .song-album {
|
|
display: none !important;
|
|
}
|
|
|
|
.song-card .song-duration {
|
|
width: auto !important;
|
|
flex: 0 0 auto !important;
|
|
font-size: 11px !important;
|
|
}
|
|
|
|
.song-card .song-actions {
|
|
flex: 0 0 auto !important;
|
|
opacity: 1 !important;
|
|
gap: 2px !important;
|
|
max-width: 96px !important;
|
|
}
|
|
|
|
.song-card .action-btn {
|
|
width: 30px !important;
|
|
height: 30px !important;
|
|
display: grid !important;
|
|
place-items: center !important;
|
|
padding: 0 !important;
|
|
font-size: 18px !important;
|
|
background: var(--bg-card) !important;
|
|
}
|
|
|
|
.song-duration {
|
|
font-size: 11px !important;
|
|
}
|
|
|
|
/* 底部播放器 */
|
|
.player-bar {
|
|
height: auto !important;
|
|
min-height: var(--player-height) !important;
|
|
display: grid !important;
|
|
grid-template-columns: minmax(0, 1fr) auto !important;
|
|
grid-template-areas:
|
|
"left right"
|
|
"center center" !important;
|
|
row-gap: 8px !important;
|
|
column-gap: 10px !important;
|
|
padding: 10px 12px calc(10px + env(safe-area-inset-bottom)) !important;
|
|
align-items: center !important;
|
|
}
|
|
|
|
.player-left {
|
|
grid-area: left !important;
|
|
width: auto !important;
|
|
min-width: 0 !important;
|
|
gap: 10px !important;
|
|
}
|
|
|
|
.player-left .cover-art {
|
|
width: 40px !important;
|
|
height: 40px !important;
|
|
}
|
|
|
|
.player-center {
|
|
grid-area: center !important;
|
|
width: 100% !important;
|
|
justify-content: center !important;
|
|
gap: 14px !important;
|
|
}
|
|
|
|
.player-right {
|
|
grid-area: right !important;
|
|
width: auto !important;
|
|
gap: 6px !important;
|
|
}
|
|
|
|
.player-bar .song-name {
|
|
max-width: 52vw !important;
|
|
}
|
|
|
|
.player-bar .song-artist {
|
|
max-width: 52vw !important;
|
|
}
|
|
|
|
.control-btn {
|
|
width: 34px !important;
|
|
height: 34px !important;
|
|
font-size: 21px !important;
|
|
}
|
|
|
|
.play-btn {
|
|
width: 38px !important;
|
|
height: 38px !important;
|
|
font-size: 21px !important;
|
|
}
|
|
|
|
.volume-icon,
|
|
.volume-slider,
|
|
.time-display,
|
|
.mode-label {
|
|
display: none !important;
|
|
}
|
|
|
|
.lyrics-btn {
|
|
margin-left: 0 !important;
|
|
}
|
|
|
|
.queue-panel {
|
|
top: var(--navbar-height) !important;
|
|
right: -100vw !important;
|
|
bottom: calc(var(--mobile-tabbar-height) + env(safe-area-inset-bottom)) !important;
|
|
width: 100vw !important;
|
|
max-width: 100vw !important;
|
|
border-left: 0 !important;
|
|
}
|
|
|
|
.queue-panel.open {
|
|
right: 0 !important;
|
|
}
|
|
|
|
.queue-header,
|
|
.queue-item,
|
|
.queue-song-info,
|
|
.queue-song-name,
|
|
.queue-song-artist {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.queue-title,
|
|
.queue-count,
|
|
.queue-song-name,
|
|
.queue-song-artist {
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
/* 首页网格 */
|
|
.daily-grid,
|
|
.playlist-grid {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
|
|
gap: 16px 14px !important;
|
|
}
|
|
|
|
.daily-card,
|
|
.playlist-card {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.daily-name,
|
|
.daily-artist,
|
|
.playlist-name,
|
|
.playlist-count {
|
|
min-width: 0 !important;
|
|
max-width: 100% !important;
|
|
overflow-wrap: anywhere !important;
|
|
}
|
|
|
|
.daily-card .cover-art,
|
|
.playlist-card .cover-art {
|
|
width: 100% !important;
|
|
height: auto !important;
|
|
aspect-ratio: 1 / 1 !important;
|
|
}
|
|
|
|
.daily-card .cover-img,
|
|
.daily-card .cover-placeholder,
|
|
.playlist-card .cover-img,
|
|
.playlist-card .cover-placeholder {
|
|
height: 100% !important;
|
|
}
|
|
|
|
.now-playing,
|
|
.fm-card {
|
|
gap: 12px !important;
|
|
padding: 14px !important;
|
|
}
|
|
|
|
.now-playing .cover-art {
|
|
width: 58px !important;
|
|
height: 58px !important;
|
|
}
|
|
|
|
.now-playing-name,
|
|
.now-playing-artist,
|
|
.fm-title,
|
|
.fm-desc {
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.fm-icon-wrapper {
|
|
width: 44px !important;
|
|
height: 44px !important;
|
|
}
|
|
|
|
.fm-play-icon {
|
|
flex: 0 0 auto !important;
|
|
font-size: 30px !important;
|
|
}
|
|
|
|
.section-title {
|
|
font-size: 19px !important;
|
|
}
|
|
|
|
/* 搜索/历史/空状态 */
|
|
.search-page,
|
|
.history-page {
|
|
width: 100% !important;
|
|
}
|
|
|
|
.search-input-wrap {
|
|
padding: 11px 12px !important;
|
|
}
|
|
|
|
.search-input {
|
|
width: 100% !important;
|
|
}
|
|
|
|
.loading,
|
|
.empty {
|
|
padding-left: 16px !important;
|
|
padding-right: 16px !important;
|
|
}
|
|
|
|
.page-title {
|
|
font-size: 24px !important;
|
|
margin-bottom: 20px !important;
|
|
line-height: 1.2 !important;
|
|
}
|
|
|
|
/* 设置页 */
|
|
.settings-section,
|
|
.account-card {
|
|
padding: 16px !important;
|
|
border-radius: 12px !important;
|
|
}
|
|
|
|
.setting-row,
|
|
.bot-item,
|
|
.account-header {
|
|
align-items: flex-start !important;
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.setting-label,
|
|
.account-info,
|
|
.profile-toggle-text,
|
|
.profile-section-hint,
|
|
.empty-state,
|
|
.empty,
|
|
.loading {
|
|
min-width: 0 !important;
|
|
overflow-wrap: anywhere !important;
|
|
}
|
|
|
|
.bot-item {
|
|
flex-direction: column !important;
|
|
gap: 12px !important;
|
|
}
|
|
|
|
.bot-info {
|
|
width: 100% !important;
|
|
justify-content: space-between !important;
|
|
}
|
|
|
|
.bot-actions {
|
|
width: 100% !important;
|
|
justify-content: flex-end !important;
|
|
flex-wrap: wrap !important;
|
|
}
|
|
|
|
.login-methods,
|
|
.quality-options {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
|
|
display: grid !important;
|
|
}
|
|
|
|
.login-btn,
|
|
.quality-btn {
|
|
width: 100% !important;
|
|
justify-content: center !important;
|
|
}
|
|
|
|
.form-row,
|
|
.prefix-input-wrap,
|
|
.modal-actions {
|
|
flex-direction: column !important;
|
|
align-items: stretch !important;
|
|
}
|
|
|
|
.form-row .form-group {
|
|
flex: none !important;
|
|
}
|
|
|
|
.input,
|
|
.textarea,
|
|
.input-sm {
|
|
width: 100% !important;
|
|
max-width: none !important;
|
|
}
|
|
|
|
.qr-image {
|
|
width: min(200px, 70vw) !important;
|
|
height: min(200px, 70vw) !important;
|
|
}
|
|
|
|
.qr-status {
|
|
flex-wrap: wrap !important;
|
|
justify-content: center !important;
|
|
text-align: center !important;
|
|
}
|
|
|
|
.edit-modal {
|
|
width: calc(100vw - 28px) !important;
|
|
max-width: calc(100vw - 28px) !important;
|
|
max-height: calc(100vh - 28px) !important;
|
|
padding: 18px !important;
|
|
}
|
|
|
|
/* 歌词页 */
|
|
.lyrics-page {
|
|
align-items: stretch !important;
|
|
justify-content: flex-start !important;
|
|
overflow: hidden !important;
|
|
}
|
|
|
|
.lyrics-page .back-btn {
|
|
top: calc(12px + env(safe-area-inset-top)) !important;
|
|
left: 14px !important;
|
|
}
|
|
|
|
.lyrics-content {
|
|
flex-direction: column !important;
|
|
gap: 20px !important;
|
|
width: 100% !important;
|
|
height: 100vh !important;
|
|
padding: calc(56px + env(safe-area-inset-top)) 18px calc(var(--player-height) + 18px) !important;
|
|
}
|
|
|
|
.lyrics-left {
|
|
flex-direction: row !important;
|
|
justify-content: flex-start !important;
|
|
gap: 14px !important;
|
|
}
|
|
|
|
.lyrics-left .cover-art {
|
|
width: 76px !important;
|
|
height: 76px !important;
|
|
}
|
|
|
|
.lyrics-left .song-meta {
|
|
min-width: 0 !important;
|
|
text-align: left !important;
|
|
}
|
|
|
|
.lyrics-left .song-name,
|
|
.lyrics-left .song-artist {
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.lyrics-right {
|
|
flex: 1 1 auto !important;
|
|
min-height: 0 !important;
|
|
}
|
|
|
|
.lyrics-line .lyrics-text {
|
|
font-size: 16px !important;
|
|
}
|
|
|
|
.lyrics-line.active .lyrics-text {
|
|
font-size: 20px !important;
|
|
}
|
|
|
|
.lyrics-line .lyrics-translation {
|
|
font-size: 13px !important;
|
|
}
|
|
|
|
.no-song {
|
|
width: 100% !important;
|
|
padding: 96px 18px 0 !important;
|
|
text-align: center !important;
|
|
}
|
|
|
|
/* 首次设置向导 */
|
|
.setup-wizard {
|
|
width: 100% !important;
|
|
padding-top: 12px !important;
|
|
}
|
|
|
|
.steps {
|
|
gap: 6px !important;
|
|
margin-bottom: 30px !important;
|
|
}
|
|
|
|
.step-label {
|
|
font-size: 11px !important;
|
|
}
|
|
|
|
.step-content h2 {
|
|
font-size: 24px !important;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 769px) and (max-width: 1024px) {
|
|
:root {
|
|
--navbar-height: 58px;
|
|
--player-height: 72px;
|
|
}
|
|
|
|
html,
|
|
body,
|
|
#app {
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
* {
|
|
min-width: 0;
|
|
}
|
|
|
|
.main-content {
|
|
padding: calc(var(--navbar-height) + 18px) 28px calc(var(--player-height) + 26px) !important;
|
|
max-width: 100vw !important;
|
|
overflow-x: hidden !important;
|
|
}
|
|
|
|
.navbar {
|
|
height: var(--navbar-height) !important;
|
|
min-height: var(--navbar-height) !important;
|
|
padding: 0 24px !important;
|
|
gap: 14px !important;
|
|
}
|
|
|
|
.logo {
|
|
flex: 0 0 auto !important;
|
|
margin-right: 4px !important;
|
|
font-size: 17px !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.nav-links {
|
|
flex: 1 1 auto !important;
|
|
gap: 10px !important;
|
|
overflow-x: auto !important;
|
|
white-space: nowrap !important;
|
|
scrollbar-width: none !important;
|
|
}
|
|
|
|
.nav-links::-webkit-scrollbar {
|
|
display: none !important;
|
|
}
|
|
|
|
.nav-link {
|
|
flex: 0 0 auto !important;
|
|
padding: 8px 10px !important;
|
|
font-size: 13px !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.nav-right {
|
|
flex: 0 1 auto !important;
|
|
gap: 8px !important;
|
|
}
|
|
|
|
.bot-selector-btn {
|
|
max-width: min(220px, 28vw) !important;
|
|
padding: 8px 12px !important;
|
|
}
|
|
|
|
.bot-selector-name {
|
|
max-width: min(130px, 16vw) !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.section-title {
|
|
flex-wrap: wrap !important;
|
|
gap: 8px 12px !important;
|
|
line-height: 1.25 !important;
|
|
}
|
|
|
|
.daily-grid,
|
|
.playlist-grid {
|
|
grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
|
|
gap: 18px !important;
|
|
}
|
|
|
|
.daily-card,
|
|
.playlist-card,
|
|
.song-card {
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.daily-name,
|
|
.daily-artist,
|
|
.playlist-name,
|
|
.playlist-count,
|
|
.song-name,
|
|
.song-artist {
|
|
min-width: 0 !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.song-card {
|
|
gap: 10px !important;
|
|
}
|
|
|
|
.song-card .song-album {
|
|
width: min(140px, 18vw) !important;
|
|
overflow: hidden !important;
|
|
text-overflow: ellipsis !important;
|
|
white-space: nowrap !important;
|
|
}
|
|
|
|
.player-bar {
|
|
height: var(--player-height) !important;
|
|
padding: 0 20px !important;
|
|
gap: 14px !important;
|
|
overflow: hidden !important;
|
|
}
|
|
|
|
.player-left {
|
|
width: min(260px, 30vw) !important;
|
|
gap: 10px !important;
|
|
}
|
|
|
|
.player-center {
|
|
flex: 1 1 auto !important;
|
|
min-width: 0 !important;
|
|
gap: 12px !important;
|
|
}
|
|
|
|
.player-right {
|
|
width: min(210px, 24vw) !important;
|
|
gap: 6px !important;
|
|
}
|
|
|
|
.player-bar .song-name,
|
|
.player-bar .song-artist {
|
|
max-width: min(190px, 20vw) !important;
|
|
}
|
|
|
|
.time-display {
|
|
min-width: 34px !important;
|
|
font-size: 11px !important;
|
|
}
|
|
|
|
.volume-slider {
|
|
width: min(82px, 9vw) !important;
|
|
}
|
|
|
|
.mode-label {
|
|
display: none !important;
|
|
}
|
|
|
|
.control-btn {
|
|
width: 34px !important;
|
|
height: 34px !important;
|
|
font-size: 21px !important;
|
|
}
|
|
|
|
.play-btn {
|
|
width: 40px !important;
|
|
height: 40px !important;
|
|
font-size: 22px !important;
|
|
}
|
|
|
|
.queue-panel {
|
|
top: var(--navbar-height) !important;
|
|
bottom: var(--player-height) !important;
|
|
width: min(390px, 44vw) !important;
|
|
}
|
|
|
|
.settings-section,
|
|
.account-card {
|
|
padding: 20px !important;
|
|
}
|
|
|
|
.login-methods,
|
|
.quality-options {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
|
|
}
|
|
|
|
.playlist-hero {
|
|
gap: 24px !important;
|
|
}
|
|
|
|
.playlist-title,
|
|
.page-title {
|
|
line-height: 1.2 !important;
|
|
overflow-wrap: anywhere !important;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 380px) {
|
|
:root {
|
|
--navbar-height: 52px;
|
|
}
|
|
|
|
.logo {
|
|
display: none !important;
|
|
}
|
|
|
|
.nav-right {
|
|
width: 100% !important;
|
|
justify-content: space-between !important;
|
|
}
|
|
|
|
.bot-selector {
|
|
flex: 1 !important;
|
|
min-width: 0 !important;
|
|
}
|
|
|
|
.bot-selector-btn {
|
|
width: 100% !important;
|
|
max-width: none !important;
|
|
}
|
|
|
|
.nav-link {
|
|
padding-left: 8px !important;
|
|
padding-right: 8px !important;
|
|
}
|
|
|
|
.playlist-title {
|
|
font-size: 22px !important;
|
|
}
|
|
|
|
.daily-grid,
|
|
.playlist-grid,
|
|
.login-methods,
|
|
.quality-options {
|
|
grid-template-columns: 1fr !important;
|
|
}
|
|
|
|
.song-card .song-duration {
|
|
display: none !important;
|
|
}
|
|
|
|
.m-player {
|
|
gap: 4px !important;
|
|
padding-left: 8px !important;
|
|
padding-right: 8px !important;
|
|
}
|
|
|
|
.m-player .cover-art {
|
|
flex-basis: 34px !important;
|
|
width: 34px !important;
|
|
height: 34px !important;
|
|
}
|
|
|
|
.m-player-controls {
|
|
gap: 2px !important;
|
|
}
|
|
|
|
.m-player-btn {
|
|
width: 24px !important;
|
|
flex-basis: 24px !important;
|
|
font-size: 18px !important;
|
|
}
|
|
|
|
.player-center {
|
|
justify-content: space-between !important;
|
|
gap: 8px !important;
|
|
}
|
|
}
|