-
-
+
+
{formatTime($playback.currentTime)}
+
-
+
{formatTime($playback.duration)}
-
{formatTime($playback.duration)}
-

-
-
-
-
{Math.round($playback.volume * 100)}%
+
@@ -142,38 +129,14 @@
}
.control-button {
- background: transparent;
- border: none;
- box-shadow: none;
padding: 4px;
min-width: auto;
min-height: auto;
- cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
}
- .control-button:hover:not(:disabled) {
- background: light-dark(silver, #2b2b2b);
- box-shadow: inset -1px -1px light-dark(#0a0a0a, #000),
- inset 1px 1px light-dark(#fff, #525252),
- inset -2px -2px light-dark(grey, #232323),
- inset 2px 2px light-dark(#dfdfdf, #363636);
- }
-
- .control-button:active:not(:disabled) {
- box-shadow: inset -1px -1px light-dark(#fff, #525252),
- inset 1px 1px light-dark(#0a0a0a, #000),
- inset -2px -2px light-dark(#dfdfdf, #363636),
- inset 2px 2px light-dark(grey, #232323);
- }
-
- .control-button:disabled {
- opacity: 0.4;
- cursor: not-allowed;
- }
-
.control-button img {
width: 24px;
height: 24px;
@@ -184,10 +147,18 @@
padding: 6px;
}
+ .play-pause img {
+ width: 28px;
+ height: 28px;
+ }
+
.track-info {
flex: 1;
min-width: 0;
overflow: hidden;
+ display: flex;
+ flex-direction: column;
+ gap: 4px;
}
.track-title {
@@ -209,8 +180,7 @@
display: flex;
align-items: center;
gap: 8px;
- flex: 2;
- min-width: 200px;
+ min-width: 0;
}
.time-display {
@@ -248,28 +218,9 @@
}
.volume-section {
- display: flex;
- align-items: center;
- gap: 6px;
flex-shrink: 0;
}
- .volume-icon {
- width: 20px;
- height: 20px;
- filter: light-dark(none, invert(1));
- }
-
- .volume-slider-container {
- width: 80px;
- }
-
- .volume-percent {
- font-family: monospace;
- font-size: 10px;
- min-width: 35px;
- }
-
/* Responsive: hide lyrics on medium widths */
@media (max-width: 1000px) {
.now-playing :global(.lyrics-display) {
diff --git a/src/lib/components/TriangleVolumeSlider.svelte b/src/lib/components/TriangleVolumeSlider.svelte
new file mode 100644
index 0000000..0cd2117
--- /dev/null
+++ b/src/lib/components/TriangleVolumeSlider.svelte
@@ -0,0 +1,254 @@
+
+
+
+
+
+
+