99 box-shadow : 0 4px 8px rgba (0 , 0 , 0 , 0.15 );
1010 max-height : 30vh ;
1111 overflow-y : auto;
12+ overflow-x : hidden;
1213 scrollbar-width : thin;
1314 scrollbar-color : # F58025 # 1e1e1e ;
1415 border : 1px solid rgba (245 , 128 , 37 , 0.1 );
1516}
17+
18+ .player-status-header {
19+ display : flex;
20+ align-items : center;
21+ justify-content : space-between;
22+ gap : 0.75rem ;
23+ position : relative;
24+ min-height : 44px ;
25+ }
26+
27+ .player-status-title {
28+ color : # aaa ;
29+ font-size : 0.85rem ;
30+ font-weight : 600 ;
31+ text-transform : uppercase;
32+ letter-spacing : 0.1em ;
33+ }
34+
35+ .player-status-pill {
36+ display : flex;
37+ align-items : center;
38+ gap : 0.3rem ;
39+ padding : 0.25rem 0.9rem ;
40+ border-radius : 10px 0 0 10px ;
41+ font-size : 0.75rem ;
42+ font-weight : 600 ;
43+ letter-spacing : 0.02em ;
44+ border : 1px solid rgba (245 , 128 , 37 , 0.4 );
45+ background-color : rgba (245 , 128 , 37 , 0.12 );
46+ color : var (--mode-text-color );
47+ overflow : hidden;
48+ transition : opacity 0.55s ease, transform 0.55s ease;
49+ will-change : transform, opacity;
50+ max-width : 250px ;
51+ opacity : 1 ;
52+ transform : translateX (0 );
53+ transform-origin : right center;
54+ margin-right : -1rem ;
55+ border-right : none;
56+ }
57+
58+ .player-status-pill .ready {
59+ border-color : rgba (76 , 175 , 80 , 0.4 );
60+ background-color : rgba (76 , 175 , 80 , 0.12 );
61+ }
62+
63+ .player-status-pill-icon {
64+ font-size : 1rem ;
65+ }
66+
67+ .player-status-pill .ready .player-status-pill-icon {
68+ color : # 4caf50 ;
69+ }
70+
71+ .player-status-pill .pending {
72+ border-color : rgba (245 , 128 , 37 , 0.4 );
73+ background-color : rgba (245 , 128 , 37 , 0.12 );
74+ }
75+
76+ .player-status-pill .pending .player-status-pill-icon {
77+ color : # F58025 ;
78+ }
79+
80+ .player-status-pill .pill-hidden {
81+ opacity : 0 ;
82+ transform : translateX (120% ) scaleX (0.95 );
83+ pointer-events : none;
84+ }
85+
86+ .player-status-pill .pill-visible {
87+ opacity : 1 ;
88+ transform : translateX (0 ) scaleX (1 );
89+ }
90+
91+ .player-status-pill-text {
92+ text-transform : uppercase;
93+ font-size : 0.7rem ;
94+ letter-spacing : 0.08em ;
95+ }
96+
1697/* Title badges for each player */
1798.player-titles {
1899 display : flex;
48129 border-radius : 3px ;
49130}
50131
51- .player-status-bar ::before {
52- content : "Players" ;
53- display : block;
54- color : # aaa ;
55- font-size : 0.8rem ;
56- font-weight : 500 ;
57- margin-bottom : 0.5rem ;
58- text-transform : uppercase;
59- letter-spacing : 1px ;
60- }
61132.player-card {
62133 width : 100% ;
63134 display : flex;
152223 transition : all 0.2s ;
153224 font-weight : 500 ;
154225 font-size : 0.85rem ;
226+ display : inline-flex;
227+ align-items : center;
228+ justify-content : center;
229+ gap : 0.35rem ;
230+ min-width : 110px ;
155231}
156232
157233.ready-button : hover {
158234 background-color : # e67321 ;
159235 transform : translateY (-1px );
160236}
161237
238+ .ready-button .ready-standby {
239+ background-color : # c6691b ;
240+ }
241+
162242.ready-button .ready-active ,
163243.ready-button : disabled {
164244 background-color : # 4caf50 ;
167247}
168248
169249.ready-status {
170- padding : 0.3rem 0.6 rem ;
250+ padding : 0.3rem 0.8 rem ;
171251 border-radius : 4px ;
172- font-size : 0.8 rem ;
252+ font-size : 0.85 rem ;
173253 color : # aaa ;
174254 background-color : rgba (170 , 170 , 170 , 0.1 );
255+ display : inline-flex;
256+ align-items : center;
257+ justify-content : center;
258+ min-width : 110px ;
259+ font-weight : 500 ;
175260}
176261
177262.ready-status .ready-active {
178263 color : # 4caf50 ;
179- font-weight : 600 ;
264+ font-weight : 500 ;
180265 background-color : rgba (76 , 175 , 80 , 0.1 );
181266}
182267
185270 margin-top : 0.5rem ;
186271}
187272
273+ .progress-container .progress-has-error .progress-bar {
274+ border : 1px solid rgba (255 , 99 , 132 , 0.5 );
275+ box-shadow : 0 2px 8px rgba (255 , 99 , 132 , 0.25 );
276+ }
277+
188278.progress-bar {
189279 height : 20px ;
190- background-color : # 1e1e1e ;
280+ background-color : # 151515 ;
191281 border-radius : 10px ;
192282 overflow : hidden;
193283 position : relative;
194- box-shadow : inset 0 2px 5px rgba (0 , 0 , 0 , 0.2 );
284+ box-shadow : inset 0 2px 5px rgba (0 , 0 , 0 , 0.25 );
285+ border : 1px solid rgba (255 , 255 , 255 , 0.05 );
286+ }
287+
288+ .progress-error-indicator {
289+ position : absolute;
290+ top : -1.6rem ;
291+ right : 0 ;
292+ display : flex;
293+ align-items : center;
294+ gap : 0.3rem ;
295+ padding : 0.15rem 0.6rem ;
296+ font-size : 0.7rem ;
297+ font-weight : 600 ;
298+ border-radius : 999px ;
299+ background-color : rgba (255 , 99 , 132 , 0.2 );
300+ color : # ffb3c2 ;
301+ backdrop-filter : blur (4px );
302+ box-shadow : 0 4px 12px rgba (0 , 0 , 0 , 0.35 );
303+ animation : error-pill-in 0.3s ease;
304+ }
305+
306+ .progress-error-indicator .material-icons {
307+ font-size : 1.1rem ;
195308}
196309
197310.progress-fill {
205318 animation : progress-bar-stripes 1s linear infinite;
206319}
207320
321+ .progress-fill .has-error {
322+ background-color : # ff5f5f ;
323+ background-image : linear-gradient (45deg , rgba (255 , 255 , 255 , 0.12 ) 25% , transparent 25% , transparent 50% , rgba (255 , 255 , 255 , 0.12 ) 50% , rgba (255 , 255 , 255 , 0.12 ) 75% , transparent 75% , transparent);
324+ animation : none;
325+ }
326+
208327@keyframes progress-bar-stripes {
209328 from {
210329 background-position : 20px 0 ;
225344 text-shadow : 0 1px 2px rgba (0 , 0 , 0 , 0.5 );
226345}
227346
347+ .progress-label-error {
348+ color : # ffd1d1 ;
349+ }
350+
351+ @keyframes error-pill-in {
352+ from {
353+ opacity : 0 ;
354+ transform : translateY (-4px );
355+ }
356+ to {
357+ opacity : 1 ;
358+ transform : translateY (0 );
359+ }
360+ }
361+
228362/* Avatar Modal Styles */
229363.avatar-modal-overlay {
230364 position : fixed;
345479 background-color : # 555 ;
346480 background-image : none;
347481 animation : none;
348- }
482+ }
0 commit comments