vidply 1.0.21 → 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,6 +2104,7 @@
2111
2104
  ============================================================================ */
2112
2105
 
2113
2106
  /* Track Info Display (below video, above playlist) */
2107
+
2114
2108
  /* Track Artwork - Displays album art/poster above audio player */
2115
2109
  .vidply-track-artwork {
2116
2110
  aspect-ratio: 16 / 3;
@@ -2118,7 +2112,7 @@
2118
2112
  background-position: center;
2119
2113
  background-repeat: no-repeat;
2120
2114
  background-size: cover;
2121
- border-bottom: 1px solid var(--vidply-border-light);
2115
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2122
2116
  order: 1; /* Before video-wrapper */
2123
2117
  overflow: hidden;
2124
2118
  position: relative;
@@ -2140,38 +2134,37 @@
2140
2134
 
2141
2135
  .vidply-track-info {
2142
2136
  background: var(--vidply-bg-track-info);
2143
- border-bottom: 1px solid var(--vidply-border-light);
2137
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2144
2138
  order: 2; /* After video-wrapper */
2145
- padding: 16px 20px;
2139
+ padding: 1rem 1.25rem;
2146
2140
  }
2147
2141
 
2148
2142
  .vidply-track-number {
2149
2143
  color: var(--vidply-text-muted);
2150
- font-size: 12px;
2151
- letter-spacing: 0.5px;
2152
- margin-bottom: 4px;
2144
+ font-size: 0.75rem;
2145
+ letter-spacing: 0.0313rem;
2146
+ margin-bottom: 0.25rem;
2153
2147
  text-transform: uppercase;
2154
2148
  }
2155
2149
 
2156
2150
  .vidply-track-title {
2157
2151
  color: var(--vidply-white);
2158
- font-size: 18px;
2152
+ font-size: 1.125rem;
2159
2153
  font-weight: 600;
2160
- margin-bottom: 4px;
2154
+ margin-bottom: 0.25rem;
2161
2155
  }
2162
2156
 
2163
2157
  .vidply-track-artist {
2164
2158
  color: var(--vidply-white-80);
2165
- font-size: 14px;
2159
+ font-size: 0.875rem;
2166
2160
  }
2167
2161
 
2168
2162
  /* Playlist Panel */
2169
2163
  .vidply-playlist-panel {
2170
2164
  background: var(--vidply-bg-playlist);
2171
- border-top: 1px solid var(--vidply-border-light);
2172
- max-height: 400px;
2165
+ border-top: 0.0625rem solid var(--vidply-border-light);
2166
+ max-height: 25rem;
2173
2167
  transform: translate3d(0, 0, 0);
2174
- -webkit-transform: translate3d(0, 0, 0);
2175
2168
  order: 3; /* After track info */
2176
2169
  -webkit-overflow-scrolling: touch; /* iOS momentum scrolling */
2177
2170
  overflow-y: auto;
@@ -2185,10 +2178,10 @@
2185
2178
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
2186
2179
  .vidply-player:fullscreen .vidply-playlist-panel {
2187
2180
  background: linear-gradient(to top, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 90%) 100%);
2188
- backdrop-filter: blur(10px);
2181
+ backdrop-filter: blur(0.625rem);
2189
2182
  border: none;
2190
- border-top: 1px solid var(--vidply-border);
2191
- bottom: 80px; /* Directly above controls */
2183
+ border-top: 0.0625rem solid var(--vidply-border);
2184
+ bottom: 5rem; /* Directly above controls */
2192
2185
  left: 0;
2193
2186
  max-height: 50vh; /* Take up to half the screen */
2194
2187
  opacity: 0;
@@ -2198,7 +2191,7 @@
2198
2191
  position: absolute !important; /* Force absolute positioning over video */
2199
2192
  right: 0;
2200
2193
  touch-action: pan-y; /* Allow vertical scrolling on touch devices */
2201
- transform: translateY(20px);
2194
+ transform: translateY(1.25rem);
2202
2195
  z-index: var(--vidply-z-playlist); /* Above video but below controls */
2203
2196
  }
2204
2197
 
@@ -2226,8 +2219,8 @@
2226
2219
  .vidply-player:fullscreen .vidply-playlist-list {
2227
2220
  display: flex;
2228
2221
  flex-direction: row;
2229
- gap: 12px;
2230
- padding: 8px 16px;
2222
+ gap: 0.75rem;
2223
+ padding: 0.5rem 1rem;
2231
2224
  overflow-x: auto;
2232
2225
  overflow-y: hidden;
2233
2226
  scroll-snap-type: x mandatory;
@@ -2238,17 +2231,17 @@
2238
2231
  .vidply-player.vidply-fullscreen .vidply-playlist-header,
2239
2232
  .vidply-player:fullscreen .vidply-playlist-header {
2240
2233
  background: var(--vidply-black-50);
2241
- border-bottom: 1px solid var(--vidply-border);
2242
- font-size: 12px;
2243
- padding: 10px 16px;
2234
+ border-bottom: 0.0625rem solid var(--vidply-border);
2235
+ font-size: 0.75rem;
2236
+ padding: 0.625rem 1rem;
2244
2237
  }
2245
2238
 
2246
2239
  /* Fullscreen playlist items - horizontal card style */
2247
2240
  .vidply-player.vidply-fullscreen .vidply-playlist-item,
2248
2241
  .vidply-player:fullscreen .vidply-playlist-item {
2249
2242
  flex: 0 0 auto;
2250
- min-width: 280px;
2251
- max-width: 320px;
2243
+ min-width: 17.5rem;
2244
+ max-width: 20rem;
2252
2245
  scroll-snap-align: start;
2253
2246
  }
2254
2247
 
@@ -2256,10 +2249,10 @@
2256
2249
  .vidply-player:fullscreen .vidply-playlist-item-button {
2257
2250
  flex-direction: column;
2258
2251
  align-items: stretch;
2259
- gap: 8px;
2252
+ gap: 0.5rem;
2260
2253
  padding: 0;
2261
2254
  background: var(--vidply-black-40);
2262
- border-radius: 8px;
2255
+ border-radius: 0.5rem;
2263
2256
  overflow: hidden;
2264
2257
  transition: all 0.2s ease;
2265
2258
  }
@@ -2267,27 +2260,27 @@
2267
2260
  .vidply-player.vidply-fullscreen .vidply-playlist-item-button:hover,
2268
2261
  .vidply-player:fullscreen .vidply-playlist-item-button:hover {
2269
2262
  background: var(--vidply-white-10);
2270
- transform: translateY(-4px);
2271
- 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);
2272
2265
  }
2273
2266
 
2274
2267
  .vidply-player.vidply-fullscreen .vidply-playlist-thumbnail,
2275
2268
  .vidply-player:fullscreen .vidply-playlist-thumbnail {
2276
2269
  width: 100%;
2277
- height: 160px;
2270
+ height: 10rem;
2278
2271
  border-radius: 0;
2279
2272
  }
2280
2273
 
2281
2274
  .vidply-player.vidply-fullscreen .vidply-playlist-item-info,
2282
2275
  .vidply-player:fullscreen .vidply-playlist-item-info {
2283
- padding: 12px;
2276
+ padding: 0.75rem;
2284
2277
  }
2285
2278
 
2286
2279
  .vidply-player.vidply-fullscreen .vidply-playlist-item-title,
2287
2280
  .vidply-player:fullscreen .vidply-playlist-item-title {
2288
- font-size: 14px;
2281
+ font-size: 0.875rem;
2289
2282
  font-weight: 600;
2290
- margin-bottom: 4px;
2283
+ margin-bottom: 0.25rem;
2291
2284
  white-space: normal;
2292
2285
  overflow: hidden;
2293
2286
  text-overflow: ellipsis;
@@ -2298,7 +2291,7 @@
2298
2291
 
2299
2292
  .vidply-player.vidply-fullscreen .vidply-playlist-item-artist,
2300
2293
  .vidply-player:fullscreen .vidply-playlist-item-artist {
2301
- font-size: 12px;
2294
+ font-size: 0.75rem;
2302
2295
  opacity: 0.8;
2303
2296
  }
2304
2297
 
@@ -2310,8 +2303,8 @@
2310
2303
  /* Fullscreen playlist scrollbar styling - horizontal */
2311
2304
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar,
2312
2305
  .vidply-player:fullscreen .vidply-playlist-panel::-webkit-scrollbar {
2313
- height: 8px;
2314
- width: 10px;
2306
+ height: 0.5rem;
2307
+ width: 0.625rem;
2315
2308
  }
2316
2309
 
2317
2310
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-track,
@@ -2322,7 +2315,7 @@
2322
2315
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb,
2323
2316
  .vidply-player:fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb {
2324
2317
  background: var(--vidply-white-30);
2325
- border-radius: 5px;
2318
+ border-radius: 0.3125rem;
2326
2319
  }
2327
2320
 
2328
2321
  .vidply-player.vidply-fullscreen .vidply-playlist-panel::-webkit-scrollbar-thumb:hover,
@@ -2333,7 +2326,7 @@
2333
2326
  /* Horizontal scrollbar for playlist list */
2334
2327
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar,
2335
2328
  .vidply-player:fullscreen .vidply-playlist-list::-webkit-scrollbar {
2336
- height: 6px;
2329
+ height: 0.375rem;
2337
2330
  }
2338
2331
 
2339
2332
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-track,
@@ -2344,7 +2337,7 @@
2344
2337
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb,
2345
2338
  .vidply-player:fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb {
2346
2339
  background: var(--vidply-white-20);
2347
- border-radius: 3px;
2340
+ border-radius: 0.1875rem;
2348
2341
  }
2349
2342
 
2350
2343
  .vidply-player.vidply-fullscreen .vidply-playlist-list::-webkit-scrollbar-thumb:hover,
@@ -2361,7 +2354,7 @@
2361
2354
  /* Active item styling in fullscreen */
2362
2355
  .vidply-player.vidply-fullscreen .vidply-playlist-item-active .vidply-playlist-item-button,
2363
2356
  .vidply-player:fullscreen .vidply-playlist-item-active .vidply-playlist-item-button {
2364
- border: 2px solid var(--vidply-primary-light);
2357
+ border: 0.125rem solid var(--vidply-primary-light);
2365
2358
  background: var(--vidply-primary-15);
2366
2359
  }
2367
2360
 
@@ -2372,12 +2365,12 @@
2372
2365
 
2373
2366
  .vidply-playlist-header {
2374
2367
  background: var(--vidply-bg-playlist-header);
2375
- border-bottom: 1px solid var(--vidply-border-light);
2368
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2376
2369
  color: var(--vidply-white-90);
2377
- font-size: 13px;
2370
+ font-size: 0.8125rem;
2378
2371
  font-weight: 600;
2379
- letter-spacing: 0.5px;
2380
- padding: 12px 16px;
2372
+ letter-spacing: 0.0313rem;
2373
+ padding: 0.75rem 1rem;
2381
2374
  position: sticky;
2382
2375
  text-transform: uppercase;
2383
2376
  top: 0;
@@ -2387,12 +2380,12 @@
2387
2380
  .vidply-playlist-list {
2388
2381
  list-style: none;
2389
2382
  margin: 0;
2390
- padding: 4px 0;
2383
+ padding: 0.25rem 0;
2391
2384
  }
2392
2385
 
2393
2386
  /* Playlist Items */
2394
2387
  .vidply-playlist-item {
2395
- border-left: 3px solid transparent;
2388
+ border-left: 0.1875rem solid transparent;
2396
2389
  position: relative;
2397
2390
  }
2398
2391
 
@@ -2405,8 +2398,8 @@
2405
2398
  cursor: pointer;
2406
2399
  display: flex;
2407
2400
  font: inherit;
2408
- gap: 12px;
2409
- padding: 12px 16px;
2401
+ gap: 0.75rem;
2402
+ padding: 0.75rem 1rem;
2410
2403
  text-align: left;
2411
2404
  transition: var(--vidply-transition-default);
2412
2405
  width: 100%;
@@ -2428,7 +2421,7 @@
2428
2421
  .vidply-playlist-item-button:focus-visible {
2429
2422
  background: var(--vidply-white-08);
2430
2423
  outline: var(--vidply-focus-outline-white);
2431
- outline-offset: -2px;
2424
+ outline-offset: -0.125rem;
2432
2425
  z-index: 1;
2433
2426
  }
2434
2427
 
@@ -2443,19 +2436,19 @@
2443
2436
  background: var(--vidply-primary-20);
2444
2437
  border-left-color: var(--vidply-primary);
2445
2438
  outline: var(--vidply-focus-outline-white);
2446
- outline-offset: -2px;
2439
+ outline-offset: -0.125rem;
2447
2440
  z-index: 2;
2448
2441
  }
2449
2442
 
2450
2443
  /* Show focus ring on listbox when focused */
2451
2444
  .vidply-playlist-list:focus {
2452
- outline: 2px solid var(--vidply-primary);
2453
- outline-offset: 2px;
2445
+ outline: 0.125rem solid var(--vidply-primary);
2446
+ outline-offset: 0.125rem;
2454
2447
  }
2455
2448
 
2456
2449
  .vidply-playlist-list:focus-visible {
2457
- outline: 2px solid var(--vidply-primary);
2458
- outline-offset: 2px;
2450
+ outline: 0.125rem solid var(--vidply-primary);
2451
+ outline-offset: 0.125rem;
2459
2452
  }
2460
2453
 
2461
2454
  .vidply-playlist-item-active {
@@ -2478,7 +2471,7 @@
2478
2471
  .vidply-playlist-item-active .vidply-playlist-item-button:focus-visible {
2479
2472
  background: var(--vidply-primary-20);
2480
2473
  outline: var(--vidply-focus-outline-white);
2481
- outline-offset: -2px;
2474
+ outline-offset: -0.125rem;
2482
2475
  }
2483
2476
 
2484
2477
  /* Playlist Thumbnail */
@@ -2487,20 +2480,20 @@
2487
2480
  background-color: var(--vidply-white-10);
2488
2481
  background-position: center;
2489
2482
  background-size: cover;
2490
- border-radius: 4px;
2483
+ border-radius: 0.25rem;
2491
2484
  display: flex;
2492
2485
  flex-shrink: 0;
2493
- height: 45px;
2486
+ height: 2.8125rem;
2494
2487
  justify-content: center;
2495
2488
  overflow: hidden;
2496
- width: 80px;
2489
+ width: 5rem;
2497
2490
  }
2498
2491
 
2499
2492
  .vidply-playlist-thumbnail-icon {
2500
2493
  color: var(--vidply-text-subtle);
2501
- height: 32px;
2494
+ height: 2rem;
2502
2495
  transition: var(--vidply-transition-default);
2503
- width: 32px;
2496
+ width: 2rem;
2504
2497
  }
2505
2498
 
2506
2499
  .vidply-playlist-item-button:hover .vidply-playlist-thumbnail-icon {
@@ -2522,9 +2515,9 @@
2522
2515
  .vidply-playlist-item-title {
2523
2516
  color: var(--vidply-white);
2524
2517
  display: block;
2525
- font-size: 14px;
2518
+ font-size: 0.875rem;
2526
2519
  font-weight: 500;
2527
- margin-bottom: 4px;
2520
+ margin-bottom: 0.25rem;
2528
2521
  overflow: hidden;
2529
2522
  text-overflow: ellipsis;
2530
2523
  white-space: nowrap;
@@ -2537,7 +2530,7 @@
2537
2530
  .vidply-playlist-item-artist {
2538
2531
  color: var(--vidply-text-disabled);
2539
2532
  display: block;
2540
- font-size: 12px;
2533
+ font-size: 0.75rem;
2541
2534
  overflow: hidden;
2542
2535
  text-overflow: ellipsis;
2543
2536
  white-space: nowrap;
@@ -2546,10 +2539,10 @@
2546
2539
  /* Playlist Item Icon */
2547
2540
  .vidply-playlist-item-icon {
2548
2541
  flex-shrink: 0;
2549
- height: 20px;
2542
+ height: 1.25rem;
2550
2543
  opacity: 0;
2551
2544
  transition: opacity 0.2s ease;
2552
- width: 20px;
2545
+ width: 1.25rem;
2553
2546
  }
2554
2547
 
2555
2548
  .vidply-playlist-item-active .vidply-playlist-item-icon {
@@ -2564,7 +2557,7 @@
2564
2557
  }
2565
2558
 
2566
2559
  .vidply-playlist-panel::-webkit-scrollbar {
2567
- width: 8px;
2560
+ width: 0.5rem;
2568
2561
  }
2569
2562
 
2570
2563
  .vidply-playlist-panel::-webkit-scrollbar-track {
@@ -2573,7 +2566,7 @@
2573
2566
 
2574
2567
  .vidply-playlist-panel::-webkit-scrollbar-thumb {
2575
2568
  background: var(--vidply-scrollbar-thumb);
2576
- border-radius: 4px;
2569
+ border-radius: 0.25rem;
2577
2570
  }
2578
2571
 
2579
2572
  .vidply-playlist-panel::-webkit-scrollbar-thumb:hover {
@@ -2582,7 +2575,7 @@
2582
2575
 
2583
2576
  /* Audio Player with Playlist */
2584
2577
  .vidply-player.vidply-audio.vidply-has-playlist {
2585
- min-height: 200px;
2578
+ min-height: 12.5rem;
2586
2579
  }
2587
2580
 
2588
2581
  .vidply-player.vidply-audio.vidply-has-playlist audio {
@@ -2599,18 +2592,18 @@
2599
2592
 
2600
2593
  /* Transcript Window */
2601
2594
  .vidply-transcript-window {
2602
- backdrop-filter: blur(10px);
2595
+ backdrop-filter: blur(0.625rem);
2603
2596
  background: var(--vidply-bg-transcript);
2604
- border: 1px solid var(--vidply-border);
2605
- border-radius: 8px;
2606
- 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);
2607
2600
  display: none;
2608
2601
  flex-direction: column;
2609
- min-width: 420px;
2602
+ min-width: 26.25rem;
2610
2603
  order: 4; /* After video-wrapper (1), track-info (2), and playlist-panel (3) */
2611
2604
  position: fixed;
2612
2605
  top: 0;
2613
- width: 420px;
2606
+ width: 26.25rem;
2614
2607
  z-index: var(--vidply-z-transcript);
2615
2608
  }
2616
2609
 
@@ -2618,13 +2611,13 @@
2618
2611
 
2619
2612
  /* Minimum height for audio player transcript */
2620
2613
  .vidply-player.vidply-audio .vidply-transcript-window {
2621
- min-height: 200px;
2614
+ min-height: 12.5rem;
2622
2615
  }
2623
2616
 
2624
2617
  .vidply-transcript-header {
2625
2618
  align-items: center;
2626
2619
  background: #282828;
2627
- border-bottom: 1px solid var(--vidply-border-light);
2620
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
2628
2621
  border-radius: var(--vidply-radius-lg) var(--vidply-radius-lg) 0 0;
2629
2622
  cursor: move;
2630
2623
  display: flex;
@@ -2636,21 +2629,21 @@
2636
2629
 
2637
2630
  .vidply-transcript-header:focus,
2638
2631
  .vidply-transcript-header:focus-visible {
2639
- box-shadow: 0 0 0 4px rgb(91 144 255 / 35%);
2640
- outline: 3px solid var(--vidply-primary-light);
2641
- 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;
2642
2635
  }
2643
2636
 
2644
2637
  .vidply-transcript-header h3 {
2645
2638
  color: var(--vidply-white);
2646
2639
  font-size: var(--vidply-font-lg);
2647
2640
  font-weight: 600;
2648
- height: 1px;
2649
- left: -10000px;
2641
+ height: 0.0625rem;
2642
+ left: -625rem;
2650
2643
  margin: 0;
2651
2644
  overflow: hidden;
2652
2645
  position: absolute;
2653
- width: 1px;
2646
+ width: 0.0625rem;
2654
2647
  }
2655
2648
 
2656
2649
  .vidply-transcript-close {
@@ -2675,7 +2668,7 @@
2675
2668
 
2676
2669
  .vidply-transcript-close:focus {
2677
2670
  outline: var(--vidply-focus-outline-white);
2678
- outline-offset: 2px;
2671
+ outline-offset: 0.125rem;
2679
2672
  }
2680
2673
 
2681
2674
  .vidply-transcript-close .vidply-icon {
@@ -2689,19 +2682,19 @@
2689
2682
  overflow-y: auto;
2690
2683
 
2691
2684
  /* iOS momentum scrolling */
2692
- padding: 12px 0;
2685
+ padding: 0.75rem 0;
2693
2686
  touch-action: pan-y;
2694
2687
  }
2695
2688
 
2696
2689
  .vidply-transcript-entry {
2697
2690
  background: none;
2698
2691
  border: none;
2699
- border-left: 3px solid transparent;
2692
+ border-left: 0.1875rem solid transparent;
2700
2693
  color: inherit;
2701
2694
  cursor: pointer;
2702
2695
  display: block;
2703
2696
  font: inherit;
2704
- padding: 12px 20px;
2697
+ padding: 0.75rem 1.25rem;
2705
2698
  text-align: left;
2706
2699
  transition: background 0.2s ease;
2707
2700
  width: 100%;
@@ -2722,8 +2715,8 @@
2722
2715
  font-family: 'Courier New', monospace;
2723
2716
  font-size: 100%;
2724
2717
  font-weight: 600;
2725
- margin-bottom: 4px;
2726
- margin-right: 8px;
2718
+ margin-bottom: 0.25rem;
2719
+ margin-right: 0.5rem;
2727
2720
  }
2728
2721
 
2729
2722
  .vidply-transcript-text {
@@ -2745,7 +2738,7 @@
2745
2738
  /* Transcript entry types */
2746
2739
  .vidply-transcript-description {
2747
2740
  background: rgb(100 149 237 / 8%); /* Subtle blue tint for descriptions */
2748
- border-left: 3px solid #8BB3FB;
2741
+ border-left: 0.1875rem solid #8BB3FB;
2749
2742
  }
2750
2743
 
2751
2744
  .vidply-transcript-description .vidply-transcript-text {
@@ -2785,7 +2778,7 @@
2785
2778
  }
2786
2779
 
2787
2780
  .vidply-transcript-content::-webkit-scrollbar {
2788
- width: 8px;
2781
+ width: 0.5rem;
2789
2782
  }
2790
2783
 
2791
2784
  .vidply-transcript-content::-webkit-scrollbar-track {
@@ -2794,7 +2787,7 @@
2794
2787
 
2795
2788
  .vidply-transcript-content::-webkit-scrollbar-thumb {
2796
2789
  background: var(--vidply-scrollbar-thumb);
2797
- border-radius: 4px;
2790
+ border-radius: 0.25rem;
2798
2791
  }
2799
2792
 
2800
2793
  .vidply-transcript-content::-webkit-scrollbar-thumb:hover {
@@ -2805,7 +2798,7 @@
2805
2798
  .vidply-transcript-header-left {
2806
2799
  align-items: flex-start; /* Changed from center to align items at top */
2807
2800
  display: flex;
2808
- gap: 16px;
2801
+ gap: 1rem;
2809
2802
  position: relative;
2810
2803
  }
2811
2804
 
@@ -2819,21 +2812,21 @@
2819
2812
  align-self: center; /* Center checkbox label vertically in header */
2820
2813
  cursor: pointer;
2821
2814
  display: flex;
2822
- gap: 6px;
2815
+ gap: 0.375rem;
2823
2816
  user-select: none;
2824
2817
  white-space: nowrap;
2825
2818
  }
2826
2819
 
2827
2820
  .vidply-transcript-autoscroll-label input[type="checkbox"] {
2828
2821
  cursor: pointer;
2829
- height: 16px;
2822
+ height: 1rem;
2830
2823
  margin: 0;
2831
- width: 16px;
2824
+ width: 1rem;
2832
2825
  }
2833
2826
 
2834
2827
  .vidply-transcript-autoscroll-text {
2835
2828
  color: var(--vidply-text-muted);
2836
- font-size: 13px;
2829
+ font-size: 0.8125rem;
2837
2830
  transition: color 0.2s ease;
2838
2831
  }
2839
2832
 
@@ -2847,32 +2840,32 @@
2847
2840
  align-self: center; /* Center this wrapper vertically in header */
2848
2841
  display: flex;
2849
2842
  flex-direction: row; /* Horizontal layout: label left of select */
2850
- gap: 8px;
2843
+ gap: 0.5rem;
2851
2844
  }
2852
2845
 
2853
2846
  .vidply-transcript-language-label {
2854
2847
  /* Visible label for voice input accessibility */
2855
2848
  color: var(--vidply-text-muted);
2856
2849
  cursor: pointer;
2857
- font-size: 13px;
2850
+ font-size: 0.8125rem;
2858
2851
  font-weight: 400;
2859
- margin-left: 8px;
2852
+ margin-left: 0.5rem;
2860
2853
  white-space: nowrap;
2861
2854
  }
2862
2855
 
2863
2856
  .vidply-transcript-language-select {
2864
2857
  background: var(--vidply-bg-menu);
2865
- border: 1px solid var(--vidply-border);
2866
- border-radius: 4px;
2858
+ border: 0.0625rem solid var(--vidply-border);
2859
+ border-radius: 0.25rem;
2867
2860
  color: var(--vidply-text);
2868
- font-size: 14px;
2869
- max-width: 120px;
2870
- padding: 4px 8px;
2861
+ font-size: 0.875rem;
2862
+ max-width: 7.5rem;
2863
+ padding: 0.25rem 0.5rem;
2871
2864
  }
2872
2865
 
2873
2866
  .vidply-transcript-language-select:focus {
2874
2867
  outline: var(--vidply-focus-outline);
2875
- outline-offset: 2px;
2868
+ outline-offset: 0.125rem;
2876
2869
  }
2877
2870
 
2878
2871
  /* Transcript Settings Button */
@@ -2900,7 +2893,7 @@
2900
2893
 
2901
2894
  .vidply-transcript-settings:focus {
2902
2895
  outline: var(--vidply-focus-outline-white);
2903
- outline-offset: 2px;
2896
+ outline-offset: 0.125rem;
2904
2897
  }
2905
2898
 
2906
2899
  .vidply-transcript-settings .vidply-icon {
@@ -2911,31 +2904,31 @@
2911
2904
  /* Transcript Settings Menu */
2912
2905
  .vidply-transcript-settings-menu {
2913
2906
  background: var(--vidply-bg-menu);
2914
- border: 1px solid var(--vidply-border);
2907
+ border: 0.0625rem solid var(--vidply-border);
2915
2908
  border-radius: var(--vidply-radius-md);
2916
2909
  box-shadow: var(--vidply-shadow-lg);
2917
2910
  display: none;
2918
- min-width: 240px;
2911
+ min-width: 15rem;
2919
2912
  padding: var(--vidply-gap-sm);
2920
2913
  position: absolute;
2921
2914
  z-index: 100;
2922
2915
  }
2923
2916
 
2924
2917
  .vidply-transcript-settings-menu::after {
2925
- border-bottom: 6px solid var(--vidply-bg-menu);
2926
- border-left: 6px solid transparent;
2927
- 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;
2928
2921
  bottom: 100%;
2929
2922
  content: '';
2930
2923
  height: 0;
2931
- left: 8px;
2924
+ left: 0.5rem;
2932
2925
  position: absolute;
2933
2926
  width: 0;
2934
2927
  }
2935
2928
 
2936
2929
  .vidply-transcript-settings-menu.vidply-menu-above::after {
2937
2930
  border-bottom: none;
2938
- border-top: 6px solid var(--vidply-bg-menu);
2931
+ border-top: 0.375rem solid var(--vidply-bg-menu);
2939
2932
  bottom: auto;
2940
2933
  top: 100%;
2941
2934
  }
@@ -2951,7 +2944,7 @@
2951
2944
  display: flex;
2952
2945
  font-size: var(--vidply-font-base);
2953
2946
  gap: var(--vidply-gap-md);
2954
- padding: var(--vidply-padding-md) 10px;
2947
+ padding: var(--vidply-padding-md) 0.625rem;
2955
2948
  text-align: left;
2956
2949
  transition: var(--vidply-transition-normal);
2957
2950
  width: 100%;
@@ -2967,8 +2960,8 @@
2967
2960
 
2968
2961
  .vidply-transcript-settings-item:focus {
2969
2962
  background: var(--vidply-primary-25);
2970
- outline: 2px solid var(--vidply-primary-light);
2971
- outline-offset: -2px;
2963
+ outline: 0.125rem solid var(--vidply-primary-light);
2964
+ outline-offset: -0.125rem;
2972
2965
  }
2973
2966
 
2974
2967
  .vidply-transcript-settings-item:focus span {
@@ -2989,16 +2982,16 @@
2989
2982
  /* Move Mode Visual Feedback */
2990
2983
  .vidply-transcript-move-mode {
2991
2984
  animation: transcriptPulse 0.5s ease-in-out 2;
2992
- 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);
2993
2986
  }
2994
2987
 
2995
2988
  @keyframes transcriptPulse {
2996
2989
  0%, 100% {
2997
- 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);
2998
2991
  }
2999
2992
 
3000
2993
  50% {
3001
- 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);
3002
2995
  }
3003
2996
  }
3004
2997
 
@@ -3012,67 +3005,67 @@
3012
3005
  .vidply-transcript-resize-nw,
3013
3006
  .vidply-transcript-resize-se,
3014
3007
  .vidply-transcript-resize-sw {
3015
- height: 16px;
3016
- width: 16px;
3008
+ height: 1rem;
3009
+ width: 1rem;
3017
3010
  }
3018
3011
 
3019
3012
  .vidply-transcript-resize-n,
3020
3013
  .vidply-transcript-resize-s {
3021
3014
  cursor: ns-resize;
3022
- height: 8px;
3023
- left: 16px;
3024
- right: 16px;
3015
+ height: 0.5rem;
3016
+ left: 1rem;
3017
+ right: 1rem;
3025
3018
  }
3026
3019
 
3027
3020
  .vidply-transcript-resize-e,
3028
3021
  .vidply-transcript-resize-w {
3029
- bottom: 16px;
3022
+ bottom: 1rem;
3030
3023
  cursor: ew-resize;
3031
- top: 16px;
3032
- width: 8px;
3024
+ top: 1rem;
3025
+ width: 0.5rem;
3033
3026
  }
3034
3027
 
3035
- .vidply-transcript-resize-n { top: -4px; }
3036
- .vidply-transcript-resize-s { bottom: -4px; }
3037
- .vidply-transcript-resize-e { right: -4px; }
3038
- .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; }
3039
3032
 
3040
3033
  .vidply-transcript-resize-ne {
3041
3034
  cursor: nesw-resize;
3042
- right: -8px;
3043
- top: -8px;
3035
+ right: -0.5rem;
3036
+ top: -0.5rem;
3044
3037
  }
3045
3038
 
3046
3039
  .vidply-transcript-resize-nw {
3047
3040
  cursor: nwse-resize;
3048
- left: -8px;
3049
- top: -8px;
3041
+ left: -0.5rem;
3042
+ top: -0.5rem;
3050
3043
  }
3051
3044
 
3052
3045
  .vidply-transcript-resize-se {
3053
- bottom: -8px;
3046
+ bottom: -0.5rem;
3054
3047
  cursor: nwse-resize;
3055
- right: -8px;
3048
+ right: -0.5rem;
3056
3049
  }
3057
3050
 
3058
3051
  .vidply-transcript-resize-sw {
3059
- bottom: -8px;
3052
+ bottom: -0.5rem;
3060
3053
  cursor: nesw-resize;
3061
- left: -8px;
3054
+ left: -0.5rem;
3062
3055
  }
3063
3056
 
3064
3057
  .vidply-transcript-resizable .vidply-transcript-resize-handle::after {
3065
3058
  background: var(--vidply-primary-light);
3066
3059
  border-radius: 50%;
3067
3060
  content: '';
3068
- height: 6px;
3061
+ height: 0.375rem;
3069
3062
  left: 50%;
3070
3063
  opacity: 0;
3071
3064
  position: absolute;
3072
3065
  top: 50%;
3073
3066
  transform: translate(-50%, -50%);
3074
3067
  transition: opacity 0.2s ease;
3075
- width: 6px;
3068
+ width: 0.375rem;
3076
3069
  }
3077
3070
 
3078
3071
  .vidply-transcript-resizable:hover .vidply-transcript-resize-handle::after {
@@ -3085,7 +3078,7 @@
3085
3078
 
3086
3079
  /* Resizing State */
3087
3080
  .vidply-transcript-resizing {
3088
- 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);
3089
3082
  transition: none !important;
3090
3083
  }
3091
3084
 
@@ -3095,17 +3088,17 @@
3095
3088
 
3096
3089
  /* Keyboard Drag Mode */
3097
3090
  .vidply-transcript-keyboard-drag {
3098
- 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);
3099
3092
  }
3100
3093
 
3101
3094
  .vidply-transcript-drag-indicator {
3102
3095
  background: linear-gradient(135deg, var(--vidply-primary) 0%, var(--vidply-primary-light) 100%);
3103
- border-radius: 0 0 6px 6px;
3096
+ border-radius: 0 0 0.375rem 0.375rem;
3104
3097
  color: var(--vidply-white);
3105
- font-size: 12px;
3098
+ font-size: 0.75rem;
3106
3099
  font-weight: 600;
3107
3100
  left: 0;
3108
- padding: 8px 12px;
3101
+ padding: 0.5rem 0.75rem;
3109
3102
  position: absolute;
3110
3103
  right: 0;
3111
3104
  text-align: center;
@@ -3117,11 +3110,11 @@
3117
3110
  .vidply-transcript-move-tooltip {
3118
3111
  animation: fadeInDown 0.3s ease;
3119
3112
  background: var(--vidply-black-90);
3120
- border-radius: 4px;
3113
+ border-radius: 0.25rem;
3121
3114
  color: var(--vidply-white);
3122
- font-size: 12px;
3115
+ font-size: 0.75rem;
3123
3116
  left: 50%;
3124
- padding: 6px 12px;
3117
+ padding: 0.375rem 0.75rem;
3125
3118
  position: absolute;
3126
3119
  text-align: center;
3127
3120
  top: 100%;
@@ -3133,11 +3126,11 @@
3133
3126
  .vidply-transcript-resize-tooltip {
3134
3127
  animation: fadeInDown 0.3s ease;
3135
3128
  background: var(--vidply-primary);
3136
- border-radius: 4px;
3129
+ border-radius: 0.25rem;
3137
3130
  color: var(--vidply-white);
3138
- font-size: 12px;
3131
+ font-size: 0.75rem;
3139
3132
  left: 50%;
3140
- padding: 6px 12px;
3133
+ padding: 0.375rem 0.75rem;
3141
3134
  position: absolute;
3142
3135
  text-align: center;
3143
3136
  top: 100%;
@@ -3149,7 +3142,7 @@
3149
3142
  @keyframes fadeInDown {
3150
3143
  from {
3151
3144
  opacity: 0;
3152
- transform: translateX(-50%) translateY(-10px);
3145
+ transform: translateX(-50%) translateY(-0.625rem);
3153
3146
  }
3154
3147
 
3155
3148
  to {
@@ -3161,15 +3154,15 @@
3161
3154
  /* Transcript Style Dialog - Dropdown Menu Style */
3162
3155
  .vidply-transcript-style-dialog {
3163
3156
  background: var(--vidply-bg-menu);
3164
- border: 1px solid var(--vidply-border);
3165
- border-radius: 8px;
3157
+ border: 0.0625rem solid var(--vidply-border);
3158
+ border-radius: 0.5rem;
3166
3159
  box-shadow: var(--vidply-shadow-lg);
3167
3160
  display: none;
3168
3161
  left: 0;
3169
- max-height: 500px;
3170
- min-width: 280px;
3162
+ max-height: 31.25rem;
3163
+ min-width: 17.5rem;
3171
3164
  overflow-y: auto;
3172
- padding: 12px;
3165
+ padding: 0.75rem;
3173
3166
  position: absolute;
3174
3167
  top: 100%;
3175
3168
  width: auto;
@@ -3180,26 +3173,26 @@
3180
3173
  .vidply-transcript-style-dialog::after {
3181
3174
  border-color: transparent transparent var(--vidply-bg-menu) transparent;
3182
3175
  border-style: solid;
3183
- border-width: 0 8px 8px;
3176
+ border-width: 0 0.5rem 0.5rem;
3184
3177
  content: '';
3185
3178
  height: 0;
3186
- left: 12px;
3179
+ left: 0.75rem;
3187
3180
  position: absolute;
3188
- top: -8px;
3181
+ top: -0.5rem;
3189
3182
  width: 0;
3190
3183
  }
3191
3184
 
3192
3185
  .vidply-transcript-style-title {
3193
- border-bottom: 1px solid var(--vidply-border);
3186
+ border-bottom: 0.0625rem solid var(--vidply-border);
3194
3187
  color: var(--vidply-white);
3195
- font-size: 14px;
3188
+ font-size: 0.875rem;
3196
3189
  font-weight: 600;
3197
- margin: 0 0 12px;
3198
- padding-bottom: 8px;
3190
+ margin: 0 0 0.75rem;
3191
+ padding-bottom: 0.5rem;
3199
3192
  }
3200
3193
 
3201
3194
  .vidply-transcript-style-group {
3202
- margin-bottom: 12px;
3195
+ margin-bottom: 0.75rem;
3203
3196
  }
3204
3197
 
3205
3198
  .vidply-transcript-style-group:last-child {
@@ -3209,19 +3202,19 @@
3209
3202
  .vidply-transcript-style-group label {
3210
3203
  color: var(--vidply-white-90);
3211
3204
  display: block;
3212
- font-size: 12px;
3205
+ font-size: 0.75rem;
3213
3206
  font-weight: 500;
3214
- margin-bottom: 6px;
3207
+ margin-bottom: 0.375rem;
3215
3208
  }
3216
3209
 
3217
3210
  /* Style Select */
3218
3211
  .vidply-transcript-style-select {
3219
3212
  background: var(--vidply-bg-menu);
3220
- border: 1px solid var(--vidply-border);
3221
- border-radius: 4px;
3213
+ border: 0.0625rem solid var(--vidply-border);
3214
+ border-radius: 0.25rem;
3222
3215
  color: var(--vidply-text);
3223
- font-size: 14px;
3224
- padding: 4px 8px;
3216
+ font-size: 0.875rem;
3217
+ padding: 0.25rem 0.5rem;
3225
3218
  transition: var(--vidply-transition-default);
3226
3219
  width: 100%;
3227
3220
  }
@@ -3234,50 +3227,50 @@
3234
3227
  .vidply-transcript-style-select:focus {
3235
3228
  background: var(--vidply-white-15);
3236
3229
  border-color: var(--vidply-border-focus);
3237
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3230
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3238
3231
  outline: var(--vidply-focus-outline);
3239
- outline-offset: 2px;
3232
+ outline-offset: 0.125rem;
3240
3233
  }
3241
3234
 
3242
3235
  /* Style Color Input */
3243
3236
  .vidply-transcript-style-color {
3244
- border: 1px solid var(--vidply-border);
3245
- border-radius: 4px;
3237
+ border: 0.0625rem solid var(--vidply-border);
3238
+ border-radius: 0.25rem;
3246
3239
  cursor: pointer;
3247
- height: 32px;
3240
+ height: 2rem;
3248
3241
  outline: none;
3249
- padding: 4px;
3242
+ padding: 0.25rem;
3250
3243
  transition: var(--vidply-transition-default);
3251
3244
  width: 100%;
3252
3245
  }
3253
3246
 
3254
3247
  .vidply-transcript-style-color:hover {
3255
3248
  border-color: var(--vidply-border-hover);
3256
- box-shadow: 0 0 0 1px var(--vidply-primary-20);
3249
+ box-shadow: 0 0 0 0.0625rem var(--vidply-primary-20);
3257
3250
  }
3258
3251
 
3259
3252
  .vidply-transcript-style-color:focus {
3260
3253
  border-color: var(--vidply-border-focus);
3261
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3254
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3262
3255
  outline: var(--vidply-focus-outline);
3263
- outline-offset: 2px;
3256
+ outline-offset: 0.125rem;
3264
3257
  }
3265
3258
 
3266
3259
  /* Style Range Slider */
3267
3260
  .vidply-transcript-style-range-container {
3268
3261
  align-items: center;
3269
3262
  display: flex;
3270
- gap: 12px;
3263
+ gap: 0.75rem;
3271
3264
  }
3272
3265
 
3273
3266
  .vidply-transcript-style-range {
3274
3267
  -webkit-appearance: none;
3275
3268
  appearance: none;
3276
3269
  background: var(--vidply-white-20);
3277
- border-radius: 3px;
3270
+ border-radius: 0.1875rem;
3278
3271
  cursor: pointer;
3279
3272
  flex: 1;
3280
- height: 6px;
3273
+ height: 0.375rem;
3281
3274
  outline: none;
3282
3275
  transition: var(--vidply-transition-default);
3283
3276
  }
@@ -3288,20 +3281,20 @@
3288
3281
 
3289
3282
  .vidply-transcript-style-range:focus {
3290
3283
  background: var(--vidply-white-30);
3291
- box-shadow: 0 0 0 2px var(--vidply-primary-20);
3284
+ box-shadow: 0 0 0 0.125rem var(--vidply-primary-20);
3292
3285
  }
3293
3286
 
3294
3287
  .vidply-transcript-style-range::-webkit-slider-thumb {
3295
3288
  -webkit-appearance: none;
3296
3289
  appearance: none;
3297
3290
  background: var(--vidply-primary-light);
3298
- border: 2px solid var(--vidply-white);
3291
+ border: 0.125rem solid var(--vidply-white);
3299
3292
  border-radius: 50%;
3300
3293
  box-shadow: var(--vidply-shadow-sm);
3301
3294
  cursor: pointer;
3302
- height: 16px;
3295
+ height: 1rem;
3303
3296
  transition: all 0.15s ease;
3304
- width: 16px;
3297
+ width: 1rem;
3305
3298
  }
3306
3299
 
3307
3300
  .vidply-transcript-style-range::-webkit-slider-thumb:hover {
@@ -3311,13 +3304,13 @@
3311
3304
 
3312
3305
  .vidply-transcript-style-range::-moz-range-thumb {
3313
3306
  background: var(--vidply-primary-light);
3314
- border: 2px solid var(--vidply-white);
3307
+ border: 0.125rem solid var(--vidply-white);
3315
3308
  border-radius: 50%;
3316
3309
  box-shadow: var(--vidply-shadow-sm);
3317
3310
  cursor: pointer;
3318
- height: 16px;
3311
+ height: 1rem;
3319
3312
  transition: all 0.15s ease;
3320
- width: 16px;
3313
+ width: 1rem;
3321
3314
  }
3322
3315
 
3323
3316
  .vidply-transcript-style-range::-moz-range-thumb:hover {
@@ -3327,9 +3320,9 @@
3327
3320
 
3328
3321
  .vidply-transcript-style-value {
3329
3322
  color: var(--vidply-text-muted);
3330
- font-size: 13px;
3323
+ font-size: 0.8125rem;
3331
3324
  font-weight: 600;
3332
- min-width: 40px;
3325
+ min-width: 2.5rem;
3333
3326
  text-align: right;
3334
3327
  }
3335
3328
 
@@ -3337,20 +3330,20 @@
3337
3330
  .vidply-transcript-style-close {
3338
3331
  background: var(--vidply-primary);
3339
3332
  border: none;
3340
- border-radius: 4px;
3333
+ border-radius: 0.25rem;
3341
3334
  color: var(--vidply-white);
3342
3335
  cursor: pointer;
3343
- font-size: 13px;
3336
+ font-size: 0.8125rem;
3344
3337
  font-weight: 600;
3345
- margin-top: 12px;
3346
- padding: 8px 16px;
3338
+ margin-top: 0.75rem;
3339
+ padding: 0.5rem 1rem;
3347
3340
  transition: var(--vidply-transition-default);
3348
3341
  width: 100%;
3349
3342
  }
3350
3343
 
3351
3344
  .vidply-transcript-style-close:hover {
3352
3345
  background: var(--vidply-primary-light);
3353
- transform: translateY(-1px);
3346
+ transform: translateY(-0.0625rem);
3354
3347
  }
3355
3348
 
3356
3349
  .vidply-transcript-style-close:active {
@@ -3358,22 +3351,22 @@
3358
3351
  }
3359
3352
 
3360
3353
  .vidply-transcript-style-close:focus {
3361
- box-shadow: 0 0 0 3px var(--vidply-primary-20);
3354
+ box-shadow: 0 0 0 0.1875rem var(--vidply-primary-20);
3362
3355
  outline: var(--vidply-focus-outline);
3363
- outline-offset: 2px;
3356
+ outline-offset: 0.125rem;
3364
3357
  }
3365
3358
 
3366
3359
  /* Sign Language Video Wrapper */
3367
3360
  .vidply-sign-language-wrapper {
3368
3361
  background: transparent;
3369
- border-radius: 8px;
3362
+ border-radius: 0.5rem;
3370
3363
  height: auto;
3371
3364
  max-width: none;
3372
- min-height: 100px;
3365
+ min-height: 6.25rem;
3373
3366
  overflow: visible; /* Allow menu to overflow */
3374
3367
  position: absolute;
3375
3368
  transition: opacity 0.3s ease;
3376
- width: 280px;
3369
+ width: 17.5rem;
3377
3370
  z-index: 3;
3378
3371
  }
3379
3372
 
@@ -3382,15 +3375,15 @@
3382
3375
  }
3383
3376
 
3384
3377
  .vidply-sign-language-wrapper:focus {
3385
- outline: 2px solid var(--vidply-primary);
3386
- outline-offset: 2px;
3378
+ outline: 0.125rem solid var(--vidply-primary);
3379
+ outline-offset: 0.125rem;
3387
3380
  }
3388
3381
 
3389
3382
  /* Sign Language Header */
3390
3383
  .vidply-sign-language-header {
3391
3384
  align-items: center;
3392
3385
  background: #282828;
3393
- border-bottom: 1px solid var(--vidply-border-light);
3386
+ border-bottom: 0.0625rem solid var(--vidply-border-light);
3394
3387
  border-radius: var(--vidply-radius-lg) var(--vidply-radius-lg) 0 0;
3395
3388
  cursor: move;
3396
3389
  display: flex;
@@ -3403,15 +3396,15 @@
3403
3396
 
3404
3397
  .vidply-sign-language-header:focus,
3405
3398
  .vidply-sign-language-header:focus-visible {
3406
- box-shadow: 0 0 0 4px rgb(91 144 255 / 35%);
3407
- outline: 3px solid var(--vidply-primary-light);
3408
- 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;
3409
3402
  }
3410
3403
 
3411
3404
  .vidply-sign-language-header-left {
3412
3405
  align-items: flex-start; /* Changed from center to align items at top */
3413
3406
  display: flex;
3414
- gap: 16px;
3407
+ gap: 1rem;
3415
3408
  position: relative; /* Needed for menu positioning */
3416
3409
  }
3417
3410
 
@@ -3420,29 +3413,29 @@
3420
3413
  align-self: center; /* Center this wrapper vertically in header */
3421
3414
  display: flex;
3422
3415
  flex-direction: row; /* Horizontal layout: label left of select */
3423
- gap: 8px;
3416
+ gap: 0.5rem;
3424
3417
  }
3425
3418
 
3426
3419
  .vidply-sign-language-label {
3427
3420
  /* Visible label for voice input accessibility */
3428
3421
  color: var(--vidply-white);
3429
- font-size: 12px;
3422
+ font-size: 0.75rem;
3430
3423
  font-weight: 500;
3431
3424
  white-space: nowrap;
3432
3425
  }
3433
3426
 
3434
3427
  .vidply-sign-language-select {
3435
3428
  background: var(--vidply-bg-menu);
3436
- border: 1px solid var(--vidply-border);
3437
- border-radius: 4px;
3429
+ border: 0.0625rem solid var(--vidply-border);
3430
+ border-radius: 0.25rem;
3438
3431
  color: var(--vidply-text);
3439
- font-size: 14px;
3440
- padding: 4px 8px;
3432
+ font-size: 0.875rem;
3433
+ padding: 0.25rem 0.5rem;
3441
3434
  }
3442
3435
 
3443
3436
  .vidply-sign-language-select:focus {
3444
3437
  outline: var(--vidply-focus-outline);
3445
- outline-offset: 2px;
3438
+ outline-offset: 0.125rem;
3446
3439
  }
3447
3440
 
3448
3441
  /* Sign Language Settings Button */
@@ -3469,7 +3462,7 @@
3469
3462
 
3470
3463
  .vidply-sign-language-settings:focus {
3471
3464
  outline: var(--vidply-focus-outline-white);
3472
- outline-offset: 2px;
3465
+ outline-offset: 0.125rem;
3473
3466
  }
3474
3467
 
3475
3468
  .vidply-sign-language-settings .vidply-icon {
@@ -3480,20 +3473,20 @@
3480
3473
  /* Sign Language Settings Menu */
3481
3474
  .vidply-sign-language-settings-menu {
3482
3475
  background: var(--vidply-bg-menu);
3483
- border: 1px solid var(--vidply-border);
3476
+ border: 0.0625rem solid var(--vidply-border);
3484
3477
  border-radius: var(--vidply-radius-md);
3485
3478
  box-shadow: var(--vidply-shadow-lg);
3486
3479
  display: none;
3487
- min-width: 240px;
3480
+ min-width: 15rem;
3488
3481
  padding: var(--vidply-gap-sm);
3489
3482
  position: absolute;
3490
3483
  z-index: 100;
3491
3484
  }
3492
3485
 
3493
3486
  .vidply-sign-language-settings-menu::after {
3494
- border-bottom: 6px solid var(--vidply-bg-menu);
3495
- border-left: 6px solid transparent;
3496
- 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;
3497
3490
  bottom: 100%;
3498
3491
  content: '';
3499
3492
  height: 0;
@@ -3504,7 +3497,7 @@
3504
3497
 
3505
3498
  .vidply-sign-language-settings-menu.vidply-menu-above::after {
3506
3499
  border-bottom: none;
3507
- border-top: 6px solid var(--vidply-bg-menu);
3500
+ border-top: 0.375rem solid var(--vidply-bg-menu);
3508
3501
  bottom: auto;
3509
3502
  top: 100%;
3510
3503
  }
@@ -3520,7 +3513,7 @@
3520
3513
  display: flex;
3521
3514
  font-size: var(--vidply-font-base);
3522
3515
  gap: var(--vidply-gap-md);
3523
- padding: var(--vidply-padding-md) 10px;
3516
+ padding: var(--vidply-padding-md) 0.625rem;
3524
3517
  text-align: left;
3525
3518
  transition: var(--vidply-transition-normal);
3526
3519
  width: 100%;
@@ -3562,12 +3555,12 @@
3562
3555
  color: var(--vidply-white);
3563
3556
  font-size: var(--vidply-font-lg);
3564
3557
  font-weight: 600;
3565
- height: 1px;
3566
- left: -10000px;
3558
+ height: 0.0625rem;
3559
+ left: -625rem;
3567
3560
  margin: 0;
3568
3561
  overflow: hidden;
3569
3562
  position: absolute;
3570
- width: 1px;
3563
+ width: 0.0625rem;
3571
3564
  }
3572
3565
 
3573
3566
  .vidply-sign-language-close {
@@ -3592,7 +3585,7 @@
3592
3585
 
3593
3586
  .vidply-sign-language-close:focus {
3594
3587
  outline: var(--vidply-focus-outline-white);
3595
- outline-offset: 2px;
3588
+ outline-offset: 0.125rem;
3596
3589
  }
3597
3590
 
3598
3591
  .vidply-sign-language-close .vidply-icon {
@@ -3603,10 +3596,10 @@
3603
3596
  /* Sign Language Video */
3604
3597
  .vidply-sign-language-video {
3605
3598
  background: var(--vidply-black);
3606
- border: 2px solid var(--vidply-white-30);
3607
- border-radius: 0 0 8px 8px;
3599
+ border: 0.125rem solid var(--vidply-white-30);
3600
+ border-radius: 0 0 0.5rem 0.5rem;
3608
3601
  border-top: none;
3609
- box-shadow: 0 4px 12px var(--vidply-black-60);
3602
+ box-shadow: 0 0.25rem 0.75rem var(--vidply-black-60);
3610
3603
  cursor: default;
3611
3604
  display: block;
3612
3605
  height: auto;
@@ -3625,67 +3618,67 @@
3625
3618
  .vidply-sign-resize-nw,
3626
3619
  .vidply-sign-resize-se,
3627
3620
  .vidply-sign-resize-sw {
3628
- height: 16px;
3629
- width: 16px;
3621
+ height: 1rem;
3622
+ width: 1rem;
3630
3623
  }
3631
3624
 
3632
3625
  .vidply-sign-resize-n,
3633
3626
  .vidply-sign-resize-s {
3634
3627
  cursor: ns-resize;
3635
- height: 8px;
3636
- left: 16px;
3637
- right: 16px;
3628
+ height: 0.5rem;
3629
+ left: 1rem;
3630
+ right: 1rem;
3638
3631
  }
3639
3632
 
3640
3633
  .vidply-sign-resize-e,
3641
3634
  .vidply-sign-resize-w {
3642
- bottom: 16px;
3635
+ bottom: 1rem;
3643
3636
  cursor: ew-resize;
3644
- top: 16px;
3645
- width: 8px;
3637
+ top: 1rem;
3638
+ width: 0.5rem;
3646
3639
  }
3647
3640
 
3648
- .vidply-sign-resize-n { top: -4px; }
3649
- .vidply-sign-resize-s { bottom: -4px; }
3650
- .vidply-sign-resize-e { right: -4px; }
3651
- .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; }
3652
3645
 
3653
3646
  .vidply-sign-resize-ne {
3654
3647
  cursor: nesw-resize;
3655
- right: -8px;
3656
- top: -8px;
3648
+ right: -0.5rem;
3649
+ top: -0.5rem;
3657
3650
  }
3658
3651
 
3659
3652
  .vidply-sign-resize-nw {
3660
3653
  cursor: nwse-resize;
3661
- left: -8px;
3662
- top: -8px;
3654
+ left: -0.5rem;
3655
+ top: -0.5rem;
3663
3656
  }
3664
3657
 
3665
3658
  .vidply-sign-resize-se {
3666
- bottom: -8px;
3659
+ bottom: -0.5rem;
3667
3660
  cursor: nwse-resize;
3668
- right: -8px;
3661
+ right: -0.5rem;
3669
3662
  }
3670
3663
 
3671
3664
  .vidply-sign-resize-sw {
3672
- bottom: -8px;
3665
+ bottom: -0.5rem;
3673
3666
  cursor: nesw-resize;
3674
- left: -8px;
3667
+ left: -0.5rem;
3675
3668
  }
3676
3669
 
3677
3670
  .vidply-sign-resizable .vidply-sign-resize-handle::after {
3678
3671
  background: var(--vidply-primary-light);
3679
3672
  border-radius: 50%;
3680
3673
  content: '';
3681
- height: 6px;
3674
+ height: 0.375rem;
3682
3675
  left: 50%;
3683
3676
  opacity: 0;
3684
3677
  position: absolute;
3685
3678
  top: 50%;
3686
3679
  transform: translate(-50%, -50%);
3687
3680
  transition: opacity 0.2s ease;
3688
- width: 6px;
3681
+ width: 0.375rem;
3689
3682
  }
3690
3683
 
3691
3684
  .vidply-sign-resizable:hover .vidply-sign-resize-handle::after {
@@ -3711,36 +3704,36 @@
3711
3704
 
3712
3705
  /* Move Mode */
3713
3706
  .vidply-sign-move-mode {
3714
- 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);
3715
3708
  }
3716
3709
 
3717
3710
  /* Resizing State */
3718
3711
  .vidply-sign-resizing {
3719
- 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);
3720
3713
  transition: none !important;
3721
3714
  }
3722
3715
 
3723
3716
  /* Keyboard Drag/Resize Modes */
3724
3717
  .vidply-sign-keyboard-drag,
3725
3718
  .vidply-sign-keyboard-resize {
3726
- 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);
3727
3720
  }
3728
3721
 
3729
3722
  .vidply-sign-keyboard-drag::after,
3730
3723
  .vidply-sign-keyboard-resize::after {
3731
3724
  align-items: center;
3732
3725
  background: var(--vidply-primary);
3733
- border-radius: 4px;
3726
+ border-radius: 0.25rem;
3734
3727
  color: var(--vidply-white);
3735
3728
  display: flex;
3736
- font-size: 12px;
3729
+ font-size: 0.75rem;
3737
3730
  font-weight: 600;
3738
3731
  justify-content: center;
3739
3732
  left: 50%;
3740
- padding: 4px 8px;
3733
+ padding: 0.25rem 0.5rem;
3741
3734
  pointer-events: none;
3742
3735
  position: absolute;
3743
- top: -28px;
3736
+ top: -1.75rem;
3744
3737
  transform: translateX(-50%);
3745
3738
  white-space: nowrap;
3746
3739
  z-index: 10;
@@ -3756,48 +3749,48 @@
3756
3749
 
3757
3750
  /* Sign Language Video Positions */
3758
3751
  .vidply-sign-position-bottom-right {
3759
- bottom: 95px; /* Above controls */
3760
- right: 16px;
3752
+ bottom: 5.9375rem; /* Above controls */
3753
+ right: 1rem;
3761
3754
  }
3762
3755
 
3763
3756
  .vidply-sign-position-bottom-left {
3764
- bottom: 95px; /* Above controls */
3765
- left: 16px;
3757
+ bottom: 5.9375rem; /* Above controls */
3758
+ left: 1rem;
3766
3759
  }
3767
3760
 
3768
3761
  .vidply-sign-position-top-right {
3769
- right: 16px;
3770
- top: 16px;
3762
+ right: 1rem;
3763
+ top: 1rem;
3771
3764
  }
3772
3765
 
3773
3766
  .vidply-sign-position-top-left {
3774
- left: 16px;
3775
- top: 16px;
3767
+ left: 1rem;
3768
+ top: 1rem;
3776
3769
  }
3777
3770
 
3778
3771
  /* Responsive Sign Language Video */
3779
- @media (width < 768px) {
3772
+ @media (width < 48rem) {
3780
3773
  .vidply-sign-language-wrapper {
3781
- min-width: 120px;
3774
+ min-width: 7.5rem;
3782
3775
  width: 35%;
3783
3776
  }
3784
3777
 
3785
3778
  .vidply-sign-position-bottom-right,
3786
3779
  .vidply-sign-position-bottom-left {
3787
- bottom: 126px !important; /* Adjust for smaller controls */
3780
+ bottom: 7.875rem !important; /* Adjust for smaller controls */
3788
3781
  }
3789
3782
  }
3790
3783
 
3791
3784
  /* Responsive Adjustments */
3792
- @media (width < 768px) {
3785
+ @media (width < 48rem) {
3793
3786
  .vidply-playlist-thumbnail {
3794
- height: 34px;
3795
- width: 60px;
3787
+ height: 2.125rem;
3788
+ width: 3.75rem;
3796
3789
  }
3797
3790
 
3798
3791
  .vidply-playlist-item {
3799
- gap: 10px;
3800
- padding: 10px 12px;
3792
+ gap: 0.625rem;
3793
+ padding: 0.625rem 0.75rem;
3801
3794
  }
3802
3795
 
3803
3796
  .vidply-track-artwork {
@@ -3805,19 +3798,19 @@
3805
3798
  }
3806
3799
 
3807
3800
  .vidply-track-info {
3808
- padding: 12px 16px;
3801
+ padding: 0.75rem 1rem;
3809
3802
  }
3810
3803
 
3811
3804
  .vidply-track-title {
3812
- font-size: 16px;
3805
+ font-size: 1rem;
3813
3806
  }
3814
3807
 
3815
3808
  /* Mobile fullscreen playlist - horizontal scrolling directly above controls */
3816
3809
  .vidply-player.vidply-fullscreen .vidply-playlist-panel,
3817
3810
  .vidply-player:fullscreen .vidply-playlist-panel {
3818
- bottom: 100px; /* Directly above controls with extra space */
3811
+ bottom: 6.25rem; /* Directly above controls with extra space */
3819
3812
  max-height: 35vh; /* Compact height */
3820
- padding: 12px 0; /* Vertical padding only */
3813
+ padding: 0.75rem 0; /* Vertical padding only */
3821
3814
  overflow-y: hidden; /* No vertical scrolling */
3822
3815
  overflow-x: auto; /* Horizontal scrolling */
3823
3816
  position: absolute !important; /* Force absolute over video */
@@ -3830,8 +3823,8 @@
3830
3823
  .vidply-player:fullscreen .vidply-playlist-list {
3831
3824
  flex-direction: row; /* Items side by side */
3832
3825
  flex-wrap: nowrap; /* Never wrap */
3833
- gap: 8px;
3834
- padding: 0 12px;
3826
+ gap: 0.5rem;
3827
+ padding: 0 0.75rem;
3835
3828
  -webkit-overflow-scrolling: touch;
3836
3829
  scroll-behavior: smooth;
3837
3830
  touch-action: pan-x; /* Ensure horizontal swipe gestures work */
@@ -3840,9 +3833,9 @@
3840
3833
  /* Mobile playlist items - only show thumbnails */
3841
3834
  .vidply-player.vidply-fullscreen .vidply-playlist-item,
3842
3835
  .vidply-player:fullscreen .vidply-playlist-item {
3843
- width: 120px; /* Smaller width for thumbnail-only */
3844
- min-width: 120px;
3845
- max-width: 120px;
3836
+ width: 7.5rem; /* Smaller width for thumbnail-only */
3837
+ min-width: 7.5rem;
3838
+ max-width: 7.5rem;
3846
3839
  flex-shrink: 0; /* Don't shrink */
3847
3840
  scroll-snap-align: start;
3848
3841
  }
@@ -3856,10 +3849,10 @@
3856
3849
 
3857
3850
  .vidply-player.vidply-fullscreen .vidply-playlist-thumbnail,
3858
3851
  .vidply-player:fullscreen .vidply-playlist-thumbnail {
3859
- height: 90px; /* Square-ish thumbnail */
3852
+ height: 5.625rem; /* Square-ish thumbnail */
3860
3853
  width: 100%; /* Full width of card */
3861
3854
  flex-shrink: 0;
3862
- border-radius: 8px; /* Fully rounded for thumbnail-only */
3855
+ border-radius: 0.5rem; /* Fully rounded for thumbnail-only */
3863
3856
  }
3864
3857
 
3865
3858
  /* Hide text info on mobile - show only thumbnails */
@@ -3873,28 +3866,28 @@
3873
3866
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-info {
3874
3867
  display: flex;
3875
3868
  flex-direction: column;
3876
- padding: 8px;
3869
+ padding: 0.5rem;
3877
3870
  justify-content: center;
3878
3871
  align-items: center;
3879
3872
  text-align: center;
3880
- height: 90px;
3873
+ height: 5.625rem;
3881
3874
  }
3882
3875
 
3883
3876
  .vidply-player.vidply-fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-title,
3884
3877
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-title {
3885
- font-size: 11px;
3878
+ font-size: 0.6875rem;
3886
3879
  -webkit-line-clamp: 3;
3887
3880
  }
3888
3881
 
3889
3882
  .vidply-player.vidply-fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-artist,
3890
3883
  .vidply-player:fullscreen .vidply-playlist-item:not(:has(.vidply-playlist-thumbnail)) .vidply-playlist-item-artist {
3891
- font-size: 9px;
3884
+ font-size: 0.5625rem;
3892
3885
  }
3893
3886
 
3894
3887
  .vidply-player.vidply-fullscreen .vidply-playlist-header,
3895
3888
  .vidply-player:fullscreen .vidply-playlist-header {
3896
- padding: 0 12px 8px;
3897
- font-size: 11px;
3889
+ padding: 0 0.75rem 0.5rem;
3890
+ font-size: 0.6875rem;
3898
3891
  flex-shrink: 0;
3899
3892
  }
3900
3893
 
@@ -3902,9 +3895,9 @@
3902
3895
  .vidply-transcript-window {
3903
3896
  border: none;
3904
3897
  border-radius: 0;
3905
- border-top: 1px solid var(--vidply-border-light);
3898
+ border-top: 0.0625rem solid var(--vidply-border-light);
3906
3899
  box-shadow: none;
3907
- min-width: 300px;
3900
+ min-width: 18.75rem;
3908
3901
  order: 3; /* After controls (which are order: 2) */
3909
3902
  position: relative;
3910
3903
  width: 100%;
@@ -3913,11 +3906,11 @@
3913
3906
 
3914
3907
  .vidply-transcript-header {
3915
3908
  border-radius: 0;
3916
- padding: 12px 16px;
3909
+ padding: 0.75rem 1rem;
3917
3910
  }
3918
3911
 
3919
3912
  .vidply-transcript-content {
3920
- max-height: 400px;
3913
+ max-height: 25rem;
3921
3914
  }
3922
3915
 
3923
3916
  /* Don't show dragging cursor on mobile (except in fullscreen) */