返回 JoyAI-Echo
CompactAudioPlayer.module.css
根目录 / echo_longvideo / Director_Agent / webui / src / components / thread / CompactAudioPlayer.module.css
1 .player {
2 --track: hsl(var(--muted-foreground) / 0.22);
3 --fill: hsl(var(--foreground) / 0.42);
4 --thumb: hsl(var(--muted-foreground) / 0.75);
5 position: relative;
6 display: flex;
7 height: 2rem;
8 align-items: center;
9 gap: 0.5rem;
10 border-radius: 9999px;
11 background: hsl(var(--muted) / 0.85);
12 padding: 0 0.625rem;
13 }
14
15 .iconBtn {
16 display: grid;
17 width: 1.5rem;
18 height: 1.5rem;
19 flex-shrink: 0;
20 place-items: center;
21 border-radius: 9999px;
22 color: hsl(var(--foreground) / 0.9);
23 transition: background-color 0.15s ease;
24 }
25
26 .iconBtn:hover {
27 background: hsl(var(--foreground) / 0.06);
28 }
29
30 .progress {
31 height: 0.25rem;
32 min-width: 0;
33 flex: 1;
34 cursor: pointer;
35 appearance: none;
36 border-radius: 9999px;
37 background: transparent;
38 }
39
40 .progress:disabled {
41 cursor: default;
42 }
43
44 .progress::-webkit-slider-runnable-track {
45 height: 0.25rem;
46 border-radius: 9999px;
47 background: linear-gradient(
48 to right,
49 var(--fill) var(--progress, 0%),
50 var(--track) var(--progress, 0%)
51 );
52 }
53
54 .progress::-webkit-slider-thumb {
55 -webkit-appearance: none;
56 appearance: none;
57 width: 0;
58 height: 0;
59 border: 0;
60 background: transparent;
61 }
62
63 .progress::-moz-range-track {
64 height: 0.25rem;
65 border-radius: 9999px;
66 background: var(--track);
67 }
68
69 .progress::-moz-range-progress {
70 height: 0.25rem;
71 border-radius: 9999px;
72 background: var(--fill);
73 }
74
75 .progress::-moz-range-thumb {
76 width: 0;
77 height: 0;
78 border: 0;
79 background: transparent;
80 }
81
82 .volumeWrap {
83 position: relative;
84 flex-shrink: 0;
85 }
86
87 .volumePanel {
88 position: absolute;
89 bottom: calc(100% + 6px);
90 left: 50%;
91 z-index: 20;
92 display: flex;
93 width: 2rem;
94 height: 6rem;
95 translate: -50% 0;
96 align-items: center;
97 justify-content: center;
98 border-radius: 9999px;
99 background: hsl(var(--muted));
100 box-shadow:
101 0 4px 14px hsl(0 0% 0% / 0.1),
102 0 0 0 1px hsl(var(--border) / 0.6);
103 }
104
105 .volumeSlider {
106 width: 4.5rem;
107 height: 0.25rem;
108 cursor: pointer;
109 appearance: none;
110 border-radius: 9999px;
111 background: transparent;
112 transform: rotate(-90deg);
113 transform-origin: center;
114 }
115
116 .volumeSlider::-webkit-slider-runnable-track {
117 height: 0.25rem;
118 border-radius: 9999px;
119 background: linear-gradient(
120 to right,
121 var(--fill) var(--volume, 100%),
122 var(--track) var(--volume, 100%)
123 );
124 }
125
126 .volumeSlider::-webkit-slider-thumb {
127 -webkit-appearance: none;
128 appearance: none;
129 width: 0.75rem;
130 height: 0.75rem;
131 margin-top: -0.25rem;
132 border-radius: 9999px;
133 border: 2px solid hsl(var(--background));
134 background: var(--thumb);
135 box-shadow: 0 0 0 1px hsl(var(--border));
136 cursor: pointer;
137 }
138
139 .volumeSlider::-moz-range-track {
140 height: 0.25rem;
141 border-radius: 9999px;
142 background: var(--track);
143 }
144
145 .volumeSlider::-moz-range-progress {
146 height: 0.25rem;
147 border-radius: 9999px;
148 background: var(--fill);
149 }
150
151 .volumeSlider::-moz-range-thumb {
152 width: 0.75rem;
153 height: 0.75rem;
154 border-radius: 9999px;
155 border: 2px solid hsl(var(--background));
156 background: var(--thumb);
157 box-shadow: 0 0 0 1px hsl(var(--border));
158 cursor: pointer;
159 }
160
160 lines CSS