vidply 1.0.20 → 1.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,40 +34,40 @@
34
34
  --vidply-border-focus: var(--vidply-primary-light);
35
35
  --vidply-border-hover: var(--vidply-white-30);
36
36
  --vidply-border-light: var(--vidply-white-10);
37
- --vidply-button-size: 30px;
38
- --vidply-button-size-mobile: 36px;
39
- --vidply-button-size-small: 32px;
40
- --vidply-focus-outline: 2px solid var(--vidply-primary-light);
41
- --vidply-focus-outline-player: 3px solid var(--vidply-primary-light);
42
- --vidply-focus-outline-white: 2px solid var(--vidply-primary-light);
43
- --vidply-font-base: 13px;
44
- --vidply-font-lg: 16px;
45
- --vidply-font-md: 14px;
46
- --vidply-font-sm: 12px;
47
- --vidply-font-xl: 18px;
48
- --vidply-font-xs: 11px;
37
+ --vidply-button-size: 1.875rem;
38
+ --vidply-button-size-mobile: 2.25rem;
39
+ --vidply-button-size-small: 2rem;
40
+ --vidply-focus-outline: 0.125rem solid var(--vidply-primary-light);
41
+ --vidply-focus-outline-player: 0.1875rem solid var(--vidply-primary-light);
42
+ --vidply-focus-outline-white: 0.125rem solid var(--vidply-primary-light);
43
+ --vidply-font-base: 0.8125rem;
44
+ --vidply-font-lg: 1rem;
45
+ --vidply-font-md: 0.875rem;
46
+ --vidply-font-sm: 0.75rem;
47
+ --vidply-font-xl: 1.125rem;
48
+ --vidply-font-xs: 0.6875rem;
49
49
 
50
50
  /* Black Color Variations */
51
- --vidply-font-xxl: 20px;
52
- --vidply-gap-lg: 12px;
53
- --vidply-gap-md: 8px;
54
- --vidply-gap-sm: 6px;
55
- --vidply-gap-xl: 16px;
56
- --vidply-gap-xs: 4px;
57
- --vidply-gap-xxl: 20px;
58
- --vidply-header-height: 28px;
51
+ --vidply-font-xxl: 1.25rem;
52
+ --vidply-gap-lg: 0.75rem;
53
+ --vidply-gap-md: 0.5rem;
54
+ --vidply-gap-sm: 0.375rem;
55
+ --vidply-gap-xl: 1rem;
56
+ --vidply-gap-xs: 0.25rem;
57
+ --vidply-gap-xxl: 1.25rem;
58
+ --vidply-header-height: 1.75rem;
59
59
  --vidply-hover-bg: var(--vidply-white-10);
60
60
 
61
61
  /* UI Background Colors */
62
- --vidply-icon-size: 26px;
63
- --vidply-icon-size-mobile: 22px;
64
- --vidply-icon-size-small: 20px;
65
- --vidply-icon-size-xs: 18px;
66
- --vidply-padding-lg: 12px;
67
- --vidply-padding-md: 8px;
68
- --vidply-padding-sm: 4px;
69
- --vidply-padding-xl: 16px;
70
- --vidply-padding-xxl: 20px;
62
+ --vidply-icon-size: 1.625rem;
63
+ --vidply-icon-size-mobile: 1.375rem;
64
+ --vidply-icon-size-small: 1.25rem;
65
+ --vidply-icon-size-xs: 1.125rem;
66
+ --vidply-padding-lg: 0.75rem;
67
+ --vidply-padding-md: 0.5rem;
68
+ --vidply-padding-sm: 0.25rem;
69
+ --vidply-padding-xl: 1rem;
70
+ --vidply-padding-xxl: 1.25rem;
71
71
  --vidply-primary: #0a406e;
72
72
  --vidply-primary-10: rgb(var(--vidply-primary-rgb), 0.1);
73
73
 
@@ -91,21 +91,21 @@
91
91
 
92
92
  /* State Colors */
93
93
  --vidply-primary-rgb: 10, 64, 110;
94
- --vidply-radius-lg: 8px;
95
- --vidply-radius-md: 6px;
96
- --vidply-radius-sm: 4px;
94
+ --vidply-radius-lg: 0.5rem;
95
+ --vidply-radius-md: 0.375rem;
96
+ --vidply-radius-sm: 0.25rem;
97
97
 
98
98
  /* Sizing Variables */
99
- --vidply-radius-xl: 12px;
99
+ --vidply-radius-xl: 0.75rem;
100
100
  --vidply-scrollbar-thumb: var(--vidply-white);
101
101
  --vidply-scrollbar-thumb-hover: var(--vidply-white-90);
102
102
  --vidply-scrollbar-track: #404040;
103
103
  --vidply-scrollbar-track-transcript: #555;
104
- --vidply-shadow-lg: 0 12px 48px var(--vidply-black-80);
105
- --vidply-shadow-md: 0 4px 12px var(--vidply-black-40);
104
+ --vidply-shadow-lg: 0 0.75rem 3rem var(--vidply-black-80);
105
+ --vidply-shadow-md: 0 0.25rem 0.75rem var(--vidply-black-40);
106
106
 
107
107
  /* Spacing Variables */
108
- --vidply-shadow-sm: 0 2px 4px var(--vidply-black-30);
108
+ --vidply-shadow-sm: 0 0.125rem 0.25rem var(--vidply-black-30);
109
109
  --vidply-text-disabled: var(--vidply-white-60);
110
110
  --vidply-text-muted: var(--vidply-white-70);
111
111
  --vidply-text-primary: var(--vidply-white);
@@ -194,7 +194,7 @@
194
194
 
195
195
  .vidply-icon-button:focus {
196
196
  outline: var(--vidply-focus-outline-white);
197
- outline-offset: 2px;
197
+ outline-offset: 0.125rem;
198
198
  }
199
199
 
200
200
  .vidply-icon-button .vidply-icon {
@@ -206,7 +206,7 @@
206
206
  .vidply-draggable-header {
207
207
  align-items: center;
208
208
  background: #282828;
209
- border-bottom: 1px solid var(--vidply-border-light);
209
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
210
210
  cursor: move;
211
211
  display: flex;
212
212
  justify-content: space-between;
@@ -217,21 +217,21 @@
217
217
 
218
218
  .vidply-draggable-header:focus,
219
219
  .vidply-draggable-header:focus-visible {
220
- box-shadow: 0 0 0 4px rgb(91 144 255 / 35%);
221
- outline: 3px solid var(--vidply-primary-light);
222
- outline-offset: 2px;
220
+ box-shadow: 0 0 0 0.25rem rgb(91 144 255 / 35%);
221
+ outline: 0.1875rem solid var(--vidply-primary-light);
222
+ outline-offset: 0.125rem;
223
223
  }
224
224
 
225
225
  .vidply-draggable-header h3 {
226
226
  color: var(--vidply-white);
227
227
  font-size: var(--vidply-font-lg);
228
228
  font-weight: 600;
229
- height: 1px;
230
- left: -10000px;
229
+ height: 0.0625rem;
230
+ left: -625rem;
231
231
  margin: 0;
232
232
  overflow: hidden;
233
233
  position: absolute;
234
- width: 1px;
234
+ width: 0.0625rem;
235
235
  }
236
236
 
237
237
  /* Common Resize Handles */
@@ -244,67 +244,67 @@
244
244
  .vidply-resize-handle-nw,
245
245
  .vidply-resize-handle-se,
246
246
  .vidply-resize-handle-sw {
247
- height: 16px;
248
- width: 16px;
247
+ height: 1rem;
248
+ width: 1rem;
249
249
  }
250
250
 
251
251
  .vidply-resize-handle-n,
252
252
  .vidply-resize-handle-s {
253
253
  cursor: ns-resize;
254
- height: 8px;
255
- left: 16px;
256
- right: 16px;
254
+ height: 0.5rem;
255
+ left: 1rem;
256
+ right: 1rem;
257
257
  }
258
258
 
259
259
  .vidply-resize-handle-e,
260
260
  .vidply-resize-handle-w {
261
- bottom: 16px;
261
+ bottom: 1rem;
262
262
  cursor: ew-resize;
263
- top: 16px;
264
- width: 8px;
263
+ top: 1rem;
264
+ width: 0.5rem;
265
265
  }
266
266
 
267
- .vidply-resize-handle-n { top: -4px; }
268
- .vidply-resize-handle-s { bottom: -4px; }
269
- .vidply-resize-handle-e { right: -4px; }
270
- .vidply-resize-handle-w { left: -4px; }
267
+ .vidply-resize-handle-n { top: -0.25rem; }
268
+ .vidply-resize-handle-s { bottom: -0.25rem; }
269
+ .vidply-resize-handle-e { right: -0.25rem; }
270
+ .vidply-resize-handle-w { left: -0.25rem; }
271
271
 
272
272
  .vidply-resize-handle-ne {
273
273
  cursor: nesw-resize;
274
- right: -8px;
275
- top: -8px;
274
+ right: -0.5rem;
275
+ top: -0.5rem;
276
276
  }
277
277
 
278
278
  .vidply-resize-handle-nw {
279
279
  cursor: nwse-resize;
280
- left: -8px;
281
- top: -8px;
280
+ left: -0.5rem;
281
+ top: -0.5rem;
282
282
  }
283
283
 
284
284
  .vidply-resize-handle-se {
285
- bottom: -8px;
285
+ bottom: -0.5rem;
286
286
  cursor: nwse-resize;
287
- right: -8px;
287
+ right: -0.5rem;
288
288
  }
289
289
 
290
290
  .vidply-resize-handle-sw {
291
- bottom: -8px;
291
+ bottom: -0.5rem;
292
292
  cursor: nesw-resize;
293
- left: -8px;
293
+ left: -0.5rem;
294
294
  }
295
295
 
296
296
  .vidply-resizable .vidply-resize-handle::after {
297
297
  background: var(--vidply-primary-light);
298
298
  border-radius: 50%;
299
299
  content: '';
300
- height: 6px;
300
+ height: 0.375rem;
301
301
  left: 50%;
302
302
  opacity: 0;
303
303
  position: absolute;
304
304
  top: 50%;
305
305
  transform: translate(-50%, -50%);
306
306
  transition: opacity 0.2s ease;
307
- width: 6px;
307
+ width: 0.375rem;
308
308
  }
309
309
 
310
310
  .vidply-resizable:hover .vidply-resize-handle::after {
@@ -318,31 +318,31 @@
318
318
  /* Common Settings Menu Pattern */
319
319
  .vidply-popup-settings-menu {
320
320
  background: var(--vidply-bg-menu);
321
- border: 1px solid var(--vidply-border);
321
+ border: 0.0625rem solid var(--vidply-border);
322
322
  border-radius: var(--vidply-radius-md);
323
323
  box-shadow: var(--vidply-shadow-lg);
324
324
  display: none;
325
- min-width: 240px;
325
+ min-width: 15rem;
326
326
  padding: var(--vidply-gap-sm);
327
327
  position: absolute;
328
328
  z-index: 100;
329
329
  }
330
330
 
331
331
  .vidply-popup-settings-menu::after {
332
- border-bottom: 6px solid var(--vidply-bg-menu);
333
- border-left: 6px solid transparent;
334
- border-right: 6px solid transparent;
332
+ border-bottom: 0.375rem solid var(--vidply-bg-menu);
333
+ border-left: 0.375rem solid transparent;
334
+ border-right: 0.375rem solid transparent;
335
335
  bottom: 100%;
336
336
  content: '';
337
337
  height: 0;
338
- left: 8px;
338
+ left: 0.5rem;
339
339
  position: absolute;
340
340
  width: 0;
341
341
  }
342
342
 
343
343
  .vidply-popup-settings-menu.vidply-menu-above::after {
344
344
  border-bottom: none;
345
- border-top: 6px solid var(--vidply-bg-menu);
345
+ border-top: 0.375rem solid var(--vidply-bg-menu);
346
346
  bottom: auto;
347
347
  top: 100%;
348
348
  }
@@ -357,7 +357,7 @@
357
357
  display: flex;
358
358
  font-size: var(--vidply-font-base);
359
359
  gap: var(--vidply-gap-md);
360
- padding: var(--vidply-padding-md) 10px;
360
+ padding: var(--vidply-padding-md) 0.625rem;
361
361
  text-align: left;
362
362
  transition: var(--vidply-transition-normal);
363
363
  width: 100%;
@@ -400,7 +400,7 @@
400
400
  display: flex;
401
401
  flex-direction: column;
402
402
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
403
- font-size: 16px;
403
+ font-size: 1rem;
404
404
  line-height: 1.5;
405
405
  max-width: 100%;
406
406
  overflow: visible;
@@ -416,11 +416,11 @@
416
416
 
417
417
  .vidply-player:focus-visible {
418
418
  outline: var(--vidply-focus-outline-player);
419
- outline-offset: 4px;
419
+ outline-offset: 0.25rem;
420
420
  }
421
421
 
422
422
  /* Mobile: Ensure player contains all elements properly */
423
- @media (width < 768px) {
423
+ @media (width < 48rem) {
424
424
  .vidply-player {
425
425
  isolation: isolate; /* Create stacking context */
426
426
  overflow: visible; /* Allow menus to overflow but within bounds */
@@ -442,7 +442,7 @@
442
442
  }
443
443
 
444
444
  .vidply-player.vidply-audio .vidply-menu {
445
- max-height: 150px;
445
+ max-height: 9.375rem;
446
446
  }
447
447
 
448
448
  /* Video/Audio Element */
@@ -455,7 +455,7 @@
455
455
  }
456
456
 
457
457
  /* Mobile: Video element order and sizing */
458
- @media (width < 768px) {
458
+ @media (width < 48rem) {
459
459
  .vidply-player video,
460
460
  .vidply-player audio {
461
461
  flex: 0 0 auto; /* Don't grow or shrink */
@@ -515,11 +515,11 @@
515
515
  }
516
516
 
517
517
  /* Mobile: Simplify video wrapper but keep captions contained */
518
- @media (width < 768px) {
518
+ @media (width < 48rem) {
519
519
  .vidply-video-wrapper {
520
520
  display: block;
521
521
  height: auto;
522
- min-height: 200px;
522
+ min-height: 12.5rem;
523
523
  overflow: visible;
524
524
  position: relative;
525
525
  z-index: 2;
@@ -573,7 +573,7 @@
573
573
  /* Centered Play Button Overlay */
574
574
  .vidply-play-overlay {
575
575
  cursor: pointer;
576
- filter: drop-shadow(0 8px 32px rgb(0 0 0 / 30%));
576
+ filter: drop-shadow(0 0.5rem 2rem rgb(0 0 0 / 30%));
577
577
  left: 50%;
578
578
  position: absolute;
579
579
  top: 50%;
@@ -583,7 +583,7 @@
583
583
  }
584
584
 
585
585
  .vidply-play-overlay:hover {
586
- filter: drop-shadow(0 12px 48px rgb(0 0 0 / 40%));
586
+ filter: drop-shadow(0 0.75rem 3rem rgb(0 0 0 / 40%));
587
587
  transform: translate(-50%, -50%) scale(1.1);
588
588
  }
589
589
 
@@ -607,7 +607,7 @@
607
607
  left: 0;
608
608
  opacity: 0;
609
609
  overflow: visible;
610
- padding: 20px 16px 16px;
610
+ padding: 1.25rem 1rem 1rem;
611
611
  pointer-events: none;
612
612
  position: absolute;
613
613
  right: 0;
@@ -631,15 +631,15 @@
631
631
  }
632
632
 
633
633
  /* Mobile: Controls underneath video (but not in landscape fullscreen) */
634
- @media (width < 768px) {
634
+ @media (width < 48rem) {
635
635
  .vidply-controls {
636
636
  background: var(--vidply-black-90);
637
- border-top: 1px solid var(--vidply-border-light);
637
+ border-top: 0.0625rem solid var(--vidply-border-light);
638
638
  bottom: auto;
639
639
  left: 0;
640
640
  opacity: 1;
641
641
  order: 2; /* After video-wrapper (1) */
642
- padding: 12px;
642
+ padding: 0.75rem;
643
643
  pointer-events: auto;
644
644
  position: relative;
645
645
  right: 0;
@@ -677,24 +677,24 @@
677
677
  /* Progress Bar */
678
678
  .vidply-progress-container {
679
679
  background: var(--vidply-white-20);
680
- border-radius: 3px;
680
+ border-radius: 0.1875rem;
681
681
  cursor: pointer;
682
682
  flex: 1;
683
- height: 9px;
683
+ height: 0.5625rem;
684
684
  position: relative;
685
685
  transition: height 0.2s ease;
686
686
  }
687
687
 
688
688
  .vidply-progress-container:hover,
689
689
  .vidply-progress-container:focus {
690
- height: 11px;
690
+ height: 0.6875rem;
691
691
  outline: var(--vidply-focus-outline-white);
692
- outline-offset: 2px;
692
+ outline-offset: 0.125rem;
693
693
  }
694
694
 
695
695
  .vidply-progress-buffered {
696
696
  background: var(--vidply-white-40);
697
- border-radius: 3px;
697
+ border-radius: 0.1875rem;
698
698
  height: 100%;
699
699
  left: 0;
700
700
  position: absolute;
@@ -705,7 +705,7 @@
705
705
 
706
706
  .vidply-progress-played {
707
707
  background: var(--vidply-primary-light);
708
- border-radius: 3px;
708
+ border-radius: 0.1875rem;
709
709
  height: 100%;
710
710
  left: 0;
711
711
  position: absolute;
@@ -718,14 +718,14 @@
718
718
  background: var(--vidply-white);
719
719
  border-radius: 50%;
720
720
  box-shadow: var(--vidply-shadow-sm);
721
- height: 15px;
721
+ height: 0.9375rem;
722
722
  opacity: 0;
723
723
  position: absolute;
724
- right: -6px;
724
+ right: -0.375rem;
725
725
  top: 50%;
726
726
  transform: translateY(-50%);
727
727
  transition: opacity 0.2s ease;
728
- width: 15px;
728
+ width: 0.9375rem;
729
729
  }
730
730
 
731
731
  .vidply-progress-container:hover .vidply-progress-handle,
@@ -735,12 +735,12 @@
735
735
 
736
736
  .vidply-progress-tooltip {
737
737
  background: var(--vidply-black-90);
738
- border-radius: 4px;
739
- bottom: 12px;
738
+ border-radius: 0.25rem;
739
+ bottom: 0.75rem;
740
740
  color: var(--vidply-white);
741
741
  display: none;
742
- font-size: 12px;
743
- padding: 4px 8px;
742
+ font-size: 0.75rem;
743
+ padding: 0.25rem 0.5rem;
744
744
  pointer-events: none;
745
745
  position: absolute;
746
746
  transform: translateX(-50%);
@@ -776,7 +776,7 @@
776
776
  cursor: pointer;
777
777
  display: inline-flex;
778
778
  justify-content: center;
779
- margin: 1px;
779
+ margin: 0.0625rem;
780
780
  min-height: var(--vidply-button-size);
781
781
  min-width: var(--vidply-button-size);
782
782
  padding: 0;
@@ -794,7 +794,7 @@
794
794
 
795
795
  .vidply-button:focus {
796
796
  outline: var(--vidply-focus-outline-white);
797
- outline-offset: 2px;
797
+ outline-offset: 0.125rem;
798
798
  }
799
799
 
800
800
  .vidply-button:disabled {
@@ -820,10 +820,10 @@
820
820
  @media (forced-colors: active) {
821
821
  .vidply-controls button .vidply-icon svg {
822
822
  background: Canvas;
823
- border-radius: 3px;
823
+ border-radius: 0.1875rem;
824
824
  color: CanvasText;
825
825
  fill: currentcolor;
826
- padding: 2px;
826
+ padding: 0.125rem;
827
827
  }
828
828
 
829
829
  .vidply-transcript-close .vidply-icon svg,
@@ -831,29 +831,29 @@
831
831
  .vidply-sign-language-close .vidply-icon svg,
832
832
  .vidply-sign-language-settings .vidply-icon svg {
833
833
  background: Canvas;
834
- border-radius: 2px;
834
+ border-radius: 0.125rem;
835
835
  color: CanvasText;
836
836
  fill: currentcolor;
837
- padding: 2px;
837
+ padding: 0.125rem;
838
838
  }
839
839
  }
840
840
 
841
841
  /* Volume Control */
842
842
  .vidply-volume-slider {
843
843
  background: var(--vidply-white-20);
844
- border-radius: 3px;
844
+ border-radius: 0.1875rem;
845
845
  cursor: pointer;
846
- height: 100px;
846
+ height: 6.25rem;
847
847
  margin: 0 auto;
848
- padding: 0 5px; /* Add padding for larger touch target on mobile */
848
+ padding: 0 0.3125rem; /* Add padding for larger touch target on mobile */
849
849
  position: relative;
850
850
  touch-action: none; /* Prevent scrolling while dragging */
851
- width: 6px;
851
+ width: 0.375rem;
852
852
  }
853
853
 
854
854
  .vidply-volume-slider:focus {
855
855
  outline: var(--vidply-focus-outline-white);
856
- outline-offset: 2px;
856
+ outline-offset: 0.125rem;
857
857
  }
858
858
 
859
859
  .vidply-volume-track {
@@ -864,7 +864,7 @@
864
864
 
865
865
  .vidply-volume-fill {
866
866
  background: var(--vidply-primary-light);
867
- border-radius: 2px;
867
+ border-radius: 0.125rem;
868
868
  bottom: 0;
869
869
  height: 80%;
870
870
  left: 0;
@@ -877,12 +877,12 @@
877
877
  background: var(--vidply-white);
878
878
  border-radius: 50%;
879
879
  box-shadow: var(--vidply-shadow-sm);
880
- height: 10px;
880
+ height: 0.625rem;
881
881
  left: 50%;
882
882
  position: absolute;
883
- top: -4px;
883
+ top: -0.25rem;
884
884
  transform: translateX(-50%);
885
- width: 10px;
885
+ width: 0.625rem;
886
886
  }
887
887
 
888
888
  /* Time Display */
@@ -905,11 +905,11 @@
905
905
  }
906
906
 
907
907
  .vidply-speed-text {
908
- height: 1px;
909
- left: -10000px;
908
+ height: 0.0625rem;
909
+ left: -625rem;
910
910
  overflow: hidden;
911
911
  position: absolute;
912
- width: 1px;
912
+ width: 0.0625rem;
913
913
  }
914
914
 
915
915
  /* Menu Backdrop (for mobile) */
@@ -930,7 +930,7 @@
930
930
  }
931
931
 
932
932
  /* Mobile: Don't use backdrop, menus position above buttons */
933
- @media (width < 768px) {
933
+ @media (width < 48rem) {
934
934
  .vidply-menu-backdrop {
935
935
  display: none !important;
936
936
  }
@@ -948,18 +948,18 @@
948
948
 
949
949
  /* Menus */
950
950
  .vidply-menu {
951
- backdrop-filter: blur(10px);
951
+ backdrop-filter: blur(0.625rem);
952
952
  background: var(--vidply-bg-menu);
953
- border: 1px solid var(--vidply-border);
954
- border-radius: 8px;
955
- bottom: calc(100% + 8px);
956
- box-shadow: var(--vidply-shadow-lg), 0 0 0 1px var(--vidply-white-10);
957
- max-height: 250px;
958
- min-width: 200px;
953
+ border: 0.0625rem solid var(--vidply-border);
954
+ border-radius: 0.5rem;
955
+ bottom: calc(100% + 0.5rem);
956
+ box-shadow: var(--vidply-shadow-lg), 0 0 0 0.0625rem var(--vidply-white-10);
957
+ max-height: 15.625rem;
958
+ min-width: 12.5rem;
959
959
  -webkit-overflow-scrolling: touch;
960
960
  overflow-x: hidden;
961
961
  overflow-y: auto;
962
- padding: 8px 0;
962
+ padding: 0.5rem 0;
963
963
  pointer-events: auto; /* Ensure menus are clickable/touchable */
964
964
  position: absolute;
965
965
  right: 50%;
@@ -970,10 +970,10 @@
970
970
 
971
971
  /* Menu positioned below button */
972
972
  .vidply-menu.vidply-menu-below::after {
973
- border-bottom: 6px solid var(--vidply-bg-menu);
973
+ border-bottom: 0.375rem solid var(--vidply-bg-menu);
974
974
  border-top: none;
975
975
  bottom: auto;
976
- top: -6px;
976
+ top: -0.375rem;
977
977
  }
978
978
 
979
979
  /* Volume menu popup - narrow and centered on button */
@@ -981,18 +981,18 @@
981
981
  min-width: unset;
982
982
  overflow-x: hidden;
983
983
  overflow-y: hidden;
984
- padding: 16px 12px;
984
+ padding: 1rem 0.75rem;
985
985
  pointer-events: auto; /* Ensure volume menu is touchable */
986
986
  right: 50%;
987
987
  transform: translateX(50%);
988
- width: 35px;
988
+ width: 2.1875rem;
989
989
  z-index: var(--vidply-z-menu-high); /* High z-index to appear above everything */
990
990
  }
991
991
 
992
992
  /* For audio players, show menus below buttons */
993
993
  .vidply-player.vidply-audio .vidply-menu {
994
994
  bottom: auto;
995
- top: calc(100% + 8px);
995
+ top: calc(100% + 0.5rem);
996
996
  }
997
997
 
998
998
  .vidply-menu-item {
@@ -1020,8 +1020,8 @@
1020
1020
  .vidply-menu-item:focus {
1021
1021
  background: var(--vidply-primary-25);
1022
1022
  color: var(--vidply-white);
1023
- outline: 2px solid var(--vidply-primary-light);
1024
- outline-offset: -2px;
1023
+ outline: 0.125rem solid var(--vidply-primary-light);
1024
+ outline-offset: -0.125rem;
1025
1025
  }
1026
1026
 
1027
1027
  .vidply-menu-item:active {
@@ -1047,8 +1047,8 @@
1047
1047
 
1048
1048
  .vidply-menu-item-active .vidply-icon {
1049
1049
  color: var(--vidply-primary-light);
1050
- height: 20px;
1051
- width: 20px;
1050
+ height: 1.25rem;
1051
+ width: 1.25rem;
1052
1052
  }
1053
1053
 
1054
1054
  .vidply-menu-item-with-value {
@@ -1062,13 +1062,13 @@
1062
1062
  align-items: center;
1063
1063
  display: flex;
1064
1064
  flex: 1;
1065
- gap: 10px;
1065
+ gap: 0.625rem;
1066
1066
  }
1067
1067
 
1068
1068
  .vidply-menu-item-label .vidply-icon {
1069
- height: 24px;
1069
+ height: 1.5rem;
1070
1070
  opacity: 0.9;
1071
- width: 24px;
1071
+ width: 1.5rem;
1072
1072
  }
1073
1073
 
1074
1074
  .vidply-menu-item-value {
@@ -1077,7 +1077,7 @@
1077
1077
  color: var(--vidply-text-muted);
1078
1078
  font-size: var(--vidply-font-base);
1079
1079
  font-weight: 500;
1080
- padding: 2px var(--vidply-gap-md);
1080
+ padding: 0.125rem var(--vidply-gap-md);
1081
1081
  white-space: nowrap;
1082
1082
  }
1083
1083
 
@@ -1090,7 +1090,7 @@
1090
1090
  /* Overflow menu list - prevent overflow to the right */
1091
1091
  .vidply-overflow-menu-list {
1092
1092
  left: auto !important;
1093
- max-width: calc(100vw - 20px);
1093
+ max-width: calc(100vw - 1.25rem);
1094
1094
  right: 0 !important;
1095
1095
  z-index: 1000; /* Ensure menu appears above all player elements including playlist */
1096
1096
 
@@ -1112,8 +1112,8 @@
1112
1112
 
1113
1113
  /* SVG icons in overflow menu - proper sizing */
1114
1114
  .vidply-overflow-menu-list .vidply-menu-item .vidply-icon svg {
1115
- height: 18px;
1116
- width: 18px;
1115
+ height: 1.125rem;
1116
+ width: 1.125rem;
1117
1117
  }
1118
1118
 
1119
1119
  /* Text icons (like "Aa" for caption styling) in overflow menu */
@@ -1141,7 +1141,7 @@
1141
1141
  font-size: var(--vidply-font-base);
1142
1142
  font-weight: 500;
1143
1143
  margin-right: var(--vidply-gap-lg);
1144
- min-width: 60px;
1144
+ min-width: 3.75rem;
1145
1145
  }
1146
1146
 
1147
1147
  .vidply-chapter-title {
@@ -1202,20 +1202,20 @@
1202
1202
  .vidply-style-group input[type="color"]:focus {
1203
1203
  border-color: var(--vidply-border-focus);
1204
1204
  outline: var(--vidply-focus-outline-white);
1205
- outline-offset: 2px;
1205
+ outline-offset: 0.125rem;
1206
1206
  }
1207
1207
 
1208
1208
  .vidply-style-group input[type="range"]::-webkit-slider-thumb {
1209
1209
  -webkit-appearance: none;
1210
1210
  appearance: none;
1211
1211
  background: var(--vidply-primary);
1212
- border: 2px solid var(--vidply-white);
1212
+ border: 0.125rem solid var(--vidply-white);
1213
1213
  border-radius: 50%;
1214
1214
  box-shadow: var(--vidply-shadow-sm);
1215
1215
  cursor: pointer;
1216
- height: 16px;
1216
+ height: 1rem;
1217
1217
  transition: transform 0.15s ease, background 0.15s ease;
1218
- width: 16px;
1218
+ width: 1rem;
1219
1219
  }
1220
1220
 
1221
1221
  .vidply-style-group input[type="range"]::-webkit-slider-thumb:hover {
@@ -1225,13 +1225,13 @@
1225
1225
 
1226
1226
  .vidply-style-group input[type="range"]::-moz-range-thumb {
1227
1227
  background: var(--vidply-primary);
1228
- border: 2px solid var(--vidply-white);
1228
+ border: 0.125rem solid var(--vidply-white);
1229
1229
  border-radius: 50%;
1230
1230
  box-shadow: var(--vidply-shadow-sm);
1231
1231
  cursor: pointer;
1232
- height: 16px;
1232
+ height: 1rem;
1233
1233
  transition: transform 0.15s ease, background 0.15s ease;
1234
- width: 16px;
1234
+ width: 1rem;
1235
1235
  }
1236
1236
 
1237
1237
  .vidply-style-group input[type="range"]::-moz-range-thumb:hover {
@@ -1241,23 +1241,23 @@
1241
1241
 
1242
1242
  .vidply-style-group input[type="range"]::-webkit-slider-runnable-track {
1243
1243
  background: var(--vidply-white-20);
1244
- border-radius: 3px;
1245
- height: 6px;
1244
+ border-radius: 0.1875rem;
1245
+ height: 0.375rem;
1246
1246
  width: 100%;
1247
1247
  }
1248
1248
 
1249
1249
  .vidply-style-group input[type="range"]::-moz-range-track {
1250
1250
  background: var(--vidply-white-20);
1251
- border-radius: 3px;
1252
- height: 6px;
1251
+ border-radius: 0.1875rem;
1252
+ height: 0.375rem;
1253
1253
  width: 100%;
1254
1254
  }
1255
1255
 
1256
1256
  /* Captions */
1257
1257
  .vidply-captions {
1258
1258
  background: var(--vidply-bg-caption);
1259
- border-radius: 4px;
1260
- bottom: 16px;
1259
+ border-radius: 0.25rem;
1260
+ bottom: 1rem;
1261
1261
  color: var(--vidply-white);
1262
1262
  display: none;
1263
1263
  font-family: sans-serif;
@@ -1265,7 +1265,7 @@
1265
1265
  left: 50%;
1266
1266
  line-height: 1.4;
1267
1267
  max-width: 90%;
1268
- padding: 8px 16px;
1268
+ padding: 0.5rem 1rem;
1269
1269
  pointer-events: none;
1270
1270
  position: absolute;
1271
1271
  text-align: center;
@@ -1277,17 +1277,17 @@
1277
1277
  /* Audio player: Display captions as readable transcript/lyrics */
1278
1278
  .vidply-player.vidply-audio .vidply-captions {
1279
1279
  background: var(--vidply-bg-transcript);
1280
- border: 1px solid var(--vidply-border);
1281
- border-radius: 8px;
1280
+ border: 0.0625rem solid var(--vidply-border);
1281
+ border-radius: 0.5rem;
1282
1282
  bottom: auto;
1283
- font-size: 16px;
1283
+ font-size: 1rem;
1284
1284
  left: 0;
1285
1285
  line-height: 1.6;
1286
- max-height: 150px;
1286
+ max-height: 9.375rem;
1287
1287
  max-width: 100%;
1288
- min-width: 370px;
1288
+ min-width: 23.125rem;
1289
1289
  overflow-y: auto;
1290
- padding: 16px 20px;
1290
+ padding: 1rem 1.25rem;
1291
1291
  position: relative;
1292
1292
  scroll-behavior: smooth;
1293
1293
  text-align: left;
@@ -1299,16 +1299,16 @@
1299
1299
  .vidply-player.vidply-audio .vidply-caption-cue {
1300
1300
  background: transparent;
1301
1301
  border-radius: 0;
1302
- margin-bottom: 12px;
1303
- padding: 8px 0;
1302
+ margin-bottom: 0.75rem;
1303
+ padding: 0.5rem 0;
1304
1304
  }
1305
1305
 
1306
1306
  /* Highlight active caption in audio player */
1307
1307
  .vidply-player.vidply-audio .vidply-caption-cue.vidply-caption-active {
1308
1308
  background: var(--vidply-primary-15);
1309
- border-left: 3px solid var(--vidply-primary);
1310
- border-radius: 4px;
1311
- padding: 8px 12px;
1309
+ border-left: 0.1875rem solid var(--vidply-primary);
1310
+ border-radius: 0.25rem;
1311
+ padding: 0.5rem 0.75rem;
1312
1312
  }
1313
1313
 
1314
1314
  /* Smooth transitions for caption highlighting */
@@ -1321,14 +1321,14 @@
1321
1321
  }
1322
1322
 
1323
1323
  /* Desktop only: Move captions up when controls are visible */
1324
- @media (width >= 768px) {
1324
+ @media (width >= 48rem) {
1325
1325
  .vidply-controls-visible .vidply-captions {
1326
- bottom: 96px;
1326
+ bottom: 6rem;
1327
1327
  }
1328
1328
  }
1329
1329
 
1330
1330
  /* Mobile: Caption positioning handled by JavaScript */
1331
- @media (width < 768px) {
1331
+ @media (width < 48rem) {
1332
1332
  .vidply-captions {
1333
1333
  /* Bottom position set dynamically by JS based on control height */
1334
1334
  left: 50%;
@@ -1341,18 +1341,18 @@
1341
1341
 
1342
1342
  /* Audio player captions on mobile - more compact */
1343
1343
  .vidply-player.vidply-audio .vidply-captions {
1344
- font-size: 14px;
1344
+ font-size: 0.875rem;
1345
1345
  left: 0;
1346
- max-height: 120px;
1347
- min-width: 300px;
1348
- padding: 12px 16px;
1346
+ max-height: 7.5rem;
1347
+ min-width: 18.75rem;
1348
+ padding: 0.75rem 1rem;
1349
1349
  position: relative;
1350
1350
  transform: none;
1351
1351
  width: 100%;
1352
1352
  }
1353
1353
 
1354
1354
  .vidply-player.vidply-audio .vidply-caption-cue {
1355
- margin-bottom: 8px;
1355
+ margin-bottom: 0.5rem;
1356
1356
  }
1357
1357
 
1358
1358
  /* Make play overlay smaller and centered */
@@ -1373,7 +1373,7 @@
1373
1373
  .vidply-settings-overlay {
1374
1374
  align-items: center;
1375
1375
  animation: vidply-fade-in 0.2s ease;
1376
- backdrop-filter: blur(8px);
1376
+ backdrop-filter: blur(0.5rem);
1377
1377
  background: var(--vidply-bg-overlay);
1378
1378
  bottom: 0;
1379
1379
  display: flex;
@@ -1398,14 +1398,14 @@
1398
1398
  .vidply-settings-dialog {
1399
1399
  animation: vidply-slide-up 0.3s ease;
1400
1400
  background: var(--vidply-bg-dialog);
1401
- border: 1px solid var(--vidply-border);
1402
- border-radius: 12px;
1401
+ border: 0.0625rem solid var(--vidply-border);
1402
+ border-radius: 0.75rem;
1403
1403
  box-shadow: var(--vidply-shadow-lg);
1404
1404
  max-height: 80%;
1405
- max-width: 500px;
1405
+ max-width: 31.25rem;
1406
1406
  -webkit-overflow-scrolling: touch;
1407
1407
  overflow-y: auto;
1408
- padding: 24px;
1408
+ padding: 1.5rem;
1409
1409
 
1410
1410
  /* iOS momentum scrolling */
1411
1411
  touch-action: pan-y;
@@ -1414,7 +1414,7 @@
1414
1414
 
1415
1415
  @keyframes vidply-slide-up {
1416
1416
  from {
1417
- transform: translateY(20px);
1417
+ transform: translateY(1.25rem);
1418
1418
  opacity: 0;
1419
1419
  }
1420
1420
 
@@ -1441,7 +1441,7 @@
1441
1441
  .vidply-settings-close {
1442
1442
  min-height: auto;
1443
1443
  min-width: auto;
1444
- padding: 4px;
1444
+ padding: 0.25rem;
1445
1445
  }
1446
1446
 
1447
1447
  .vidply-settings-content {
@@ -1474,7 +1474,7 @@
1474
1474
  .vidply-settings-color,
1475
1475
  .vidply-settings-range {
1476
1476
  background: var(--vidply-white-10);
1477
- border: 1px solid var(--vidply-white-20);
1477
+ border: 0.0625rem solid var(--vidply-white-20);
1478
1478
  border-radius: var(--vidply-radius-md);
1479
1479
  color: var(--vidply-white);
1480
1480
  font-size: var(--vidply-font-md);
@@ -1501,7 +1501,7 @@
1501
1501
  .vidply-settings-range:focus {
1502
1502
  background: var(--vidply-white-15);
1503
1503
  border-color: var(--vidply-border-focus);
1504
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
1504
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
1505
1505
  outline: none;
1506
1506
  }
1507
1507
 
@@ -1515,12 +1515,12 @@
1515
1515
  color: var(--vidply-text-muted);
1516
1516
  display: inline-block;
1517
1517
  font-size: var(--vidply-font-base);
1518
- min-width: 40px;
1518
+ min-width: 2.5rem;
1519
1519
  text-align: right;
1520
1520
  }
1521
1521
 
1522
1522
  .vidply-settings-footer {
1523
- border-top: 1px solid var(--vidply-white-10);
1523
+ border-top: 0.0625rem solid var(--vidply-white-10);
1524
1524
  display: flex;
1525
1525
  justify-content: flex-end;
1526
1526
  margin-top: var(--vidply-gap-xxl);
@@ -1531,7 +1531,7 @@
1531
1531
  background: var(--vidply-white-10);
1532
1532
  border-radius: var(--vidply-radius-md);
1533
1533
  min-width: auto;
1534
- padding: 10px var(--vidply-gap-xxl);
1534
+ padding: 0.625rem var(--vidply-gap-xxl);
1535
1535
  }
1536
1536
 
1537
1537
  .vidply-settings-footer .vidply-button:hover {
@@ -1555,9 +1555,9 @@
1555
1555
  right: 0;
1556
1556
  top: 0;
1557
1557
  z-index: 999999;
1558
+
1558
1559
  /* Critical iOS fixes */
1559
1560
  transform: translate3d(0, 0, 0);
1560
- -webkit-transform: translate3d(0, 0, 0);
1561
1561
  margin: 0 !important;
1562
1562
  padding: 0 !important;
1563
1563
  }
@@ -1592,7 +1592,7 @@
1592
1592
  left: 0 !important;
1593
1593
  opacity: 0 !important;
1594
1594
  order: 0 !important;
1595
- padding: 20px 16px 16px !important;
1595
+ padding: 1.25rem 1rem 1rem !important;
1596
1596
  pointer-events: none !important;
1597
1597
  position: absolute !important;
1598
1598
  right: 0 !important;
@@ -1635,7 +1635,7 @@
1635
1635
  .vidply-player:fullscreen .vidply-controls-right {
1636
1636
  display: flex !important;
1637
1637
  flex-wrap: nowrap !important;
1638
- gap: 8px !important;
1638
+ gap: 0.5rem !important;
1639
1639
  }
1640
1640
 
1641
1641
  /* Make sure buttons within containers are visible */
@@ -1674,7 +1674,7 @@
1674
1674
  align-items: center !important;
1675
1675
  display: flex !important;
1676
1676
  flex-direction: row !important;
1677
- gap: 10px !important;
1677
+ gap: 0.625rem !important;
1678
1678
  justify-content: flex-start !important;
1679
1679
  }
1680
1680
 
@@ -1688,7 +1688,7 @@
1688
1688
  /* Caption positioning in landscape fullscreen */
1689
1689
  .vidply-player.vidply-fullscreen .vidply-captions,
1690
1690
  .vidply-player:fullscreen .vidply-captions {
1691
- bottom: 16px !important;
1691
+ bottom: 1rem !important;
1692
1692
  transition: bottom 0.3s ease !important;
1693
1693
  }
1694
1694
 
@@ -1697,7 +1697,7 @@
1697
1697
  .vidply-player:fullscreen.vidply-controls-visible .vidply-captions,
1698
1698
  .vidply-player.vidply-fullscreen.vidply-paused .vidply-captions,
1699
1699
  .vidply-player:fullscreen.vidply-paused .vidply-captions {
1700
- bottom: 96px !important;
1700
+ bottom: 6rem !important;
1701
1701
  }
1702
1702
 
1703
1703
  /* Center video in landscape fullscreen */
@@ -1778,7 +1778,7 @@
1778
1778
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
1779
1779
  .vidply-player:fullscreen .vidply-playlist-panel {
1780
1780
  position: absolute !important; /* Absolute relative to player */
1781
- bottom: 80px !important; /* Above controls (typical control height is ~80px) */
1781
+ bottom: 5rem !important; /* Above controls (typical control height is ~5rem) */
1782
1782
  left: 0 !important;
1783
1783
  right: 0 !important;
1784
1784
  z-index: 15 !important; /* Above video (z-index:1), below controls (z-index:30) */
@@ -1789,26 +1789,26 @@
1789
1789
  /* Transcript in Fullscreen */
1790
1790
  .vidply-player.vidply-fullscreen .vidply-transcript-window,
1791
1791
  .vidply-player:fullscreen .vidply-transcript-window {
1792
- bottom: 80px !important;
1792
+ bottom: 5rem !important;
1793
1793
  height: auto !important;
1794
1794
  left: auto !important;
1795
- max-height: calc(100vh - 180px) !important;
1796
- max-width: 420px;
1795
+ max-height: calc(100vh - 11.25rem) !important;
1796
+ max-width: 26.25rem;
1797
1797
  position: fixed !important;
1798
- right: 20px !important;
1798
+ right: 1.25rem !important;
1799
1799
  top: auto !important;
1800
- width: 420px;
1800
+ width: 26.25rem;
1801
1801
  }
1802
1802
 
1803
1803
  /* Loading State */
1804
1804
  .vidply-loading {
1805
1805
  display: none;
1806
- height: 50px;
1806
+ height: 3.125rem;
1807
1807
  left: 50%;
1808
1808
  position: absolute;
1809
1809
  top: 50%;
1810
1810
  transform: translate(-50%, -50%);
1811
- width: 50px;
1811
+ width: 3.125rem;
1812
1812
  }
1813
1813
 
1814
1814
  .vidply-player.vidply-buffering .vidply-loading {
@@ -1817,7 +1817,7 @@
1817
1817
 
1818
1818
  .vidply-loading::after {
1819
1819
  animation: vidply-spin 0.8s linear infinite;
1820
- border: 4px solid var(--vidply-white-20);
1820
+ border: 0.25rem solid var(--vidply-white-20);
1821
1821
  border-radius: 50%;
1822
1822
  border-top-color: var(--vidply-white);
1823
1823
  content: '';
@@ -1834,11 +1834,11 @@
1834
1834
 
1835
1835
  /* Screen Reader Only */
1836
1836
  .vidply-sr-only {
1837
- height: 1px;
1838
- left: -10000px;
1837
+ height: 0.0625rem;
1838
+ left: -625rem;
1839
1839
  overflow: hidden;
1840
1840
  position: absolute;
1841
- width: 1px;
1841
+ width: 0.0625rem;
1842
1842
  }
1843
1843
 
1844
1844
  /* High Contrast Mode Support */
@@ -1848,7 +1848,7 @@
1848
1848
  }
1849
1849
 
1850
1850
  .vidply-button:focus {
1851
- outline: 3px solid;
1851
+ outline: 0.1875rem solid;
1852
1852
  }
1853
1853
 
1854
1854
  .vidply-progress-played {
@@ -1867,17 +1867,10 @@
1867
1867
  }
1868
1868
  }
1869
1869
 
1870
- /* Dark Mode (default) - additional contrast */
1871
- @media (prefers-color-scheme: dark) {
1872
- .vidply-settings-dialog {
1873
- background: var(--vidply-bg-dialog-dark);
1874
- }
1875
- }
1876
-
1877
1870
  /* Responsive Breakpoints */
1878
- @media (width < 768px) {
1871
+ @media (width < 48rem) {
1879
1872
  .vidply-controls {
1880
- padding: 16px 12px 12px;
1873
+ padding: 1rem 0.75rem 0.75rem;
1881
1874
  }
1882
1875
 
1883
1876
  .vidply-time {
@@ -1890,12 +1883,12 @@
1890
1883
 
1891
1884
  .vidply-settings-dialog {
1892
1885
  animation: slideUpFromBottom 0.3s ease;
1893
- border-radius: 16px 16px 0 0;
1886
+ border-radius: 1rem 1rem 0 0;
1894
1887
  bottom: 0;
1895
1888
  margin: 0;
1896
1889
  max-height: 90vh;
1897
1890
  max-width: 100%;
1898
- padding: 20px;
1891
+ padding: 1.25rem;
1899
1892
  position: fixed;
1900
1893
  top: auto;
1901
1894
  width: 100%;
@@ -1907,11 +1900,11 @@
1907
1900
 
1908
1901
  /* Bottom sheet style for menus - positioned within controls */
1909
1902
  .vidply-menu {
1910
- border-radius: 8px;
1911
- bottom: calc(100% + 4px);
1903
+ border-radius: 0.5rem;
1904
+ bottom: calc(100% + 0.25rem);
1912
1905
  left: 50%;
1913
- max-height: 250px;
1914
- min-width: 200px;
1906
+ max-height: 15.625rem;
1907
+ min-width: 12.5rem;
1915
1908
  position: absolute;
1916
1909
  right: auto;
1917
1910
  top: auto;
@@ -1923,7 +1916,7 @@
1923
1916
  /* Volume menu should stay narrow - positioning handled by JS */
1924
1917
  .vidply-volume-menu {
1925
1918
  min-width: unset !important;
1926
- width: 50px !important;
1919
+ width: 3.125rem !important;
1927
1920
  }
1928
1921
 
1929
1922
  /* Remove the drag handle on mobile menus */
@@ -1934,33 +1927,33 @@
1934
1927
  /* Caption style menu - narrower on mobile */
1935
1928
  .vidply-caption-style-menu.vidply-settings-menu {
1936
1929
  left: 50%;
1937
- max-width: calc(100vw - 40px);
1938
- min-width: 280px;
1939
- padding: 16px;
1930
+ max-width: calc(100vw - 2.5rem);
1931
+ min-width: 17.5rem;
1932
+ padding: 1rem;
1940
1933
  transform: translateX(-50%);
1941
1934
  width: auto;
1942
1935
  }
1943
1936
 
1944
1937
  .vidply-style-group {
1945
- margin-bottom: 20px;
1938
+ margin-bottom: 1.25rem;
1946
1939
  }
1947
1940
 
1948
1941
  .vidply-style-group label {
1949
- font-size: 14px;
1950
- margin-bottom: 8px;
1942
+ font-size: 0.875rem;
1943
+ margin-bottom: 0.5rem;
1951
1944
  }
1952
1945
 
1953
1946
  .vidply-style-select,
1954
1947
  .vidply-style-group input[type="color"] {
1955
- font-size: 16px;
1956
- padding: 12px;
1948
+ font-size: 1rem;
1949
+ padding: 0.75rem;
1957
1950
  }
1958
1951
 
1959
1952
  /* Keep controls in one horizontal row on mobile */
1960
1953
  .vidply-controls-buttons {
1961
1954
  flex-direction: row;
1962
1955
  flex-wrap: nowrap;
1963
- gap: 8px;
1956
+ gap: 0.5rem;
1964
1957
  width: 100%;
1965
1958
  }
1966
1959
 
@@ -1975,7 +1968,7 @@
1975
1968
  .vidply-button {
1976
1969
  min-height: var(--vidply-button-size-mobile);
1977
1970
  min-width: var(--vidply-button-size-mobile);
1978
- padding: 5px;
1971
+ padding: 0.3125rem;
1979
1972
  }
1980
1973
 
1981
1974
  .vidply-icon {
@@ -1997,7 +1990,7 @@
1997
1990
  }
1998
1991
 
1999
1992
  /* Landscape mobile optimization */
2000
- @media (width <= 896px) and (orientation: landscape) {
1993
+ @media (width <= 56rem) and (orientation: landscape) {
2001
1994
  .vidply-menu {
2002
1995
  max-height: 50vh;
2003
1996
  }
@@ -2013,9 +2006,9 @@
2013
2006
  /* Landscape fullscreen playlist - horizontal scrolling */
2014
2007
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
2015
2008
  .vidply-player:fullscreen .vidply-playlist-panel {
2016
- bottom: 70px; /* Directly above controls */
2009
+ bottom: 4.375rem; /* Directly above controls */
2017
2010
  max-height: 30vh; /* Less height in landscape */
2018
- padding: 10px 0;
2011
+ padding: 0.625rem 0;
2019
2012
  overflow-y: hidden;
2020
2013
  overflow-x: auto;
2021
2014
  touch-action: pan-x; /* Allow horizontal scrolling on touch devices */
@@ -2027,16 +2020,16 @@
2027
2020
  .vidply-player:fullscreen .vidply-playlist-list {
2028
2021
  flex-direction: row;
2029
2022
  flex-wrap: nowrap;
2030
- gap: 8px;
2031
- padding: 0 10px;
2023
+ gap: 0.5rem;
2024
+ padding: 0 0.625rem;
2032
2025
  }
2033
2026
 
2034
2027
  /* Landscape items - smaller vertical cards */
2035
2028
  .vidply-player.vidply-fullscreen .vidply-playlist-item,
2036
2029
  .vidply-player:fullscreen .vidply-playlist-item {
2037
- width: 180px;
2038
- min-width: 180px;
2039
- max-width: 180px;
2030
+ width: 11.25rem;
2031
+ min-width: 11.25rem;
2032
+ max-width: 11.25rem;
2040
2033
  flex-shrink: 0;
2041
2034
  }
2042
2035
 
@@ -2049,26 +2042,26 @@
2049
2042
 
2050
2043
  .vidply-player.vidply-fullscreen .vidply-playlist-thumbnail,
2051
2044
  .vidply-player:fullscreen .vidply-playlist-thumbnail {
2052
- height: 100px;
2045
+ height: 6.25rem;
2053
2046
  width: 100%;
2054
- border-radius: 8px 8px 0 0;
2047
+ border-radius: 0.5rem 0.5rem 0 0;
2055
2048
  }
2056
2049
 
2057
2050
  .vidply-player.vidply-fullscreen .vidply-playlist-item-info,
2058
2051
  .vidply-player:fullscreen .vidply-playlist-item-info {
2059
- padding: 8px;
2052
+ padding: 0.5rem;
2060
2053
  }
2061
2054
 
2062
2055
  .vidply-player.vidply-fullscreen .vidply-playlist-header,
2063
2056
  .vidply-player:fullscreen .vidply-playlist-header {
2064
- padding: 0 10px 8px;
2065
- font-size: 11px;
2057
+ padding: 0 0.625rem 0.5rem;
2058
+ font-size: 0.6875rem;
2066
2059
  flex-shrink: 0;
2067
2060
  }
2068
2061
  }
2069
2062
 
2070
2063
  /* Extra small screens */
2071
- @media (width <= 480px) {
2064
+ @media (width <= 30rem) {
2072
2065
  .vidply-speed-text {
2073
2066
  display: none;
2074
2067
  }
@@ -2096,7 +2089,7 @@
2096
2089
  .vidply-player [role="link"]:hover,
2097
2090
  .vidply-player [tabindex]:not([tabindex="-1"]):hover {
2098
2091
  outline: var(--vidply-focus-outline-white);
2099
- outline-offset: 2px;
2092
+ outline-offset: 0.125rem;
2100
2093
  }
2101
2094
 
2102
2095
  /* Print Styles */
@@ -2111,40 +2104,67 @@
2111
2104
  ============================================================================ */
2112
2105
 
2113
2106
  /* Track Info Display (below video, above playlist) */
2107
+
2108
+ /* Track Artwork - Displays album art/poster above audio player */
2109
+ .vidply-track-artwork {
2110
+ aspect-ratio: 16 / 3;
2111
+ background-color: var(--vidply-black);
2112
+ background-position: center;
2113
+ background-repeat: no-repeat;
2114
+ background-size: cover;
2115
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2116
+ order: 1; /* Before video-wrapper */
2117
+ overflow: hidden;
2118
+ position: relative;
2119
+ transition: background-image 0.3s ease-in-out;
2120
+ width: 100%;
2121
+ }
2122
+
2123
+ /* Optional: Add a subtle overlay for better text readability if needed */
2124
+ .vidply-track-artwork::after {
2125
+ background: linear-gradient(180deg, transparent 0%, var(--vidply-black-30) 100%);
2126
+ bottom: 0;
2127
+ content: '';
2128
+ left: 0;
2129
+ pointer-events: none;
2130
+ position: absolute;
2131
+ right: 0;
2132
+ top: 0;
2133
+ }
2134
+
2114
2135
  .vidply-track-info {
2115
2136
  background: var(--vidply-bg-track-info);
2116
- border-bottom: 1px solid var(--vidply-border-light);
2137
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2117
2138
  order: 2; /* After video-wrapper */
2118
- padding: 16px 20px;
2139
+ padding: 1rem 1.25rem;
2119
2140
  }
2120
2141
 
2121
2142
  .vidply-track-number {
2122
2143
  color: var(--vidply-text-muted);
2123
- font-size: 12px;
2124
- letter-spacing: 0.5px;
2125
- margin-bottom: 4px;
2144
+ font-size: 0.75rem;
2145
+ letter-spacing: 0.0313rem;
2146
+ margin-bottom: 0.25rem;
2126
2147
  text-transform: uppercase;
2127
2148
  }
2128
2149
 
2129
2150
  .vidply-track-title {
2130
2151
  color: var(--vidply-white);
2131
- font-size: 18px;
2152
+ font-size: 1.125rem;
2132
2153
  font-weight: 600;
2133
- margin-bottom: 4px;
2154
+ margin-bottom: 0.25rem;
2134
2155
  }
2135
2156
 
2136
2157
  .vidply-track-artist {
2137
2158
  color: var(--vidply-white-80);
2138
- font-size: 14px;
2159
+ font-size: 0.875rem;
2139
2160
  }
2140
2161
 
2141
2162
  /* Playlist Panel */
2142
2163
  .vidply-playlist-panel {
2143
2164
  background: var(--vidply-bg-playlist);
2144
- border-top: 1px solid var(--vidply-border-light);
2145
- max-height: 400px;
2165
+ border-top: 0.0625rem solid var(--vidply-border-light);
2166
+ max-height: 25rem;
2146
2167
  transform: translate3d(0, 0, 0);
2147
- -webkit-transform: translate3d(0, 0, 0);
2148
2168
  order: 3; /* After track info */
2149
2169
  -webkit-overflow-scrolling: touch; /* iOS momentum scrolling */
2150
2170
  overflow-y: auto;
@@ -2158,10 +2178,10 @@
2158
2178
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
2159
2179
  .vidply-player:fullscreen .vidply-playlist-panel {
2160
2180
  background: linear-gradient(to top, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 90%) 100%);
2161
- backdrop-filter: blur(10px);
2181
+ backdrop-filter: blur(0.625rem);
2162
2182
  border: none;
2163
- border-top: 1px solid var(--vidply-border);
2164
- bottom: 80px; /* Directly above controls */
2183
+ border-top: 0.0625rem solid var(--vidply-border);
2184
+ bottom: 5rem; /* Directly above controls */
2165
2185
  left: 0;
2166
2186
  max-height: 50vh; /* Take up to half the screen */
2167
2187
  opacity: 0;
@@ -2171,7 +2191,7 @@
2171
2191
  position: absolute !important; /* Force absolute positioning over video */
2172
2192
  right: 0;
2173
2193
  touch-action: pan-y; /* Allow vertical scrolling on touch devices */
2174
- transform: translateY(20px);
2194
+ transform: translateY(1.25rem);
2175
2195
  z-index: var(--vidply-z-playlist); /* Above video but below controls */
2176
2196
  }
2177
2197
 
@@ -2199,8 +2219,8 @@
2199
2219
  .vidply-player:fullscreen .vidply-playlist-list {
2200
2220
  display: flex;
2201
2221
  flex-direction: row;
2202
- gap: 12px;
2203
- padding: 8px 16px;
2222
+ gap: 0.75rem;
2223
+ padding: 0.5rem 1rem;
2204
2224
  overflow-x: auto;
2205
2225
  overflow-y: hidden;
2206
2226
  scroll-snap-type: x mandatory;
@@ -2211,17 +2231,17 @@
2211
2231
  .vidply-player.vidply-fullscreen .vidply-playlist-header,
2212
2232
  .vidply-player:fullscreen .vidply-playlist-header {
2213
2233
  background: var(--vidply-black-50);
2214
- border-bottom: 1px solid var(--vidply-border);
2215
- font-size: 12px;
2216
- padding: 10px 16px;
2234
+ border-bottom: 0.0625rem solid var(--vidply-border);
2235
+ font-size: 0.75rem;
2236
+ padding: 0.625rem 1rem;
2217
2237
  }
2218
2238
 
2219
2239
  /* Fullscreen playlist items - horizontal card style */
2220
2240
  .vidply-player.vidply-fullscreen .vidply-playlist-item,
2221
2241
  .vidply-player:fullscreen .vidply-playlist-item {
2222
2242
  flex: 0 0 auto;
2223
- min-width: 280px;
2224
- max-width: 320px;
2243
+ min-width: 17.5rem;
2244
+ max-width: 20rem;
2225
2245
  scroll-snap-align: start;
2226
2246
  }
2227
2247
 
@@ -2229,10 +2249,10 @@
2229
2249
  .vidply-player:fullscreen .vidply-playlist-item-button {
2230
2250
  flex-direction: column;
2231
2251
  align-items: stretch;
2232
- gap: 8px;
2252
+ gap: 0.5rem;
2233
2253
  padding: 0;
2234
2254
  background: var(--vidply-black-40);
2235
- border-radius: 8px;
2255
+ border-radius: 0.5rem;
2236
2256
  overflow: hidden;
2237
2257
  transition: all 0.2s ease;
2238
2258
  }
@@ -2240,27 +2260,27 @@
2240
2260
  .vidply-player.vidply-fullscreen .vidply-playlist-item-button:hover,
2241
2261
  .vidply-player:fullscreen .vidply-playlist-item-button:hover {
2242
2262
  background: var(--vidply-white-10);
2243
- transform: translateY(-4px);
2244
- box-shadow: 0 8px 24px var(--vidply-black-60);
2263
+ transform: translateY(-0.25rem);
2264
+ box-shadow: 0 0.5rem 1.5rem var(--vidply-black-60);
2245
2265
  }
2246
2266
 
2247
2267
  .vidply-player.vidply-fullscreen .vidply-playlist-thumbnail,
2248
2268
  .vidply-player:fullscreen .vidply-playlist-thumbnail {
2249
2269
  width: 100%;
2250
- height: 160px;
2270
+ height: 10rem;
2251
2271
  border-radius: 0;
2252
2272
  }
2253
2273
 
2254
2274
  .vidply-player.vidply-fullscreen .vidply-playlist-item-info,
2255
2275
  .vidply-player:fullscreen .vidply-playlist-item-info {
2256
- padding: 12px;
2276
+ padding: 0.75rem;
2257
2277
  }
2258
2278
 
2259
2279
  .vidply-player.vidply-fullscreen .vidply-playlist-item-title,
2260
2280
  .vidply-player:fullscreen .vidply-playlist-item-title {
2261
- font-size: 14px;
2281
+ font-size: 0.875rem;
2262
2282
  font-weight: 600;
2263
- margin-bottom: 4px;
2283
+ margin-bottom: 0.25rem;
2264
2284
  white-space: normal;
2265
2285
  overflow: hidden;
2266
2286
  text-overflow: ellipsis;
@@ -2271,7 +2291,7 @@
2271
2291
 
2272
2292
  .vidply-player.vidply-fullscreen .vidply-playlist-item-artist,
2273
2293
  .vidply-player:fullscreen .vidply-playlist-item-artist {
2274
- font-size: 12px;
2294
+ font-size: 0.75rem;
2275
2295
  opacity: 0.8;
2276
2296
  }
2277
2297
 
@@ -2283,8 +2303,8 @@
2283
2303
  /* Fullscreen playlist scrollbar styling - horizontal */
2284
2304
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar,
2285
2305
  .vidply-player:fullscreen .vidply-playlist-panel::-webkit-scrollbar {
2286
- height: 8px;
2287
- width: 10px;
2306
+ height: 0.5rem;
2307
+ width: 0.625rem;
2288
2308
  }
2289
2309
 
2290
2310
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-track,
@@ -2295,7 +2315,7 @@
2295
2315
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb,
2296
2316
  .vidply-player:fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb {
2297
2317
  background: var(--vidply-white-30);
2298
- border-radius: 5px;
2318
+ border-radius: 0.3125rem;
2299
2319
  }
2300
2320
 
2301
2321
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb:hover,
@@ -2306,7 +2326,7 @@
2306
2326
  /* Horizontal scrollbar for playlist list */
2307
2327
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar,
2308
2328
  .vidply-player:fullscreen .vidply-playlist-list::-webkit-scrollbar {
2309
- height: 6px;
2329
+ height: 0.375rem;
2310
2330
  }
2311
2331
 
2312
2332
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-track,
@@ -2317,7 +2337,7 @@
2317
2337
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb,
2318
2338
  .vidply-player:fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb {
2319
2339
  background: var(--vidply-white-20);
2320
- border-radius: 3px;
2340
+ border-radius: 0.1875rem;
2321
2341
  }
2322
2342
 
2323
2343
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb:hover,
@@ -2334,7 +2354,7 @@
2334
2354
  /* Active item styling in fullscreen */
2335
2355
  .vidply-player.vidply-fullscreen .vidply-playlist-item-active .vidply-playlist-item-button,
2336
2356
  .vidply-player:fullscreen .vidply-playlist-item-active .vidply-playlist-item-button {
2337
- border: 2px solid var(--vidply-primary-light);
2357
+ border: 0.125rem solid var(--vidply-primary-light);
2338
2358
  background: var(--vidply-primary-15);
2339
2359
  }
2340
2360
 
@@ -2345,12 +2365,12 @@
2345
2365
 
2346
2366
  .vidply-playlist-header {
2347
2367
  background: var(--vidply-bg-playlist-header);
2348
- border-bottom: 1px solid var(--vidply-border-light);
2368
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2349
2369
  color: var(--vidply-white-90);
2350
- font-size: 13px;
2370
+ font-size: 0.8125rem;
2351
2371
  font-weight: 600;
2352
- letter-spacing: 0.5px;
2353
- padding: 12px 16px;
2372
+ letter-spacing: 0.0313rem;
2373
+ padding: 0.75rem 1rem;
2354
2374
  position: sticky;
2355
2375
  text-transform: uppercase;
2356
2376
  top: 0;
@@ -2360,12 +2380,12 @@
2360
2380
  .vidply-playlist-list {
2361
2381
  list-style: none;
2362
2382
  margin: 0;
2363
- padding: 4px 0;
2383
+ padding: 0.25rem 0;
2364
2384
  }
2365
2385
 
2366
2386
  /* Playlist Items */
2367
2387
  .vidply-playlist-item {
2368
- border-left: 3px solid transparent;
2388
+ border-left: 0.1875rem solid transparent;
2369
2389
  position: relative;
2370
2390
  }
2371
2391
 
@@ -2378,8 +2398,8 @@
2378
2398
  cursor: pointer;
2379
2399
  display: flex;
2380
2400
  font: inherit;
2381
- gap: 12px;
2382
- padding: 12px 16px;
2401
+ gap: 0.75rem;
2402
+ padding: 0.75rem 1rem;
2383
2403
  text-align: left;
2384
2404
  transition: var(--vidply-transition-default);
2385
2405
  width: 100%;
@@ -2401,7 +2421,7 @@
2401
2421
  .vidply-playlist-item-button:focus-visible {
2402
2422
  background: var(--vidply-white-08);
2403
2423
  outline: var(--vidply-focus-outline-white);
2404
- outline-offset: -2px;
2424
+ outline-offset: -0.125rem;
2405
2425
  z-index: 1;
2406
2426
  }
2407
2427
 
@@ -2416,19 +2436,19 @@
2416
2436
  background: var(--vidply-primary-20);
2417
2437
  border-left-color: var(--vidply-primary);
2418
2438
  outline: var(--vidply-focus-outline-white);
2419
- outline-offset: -2px;
2439
+ outline-offset: -0.125rem;
2420
2440
  z-index: 2;
2421
2441
  }
2422
2442
 
2423
2443
  /* Show focus ring on listbox when focused */
2424
2444
  .vidply-playlist-list:focus {
2425
- outline: 2px solid var(--vidply-primary);
2426
- outline-offset: 2px;
2445
+ outline: 0.125rem solid var(--vidply-primary);
2446
+ outline-offset: 0.125rem;
2427
2447
  }
2428
2448
 
2429
2449
  .vidply-playlist-list:focus-visible {
2430
- outline: 2px solid var(--vidply-primary);
2431
- outline-offset: 2px;
2450
+ outline: 0.125rem solid var(--vidply-primary);
2451
+ outline-offset: 0.125rem;
2432
2452
  }
2433
2453
 
2434
2454
  .vidply-playlist-item-active {
@@ -2451,7 +2471,7 @@
2451
2471
  .vidply-playlist-item-active .vidply-playlist-item-button:focus-visible {
2452
2472
  background: var(--vidply-primary-20);
2453
2473
  outline: var(--vidply-focus-outline-white);
2454
- outline-offset: -2px;
2474
+ outline-offset: -0.125rem;
2455
2475
  }
2456
2476
 
2457
2477
  /* Playlist Thumbnail */
@@ -2460,20 +2480,20 @@
2460
2480
  background-color: var(--vidply-white-10);
2461
2481
  background-position: center;
2462
2482
  background-size: cover;
2463
- border-radius: 4px;
2483
+ border-radius: 0.25rem;
2464
2484
  display: flex;
2465
2485
  flex-shrink: 0;
2466
- height: 45px;
2486
+ height: 2.8125rem;
2467
2487
  justify-content: center;
2468
2488
  overflow: hidden;
2469
- width: 80px;
2489
+ width: 5rem;
2470
2490
  }
2471
2491
 
2472
2492
  .vidply-playlist-thumbnail-icon {
2473
2493
  color: var(--vidply-text-subtle);
2474
- height: 32px;
2494
+ height: 2rem;
2475
2495
  transition: var(--vidply-transition-default);
2476
- width: 32px;
2496
+ width: 2rem;
2477
2497
  }
2478
2498
 
2479
2499
  .vidply-playlist-item-button:hover .vidply-playlist-thumbnail-icon {
@@ -2495,9 +2515,9 @@
2495
2515
  .vidply-playlist-item-title {
2496
2516
  color: var(--vidply-white);
2497
2517
  display: block;
2498
- font-size: 14px;
2518
+ font-size: 0.875rem;
2499
2519
  font-weight: 500;
2500
- margin-bottom: 4px;
2520
+ margin-bottom: 0.25rem;
2501
2521
  overflow: hidden;
2502
2522
  text-overflow: ellipsis;
2503
2523
  white-space: nowrap;
@@ -2510,7 +2530,7 @@
2510
2530
  .vidply-playlist-item-artist {
2511
2531
  color: var(--vidply-text-disabled);
2512
2532
  display: block;
2513
- font-size: 12px;
2533
+ font-size: 0.75rem;
2514
2534
  overflow: hidden;
2515
2535
  text-overflow: ellipsis;
2516
2536
  white-space: nowrap;
@@ -2519,10 +2539,10 @@
2519
2539
  /* Playlist Item Icon */
2520
2540
  .vidply-playlist-item-icon {
2521
2541
  flex-shrink: 0;
2522
- height: 20px;
2542
+ height: 1.25rem;
2523
2543
  opacity: 0;
2524
2544
  transition: opacity 0.2s ease;
2525
- width: 20px;
2545
+ width: 1.25rem;
2526
2546
  }
2527
2547
 
2528
2548
  .vidply-playlist-item-active .vidply-playlist-item-icon {
@@ -2537,7 +2557,7 @@
2537
2557
  }
2538
2558
 
2539
2559
  .vidply-playlist-panel::-webkit-scrollbar {
2540
- width: 8px;
2560
+ width: 0.5rem;
2541
2561
  }
2542
2562
 
2543
2563
  .vidply-playlist-panel::-webkit-scrollbar-track {
@@ -2546,7 +2566,7 @@
2546
2566
 
2547
2567
  .vidply-playlist-panel::-webkit-scrollbar-thumb {
2548
2568
  background: var(--vidply-scrollbar-thumb);
2549
- border-radius: 4px;
2569
+ border-radius: 0.25rem;
2550
2570
  }
2551
2571
 
2552
2572
  .vidply-playlist-panel::-webkit-scrollbar-thumb:hover {
@@ -2555,7 +2575,7 @@
2555
2575
 
2556
2576
  /* Audio Player with Playlist */
2557
2577
  .vidply-player.vidply-audio.vidply-has-playlist {
2558
- min-height: 200px;
2578
+ min-height: 12.5rem;
2559
2579
  }
2560
2580
 
2561
2581
  .vidply-player.vidply-audio.vidply-has-playlist audio {
@@ -2572,18 +2592,18 @@
2572
2592
 
2573
2593
  /* Transcript Window */
2574
2594
  .vidply-transcript-window {
2575
- backdrop-filter: blur(10px);
2595
+ backdrop-filter: blur(0.625rem);
2576
2596
  background: var(--vidply-bg-transcript);
2577
- border: 1px solid var(--vidply-border);
2578
- border-radius: 8px;
2579
- box-shadow: 0 10px 40px var(--vidply-black-60);
2597
+ border: 0.0625rem solid var(--vidply-border);
2598
+ border-radius: 0.5rem;
2599
+ box-shadow: 0 0.625rem 2.5rem var(--vidply-black-60);
2580
2600
  display: none;
2581
2601
  flex-direction: column;
2582
- min-width: 420px;
2602
+ min-width: 26.25rem;
2583
2603
  order: 4; /* After video-wrapper (1), track-info (2), and playlist-panel (3) */
2584
2604
  position: fixed;
2585
2605
  top: 0;
2586
- width: 420px;
2606
+ width: 26.25rem;
2587
2607
  z-index: var(--vidply-z-transcript);
2588
2608
  }
2589
2609
 
@@ -2591,13 +2611,13 @@
2591
2611
 
2592
2612
  /* Minimum height for audio player transcript */
2593
2613
  .vidply-player.vidply-audio .vidply-transcript-window {
2594
- min-height: 200px;
2614
+ min-height: 12.5rem;
2595
2615
  }
2596
2616
 
2597
2617
  .vidply-transcript-header {
2598
2618
  align-items: center;
2599
2619
  background: #282828;
2600
- border-bottom: 1px solid var(--vidply-border-light);
2620
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2601
2621
  border-radius: var(--vidply-radius-lg) var(--vidply-radius-lg) 0 0;
2602
2622
  cursor: move;
2603
2623
  display: flex;
@@ -2609,21 +2629,21 @@
2609
2629
 
2610
2630
  .vidply-transcript-header:focus,
2611
2631
  .vidply-transcript-header:focus-visible {
2612
- box-shadow: 0 0 0 4px rgb(91 144 255 / 35%);
2613
- outline: 3px solid var(--vidply-primary-light);
2614
- outline-offset: 2px;
2632
+ box-shadow: 0 0 0 0.25rem rgb(91 144 255 / 35%);
2633
+ outline: 0.1875rem solid var(--vidply-primary-light);
2634
+ outline-offset: 0.125rem;
2615
2635
  }
2616
2636
 
2617
2637
  .vidply-transcript-header h3 {
2618
2638
  color: var(--vidply-white);
2619
2639
  font-size: var(--vidply-font-lg);
2620
2640
  font-weight: 600;
2621
- height: 1px;
2622
- left: -10000px;
2641
+ height: 0.0625rem;
2642
+ left: -625rem;
2623
2643
  margin: 0;
2624
2644
  overflow: hidden;
2625
2645
  position: absolute;
2626
- width: 1px;
2646
+ width: 0.0625rem;
2627
2647
  }
2628
2648
 
2629
2649
  .vidply-transcript-close {
@@ -2648,7 +2668,7 @@
2648
2668
 
2649
2669
  .vidply-transcript-close:focus {
2650
2670
  outline: var(--vidply-focus-outline-white);
2651
- outline-offset: 2px;
2671
+ outline-offset: 0.125rem;
2652
2672
  }
2653
2673
 
2654
2674
  .vidply-transcript-close .vidply-icon {
@@ -2662,19 +2682,19 @@
2662
2682
  overflow-y: auto;
2663
2683
 
2664
2684
  /* iOS momentum scrolling */
2665
- padding: 12px 0;
2685
+ padding: 0.75rem 0;
2666
2686
  touch-action: pan-y;
2667
2687
  }
2668
2688
 
2669
2689
  .vidply-transcript-entry {
2670
2690
  background: none;
2671
2691
  border: none;
2672
- border-left: 3px solid transparent;
2692
+ border-left: 0.1875rem solid transparent;
2673
2693
  color: inherit;
2674
2694
  cursor: pointer;
2675
2695
  display: block;
2676
2696
  font: inherit;
2677
- padding: 12px 20px;
2697
+ padding: 0.75rem 1.25rem;
2678
2698
  text-align: left;
2679
2699
  transition: background 0.2s ease;
2680
2700
  width: 100%;
@@ -2695,8 +2715,8 @@
2695
2715
  font-family: 'Courier New', monospace;
2696
2716
  font-size: 100%;
2697
2717
  font-weight: 600;
2698
- margin-bottom: 4px;
2699
- margin-right: 8px;
2718
+ margin-bottom: 0.25rem;
2719
+ margin-right: 0.5rem;
2700
2720
  }
2701
2721
 
2702
2722
  .vidply-transcript-text {
@@ -2718,7 +2738,7 @@
2718
2738
  /* Transcript entry types */
2719
2739
  .vidply-transcript-description {
2720
2740
  background: rgb(100 149 237 / 8%); /* Subtle blue tint for descriptions */
2721
- border-left: 3px solid #8BB3FB;
2741
+ border-left: 0.1875rem solid #8BB3FB;
2722
2742
  }
2723
2743
 
2724
2744
  .vidply-transcript-description .vidply-transcript-text {
@@ -2758,7 +2778,7 @@
2758
2778
  }
2759
2779
 
2760
2780
  .vidply-transcript-content::-webkit-scrollbar {
2761
- width: 8px;
2781
+ width: 0.5rem;
2762
2782
  }
2763
2783
 
2764
2784
  .vidply-transcript-content::-webkit-scrollbar-track {
@@ -2767,7 +2787,7 @@
2767
2787
 
2768
2788
  .vidply-transcript-content::-webkit-scrollbar-thumb {
2769
2789
  background: var(--vidply-scrollbar-thumb);
2770
- border-radius: 4px;
2790
+ border-radius: 0.25rem;
2771
2791
  }
2772
2792
 
2773
2793
  .vidply-transcript-content::-webkit-scrollbar-thumb:hover {
@@ -2778,7 +2798,7 @@
2778
2798
  .vidply-transcript-header-left {
2779
2799
  align-items: flex-start; /* Changed from center to align items at top */
2780
2800
  display: flex;
2781
- gap: 16px;
2801
+ gap: 1rem;
2782
2802
  position: relative;
2783
2803
  }
2784
2804
 
@@ -2792,21 +2812,21 @@
2792
2812
  align-self: center; /* Center checkbox label vertically in header */
2793
2813
  cursor: pointer;
2794
2814
  display: flex;
2795
- gap: 6px;
2815
+ gap: 0.375rem;
2796
2816
  user-select: none;
2797
2817
  white-space: nowrap;
2798
2818
  }
2799
2819
 
2800
2820
  .vidply-transcript-autoscroll-label input[type="checkbox"] {
2801
2821
  cursor: pointer;
2802
- height: 16px;
2822
+ height: 1rem;
2803
2823
  margin: 0;
2804
- width: 16px;
2824
+ width: 1rem;
2805
2825
  }
2806
2826
 
2807
2827
  .vidply-transcript-autoscroll-text {
2808
2828
  color: var(--vidply-text-muted);
2809
- font-size: 13px;
2829
+ font-size: 0.8125rem;
2810
2830
  transition: color 0.2s ease;
2811
2831
  }
2812
2832
 
@@ -2820,32 +2840,32 @@
2820
2840
  align-self: center; /* Center this wrapper vertically in header */
2821
2841
  display: flex;
2822
2842
  flex-direction: row; /* Horizontal layout: label left of select */
2823
- gap: 8px;
2843
+ gap: 0.5rem;
2824
2844
  }
2825
2845
 
2826
2846
  .vidply-transcript-language-label {
2827
2847
  /* Visible label for voice input accessibility */
2828
2848
  color: var(--vidply-text-muted);
2829
2849
  cursor: pointer;
2830
- font-size: 13px;
2850
+ font-size: 0.8125rem;
2831
2851
  font-weight: 400;
2832
- margin-left: 8px;
2852
+ margin-left: 0.5rem;
2833
2853
  white-space: nowrap;
2834
2854
  }
2835
2855
 
2836
2856
  .vidply-transcript-language-select {
2837
2857
  background: var(--vidply-bg-menu);
2838
- border: 1px solid var(--vidply-border);
2839
- border-radius: 4px;
2858
+ border: 0.0625rem solid var(--vidply-border);
2859
+ border-radius: 0.25rem;
2840
2860
  color: var(--vidply-text);
2841
- font-size: 14px;
2842
- max-width: 120px;
2843
- padding: 4px 8px;
2861
+ font-size: 0.875rem;
2862
+ max-width: 7.5rem;
2863
+ padding: 0.25rem 0.5rem;
2844
2864
  }
2845
2865
 
2846
2866
  .vidply-transcript-language-select:focus {
2847
2867
  outline: var(--vidply-focus-outline);
2848
- outline-offset: 2px;
2868
+ outline-offset: 0.125rem;
2849
2869
  }
2850
2870
 
2851
2871
  /* Transcript Settings Button */
@@ -2873,7 +2893,7 @@
2873
2893
 
2874
2894
  .vidply-transcript-settings:focus {
2875
2895
  outline: var(--vidply-focus-outline-white);
2876
- outline-offset: 2px;
2896
+ outline-offset: 0.125rem;
2877
2897
  }
2878
2898
 
2879
2899
  .vidply-transcript-settings .vidply-icon {
@@ -2884,31 +2904,31 @@
2884
2904
  /* Transcript Settings Menu */
2885
2905
  .vidply-transcript-settings-menu {
2886
2906
  background: var(--vidply-bg-menu);
2887
- border: 1px solid var(--vidply-border);
2907
+ border: 0.0625rem solid var(--vidply-border);
2888
2908
  border-radius: var(--vidply-radius-md);
2889
2909
  box-shadow: var(--vidply-shadow-lg);
2890
2910
  display: none;
2891
- min-width: 240px;
2911
+ min-width: 15rem;
2892
2912
  padding: var(--vidply-gap-sm);
2893
2913
  position: absolute;
2894
2914
  z-index: 100;
2895
2915
  }
2896
2916
 
2897
2917
  .vidply-transcript-settings-menu::after {
2898
- border-bottom: 6px solid var(--vidply-bg-menu);
2899
- border-left: 6px solid transparent;
2900
- border-right: 6px solid transparent;
2918
+ border-bottom: 0.375rem solid var(--vidply-bg-menu);
2919
+ border-left: 0.375rem solid transparent;
2920
+ border-right: 0.375rem solid transparent;
2901
2921
  bottom: 100%;
2902
2922
  content: '';
2903
2923
  height: 0;
2904
- left: 8px;
2924
+ left: 0.5rem;
2905
2925
  position: absolute;
2906
2926
  width: 0;
2907
2927
  }
2908
2928
 
2909
2929
  .vidply-transcript-settings-menu.vidply-menu-above::after {
2910
2930
  border-bottom: none;
2911
- border-top: 6px solid var(--vidply-bg-menu);
2931
+ border-top: 0.375rem solid var(--vidply-bg-menu);
2912
2932
  bottom: auto;
2913
2933
  top: 100%;
2914
2934
  }
@@ -2924,7 +2944,7 @@
2924
2944
  display: flex;
2925
2945
  font-size: var(--vidply-font-base);
2926
2946
  gap: var(--vidply-gap-md);
2927
- padding: var(--vidply-padding-md) 10px;
2947
+ padding: var(--vidply-padding-md) 0.625rem;
2928
2948
  text-align: left;
2929
2949
  transition: var(--vidply-transition-normal);
2930
2950
  width: 100%;
@@ -2940,8 +2960,8 @@
2940
2960
 
2941
2961
  .vidply-transcript-settings-item:focus {
2942
2962
  background: var(--vidply-primary-25);
2943
- outline: 2px solid var(--vidply-primary-light);
2944
- outline-offset: -2px;
2963
+ outline: 0.125rem solid var(--vidply-primary-light);
2964
+ outline-offset: -0.125rem;
2945
2965
  }
2946
2966
 
2947
2967
  .vidply-transcript-settings-item:focus span {
@@ -2962,16 +2982,16 @@
2962
2982
  /* Move Mode Visual Feedback */
2963
2983
  .vidply-transcript-move-mode {
2964
2984
  animation: transcriptPulse 0.5s ease-in-out 2;
2965
- box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
2985
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
2966
2986
  }
2967
2987
 
2968
2988
  @keyframes transcriptPulse {
2969
2989
  0%, 100% {
2970
- box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
2990
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
2971
2991
  }
2972
2992
 
2973
2993
  50% {
2974
- box-shadow: 0 0 0 6px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
2994
+ box-shadow: 0 0 0 0.375rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
2975
2995
  }
2976
2996
  }
2977
2997
 
@@ -2985,67 +3005,67 @@
2985
3005
  .vidply-transcript-resize-nw,
2986
3006
  .vidply-transcript-resize-se,
2987
3007
  .vidply-transcript-resize-sw {
2988
- height: 16px;
2989
- width: 16px;
3008
+ height: 1rem;
3009
+ width: 1rem;
2990
3010
  }
2991
3011
 
2992
3012
  .vidply-transcript-resize-n,
2993
3013
  .vidply-transcript-resize-s {
2994
3014
  cursor: ns-resize;
2995
- height: 8px;
2996
- left: 16px;
2997
- right: 16px;
3015
+ height: 0.5rem;
3016
+ left: 1rem;
3017
+ right: 1rem;
2998
3018
  }
2999
3019
 
3000
3020
  .vidply-transcript-resize-e,
3001
3021
  .vidply-transcript-resize-w {
3002
- bottom: 16px;
3022
+ bottom: 1rem;
3003
3023
  cursor: ew-resize;
3004
- top: 16px;
3005
- width: 8px;
3024
+ top: 1rem;
3025
+ width: 0.5rem;
3006
3026
  }
3007
3027
 
3008
- .vidply-transcript-resize-n { top: -4px; }
3009
- .vidply-transcript-resize-s { bottom: -4px; }
3010
- .vidply-transcript-resize-e { right: -4px; }
3011
- .vidply-transcript-resize-w { left: -4px; }
3028
+ .vidply-transcript-resize-n { top: -0.25rem; }
3029
+ .vidply-transcript-resize-s { bottom: -0.25rem; }
3030
+ .vidply-transcript-resize-e { right: -0.25rem; }
3031
+ .vidply-transcript-resize-w { left: -0.25rem; }
3012
3032
 
3013
3033
  .vidply-transcript-resize-ne {
3014
3034
  cursor: nesw-resize;
3015
- right: -8px;
3016
- top: -8px;
3035
+ right: -0.5rem;
3036
+ top: -0.5rem;
3017
3037
  }
3018
3038
 
3019
3039
  .vidply-transcript-resize-nw {
3020
3040
  cursor: nwse-resize;
3021
- left: -8px;
3022
- top: -8px;
3041
+ left: -0.5rem;
3042
+ top: -0.5rem;
3023
3043
  }
3024
3044
 
3025
3045
  .vidply-transcript-resize-se {
3026
- bottom: -8px;
3046
+ bottom: -0.5rem;
3027
3047
  cursor: nwse-resize;
3028
- right: -8px;
3048
+ right: -0.5rem;
3029
3049
  }
3030
3050
 
3031
3051
  .vidply-transcript-resize-sw {
3032
- bottom: -8px;
3052
+ bottom: -0.5rem;
3033
3053
  cursor: nesw-resize;
3034
- left: -8px;
3054
+ left: -0.5rem;
3035
3055
  }
3036
3056
 
3037
3057
  .vidply-transcript-resizable .vidply-transcript-resize-handle::after {
3038
3058
  background: var(--vidply-primary-light);
3039
3059
  border-radius: 50%;
3040
3060
  content: '';
3041
- height: 6px;
3061
+ height: 0.375rem;
3042
3062
  left: 50%;
3043
3063
  opacity: 0;
3044
3064
  position: absolute;
3045
3065
  top: 50%;
3046
3066
  transform: translate(-50%, -50%);
3047
3067
  transition: opacity 0.2s ease;
3048
- width: 6px;
3068
+ width: 0.375rem;
3049
3069
  }
3050
3070
 
3051
3071
  .vidply-transcript-resizable:hover .vidply-transcript-resize-handle::after {
@@ -3058,7 +3078,7 @@
3058
3078
 
3059
3079
  /* Resizing State */
3060
3080
  .vidply-transcript-resizing {
3061
- box-shadow: 0 0 0 2px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
3081
+ box-shadow: 0 0 0 0.125rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
3062
3082
  transition: none !important;
3063
3083
  }
3064
3084
 
@@ -3068,17 +3088,17 @@
3068
3088
 
3069
3089
  /* Keyboard Drag Mode */
3070
3090
  .vidply-transcript-keyboard-drag {
3071
- box-shadow: 0 0 0 3px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
3091
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
3072
3092
  }
3073
3093
 
3074
3094
  .vidply-transcript-drag-indicator {
3075
3095
  background: linear-gradient(135deg, var(--vidply-primary) 0%, var(--vidply-primary-light) 100%);
3076
- border-radius: 0 0 6px 6px;
3096
+ border-radius: 0 0 0.375rem 0.375rem;
3077
3097
  color: var(--vidply-white);
3078
- font-size: 12px;
3098
+ font-size: 0.75rem;
3079
3099
  font-weight: 600;
3080
3100
  left: 0;
3081
- padding: 8px 12px;
3101
+ padding: 0.5rem 0.75rem;
3082
3102
  position: absolute;
3083
3103
  right: 0;
3084
3104
  text-align: center;
@@ -3090,11 +3110,11 @@
3090
3110
  .vidply-transcript-move-tooltip {
3091
3111
  animation: fadeInDown 0.3s ease;
3092
3112
  background: var(--vidply-black-90);
3093
- border-radius: 4px;
3113
+ border-radius: 0.25rem;
3094
3114
  color: var(--vidply-white);
3095
- font-size: 12px;
3115
+ font-size: 0.75rem;
3096
3116
  left: 50%;
3097
- padding: 6px 12px;
3117
+ padding: 0.375rem 0.75rem;
3098
3118
  position: absolute;
3099
3119
  text-align: center;
3100
3120
  top: 100%;
@@ -3106,11 +3126,11 @@
3106
3126
  .vidply-transcript-resize-tooltip {
3107
3127
  animation: fadeInDown 0.3s ease;
3108
3128
  background: var(--vidply-primary);
3109
- border-radius: 4px;
3129
+ border-radius: 0.25rem;
3110
3130
  color: var(--vidply-white);
3111
- font-size: 12px;
3131
+ font-size: 0.75rem;
3112
3132
  left: 50%;
3113
- padding: 6px 12px;
3133
+ padding: 0.375rem 0.75rem;
3114
3134
  position: absolute;
3115
3135
  text-align: center;
3116
3136
  top: 100%;
@@ -3122,7 +3142,7 @@
3122
3142
  @keyframes fadeInDown {
3123
3143
  from {
3124
3144
  opacity: 0;
3125
- transform: translateX(-50%) translateY(-10px);
3145
+ transform: translateX(-50%) translateY(-0.625rem);
3126
3146
  }
3127
3147
 
3128
3148
  to {
@@ -3134,15 +3154,15 @@
3134
3154
  /* Transcript Style Dialog - Dropdown Menu Style */
3135
3155
  .vidply-transcript-style-dialog {
3136
3156
  background: var(--vidply-bg-menu);
3137
- border: 1px solid var(--vidply-border);
3138
- border-radius: 8px;
3157
+ border: 0.0625rem solid var(--vidply-border);
3158
+ border-radius: 0.5rem;
3139
3159
  box-shadow: var(--vidply-shadow-lg);
3140
3160
  display: none;
3141
3161
  left: 0;
3142
- max-height: 500px;
3143
- min-width: 280px;
3162
+ max-height: 31.25rem;
3163
+ min-width: 17.5rem;
3144
3164
  overflow-y: auto;
3145
- padding: 12px;
3165
+ padding: 0.75rem;
3146
3166
  position: absolute;
3147
3167
  top: 100%;
3148
3168
  width: auto;
@@ -3153,26 +3173,26 @@
3153
3173
  .vidply-transcript-style-dialog::after {
3154
3174
  border-color: transparent transparent var(--vidply-bg-menu) transparent;
3155
3175
  border-style: solid;
3156
- border-width: 0 8px 8px;
3176
+ border-width: 0 0.5rem 0.5rem;
3157
3177
  content: '';
3158
3178
  height: 0;
3159
- left: 12px;
3179
+ left: 0.75rem;
3160
3180
  position: absolute;
3161
- top: -8px;
3181
+ top: -0.5rem;
3162
3182
  width: 0;
3163
3183
  }
3164
3184
 
3165
3185
  .vidply-transcript-style-title {
3166
- border-bottom: 1px solid var(--vidply-border);
3186
+ border-bottom: 0.0625rem solid var(--vidply-border);
3167
3187
  color: var(--vidply-white);
3168
- font-size: 14px;
3188
+ font-size: 0.875rem;
3169
3189
  font-weight: 600;
3170
- margin: 0 0 12px;
3171
- padding-bottom: 8px;
3190
+ margin: 0 0 0.75rem;
3191
+ padding-bottom: 0.5rem;
3172
3192
  }
3173
3193
 
3174
3194
  .vidply-transcript-style-group {
3175
- margin-bottom: 12px;
3195
+ margin-bottom: 0.75rem;
3176
3196
  }
3177
3197
 
3178
3198
  .vidply-transcript-style-group:last-child {
@@ -3182,19 +3202,19 @@
3182
3202
  .vidply-transcript-style-group label {
3183
3203
  color: var(--vidply-white-90);
3184
3204
  display: block;
3185
- font-size: 12px;
3205
+ font-size: 0.75rem;
3186
3206
  font-weight: 500;
3187
- margin-bottom: 6px;
3207
+ margin-bottom: 0.375rem;
3188
3208
  }
3189
3209
 
3190
3210
  /* Style Select */
3191
3211
  .vidply-transcript-style-select {
3192
3212
  background: var(--vidply-bg-menu);
3193
- border: 1px solid var(--vidply-border);
3194
- border-radius: 4px;
3213
+ border: 0.0625rem solid var(--vidply-border);
3214
+ border-radius: 0.25rem;
3195
3215
  color: var(--vidply-text);
3196
- font-size: 14px;
3197
- padding: 4px 8px;
3216
+ font-size: 0.875rem;
3217
+ padding: 0.25rem 0.5rem;
3198
3218
  transition: var(--vidply-transition-default);
3199
3219
  width: 100%;
3200
3220
  }
@@ -3207,50 +3227,50 @@
3207
3227
  .vidply-transcript-style-select:focus {
3208
3228
  background: var(--vidply-white-15);
3209
3229
  border-color: var(--vidply-border-focus);
3210
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3230
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3211
3231
  outline: var(--vidply-focus-outline);
3212
- outline-offset: 2px;
3232
+ outline-offset: 0.125rem;
3213
3233
  }
3214
3234
 
3215
3235
  /* Style Color Input */
3216
3236
  .vidply-transcript-style-color {
3217
- border: 1px solid var(--vidply-border);
3218
- border-radius: 4px;
3237
+ border: 0.0625rem solid var(--vidply-border);
3238
+ border-radius: 0.25rem;
3219
3239
  cursor: pointer;
3220
- height: 32px;
3240
+ height: 2rem;
3221
3241
  outline: none;
3222
- padding: 4px;
3242
+ padding: 0.25rem;
3223
3243
  transition: var(--vidply-transition-default);
3224
3244
  width: 100%;
3225
3245
  }
3226
3246
 
3227
3247
  .vidply-transcript-style-color:hover {
3228
3248
  border-color: var(--vidply-border-hover);
3229
- box-shadow: 0 0 0 1px var(--vidply-primary-20);
3249
+ box-shadow: 0 0 0 0.0625rem var(--vidply-primary-20);
3230
3250
  }
3231
3251
 
3232
3252
  .vidply-transcript-style-color:focus {
3233
3253
  border-color: var(--vidply-border-focus);
3234
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3254
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3235
3255
  outline: var(--vidply-focus-outline);
3236
- outline-offset: 2px;
3256
+ outline-offset: 0.125rem;
3237
3257
  }
3238
3258
 
3239
3259
  /* Style Range Slider */
3240
3260
  .vidply-transcript-style-range-container {
3241
3261
  align-items: center;
3242
3262
  display: flex;
3243
- gap: 12px;
3263
+ gap: 0.75rem;
3244
3264
  }
3245
3265
 
3246
3266
  .vidply-transcript-style-range {
3247
3267
  -webkit-appearance: none;
3248
3268
  appearance: none;
3249
3269
  background: var(--vidply-white-20);
3250
- border-radius: 3px;
3270
+ border-radius: 0.1875rem;
3251
3271
  cursor: pointer;
3252
3272
  flex: 1;
3253
- height: 6px;
3273
+ height: 0.375rem;
3254
3274
  outline: none;
3255
3275
  transition: var(--vidply-transition-default);
3256
3276
  }
@@ -3261,20 +3281,20 @@
3261
3281
 
3262
3282
  .vidply-transcript-style-range:focus {
3263
3283
  background: var(--vidply-white-30);
3264
- box-shadow: 0 0 0 2px var(--vidply-primary-20);
3284
+ box-shadow: 0 0 0 0.125rem var(--vidply-primary-20);
3265
3285
  }
3266
3286
 
3267
3287
  .vidply-transcript-style-range::-webkit-slider-thumb {
3268
3288
  -webkit-appearance: none;
3269
3289
  appearance: none;
3270
3290
  background: var(--vidply-primary-light);
3271
- border: 2px solid var(--vidply-white);
3291
+ border: 0.125rem solid var(--vidply-white);
3272
3292
  border-radius: 50%;
3273
3293
  box-shadow: var(--vidply-shadow-sm);
3274
3294
  cursor: pointer;
3275
- height: 16px;
3295
+ height: 1rem;
3276
3296
  transition: all 0.15s ease;
3277
- width: 16px;
3297
+ width: 1rem;
3278
3298
  }
3279
3299
 
3280
3300
  .vidply-transcript-style-range::-webkit-slider-thumb:hover {
@@ -3284,13 +3304,13 @@
3284
3304
 
3285
3305
  .vidply-transcript-style-range::-moz-range-thumb {
3286
3306
  background: var(--vidply-primary-light);
3287
- border: 2px solid var(--vidply-white);
3307
+ border: 0.125rem solid var(--vidply-white);
3288
3308
  border-radius: 50%;
3289
3309
  box-shadow: var(--vidply-shadow-sm);
3290
3310
  cursor: pointer;
3291
- height: 16px;
3311
+ height: 1rem;
3292
3312
  transition: all 0.15s ease;
3293
- width: 16px;
3313
+ width: 1rem;
3294
3314
  }
3295
3315
 
3296
3316
  .vidply-transcript-style-range::-moz-range-thumb:hover {
@@ -3300,9 +3320,9 @@
3300
3320
 
3301
3321
  .vidply-transcript-style-value {
3302
3322
  color: var(--vidply-text-muted);
3303
- font-size: 13px;
3323
+ font-size: 0.8125rem;
3304
3324
  font-weight: 600;
3305
- min-width: 40px;
3325
+ min-width: 2.5rem;
3306
3326
  text-align: right;
3307
3327
  }
3308
3328
 
@@ -3310,20 +3330,20 @@
3310
3330
  .vidply-transcript-style-close {
3311
3331
  background: var(--vidply-primary);
3312
3332
  border: none;
3313
- border-radius: 4px;
3333
+ border-radius: 0.25rem;
3314
3334
  color: var(--vidply-white);
3315
3335
  cursor: pointer;
3316
- font-size: 13px;
3336
+ font-size: 0.8125rem;
3317
3337
  font-weight: 600;
3318
- margin-top: 12px;
3319
- padding: 8px 16px;
3338
+ margin-top: 0.75rem;
3339
+ padding: 0.5rem 1rem;
3320
3340
  transition: var(--vidply-transition-default);
3321
3341
  width: 100%;
3322
3342
  }
3323
3343
 
3324
3344
  .vidply-transcript-style-close:hover {
3325
3345
  background: var(--vidply-primary-light);
3326
- transform: translateY(-1px);
3346
+ transform: translateY(-0.0625rem);
3327
3347
  }
3328
3348
 
3329
3349
  .vidply-transcript-style-close:active {
@@ -3331,22 +3351,22 @@
3331
3351
  }
3332
3352
 
3333
3353
  .vidply-transcript-style-close:focus {
3334
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3354
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3335
3355
  outline: var(--vidply-focus-outline);
3336
- outline-offset: 2px;
3356
+ outline-offset: 0.125rem;
3337
3357
  }
3338
3358
 
3339
3359
  /* Sign Language Video Wrapper */
3340
3360
  .vidply-sign-language-wrapper {
3341
3361
  background: transparent;
3342
- border-radius: 8px;
3362
+ border-radius: 0.5rem;
3343
3363
  height: auto;
3344
3364
  max-width: none;
3345
- min-height: 100px;
3365
+ min-height: 6.25rem;
3346
3366
  overflow: visible; /* Allow menu to overflow */
3347
3367
  position: absolute;
3348
3368
  transition: opacity 0.3s ease;
3349
- width: 280px;
3369
+ width: 17.5rem;
3350
3370
  z-index: 3;
3351
3371
  }
3352
3372
 
@@ -3355,15 +3375,15 @@
3355
3375
  }
3356
3376
 
3357
3377
  .vidply-sign-language-wrapper:focus {
3358
- outline: 2px solid var(--vidply-primary);
3359
- outline-offset: 2px;
3378
+ outline: 0.125rem solid var(--vidply-primary);
3379
+ outline-offset: 0.125rem;
3360
3380
  }
3361
3381
 
3362
3382
  /* Sign Language Header */
3363
3383
  .vidply-sign-language-header {
3364
3384
  align-items: center;
3365
3385
  background: #282828;
3366
- border-bottom: 1px solid var(--vidply-border-light);
3386
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
3367
3387
  border-radius: var(--vidply-radius-lg) var(--vidply-radius-lg) 0 0;
3368
3388
  cursor: move;
3369
3389
  display: flex;
@@ -3376,15 +3396,15 @@
3376
3396
 
3377
3397
  .vidply-sign-language-header:focus,
3378
3398
  .vidply-sign-language-header:focus-visible {
3379
- box-shadow: 0 0 0 4px rgb(91 144 255 / 35%);
3380
- outline: 3px solid var(--vidply-primary-light);
3381
- outline-offset: 2px;
3399
+ box-shadow: 0 0 0 0.25rem rgb(91 144 255 / 35%);
3400
+ outline: 0.1875rem solid var(--vidply-primary-light);
3401
+ outline-offset: 0.125rem;
3382
3402
  }
3383
3403
 
3384
3404
  .vidply-sign-language-header-left {
3385
3405
  align-items: flex-start; /* Changed from center to align items at top */
3386
3406
  display: flex;
3387
- gap: 16px;
3407
+ gap: 1rem;
3388
3408
  position: relative; /* Needed for menu positioning */
3389
3409
  }
3390
3410
 
@@ -3393,29 +3413,29 @@
3393
3413
  align-self: center; /* Center this wrapper vertically in header */
3394
3414
  display: flex;
3395
3415
  flex-direction: row; /* Horizontal layout: label left of select */
3396
- gap: 8px;
3416
+ gap: 0.5rem;
3397
3417
  }
3398
3418
 
3399
3419
  .vidply-sign-language-label {
3400
3420
  /* Visible label for voice input accessibility */
3401
3421
  color: var(--vidply-white);
3402
- font-size: 12px;
3422
+ font-size: 0.75rem;
3403
3423
  font-weight: 500;
3404
3424
  white-space: nowrap;
3405
3425
  }
3406
3426
 
3407
3427
  .vidply-sign-language-select {
3408
3428
  background: var(--vidply-bg-menu);
3409
- border: 1px solid var(--vidply-border);
3410
- border-radius: 4px;
3429
+ border: 0.0625rem solid var(--vidply-border);
3430
+ border-radius: 0.25rem;
3411
3431
  color: var(--vidply-text);
3412
- font-size: 14px;
3413
- padding: 4px 8px;
3432
+ font-size: 0.875rem;
3433
+ padding: 0.25rem 0.5rem;
3414
3434
  }
3415
3435
 
3416
3436
  .vidply-sign-language-select:focus {
3417
3437
  outline: var(--vidply-focus-outline);
3418
- outline-offset: 2px;
3438
+ outline-offset: 0.125rem;
3419
3439
  }
3420
3440
 
3421
3441
  /* Sign Language Settings Button */
@@ -3442,7 +3462,7 @@
3442
3462
 
3443
3463
  .vidply-sign-language-settings:focus {
3444
3464
  outline: var(--vidply-focus-outline-white);
3445
- outline-offset: 2px;
3465
+ outline-offset: 0.125rem;
3446
3466
  }
3447
3467
 
3448
3468
  .vidply-sign-language-settings .vidply-icon {
@@ -3453,20 +3473,20 @@
3453
3473
  /* Sign Language Settings Menu */
3454
3474
  .vidply-sign-language-settings-menu {
3455
3475
  background: var(--vidply-bg-menu);
3456
- border: 1px solid var(--vidply-border);
3476
+ border: 0.0625rem solid var(--vidply-border);
3457
3477
  border-radius: var(--vidply-radius-md);
3458
3478
  box-shadow: var(--vidply-shadow-lg);
3459
3479
  display: none;
3460
- min-width: 240px;
3480
+ min-width: 15rem;
3461
3481
  padding: var(--vidply-gap-sm);
3462
3482
  position: absolute;
3463
3483
  z-index: 100;
3464
3484
  }
3465
3485
 
3466
3486
  .vidply-sign-language-settings-menu::after {
3467
- border-bottom: 6px solid var(--vidply-bg-menu);
3468
- border-left: 6px solid transparent;
3469
- border-right: 6px solid transparent;
3487
+ border-bottom: 0.375rem solid var(--vidply-bg-menu);
3488
+ border-left: 0.375rem solid transparent;
3489
+ border-right: 0.375rem solid transparent;
3470
3490
  bottom: 100%;
3471
3491
  content: '';
3472
3492
  height: 0;
@@ -3477,7 +3497,7 @@
3477
3497
 
3478
3498
  .vidply-sign-language-settings-menu.vidply-menu-above::after {
3479
3499
  border-bottom: none;
3480
- border-top: 6px solid var(--vidply-bg-menu);
3500
+ border-top: 0.375rem solid var(--vidply-bg-menu);
3481
3501
  bottom: auto;
3482
3502
  top: 100%;
3483
3503
  }
@@ -3493,7 +3513,7 @@
3493
3513
  display: flex;
3494
3514
  font-size: var(--vidply-font-base);
3495
3515
  gap: var(--vidply-gap-md);
3496
- padding: var(--vidply-padding-md) 10px;
3516
+ padding: var(--vidply-padding-md) 0.625rem;
3497
3517
  text-align: left;
3498
3518
  transition: var(--vidply-transition-normal);
3499
3519
  width: 100%;
@@ -3535,12 +3555,12 @@
3535
3555
  color: var(--vidply-white);
3536
3556
  font-size: var(--vidply-font-lg);
3537
3557
  font-weight: 600;
3538
- height: 1px;
3539
- left: -10000px;
3558
+ height: 0.0625rem;
3559
+ left: -625rem;
3540
3560
  margin: 0;
3541
3561
  overflow: hidden;
3542
3562
  position: absolute;
3543
- width: 1px;
3563
+ width: 0.0625rem;
3544
3564
  }
3545
3565
 
3546
3566
  .vidply-sign-language-close {
@@ -3565,7 +3585,7 @@
3565
3585
 
3566
3586
  .vidply-sign-language-close:focus {
3567
3587
  outline: var(--vidply-focus-outline-white);
3568
- outline-offset: 2px;
3588
+ outline-offset: 0.125rem;
3569
3589
  }
3570
3590
 
3571
3591
  .vidply-sign-language-close .vidply-icon {
@@ -3576,10 +3596,10 @@
3576
3596
  /* Sign Language Video */
3577
3597
  .vidply-sign-language-video {
3578
3598
  background: var(--vidply-black);
3579
- border: 2px solid var(--vidply-white-30);
3580
- border-radius: 0 0 8px 8px;
3599
+ border: 0.125rem solid var(--vidply-white-30);
3600
+ border-radius: 0 0 0.5rem 0.5rem;
3581
3601
  border-top: none;
3582
- box-shadow: 0 4px 12px var(--vidply-black-60);
3602
+ box-shadow: 0 0.25rem 0.75rem var(--vidply-black-60);
3583
3603
  cursor: default;
3584
3604
  display: block;
3585
3605
  height: auto;
@@ -3598,67 +3618,67 @@
3598
3618
  .vidply-sign-resize-nw,
3599
3619
  .vidply-sign-resize-se,
3600
3620
  .vidply-sign-resize-sw {
3601
- height: 16px;
3602
- width: 16px;
3621
+ height: 1rem;
3622
+ width: 1rem;
3603
3623
  }
3604
3624
 
3605
3625
  .vidply-sign-resize-n,
3606
3626
  .vidply-sign-resize-s {
3607
3627
  cursor: ns-resize;
3608
- height: 8px;
3609
- left: 16px;
3610
- right: 16px;
3628
+ height: 0.5rem;
3629
+ left: 1rem;
3630
+ right: 1rem;
3611
3631
  }
3612
3632
 
3613
3633
  .vidply-sign-resize-e,
3614
3634
  .vidply-sign-resize-w {
3615
- bottom: 16px;
3635
+ bottom: 1rem;
3616
3636
  cursor: ew-resize;
3617
- top: 16px;
3618
- width: 8px;
3637
+ top: 1rem;
3638
+ width: 0.5rem;
3619
3639
  }
3620
3640
 
3621
- .vidply-sign-resize-n { top: -4px; }
3622
- .vidply-sign-resize-s { bottom: -4px; }
3623
- .vidply-sign-resize-e { right: -4px; }
3624
- .vidply-sign-resize-w { left: -4px; }
3641
+ .vidply-sign-resize-n { top: -0.25rem; }
3642
+ .vidply-sign-resize-s { bottom: -0.25rem; }
3643
+ .vidply-sign-resize-e { right: -0.25rem; }
3644
+ .vidply-sign-resize-w { left: -0.25rem; }
3625
3645
 
3626
3646
  .vidply-sign-resize-ne {
3627
3647
  cursor: nesw-resize;
3628
- right: -8px;
3629
- top: -8px;
3648
+ right: -0.5rem;
3649
+ top: -0.5rem;
3630
3650
  }
3631
3651
 
3632
3652
  .vidply-sign-resize-nw {
3633
3653
  cursor: nwse-resize;
3634
- left: -8px;
3635
- top: -8px;
3654
+ left: -0.5rem;
3655
+ top: -0.5rem;
3636
3656
  }
3637
3657
 
3638
3658
  .vidply-sign-resize-se {
3639
- bottom: -8px;
3659
+ bottom: -0.5rem;
3640
3660
  cursor: nwse-resize;
3641
- right: -8px;
3661
+ right: -0.5rem;
3642
3662
  }
3643
3663
 
3644
3664
  .vidply-sign-resize-sw {
3645
- bottom: -8px;
3665
+ bottom: -0.5rem;
3646
3666
  cursor: nesw-resize;
3647
- left: -8px;
3667
+ left: -0.5rem;
3648
3668
  }
3649
3669
 
3650
3670
  .vidply-sign-resizable .vidply-sign-resize-handle::after {
3651
3671
  background: var(--vidply-primary-light);
3652
3672
  border-radius: 50%;
3653
3673
  content: '';
3654
- height: 6px;
3674
+ height: 0.375rem;
3655
3675
  left: 50%;
3656
3676
  opacity: 0;
3657
3677
  position: absolute;
3658
3678
  top: 50%;
3659
3679
  transform: translate(-50%, -50%);
3660
3680
  transition: opacity 0.2s ease;
3661
- width: 6px;
3681
+ width: 0.375rem;
3662
3682
  }
3663
3683
 
3664
3684
  .vidply-sign-resizable:hover .vidply-sign-resize-handle::after {
@@ -3684,36 +3704,36 @@
3684
3704
 
3685
3705
  /* Move Mode */
3686
3706
  .vidply-sign-move-mode {
3687
- box-shadow: 0 0 0 2px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
3707
+ box-shadow: 0 0 0 0.125rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
3688
3708
  }
3689
3709
 
3690
3710
  /* Resizing State */
3691
3711
  .vidply-sign-resizing {
3692
- box-shadow: 0 0 0 2px var(--vidply-primary-light), 0 10px 40px var(--vidply-black-60);
3712
+ box-shadow: 0 0 0 0.125rem var(--vidply-primary-light), 0 0.625rem 2.5rem var(--vidply-black-60);
3693
3713
  transition: none !important;
3694
3714
  }
3695
3715
 
3696
3716
  /* Keyboard Drag/Resize Modes */
3697
3717
  .vidply-sign-keyboard-drag,
3698
3718
  .vidply-sign-keyboard-resize {
3699
- box-shadow: 0 0 0 3px var(--vidply-primary), 0 4px 12px var(--vidply-black-60);
3719
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary), 0 0.25rem 0.75rem var(--vidply-black-60);
3700
3720
  }
3701
3721
 
3702
3722
  .vidply-sign-keyboard-drag::after,
3703
3723
  .vidply-sign-keyboard-resize::after {
3704
3724
  align-items: center;
3705
3725
  background: var(--vidply-primary);
3706
- border-radius: 4px;
3726
+ border-radius: 0.25rem;
3707
3727
  color: var(--vidply-white);
3708
3728
  display: flex;
3709
- font-size: 12px;
3729
+ font-size: 0.75rem;
3710
3730
  font-weight: 600;
3711
3731
  justify-content: center;
3712
3732
  left: 50%;
3713
- padding: 4px 8px;
3733
+ padding: 0.25rem 0.5rem;
3714
3734
  pointer-events: none;
3715
3735
  position: absolute;
3716
- top: -28px;
3736
+ top: -1.75rem;
3717
3737
  transform: translateX(-50%);
3718
3738
  white-space: nowrap;
3719
3739
  z-index: 10;
@@ -3729,64 +3749,68 @@
3729
3749
 
3730
3750
  /* Sign Language Video Positions */
3731
3751
  .vidply-sign-position-bottom-right {
3732
- bottom: 95px; /* Above controls */
3733
- right: 16px;
3752
+ bottom: 5.9375rem; /* Above controls */
3753
+ right: 1rem;
3734
3754
  }
3735
3755
 
3736
3756
  .vidply-sign-position-bottom-left {
3737
- bottom: 95px; /* Above controls */
3738
- left: 16px;
3757
+ bottom: 5.9375rem; /* Above controls */
3758
+ left: 1rem;
3739
3759
  }
3740
3760
 
3741
3761
  .vidply-sign-position-top-right {
3742
- right: 16px;
3743
- top: 16px;
3762
+ right: 1rem;
3763
+ top: 1rem;
3744
3764
  }
3745
3765
 
3746
3766
  .vidply-sign-position-top-left {
3747
- left: 16px;
3748
- top: 16px;
3767
+ left: 1rem;
3768
+ top: 1rem;
3749
3769
  }
3750
3770
 
3751
3771
  /* Responsive Sign Language Video */
3752
- @media (width < 768px) {
3772
+ @media (width < 48rem) {
3753
3773
  .vidply-sign-language-wrapper {
3754
- min-width: 120px;
3774
+ min-width: 7.5rem;
3755
3775
  width: 35%;
3756
3776
  }
3757
3777
 
3758
3778
  .vidply-sign-position-bottom-right,
3759
3779
  .vidply-sign-position-bottom-left {
3760
- bottom: 126px !important; /* Adjust for smaller controls */
3780
+ bottom: 7.875rem !important; /* Adjust for smaller controls */
3761
3781
  }
3762
3782
  }
3763
3783
 
3764
3784
  /* Responsive Adjustments */
3765
- @media (width < 768px) {
3785
+ @media (width < 48rem) {
3766
3786
  .vidply-playlist-thumbnail {
3767
- height: 34px;
3768
- width: 60px;
3787
+ height: 2.125rem;
3788
+ width: 3.75rem;
3769
3789
  }
3770
3790
 
3771
3791
  .vidply-playlist-item {
3772
- gap: 10px;
3773
- padding: 10px 12px;
3792
+ gap: 0.625rem;
3793
+ padding: 0.625rem 0.75rem;
3774
3794
  }
3775
3795
 
3796
+ .vidply-track-artwork {
3797
+ aspect-ratio: 16 / 3;
3798
+ }
3799
+
3776
3800
  .vidply-track-info {
3777
- padding: 12px 16px;
3801
+ padding: 0.75rem 1rem;
3778
3802
  }
3779
3803
 
3780
3804
  .vidply-track-title {
3781
- font-size: 16px;
3805
+ font-size: 1rem;
3782
3806
  }
3783
3807
 
3784
3808
  /* Mobile fullscreen playlist - horizontal scrolling directly above controls */
3785
3809
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
3786
3810
  .vidply-player:fullscreen .vidply-playlist-panel {
3787
- bottom: 100px; /* Directly above controls with extra space */
3811
+ bottom: 6.25rem; /* Directly above controls with extra space */
3788
3812
  max-height: 35vh; /* Compact height */
3789
- padding: 12px 0; /* Vertical padding only */
3813
+ padding: 0.75rem 0; /* Vertical padding only */
3790
3814
  overflow-y: hidden; /* No vertical scrolling */
3791
3815
  overflow-x: auto; /* Horizontal scrolling */
3792
3816
  position: absolute !important; /* Force absolute over video */
@@ -3799,8 +3823,8 @@
3799
3823
  .vidply-player:fullscreen .vidply-playlist-list {
3800
3824
  flex-direction: row; /* Items side by side */
3801
3825
  flex-wrap: nowrap; /* Never wrap */
3802
- gap: 8px;
3803
- padding: 0 12px;
3826
+ gap: 0.5rem;
3827
+ padding: 0 0.75rem;
3804
3828
  -webkit-overflow-scrolling: touch;
3805
3829
  scroll-behavior: smooth;
3806
3830
  touch-action: pan-x; /* Ensure horizontal swipe gestures work */
@@ -3809,9 +3833,9 @@
3809
3833
  /* Mobile playlist items - only show thumbnails */
3810
3834
  .vidply-player.vidply-fullscreen .vidply-playlist-item,
3811
3835
  .vidply-player:fullscreen .vidply-playlist-item {
3812
- width: 120px; /* Smaller width for thumbnail-only */
3813
- min-width: 120px;
3814
- max-width: 120px;
3836
+ width: 7.5rem; /* Smaller width for thumbnail-only */
3837
+ min-width: 7.5rem;
3838
+ max-width: 7.5rem;
3815
3839
  flex-shrink: 0; /* Don't shrink */
3816
3840
  scroll-snap-align: start;
3817
3841
  }
@@ -3825,10 +3849,10 @@
3825
3849
 
3826
3850
  .vidply-player.vidply-fullscreen .vidply-playlist-thumbnail,
3827
3851
  .vidply-player:fullscreen .vidply-playlist-thumbnail {
3828
- height: 90px; /* Square-ish thumbnail */
3852
+ height: 5.625rem; /* Square-ish thumbnail */
3829
3853
  width: 100%; /* Full width of card */
3830
3854
  flex-shrink: 0;
3831
- border-radius: 8px; /* Fully rounded for thumbnail-only */
3855
+ border-radius: 0.5rem; /* Fully rounded for thumbnail-only */
3832
3856
  }
3833
3857
 
3834
3858
  /* Hide text info on mobile - show only thumbnails */
@@ -3842,28 +3866,28 @@
3842
3866
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-info {
3843
3867
  display: flex;
3844
3868
  flex-direction: column;
3845
- padding: 8px;
3869
+ padding: 0.5rem;
3846
3870
  justify-content: center;
3847
3871
  align-items: center;
3848
3872
  text-align: center;
3849
- height: 90px;
3873
+ height: 5.625rem;
3850
3874
  }
3851
3875
 
3852
3876
  .vidply-player.vidply-fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-title,
3853
3877
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-title {
3854
- font-size: 11px;
3878
+ font-size: 0.6875rem;
3855
3879
  -webkit-line-clamp: 3;
3856
3880
  }
3857
3881
 
3858
3882
  .vidply-player.vidply-fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-artist,
3859
3883
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-artist {
3860
- font-size: 9px;
3884
+ font-size: 0.5625rem;
3861
3885
  }
3862
3886
 
3863
3887
  .vidply-player.vidply-fullscreen .vidply-playlist-header,
3864
3888
  .vidply-player:fullscreen .vidply-playlist-header {
3865
- padding: 0 12px 8px;
3866
- font-size: 11px;
3889
+ padding: 0 0.75rem 0.5rem;
3890
+ font-size: 0.6875rem;
3867
3891
  flex-shrink: 0;
3868
3892
  }
3869
3893
 
@@ -3871,9 +3895,9 @@
3871
3895
  .vidply-transcript-window {
3872
3896
  border: none;
3873
3897
  border-radius: 0;
3874
- border-top: 1px solid var(--vidply-border-light);
3898
+ border-top: 0.0625rem solid var(--vidply-border-light);
3875
3899
  box-shadow: none;
3876
- min-width: 300px;
3900
+ min-width: 18.75rem;
3877
3901
  order: 3; /* After controls (which are order: 2) */
3878
3902
  position: relative;
3879
3903
  width: 100%;
@@ -3882,11 +3906,11 @@
3882
3906
 
3883
3907
  .vidply-transcript-header {
3884
3908
  border-radius: 0;
3885
- padding: 12px 16px;
3909
+ padding: 0.75rem 1rem;
3886
3910
  }
3887
3911
 
3888
3912
  .vidply-transcript-content {
3889
- max-height: 400px;
3913
+ max-height: 25rem;
3890
3914
  }
3891
3915
 
3892
3916
  /* Don't show dragging cursor on mobile (except in fullscreen) */