@gcorevideo/player 2.21.1 → 2.21.4

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.
Files changed (97) hide show
  1. package/assets/audio-selector/style.scss +1 -1
  2. package/assets/audio-selector/track-selector.ejs +3 -3
  3. package/assets/bottom-gear/bottomgear.ejs +2 -2
  4. package/assets/media-control/container.scss +1 -1
  5. package/assets/media-control/media-control.ejs +1 -11
  6. package/assets/media-control/media-control.scss +49 -57
  7. package/assets/media-control/width270.scss +1 -1
  8. package/assets/media-control/width370.scss +7 -9
  9. package/assets/playback-rate/button.ejs +2 -2
  10. package/assets/playback-rate/list.ejs +4 -4
  11. package/assets/subtitles/combobox.ejs +10 -12
  12. package/assets/subtitles/string.ejs +1 -1
  13. package/assets/subtitles/style.scss +9 -16
  14. package/dist/core.js +5 -1
  15. package/dist/index.css +782 -794
  16. package/dist/index.js +240 -244
  17. package/dist/player.d.ts +141 -119
  18. package/dist/plugins/index.css +862 -874
  19. package/dist/plugins/index.js +222 -238
  20. package/docs/api/player.bottomgear.getelement.md +2 -2
  21. package/docs/api/player.bottomgear.md +1 -1
  22. package/docs/api/{player.subtitles.hide.md → player.closedcaptions.hide.md} +2 -2
  23. package/docs/api/{player.subtitles.md → player.closedcaptions.md} +11 -11
  24. package/docs/api/{player.subtitles.show.md → player.closedcaptions.show.md} +2 -2
  25. package/docs/api/player.closedcaptionspluginsettings.md +13 -0
  26. package/docs/api/player.gearitemelement.md +6 -4
  27. package/docs/api/player.gearoptionsitem.md +16 -0
  28. package/docs/api/player.md +48 -12
  29. package/docs/api/player.mediacontrol.putelement.md +2 -2
  30. package/docs/api/player.mediacontrolelement.md +1 -1
  31. package/docs/api/player.playbackrate.md +1 -1
  32. package/docs/api/player.subtitlespluginsettings.md +18 -0
  33. package/docs/api/player.texttrackitem.id.md +11 -0
  34. package/docs/api/player.texttrackitem.md +87 -0
  35. package/docs/api/player.texttrackitem.name.md +11 -0
  36. package/docs/api/player.texttrackitem.track.md +11 -0
  37. package/lib/index.d.ts +1 -1
  38. package/lib/index.js +1 -1
  39. package/lib/index.plugins.d.ts +2 -1
  40. package/lib/index.plugins.d.ts.map +1 -1
  41. package/lib/index.plugins.js +2 -1
  42. package/lib/playback/BasePlayback.d.ts +1 -0
  43. package/lib/playback/BasePlayback.d.ts.map +1 -1
  44. package/lib/playback/BasePlayback.js +3 -0
  45. package/lib/playback/dash-playback/DashPlayback.d.ts.map +1 -1
  46. package/lib/playback/dash-playback/DashPlayback.js +1 -0
  47. package/lib/playback.types.d.ts +5 -0
  48. package/lib/playback.types.d.ts.map +1 -1
  49. package/lib/plugins/audio-selector/AudioSelector.d.ts +2 -3
  50. package/lib/plugins/audio-selector/AudioSelector.d.ts.map +1 -1
  51. package/lib/plugins/audio-selector/AudioSelector.js +6 -7
  52. package/lib/plugins/bottom-gear/BottomGear.d.ts +7 -3
  53. package/lib/plugins/bottom-gear/BottomGear.d.ts.map +1 -1
  54. package/lib/plugins/bottom-gear/BottomGear.js +4 -2
  55. package/lib/plugins/media-control/MediaControl.d.ts +5 -6
  56. package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
  57. package/lib/plugins/media-control/MediaControl.js +48 -39
  58. package/lib/plugins/picture-in-picture/PictureInPicture.d.ts +1 -0
  59. package/lib/plugins/picture-in-picture/PictureInPicture.d.ts.map +1 -1
  60. package/lib/plugins/picture-in-picture/PictureInPicture.js +4 -4
  61. package/lib/plugins/playback-rate/PlaybackRate.d.ts +1 -1
  62. package/lib/plugins/playback-rate/PlaybackRate.d.ts.map +1 -1
  63. package/lib/plugins/playback-rate/PlaybackRate.js +24 -14
  64. package/lib/plugins/subtitles/ClosedCaptions.d.ts +118 -0
  65. package/lib/plugins/subtitles/ClosedCaptions.d.ts.map +1 -0
  66. package/lib/plugins/subtitles/ClosedCaptions.js +348 -0
  67. package/lib/plugins/subtitles/Subtitles.d.ts +31 -26
  68. package/lib/plugins/subtitles/Subtitles.d.ts.map +1 -1
  69. package/lib/plugins/subtitles/Subtitles.js +138 -169
  70. package/lib/testUtils.d.ts +22 -18
  71. package/lib/testUtils.d.ts.map +1 -1
  72. package/lib/testUtils.js +22 -36
  73. package/package.json +1 -1
  74. package/src/index.plugins.ts +2 -1
  75. package/src/index.ts +1 -1
  76. package/src/playback/BasePlayback.ts +4 -0
  77. package/src/playback/dash-playback/DashPlayback.ts +1 -0
  78. package/src/playback.types.ts +6 -0
  79. package/src/plugins/audio-selector/AudioSelector.ts +9 -8
  80. package/src/plugins/bottom-gear/BottomGear.ts +14 -5
  81. package/src/plugins/bottom-gear/__tests__/BottomGear.test.ts +1 -1
  82. package/src/plugins/bottom-gear/__tests__/__snapshots__/BottomGear.test.ts.snap +2 -2
  83. package/src/plugins/media-control/MediaControl.ts +84 -60
  84. package/src/plugins/media-control/__tests__/MediaControl.test.ts +43 -0
  85. package/src/plugins/media-control/__tests__/__snapshots__/MediaControl.test.ts.snap +175 -0
  86. package/src/plugins/picture-in-picture/PictureInPicture.ts +5 -5
  87. package/src/plugins/playback-rate/PlaybackRate.ts +143 -100
  88. package/src/plugins/playback-rate/__tests__/PlaybackRate.test.ts +65 -0
  89. package/src/plugins/playback-rate/__tests__/__snapshots__/PlaybackRate.test.ts.snap +11 -0
  90. package/src/plugins/subtitles/ClosedCaptions.ts +469 -0
  91. package/src/plugins/subtitles/__tests__/ClosedCaptions.test.ts +58 -0
  92. package/src/plugins/subtitles/__tests__/__snapshots__/ClosedCaptions.test.ts.snap +25 -0
  93. package/src/testUtils.ts +22 -36
  94. package/temp/player.api.json +269 -89
  95. package/tsconfig.tsbuildinfo +1 -1
  96. package/src/plugins/index.ts +0 -39
  97. package/src/plugins/subtitles/Subtitles.ts +0 -496
@@ -128,10 +128,10 @@
128
128
  outline: none !important;
129
129
  }
130
130
 
131
- .media-control-audio-tracks {
131
+ .media-control-audiotracks {
132
132
  position: relative;
133
133
  }
134
- .media-control-audio-tracks button {
134
+ .media-control-audiotracks button {
135
135
  background-color: transparent;
136
136
  color: #fff;
137
137
  -webkit-font-smoothing: antialiased;
@@ -141,7 +141,7 @@
141
141
  align-items: center;
142
142
  padding: 0;
143
143
  }
144
- .media-control-audio-tracks button .audio-text {
144
+ .media-control-audiotracks button .audio-text {
145
145
  text-overflow: ellipsis;
146
146
  overflow: hidden;
147
147
  white-space: nowrap;
@@ -151,18 +151,18 @@
151
151
  border: none;
152
152
  cursor: pointer;
153
153
  }
154
- .media-control-audio-tracks button:hover {
154
+ .media-control-audiotracks button:hover {
155
155
  color: white;
156
156
  }
157
- .media-control-audio-tracks button.changing {
157
+ .media-control-audiotracks button.changing {
158
158
  animation: pulse 0.5s infinite alternate;
159
159
  }
160
- .media-control-audio-tracks button span.audio-arrow {
160
+ .media-control-audiotracks button span.audio-arrow {
161
161
  width: 9px;
162
162
  height: 6px;
163
163
  margin-left: 5px;
164
164
  }
165
- .media-control-audio-tracks > ul {
165
+ .media-control-audiotracks > ul {
166
166
  max-width: 114px;
167
167
  list-style-type: none;
168
168
  position: absolute;
@@ -174,16 +174,16 @@
174
174
  bottom: 40px;
175
175
  right: -2px;
176
176
  }
177
- .media-control-audio-tracks li {
177
+ .media-control-audiotracks li {
178
178
  font-size: var(--font-size-media-controls-dropdown);
179
179
  text-align: right;
180
180
  height: 30px;
181
181
  }
182
- .media-control-audio-tracks li[data-title] {
182
+ .media-control-audiotracks li[data-title] {
183
183
  background-color: #c3c2c2;
184
184
  padding: 5px;
185
185
  }
186
- .media-control-audio-tracks li a {
186
+ .media-control-audiotracks li a {
187
187
  display: block;
188
188
  text-decoration: none;
189
189
  text-overflow: ellipsis;
@@ -193,19 +193,19 @@
193
193
  padding: 5px 10px;
194
194
  color: #fffffe;
195
195
  }
196
- .media-control-audio-tracks li a:hover {
196
+ .media-control-audiotracks li a:hover {
197
197
  text-decoration: none;
198
198
  background-color: rgba(0, 0, 0, 0.4);
199
199
  color: white;
200
200
  }
201
- .media-control-audio-tracks li.current a {
201
+ .media-control-audiotracks li.current a {
202
202
  color: #f00;
203
203
  }
204
- .media-control-audio-tracks li:first-child a {
204
+ .media-control-audiotracks li:first-child a {
205
205
  border-bottom-left-radius: 4px;
206
206
  border-bottom-right-radius: 4px;
207
207
  }
208
- .media-control-audio-tracks li:last-child a {
208
+ .media-control-audiotracks li:last-child a {
209
209
  border-top-left-radius: 4px;
210
210
  border-top-right-radius: 4px;
211
211
  }
@@ -222,68 +222,6 @@
222
222
  }
223
223
  }.clips.bar-container[data-seekbar] {
224
224
  clip-path: url("#myClip");
225
- }*, :focus, :visited {
226
- outline: none !important;
227
- }
228
-
229
- .gear-wrapper .go-back {
230
- font-weight: 600;
231
- font-size: 14px;
232
- line-height: 20px;
233
- width: 100%;
234
- text-align: left;
235
- padding: 12px;
236
- }
237
- .gear-wrapper .go-back .arrow-left-icon {
238
- float: left;
239
- padding-top: 2px;
240
- padding-right: 2px;
241
- }
242
- .gear-wrapper .go-back .arrow-left-icon svg {
243
- height: 16px;
244
- }
245
- .gear-wrapper ul.gear-sub-menu {
246
- width: 100%;
247
- list-style-type: none;
248
- background-color: transparent;
249
- min-width: 60px;
250
- border-top: 2px solid rgb(36, 36, 36);
251
- }
252
- .gear-wrapper ul.gear-sub-menu li {
253
- font-size: 12px;
254
- text-align: left;
255
- }
256
- .gear-wrapper ul.gear-sub-menu li[data-title] {
257
- background-color: #c3c2c2;
258
- padding: 5px;
259
- }
260
- .gear-wrapper ul.gear-sub-menu li a {
261
- display: block;
262
- text-decoration: none;
263
- height: 32px;
264
- padding: 5px 10px;
265
- line-height: 22px;
266
- color: #fffffe;
267
- }
268
- .gear-wrapper ul.gear-sub-menu li a:hover {
269
- color: white;
270
- background-color: rgba(0, 0, 0, 0.4);
271
- }
272
- .gear-wrapper ul.gear-sub-menu li a:hover a {
273
- color: white;
274
- text-decoration: none;
275
- }
276
- .gear-wrapper ul.gear-sub-menu li a .check-icon {
277
- width: 30px;
278
- height: 20px;
279
- float: left;
280
- display: block;
281
- }
282
- .gear-wrapper ul.gear-sub-menu li a .check-icon svg {
283
- display: none;
284
- }
285
- .gear-wrapper ul.gear-sub-menu li.current a .check-icon svg {
286
- display: inline;
287
225
  }.dvr-controls[data-dvr-controls] {
288
226
  display: inline-block;
289
227
  float: left;
@@ -387,6 +325,79 @@
387
325
 
388
326
  .media-control.live[data-media-control] .media-control-layer[data-controls] .bar-container[data-seekbar] .bar-background[data-seekbar] .bar-fill-2[data-seekbar] {
389
327
  background-color: #ff0101;
328
+ }.big-mute-icon-wrapper[data-big-mute] {
329
+ position: absolute;
330
+ z-index: 9998;
331
+ background-color: transparent;
332
+ display: flex;
333
+ justify-content: center;
334
+ width: 100%;
335
+ height: calc(100% - 50px);
336
+ margin: 0 auto;
337
+ opacity: 0.75;
338
+ transition: opacity 0.1s ease;
339
+ pointer-events: auto;
340
+ }
341
+ .big-mute-icon-wrapper[data-big-mute].hide {
342
+ display: none;
343
+ }
344
+ .big-mute-icon-wrapper[data-big-mute]:hover {
345
+ cursor: pointer;
346
+ }
347
+
348
+ .big-mute-icon[data-big-mute-icon] {
349
+ display: flex;
350
+ align-items: center;
351
+ justify-content: center;
352
+ align-self: center;
353
+ width: 120px;
354
+ height: 120px;
355
+ border: 2px solid white;
356
+ border-radius: 50%;
357
+ filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
358
+ filter: alpha(opacity=60);
359
+ opacity: 1;
360
+ box-shadow: 0 0 1px 0 white;
361
+ background: rgba(240, 243, 247, 0.9411764706);
362
+ z-index: 10000;
363
+ }
364
+ .big-mute-icon[data-big-mute-icon] svg {
365
+ margin-left: 5px;
366
+ width: 80px;
367
+ height: 80px;
368
+ }
369
+ .big-mute-icon[data-big-mute-icon] svg path {
370
+ fill: #1f1e1e !important;
371
+ }
372
+ .big-mute-icon[data-big-mute-icon]:hover {
373
+ background: rgba(240, 243, 247, 0.8784313725);
374
+ }
375
+ .big-mute-icon[data-big-mute-icon]:hover svg path {
376
+ fill: #151515 !important;
377
+ }.context-menu {
378
+ z-index: 999;
379
+ position: absolute;
380
+ top: 0;
381
+ left: 0;
382
+ text-align: center;
383
+ }
384
+ .context-menu .context-menu-list {
385
+ font-family: "Proxima Nova", sans-serif;
386
+ font-size: 12px;
387
+ line-height: 12px;
388
+ list-style-type: none;
389
+ text-align: left;
390
+ padding: 5px;
391
+ margin-left: auto;
392
+ margin-right: auto;
393
+ background-color: rgba(0, 0, 0, 0.75);
394
+ border: 1px solid #666;
395
+ border-radius: 4px;
396
+ }
397
+ .context-menu .context-menu-list .context-menu-list-item {
398
+ color: white;
399
+ padding: 5px;
400
+ cursor: pointer;
390
401
  }.media-control-skin-1[data-media-control-skin-1] .media-control-gear {
391
402
  order: 99;
392
403
  height: 20px;
@@ -426,9 +437,68 @@
426
437
  }
427
438
  .media-control-skin-1[data-media-control-skin-1] .media-control-gear .gear-wrapper .gear-options-list .gear-option svg {
428
439
  height: 20px;
429
- }.level-disabled {
430
- opacity: 0.5;
431
- pointer-events: none;
440
+ }*, :focus, :visited {
441
+ outline: none !important;
442
+ }
443
+
444
+ .gear-wrapper .go-back {
445
+ font-weight: 600;
446
+ font-size: 14px;
447
+ line-height: 20px;
448
+ width: 100%;
449
+ text-align: left;
450
+ padding: 12px;
451
+ }
452
+ .gear-wrapper .go-back .arrow-left-icon {
453
+ float: left;
454
+ padding-top: 2px;
455
+ padding-right: 2px;
456
+ }
457
+ .gear-wrapper .go-back .arrow-left-icon svg {
458
+ height: 16px;
459
+ }
460
+ .gear-wrapper ul.gear-sub-menu {
461
+ width: 100%;
462
+ list-style-type: none;
463
+ background-color: transparent;
464
+ min-width: 60px;
465
+ border-top: 2px solid rgb(36, 36, 36);
466
+ }
467
+ .gear-wrapper ul.gear-sub-menu li {
468
+ font-size: 12px;
469
+ text-align: left;
470
+ }
471
+ .gear-wrapper ul.gear-sub-menu li[data-title] {
472
+ background-color: #c3c2c2;
473
+ padding: 5px;
474
+ }
475
+ .gear-wrapper ul.gear-sub-menu li a {
476
+ display: block;
477
+ text-decoration: none;
478
+ height: 32px;
479
+ padding: 5px 10px;
480
+ line-height: 22px;
481
+ color: #fffffe;
482
+ }
483
+ .gear-wrapper ul.gear-sub-menu li a:hover {
484
+ color: white;
485
+ background-color: rgba(0, 0, 0, 0.4);
486
+ }
487
+ .gear-wrapper ul.gear-sub-menu li a:hover a {
488
+ color: white;
489
+ text-decoration: none;
490
+ }
491
+ .gear-wrapper ul.gear-sub-menu li a .check-icon {
492
+ width: 30px;
493
+ height: 20px;
494
+ float: left;
495
+ display: block;
496
+ }
497
+ .gear-wrapper ul.gear-sub-menu li a .check-icon svg {
498
+ display: none;
499
+ }
500
+ .gear-wrapper ul.gear-sub-menu li.current a .check-icon svg {
501
+ display: inline;
432
502
  }div.player-error-screen, [data-player] div.player-error-screen {
433
503
  color: #CCCACA;
434
504
  position: absolute;
@@ -463,254 +533,425 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
463
533
  cursor: pointer;
464
534
  width: 30px;
465
535
  margin: 15px auto 0;
466
- }.context-menu {
467
- z-index: 999;
536
+ }.player-poster[data-poster] {
537
+ display: flex;
538
+ justify-content: center;
539
+ align-items: center;
468
540
  position: absolute;
541
+ height: 100%;
542
+ width: 100%;
543
+ z-index: 998;
469
544
  top: 0;
470
545
  left: 0;
471
- text-align: center;
472
- }
473
- .context-menu .context-menu-list {
474
- font-family: "Proxima Nova", sans-serif;
475
- font-size: 12px;
476
- line-height: 12px;
477
- list-style-type: none;
478
- text-align: left;
479
- padding: 5px;
480
- margin-left: auto;
481
- margin-right: auto;
482
- background-color: rgba(0, 0, 0, 0.75);
483
- border: 1px solid #666;
484
- border-radius: 4px;
546
+ background-color: #000;
547
+ background-size: cover;
548
+ background-repeat: no-repeat;
549
+ background-position: 50% 50%;
485
550
  }
486
- .context-menu .context-menu-list .context-menu-list-item {
487
- color: white;
488
- padding: 5px;
551
+ .player-poster[data-poster].clickable {
489
552
  cursor: pointer;
490
- }*, :focus, :visited {
491
- outline: none !important;
492
553
  }
493
-
494
- .multicamera[data-multicamera] {
495
- float: right;
496
- margin-top: 4px;
497
- position: relative;
498
- margin-right: 20px;
499
- width: 20px;
554
+ .player-poster[data-poster]:hover .play-wrapper[data-poster] {
555
+ opacity: 1;
500
556
  }
501
- .multicamera[data-multicamera] button {
502
- background-color: transparent;
503
- color: #fff;
504
- font-family: Roboto, "Open Sans", Arial, sans-serif;
505
- -webkit-font-smoothing: antialiased;
506
- border: none;
507
- font-size: 14px;
508
- padding: 0;
557
+ .player-poster[data-poster] .play-wrapper[data-poster] {
558
+ width: 100%;
559
+ height: 25%;
560
+ margin: 0 auto;
561
+ opacity: 0.75;
562
+ transition: opacity 0.1s ease;
509
563
  }
510
- .multicamera[data-multicamera] button svg {
511
- height: 20px;
512
- position: relative;
513
- margin-top: 6px;
564
+ .player-poster[data-poster] .play-wrapper[data-poster] svg {
565
+ height: 100%;
566
+ display: inline;
514
567
  }
515
- .multicamera[data-multicamera] button:hover {
516
- color: #c9c9c9;
568
+ .player-poster[data-poster] .play-wrapper[data-poster] svg path {
569
+ fill: #fff;
570
+ }.level-disabled {
571
+ opacity: 0.5;
572
+ pointer-events: none;
573
+ }:root {
574
+ --primary-background-color: #000;
575
+ --secondary-background-color: #262626;
576
+ --primary-text-color: #fff;
577
+ --secondary-text-color: #fff4f2;
578
+ --hover-text-color: #f9b090;
579
+ --speedtest-red: #df564d;
580
+ --speedtest-orange: #df934d;
581
+ --speedtest-yellow: #dfd04d;
582
+ --speedtest-light-green: #c2df4d;
583
+ --speedtest-green: #73df4d;
517
584
  }
518
- .multicamera[data-multicamera] button.changing {
519
- animation: pulse 0.5s infinite alternate;
585
+
586
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box {
587
+ position: absolute;
588
+ display: inline-block;
589
+ bottom: 52px;
590
+ right: 16px;
591
+ padding: 0 10px 12px;
592
+ margin: 0;
593
+ line-height: 20px;
594
+ font-size: 12px;
595
+ font-weight: 500;
596
+ background: var(--primary-background-color);
597
+ color: #fff;
598
+ z-index: 20000;
599
+ overflow: auto;
600
+ max-height: calc(100vh - 60px);
601
+ max-width: calc(100vw - 10px);
520
602
  }
521
- .multicamera[data-multicamera] button span.quality-arrow {
522
- width: 9px;
523
- height: 6px;
524
- margin-top: 11px;
525
- margin-left: 5px;
603
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top {
604
+ position: absolute;
605
+ top: 0;
606
+ left: 0;
607
+ z-index: 99990;
608
+ width: 100%;
609
+ height: 32px;
610
+ background: var(--primary-background-color);
526
611
  }
527
- .multicamera[data-multicamera] > ul {
528
- padding: 6px 0;
529
- right: -24px;
530
- width: 245px;
612
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button {
613
+ float: right;
614
+ margin-right: 12px;
615
+ margin-top: 10px;
616
+ display: block;
617
+ width: 12px;
618
+ height: 12px;
619
+ }
620
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button svg path {
621
+ fill: var(--primary-text-color);
622
+ }
623
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button:hover svg path {
624
+ fill: var(--hover-text-color);
625
+ }
626
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-main {
627
+ overflow: hidden;
628
+ margin-top: 44px;
629
+ }
630
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.wide {
631
+ width: 820px;
632
+ }
633
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul, .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box li {
531
634
  list-style-type: none;
635
+ }
636
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul div, .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box li div {
637
+ padding-left: 2px;
638
+ padding-right: 2px;
639
+ background: var(--primary-background-color);
640
+ }
641
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
642
+ display: inline-block;
643
+ float: left;
644
+ padding: 5px;
645
+ width: 200px;
646
+ }
647
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li {
648
+ position: relative;
649
+ padding: 0 5px;
650
+ text-align: left;
651
+ }
652
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.canvas-wrapper {
653
+ padding: 0;
654
+ }
655
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.canvas-wrapper canvas {
656
+ width: 100%;
657
+ }
658
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li:nth-child(2n) {
659
+ background: var(--secondary-background-color);
660
+ }
661
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li:nth-child(2n) div {
662
+ background: var(--secondary-background-color);
663
+ }
664
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.title {
665
+ text-align: center;
666
+ font-weight: bold;
667
+ padding-bottom: 4px;
668
+ font-size: 14px;
669
+ }
670
+ .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li div {
671
+ margin: 0;
532
672
  position: absolute;
533
- bottom: 48px;
534
- border-radius: 4px;
535
- display: none;
536
- background-color: rgba(74, 74, 74, 0.9);
673
+ right: 0;
674
+ top: 0;
537
675
  }
538
- .multicamera[data-multicamera] > ul::after {
539
- content: "";
676
+
677
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow {
678
+ width: 250px;
679
+ }
680
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow ul {
681
+ width: 100%;
682
+ }
683
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary {
684
+ padding: 0 5px;
685
+ height: auto;
686
+ }
687
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block {
688
+ width: 100%;
689
+ flex-direction: column;
690
+ }
691
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block .speedtest-summary-subblock {
692
+ width: 100%;
693
+ }
694
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block .speedtest-summary-subblock-content {
695
+ width: 100%;
696
+ }
697
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-header {
698
+ padding-top: 12px;
699
+ height: 38px;
700
+ text-align: center;
701
+ }
702
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-quality-header {
703
+ text-align: center;
704
+ }
705
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer {
706
+ height: 80px;
707
+ }
708
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer-about-link {
709
+ bottom: 0;
710
+ left: 0;
711
+ }
712
+ .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer .speedtest-footer-refresh {
713
+ inset: 50% auto auto 50%;
714
+ transform: translate(-50%, -50%);
715
+ }
716
+
717
+ .speed-test-button {
718
+ margin: 10px 0 0;
719
+ color: #000;
720
+ }
721
+
722
+ .speed-test {
540
723
  position: absolute;
541
- top: 100%;
542
- left: 85%;
543
- margin-left: -10px;
544
- width: 0;
545
- height: 0;
546
- border-top: 10px solid rgba(74, 74, 74, 0.9);
547
- border-right: 10px solid transparent;
548
- border-left: 10px solid transparent;
724
+ top: 0;
725
+ left: 0;
726
+ width: 100%;
727
+ height: 100%;
728
+ z-index: 9999;
549
729
  }
550
- .multicamera[data-multicamera] li {
551
- font-size: 10px;
730
+ .speed-test .speed-test-header {
731
+ width: 100%;
732
+ height: 32px;
733
+ }
734
+ .speed-test .speed-test-header .close-speed-test {
735
+ float: right;
736
+ margin-right: 5px;
737
+ line-height: 32px;
552
738
  cursor: pointer;
739
+ color: var(--primary-text-color);
553
740
  }
554
- .multicamera[data-multicamera] li .multicamera-item {
555
- display: flex;
556
- padding: 10px 0;
557
- justify-content: center;
558
- position: relative;
741
+ .speed-test .speed-test-header .close-speed-test:hover {
742
+ color: var(--hover-text-color);
559
743
  }
560
- .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] {
561
- pointer-events: none;
744
+
745
+ .settings-button {
746
+ float: right;
747
+ margin: 0 12px 0 0;
748
+ height: 40px;
749
+ width: 24px;
750
+ border: none;
751
+ padding: 0;
562
752
  }
563
- .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-screenshot {
564
- opacity: 0.5;
753
+
754
+ .settings-options-list {
755
+ position: absolute;
756
+ right: 16px;
757
+ bottom: 52px;
758
+ background: var(--primary-background-color);
759
+ width: 250px;
760
+ height: 48px;
761
+ z-index: 9999;
762
+ border-radius: 4px;
565
763
  }
566
- .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-text {
567
- opacity: 0.5;
764
+ .settings-options-list svg {
765
+ float: left;
766
+ margin-right: 10px;
568
767
  }
569
- .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false]:hover {
570
- background-color: rgba(0, 0, 0, 0);
768
+ .settings-options-list .settings-speedtest-option {
769
+ color: var(--primary-text-color);
770
+ margin: 0;
771
+ text-align: left;
772
+ height: 24px;
773
+ line-height: 22px;
774
+ padding: 14px;
775
+ width: 250px;
776
+ font-size: 12px;
571
777
  }
572
- .multicamera[data-multicamera] li .multicamera-item:hover, .multicamera[data-multicamera] li .multicamera-item.multicamera-active {
573
- background-color: rgba(0, 0, 0, 0.3);
778
+ .settings-options-list .settings-speedtest-option:hover {
779
+ color: var(--hover-text-color);
574
780
  }
575
- .multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot {
576
- width: 80px;
577
- height: 60px;
781
+ .settings-options-list .settings-speedtest-option:hover svg path {
782
+ fill: var(--hover-text-color);
578
783
  }
579
- .multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot img {
580
- width: 80px;
581
- height: 60px;
784
+ .settings-options-list .settings-speedtest-option svg path {
785
+ fill: var(--primary-text-color);
582
786
  }
583
- .multicamera[data-multicamera] li .multicamera-item .multicamera-text {
584
- width: 120px;
787
+
788
+ .speedtest-summary {
789
+ width: 100%;
790
+ border-top: 1px solid var(--secondary-background-color) !important;
791
+ border-bottom: 1px solid var(--secondary-background-color) !important;
792
+ display: flex !important;
793
+ flex-direction: column;
794
+ align-items: stretch;
795
+ justify-content: space-between;
796
+ }
797
+ .speedtest-summary .speedtest-summary-header {
798
+ width: 100%;
799
+ padding-top: 4px;
585
800
  text-align: left;
586
- margin-left: 15px;
801
+ height: 32px;
802
+ font-size: 14px;
803
+ font-weight: 500;
804
+ line-height: 20px;
587
805
  }
588
- .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-title, .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
589
- width: 120px;
806
+ .speedtest-summary .speedtest-summary-block {
807
+ position: relative;
808
+ display: flex;
809
+ flex-direction: row;
810
+ width: 100%;
811
+ }
812
+ .speedtest-summary .speedtest-summary-block .speedtest-summary-subblock {
813
+ width: 50%;
814
+ margin-top: 4px;
815
+ margin-bottom: 12px;
816
+ }
817
+ .speedtest-summary .speedtest-summary-block .speedtest-summary-subblock-content {
818
+ padding: 2px;
819
+ width: 248px;
820
+ max-width: 100%;
821
+ }
822
+
823
+ .speedtest-quality {
824
+ width: 100%;
825
+ height: 36px;
826
+ display: flex !important;
827
+ flex-direction: column !important;
828
+ justify-content: space-between !important;
829
+ }
830
+ .speedtest-quality .speedtest-quality-header {
831
+ font-size: 12px;
590
832
  height: 20px;
591
- font-family: Roboto, "Open Sans", Arial, sans-serif;
592
- font-size: 14px;
593
- font-weight: normal;
594
- font-style: normal;
595
- font-stretch: normal;
596
- line-height: 1.43;
597
- letter-spacing: normal;
833
+ border-left: 2px solid var(--secondary-background-color) !important;
834
+ background-color: var(--secondary-background-color);
598
835
  text-align: left;
599
- color: #fff;
600
- text-overflow: ellipsis;
601
- overflow: hidden;
602
836
  }
603
- .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
604
- opacity: 0.6;
837
+ .speedtest-quality-content {
838
+ width: 100%;
839
+ margin-top: 8px;
840
+ height: 8px;
841
+ display: flex !important;
842
+ flex-direction: row !important;
843
+ align-items: stretch !important;
844
+ justify-content: space-between;
605
845
  }
606
- .multicamera[data-multicamera] li[data-title] {
607
- background-color: #c3c2c2;
608
- padding: 5px;
846
+ .speedtest-quality-content-item {
847
+ width: 18.8%;
848
+ background-color: #fff;
609
849
  }
610
- .multicamera[data-multicamera] li a {
611
- color: #444;
612
- padding: 2px 10px;
613
- display: block;
614
- text-decoration: none;
850
+ .speedtest-quality-content-item.speedtest-quality-value-1 {
851
+ background-color: var(--speedtest-red);
615
852
  }
616
- .multicamera[data-multicamera] li a:hover {
617
- background-color: #555;
618
- color: white;
853
+ .speedtest-quality-content-item.speedtest-quality-value-2 {
854
+ background-color: var(--speedtest-orange);
619
855
  }
620
- .multicamera[data-multicamera] li a:hover a {
621
- color: white;
622
- text-decoration: none;
856
+ .speedtest-quality-content-item.speedtest-quality-value-3 {
857
+ background-color: var(--speedtest-yellow);
623
858
  }
624
- .multicamera[data-multicamera] li.current a {
625
- color: #f00;
859
+ .speedtest-quality-content-item.speedtest-quality-value-4 {
860
+ background-color: var(--speedtest-light-green);
626
861
  }
627
-
628
- @keyframes pulse {
629
- 0% {
630
- color: #fff;
631
- }
632
- 50% {
633
- color: #ff0101;
634
- }
635
- 100% {
636
- color: #B80000;
637
- }
638
- }.media-control-pip {
639
- order: 95;
640
- display: flex;
862
+ .speedtest-quality-content-item.speedtest-quality-value-5 {
863
+ background-color: var(--speedtest-green);
641
864
  }
642
- .media-control-pip button {
643
- height: 20px;
865
+
866
+ .speedtest-footer {
867
+ position: relative;
868
+ float: left;
869
+ width: 100%;
870
+ height: 30px;
871
+ line-height: 16px;
644
872
  }
645
- .media-control-pip button svg {
646
- height: 20px;
647
- }.player-poster[data-poster] {
648
- display: flex;
649
- justify-content: center;
650
- align-items: center;
873
+ .speedtest-footer-about-link {
651
874
  position: absolute;
652
- height: 100%;
653
- width: 100%;
654
- z-index: 998;
655
- top: 0;
875
+ bottom: 0;
656
876
  left: 0;
657
- background-color: #000;
658
- background-size: cover;
659
- background-repeat: no-repeat;
660
- background-position: 50% 50%;
877
+ color: var(--secondary-text-color);
878
+ text-decoration: underline !important;
661
879
  }
662
- .player-poster[data-poster].clickable {
663
- cursor: pointer;
880
+ .speedtest-footer-about-link:hover {
881
+ color: var(--hover-text-color);
664
882
  }
665
- .player-poster[data-poster]:hover .play-wrapper[data-poster] {
666
- opacity: 1;
883
+ .speedtest-footer .speedtest-footer-refresh {
884
+ position: absolute;
885
+ bottom: 0;
886
+ right: 0;
887
+ color: var(--secondary-text-color);
888
+ font-size: 14px;
889
+ font-weight: 400;
890
+ line-height: 16px;
891
+ height: 16px;
892
+ display: flex;
893
+ align-items: center;
894
+ gap: 4px;
667
895
  }
668
- .player-poster[data-poster] .play-wrapper[data-poster] {
669
- width: 100%;
670
- height: 25%;
671
- margin: 0 auto;
672
- opacity: 0.75;
673
- transition: opacity 0.1s ease;
896
+ .speedtest-footer .speedtest-footer-refresh svg path {
897
+ fill: var(--secondary-text-color);
674
898
  }
675
- .player-poster[data-poster] .play-wrapper[data-poster] svg {
676
- height: 100%;
677
- display: inline;
899
+ .speedtest-footer .speedtest-footer-refresh:hover {
900
+ color: var(--hover-text-color);
678
901
  }
679
- .player-poster[data-poster] .play-wrapper[data-poster] svg path {
680
- fill: #fff;
681
- }.seek-time[data-seek-time] {
682
- position: absolute;
683
- white-space: nowrap;
684
- height: 20px;
685
- line-height: 20px;
686
- font-size: 0;
687
- left: -100%;
688
- bottom: 55px;
689
- background-color: rgba(2, 2, 2, 0.5);
690
- z-index: 9999;
691
- transition: opacity 0.1s ease;
902
+ .speedtest-footer .speedtest-footer-refresh:hover svg path {
903
+ fill: var(--hover-text-color);
692
904
  }
693
- .seek-time[data-seek-time].hidden[data-seek-time] {
694
- opacity: 0;
905
+
906
+ .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box {
907
+ position: fixed;
908
+ height: auto;
909
+ width: auto;
910
+ inset: 0;
911
+ min-width: 100vw;
912
+ padding-bottom: 4px;
913
+ padding-left: 4px;
914
+ padding-right: 4px;
695
915
  }
696
- .seek-time[data-seek-time] [data-seek-time] {
697
- display: inline-block;
698
- color: white;
699
- font-size: 10px;
700
- padding-left: 7px;
701
- padding-right: 7px;
702
- vertical-align: top;
916
+ .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top {
917
+ position: fixed;
703
918
  }
704
- .seek-time[data-seek-time] [data-duration] {
705
- display: inline-block;
706
- color: rgba(255, 255, 255, 0.5);
707
- font-size: 10px;
708
- padding-right: 7px;
709
- vertical-align: top;
919
+ .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
920
+ width: 50%;
710
921
  }
711
- .seek-time[data-seek-time] [data-duration]::before {
712
- content: "|";
713
- margin-right: 7px;
922
+
923
+ @media only screen and (orientation: portrait) {
924
+ .mobile .speedtest-summary {
925
+ padding: 0 5px;
926
+ height: auto;
927
+ }
928
+ .mobile .speedtest-summary-block {
929
+ width: 100%;
930
+ flex-direction: column;
931
+ }
932
+ .mobile .speedtest-summary-block .speedtest-summary-subblock {
933
+ width: 100%;
934
+ }
935
+ .mobile .speedtest-summary-block .speedtest-summary-subblock-content {
936
+ width: 100%;
937
+ }
938
+ .mobile .speedtest-summary-header {
939
+ padding-top: 12px;
940
+ height: 38px;
941
+ text-align: center;
942
+ }
943
+ .mobile .speedtest-quality-header {
944
+ text-align: center;
945
+ }
946
+ .mobile .speedtest-footer .speedtest-footer-refresh {
947
+ inset: 50% auto auto 50%;
948
+ transform: translate(-50%, -50%);
949
+ }
950
+ }
951
+ @media only screen and (orientation: landscape) {
952
+ .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
953
+ width: 25%;
954
+ }
714
955
  }[data-player] {
715
956
  --bottom-panel: 40px;
716
957
  }
@@ -724,12 +965,12 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
724
965
  .container.crop-video [data-html5-video] {
725
966
  object-fit: cover;
726
967
  }
727
- .container .subtitle-string {
968
+ .container .cc-line {
728
969
  position: absolute;
729
970
  bottom: calc(var(--bottom-panel) + 5px);
730
971
  width: 100%;
731
972
  }
732
- .container .subtitle-string p {
973
+ .container .cc-line p {
733
974
  width: auto;
734
975
  background-color: rgba(0, 0, 0, 0.4);
735
976
  color: white;
@@ -760,7 +1001,7 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
760
1001
  }
761
1002
 
762
1003
  .media-control-skin-1[data-media-control-skin-1].w270 .media-control-quality,
763
- .media-control-skin-1[data-media-control-skin-1].w270 .media-control-audio-tracks {
1004
+ .media-control-skin-1[data-media-control-skin-1].w270 .media-control-audiotracks {
764
1005
  display: none;
765
1006
  }
766
1007
  .media-control-skin-1[data-media-control-skin-1].w270 .media-control-layer[data-controls] .drawer-container[data-volume] .bar-container[data-volume] {
@@ -797,10 +1038,10 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
797
1038
  top: 1px;
798
1039
  }
799
1040
 
800
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-subtitles .subtitles[data-subtitles] {
1041
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-cc {
801
1042
  width: 28px;
802
1043
  }
803
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-subtitles .subtitles[data-subtitles] svg {
1044
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-cc svg {
804
1045
  height: 17px;
805
1046
  }
806
1047
  .media-control-skin-1[data-media-control-skin-1].w370 .share_plugin[data-share] .share-container {
@@ -818,47 +1059,47 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
818
1059
  visibility: hidden;
819
1060
  }
820
1061
  .media-control-skin-1[data-media-control-skin-1].w370 .media-control-quality,
821
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks {
1062
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks {
822
1063
  display: block;
823
1064
  }
824
1065
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector],
825
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] {
1066
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] {
826
1067
  margin-top: 3px;
827
1068
  margin-right: 10px;
828
1069
  }
829
1070
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] ul,
830
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] ul {
1071
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] ul {
831
1072
  bottom: 30px;
832
1073
  width: 50px;
833
1074
  }
834
1075
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] ul li,
835
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] ul li {
1076
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] ul li {
836
1077
  height: 23px;
837
1078
  font-size: 14px;
838
1079
  }
839
1080
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] ul li a,
840
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] ul li a {
1081
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] ul li a {
841
1082
  height: 23px;
842
1083
  padding: 2px 5px;
843
1084
  }
844
1085
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-level-selector-button] .quality-text,
845
1086
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-level-selector-button] .audio-text,
846
- .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-track-selector-button] .quality-text,
847
- .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-track-selector-button] .audio-text,
848
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-level-selector-button] .quality-text,
849
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-level-selector-button] .audio-text,
850
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-track-selector-button] .quality-text,
851
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-track-selector-button] .audio-text {
1087
+ .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-audiotracks-button] .quality-text,
1088
+ .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-audiotracks-button] .audio-text,
1089
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-level-selector-button] .quality-text,
1090
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-level-selector-button] .audio-text,
1091
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-audiotracks-button] .quality-text,
1092
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-audiotracks-button] .audio-text {
852
1093
  font-size: 13px;
853
1094
  }
854
1095
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-level-selector-button] span.quality-arrow,
855
1096
  .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-level-selector-button] span.audio-arrow,
856
- .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-track-selector-button] span.quality-arrow,
857
- .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-track-selector-button] span.audio-arrow,
858
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-level-selector-button] span.quality-arrow,
859
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-level-selector-button] span.audio-arrow,
860
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-track-selector-button] span.quality-arrow,
861
- .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audio-tracks[data-track-selector] button[data-track-selector-button] span.audio-arrow {
1097
+ .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-audiotracks-button] span.quality-arrow,
1098
+ .media-control-skin-1[data-media-control-skin-1].w370 .level-selector[data-level-selector] button[data-audiotracks-button] span.audio-arrow,
1099
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-level-selector-button] span.quality-arrow,
1100
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-level-selector-button] span.audio-arrow,
1101
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-audiotracks-button] span.quality-arrow,
1102
+ .media-control-skin-1[data-media-control-skin-1].w370 .media-control-audiotracks[data-audiotracks] button[data-audiotracks-button] span.audio-arrow {
862
1103
  width: 7px;
863
1104
  height: 5px;
864
1105
  margin-left: 4px;
@@ -1026,6 +1267,12 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
1026
1267
  gap: 1rem;
1027
1268
  justify-content: flex-end;
1028
1269
  }
1270
+ @media (max-width: 420px) {
1271
+ .media-control-skin-1[data-media-control-skin-1] .media-control-layer[data-controls] .media-control-right-panel {
1272
+ gap: 0.5rem;
1273
+ overflow: hidden;
1274
+ }
1275
+ }
1029
1276
  .media-control-skin-1[data-media-control-skin-1] .media-control-layer[data-controls] button.media-control-button {
1030
1277
  background-color: transparent;
1031
1278
  border: 0;
@@ -1057,7 +1304,6 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
1057
1304
  height: 100%;
1058
1305
  }
1059
1306
  .media-control-skin-1[data-media-control-skin-1] .media-control-layer[data-controls] button.media-control-button[data-fullscreen] {
1060
- float: right;
1061
1307
  order: 100;
1062
1308
  background-color: transparent;
1063
1309
  border: 0;
@@ -1278,55 +1524,45 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
1278
1524
  }
1279
1525
 
1280
1526
  /* TODO distribute between plugins' styles */
1281
- .media-control-skin-1[data-media-control-skin-1] .media-control-quality,
1282
- .media-control-skin-1[data-media-control-skin-1] .media-control-audio-tracks {
1283
- display: block;
1284
- }
1285
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] {
1286
- width: 40px;
1287
- margin-top: 0;
1288
- }
1289
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] button[data-subtitles-button] {
1527
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc button[data-cc-button] {
1290
1528
  display: flex;
1291
1529
  justify-content: center;
1292
1530
  padding: 0;
1293
1531
  align-items: center;
1294
1532
  }
1295
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] button[data-subtitles-button]:hover {
1533
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc button[data-cc-button]:hover {
1296
1534
  color: white;
1297
1535
  }
1298
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul {
1536
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul {
1299
1537
  background-color: rgba(74, 74, 74, 0.6);
1300
1538
  border: none;
1301
1539
  width: auto;
1302
- transform: rotate(180deg);
1303
1540
  border-radius: 4px;
1304
1541
  bottom: 52px;
1305
1542
  margin-left: -28px;
1306
1543
  }
1307
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li {
1308
- transform: rotate(-180deg);
1544
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li {
1309
1545
  font-size: 16px;
1310
1546
  text-align: center;
1311
1547
  white-space: nowrap;
1312
1548
  height: 30px;
1313
1549
  }
1314
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li a {
1550
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li a {
1315
1551
  height: 30px;
1316
1552
  padding: 5px 10px;
1317
1553
  color: #fffffe;
1318
1554
  }
1319
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li a:hover {
1555
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li a:hover {
1320
1556
  background-color: rgba(0, 0, 0, 0.4);
1321
1557
  }
1322
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li.current a {
1558
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li.current a {
1323
1559
  background-color: rgba(0, 0, 0, 0.4);
1324
1560
  }
1325
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li:first-child a {
1561
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li:first-child a {
1326
1562
  border-bottom-left-radius: 4px;
1327
1563
  border-bottom-right-radius: 4px;
1328
1564
  }
1329
- .media-control-skin-1[data-media-control-skin-1] .media-control-subtitles .subtitles[data-subtitles] ul li:last-child a {
1565
+ .media-control-skin-1[data-media-control-skin-1] .media-control-cc ul li:last-child a {
1330
1566
  border-top-left-radius: 4px;
1331
1567
  border-top-right-radius: 4px;
1332
1568
  }
@@ -1335,100 +1571,19 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
1335
1571
  line-height: 26px;
1336
1572
  bottom: 52px;
1337
1573
  border-radius: 3px;
1338
- background-color: rgba(74, 74, 74, 0.7);
1339
- }
1340
- .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span {
1341
- letter-spacing: 0.8px;
1342
- font-size: 14px;
1343
- font-family: Roboto, "Open Sans", Arial, sans-serif;
1344
- }
1345
- .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span[data-seek-time] {
1346
- padding-left: 8px;
1347
- padding-right: 8px;
1348
- }
1349
- .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span[data-duration] {
1350
- display: none !important;
1351
- }*, :focus, :visited {
1352
- outline: none !important;
1353
- }
1354
-
1355
- .subtitles[data-subtitles] {
1356
- float: right;
1357
- position: relative;
1358
- width: 50px;
1359
- }
1360
- .subtitles[data-subtitles] button {
1361
- background-color: transparent;
1362
- color: #fff;
1363
- font-family: Roboto, "Open Sans", Arial, sans-serif;
1364
- -webkit-font-smoothing: antialiased;
1365
- border: none;
1366
- font-size: 14px;
1367
- cursor: pointer;
1368
- }
1369
- .subtitles[data-subtitles] button .subtitle-text svg {
1370
- fill: white;
1371
- }
1372
- .subtitles[data-subtitles] button:hover {
1373
- color: #c9c9c9;
1374
- }
1375
- .subtitles[data-subtitles] button.changing {
1376
- animation: pulse 0.5s infinite alternate;
1377
- }
1378
- .subtitles[data-subtitles] > ul {
1379
- width: 80px;
1380
- list-style-type: none;
1381
- position: absolute;
1382
- bottom: 25px;
1383
- border: 1px solid black;
1384
- display: none;
1385
- background-color: #e6e6e6;
1386
- }
1387
- .subtitles[data-subtitles] li {
1388
- font-size: 10px;
1389
- }
1390
- .subtitles[data-subtitles] li[data-title] {
1391
- background-color: #c3c2c2;
1392
- padding: 5px;
1393
- }
1394
- .subtitles[data-subtitles] li a {
1395
- color: #444;
1396
- padding: 2px 10px;
1397
- display: block;
1398
- text-decoration: none;
1399
- }
1400
- .subtitles[data-subtitles] li a:hover {
1401
- background-color: #555;
1402
- color: white;
1403
- }
1404
- .subtitles[data-subtitles] li a:hover a {
1405
- color: white;
1406
- text-decoration: none;
1407
- }
1408
- .subtitles[data-subtitles] li.current a {
1409
- color: #f00;
1410
- background-color: #555;
1411
- }
1412
-
1413
- @keyframes pulse {
1414
- 0% {
1415
- color: #fff;
1416
- }
1417
- 50% {
1418
- color: #ff0101;
1419
- }
1420
- 100% {
1421
- color: #B80000;
1422
- }
1574
+ background-color: rgba(74, 74, 74, 0.7);
1423
1575
  }
1424
- ::cue {
1425
- visibility: hidden !important;
1426
- font-size: 0 !important;
1576
+ .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span {
1577
+ letter-spacing: 0.8px;
1578
+ font-size: 14px;
1579
+ font-family: Roboto, "Open Sans", Arial, sans-serif;
1427
1580
  }
1428
-
1429
- .ios-fullscreen::cue {
1430
- visibility: visible !important;
1431
- font-size: 1em !important;
1581
+ .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span[data-seek-time] {
1582
+ padding-left: 8px;
1583
+ padding-right: 8px;
1584
+ }
1585
+ .media-control-skin-1[data-media-control-skin-1] .seek-time[data-seek-time] span[data-duration] {
1586
+ display: none !important;
1432
1587
  }.share_plugin[data-share] {
1433
1588
  pointer-events: auto;
1434
1589
  z-index: 5;
@@ -1485,474 +1640,223 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
1485
1640
  width: 24px;
1486
1641
  float: right;
1487
1642
  margin: 5px;
1488
- cursor: pointer;
1489
- }
1490
- .share_plugin[data-share] .share-container .share-container-main {
1491
- margin-bottom: 8px;
1492
- }
1493
- .share_plugin[data-share] .share-container .share-container-main > div {
1494
- text-align: left;
1495
- font-size: 14px;
1496
- padding: 5px;
1497
- }
1498
- .share_plugin[data-share] .share-container .share-container-main .share-container-header--link, .share_plugin[data-share] .share-container .share-container-main .share-container-header--embed {
1499
- overflow: hidden;
1500
- text-overflow: ellipsis;
1501
- color: #818181;
1502
- border: solid 1px #d3d3d3;
1503
- width: calc(100% - 10px);
1504
- padding: 5px;
1505
- }
1506
- .share_plugin[data-share] .share-container .share-container-main .share-container-header--embed {
1507
- max-height: 90px;
1508
- resize: none;
1509
- }
1510
- .share_plugin[data-share] .share-container .share-container-main .share-container-header--socialicon > div {
1511
- width: 32px;
1512
- display: inline-block;
1513
- margin-right: 5px;
1514
- cursor: pointer;
1515
- }.container-with-poster-clickable .skip_time_plugin[data-skip-time] {
1516
- height: 0;
1517
- }
1518
-
1519
- .skip_time_plugin[data-skip-time] {
1520
- position: absolute;
1521
- width: 100%;
1522
- height: calc(100% - 50px);
1523
- z-index: 9998;
1524
- background-color: transparent;
1525
- font-family: Roboto, "Open Sans", Arial, sans-serif;
1526
- }
1527
- .skip_time_plugin[data-skip-time] .skip-container[data-skip-container] {
1528
- width: 100%;
1529
- height: 100%;
1530
- display: flex;
1531
- justify-content: space-between;
1532
- }
1533
- .skip_time_plugin[data-skip-time] .skip-container[data-skip-container] .skip-item {
1534
- width: 33.3%;
1535
- height: 100%;
1536
- }:root {
1537
- --primary-background-color: #000;
1538
- --secondary-background-color: #262626;
1539
- --primary-text-color: #fff;
1540
- --secondary-text-color: #fff4f2;
1541
- --hover-text-color: #f9b090;
1542
- --speedtest-red: #df564d;
1543
- --speedtest-orange: #df934d;
1544
- --speedtest-yellow: #dfd04d;
1545
- --speedtest-light-green: #c2df4d;
1546
- --speedtest-green: #73df4d;
1547
- }
1548
-
1549
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box {
1550
- position: absolute;
1551
- display: inline-block;
1552
- bottom: 52px;
1553
- right: 16px;
1554
- padding: 0 10px 12px;
1555
- margin: 0;
1556
- line-height: 20px;
1557
- font-size: 12px;
1558
- font-weight: 500;
1559
- background: var(--primary-background-color);
1560
- color: #fff;
1561
- z-index: 20000;
1562
- overflow: auto;
1563
- max-height: calc(100vh - 60px);
1564
- max-width: calc(100vw - 10px);
1565
- }
1566
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top {
1567
- position: absolute;
1568
- top: 0;
1569
- left: 0;
1570
- z-index: 99990;
1571
- width: 100%;
1572
- height: 32px;
1573
- background: var(--primary-background-color);
1574
- }
1575
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button {
1576
- float: right;
1577
- margin-right: 12px;
1578
- margin-top: 10px;
1579
- display: block;
1580
- width: 12px;
1581
- height: 12px;
1582
- }
1583
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button svg path {
1584
- fill: var(--primary-text-color);
1585
- }
1586
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top .close-button:hover svg path {
1587
- fill: var(--hover-text-color);
1588
- }
1589
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-main {
1590
- overflow: hidden;
1591
- margin-top: 44px;
1592
- }
1593
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.wide {
1594
- width: 820px;
1595
- }
1596
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul, .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box li {
1597
- list-style-type: none;
1598
- }
1599
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul div, .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box li div {
1600
- padding-left: 2px;
1601
- padding-right: 2px;
1602
- background: var(--primary-background-color);
1603
- }
1604
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
1605
- display: inline-block;
1606
- float: left;
1607
- padding: 5px;
1608
- width: 200px;
1609
- }
1610
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li {
1611
- position: relative;
1612
- padding: 0 5px;
1613
- text-align: left;
1614
- }
1615
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.canvas-wrapper {
1616
- padding: 0;
1617
- }
1618
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.canvas-wrapper canvas {
1619
- width: 100%;
1620
- }
1621
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li:nth-child(2n) {
1622
- background: var(--secondary-background-color);
1623
- }
1624
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li:nth-child(2n) div {
1625
- background: var(--secondary-background-color);
1626
- }
1627
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li.title {
1628
- text-align: center;
1629
- font-weight: bold;
1630
- padding-bottom: 4px;
1631
- font-size: 14px;
1632
- }
1633
- .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul li div {
1634
- margin: 0;
1635
- position: absolute;
1636
- right: 0;
1637
- top: 0;
1638
- }
1639
-
1640
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow {
1641
- width: 250px;
1642
- }
1643
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow ul {
1644
- width: 100%;
1645
- }
1646
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary {
1647
- padding: 0 5px;
1648
- height: auto;
1649
- }
1650
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block {
1651
- width: 100%;
1652
- flex-direction: column;
1653
- }
1654
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block .speedtest-summary-subblock {
1655
- width: 100%;
1656
- }
1657
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-block .speedtest-summary-subblock-content {
1658
- width: 100%;
1659
- }
1660
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-summary-header {
1661
- padding-top: 12px;
1662
- height: 38px;
1663
- text-align: center;
1664
- }
1665
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-quality-header {
1666
- text-align: center;
1667
- }
1668
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer {
1669
- height: 80px;
1670
- }
1671
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer-about-link {
1672
- bottom: 0;
1673
- left: 0;
1674
- }
1675
- .desktop .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box.narrow .speedtest-footer .speedtest-footer-refresh {
1676
- inset: 50% auto auto 50%;
1677
- transform: translate(-50%, -50%);
1678
- }
1679
-
1680
- .speed-test-button {
1681
- margin: 10px 0 0;
1682
- color: #000;
1683
- }
1684
-
1685
- .speed-test {
1686
- position: absolute;
1687
- top: 0;
1688
- left: 0;
1689
- width: 100%;
1690
- height: 100%;
1691
- z-index: 9999;
1692
- }
1693
- .speed-test .speed-test-header {
1694
- width: 100%;
1695
- height: 32px;
1696
- }
1697
- .speed-test .speed-test-header .close-speed-test {
1698
- float: right;
1699
- margin-right: 5px;
1700
- line-height: 32px;
1701
- cursor: pointer;
1702
- color: var(--primary-text-color);
1703
- }
1704
- .speed-test .speed-test-header .close-speed-test:hover {
1705
- color: var(--hover-text-color);
1706
- }
1707
-
1708
- .settings-button {
1709
- float: right;
1710
- margin: 0 12px 0 0;
1711
- height: 40px;
1712
- width: 24px;
1713
- border: none;
1714
- padding: 0;
1715
- }
1716
-
1717
- .settings-options-list {
1718
- position: absolute;
1719
- right: 16px;
1720
- bottom: 52px;
1721
- background: var(--primary-background-color);
1722
- width: 250px;
1723
- height: 48px;
1724
- z-index: 9999;
1725
- border-radius: 4px;
1643
+ cursor: pointer;
1726
1644
  }
1727
- .settings-options-list svg {
1728
- float: left;
1729
- margin-right: 10px;
1645
+ .share_plugin[data-share] .share-container .share-container-main {
1646
+ margin-bottom: 8px;
1730
1647
  }
1731
- .settings-options-list .settings-speedtest-option {
1732
- color: var(--primary-text-color);
1733
- margin: 0;
1648
+ .share_plugin[data-share] .share-container .share-container-main > div {
1734
1649
  text-align: left;
1735
- height: 24px;
1736
- line-height: 22px;
1737
- padding: 14px;
1738
- width: 250px;
1739
- font-size: 12px;
1650
+ font-size: 14px;
1651
+ padding: 5px;
1740
1652
  }
1741
- .settings-options-list .settings-speedtest-option:hover {
1742
- color: var(--hover-text-color);
1653
+ .share_plugin[data-share] .share-container .share-container-main .share-container-header--link, .share_plugin[data-share] .share-container .share-container-main .share-container-header--embed {
1654
+ overflow: hidden;
1655
+ text-overflow: ellipsis;
1656
+ color: #818181;
1657
+ border: solid 1px #d3d3d3;
1658
+ width: calc(100% - 10px);
1659
+ padding: 5px;
1743
1660
  }
1744
- .settings-options-list .settings-speedtest-option:hover svg path {
1745
- fill: var(--hover-text-color);
1661
+ .share_plugin[data-share] .share-container .share-container-main .share-container-header--embed {
1662
+ max-height: 90px;
1663
+ resize: none;
1746
1664
  }
1747
- .settings-options-list .settings-speedtest-option svg path {
1748
- fill: var(--primary-text-color);
1665
+ .share_plugin[data-share] .share-container .share-container-main .share-container-header--socialicon > div {
1666
+ width: 32px;
1667
+ display: inline-block;
1668
+ margin-right: 5px;
1669
+ cursor: pointer;
1670
+ }.media-control-pip {
1671
+ order: 95;
1672
+ display: flex;
1673
+ }
1674
+ .media-control-pip button {
1675
+ height: 20px;
1676
+ }
1677
+ .media-control-pip button svg {
1678
+ height: 20px;
1679
+ }*, :focus, :visited {
1680
+ outline: none !important;
1749
1681
  }
1750
1682
 
1751
- .speedtest-summary {
1752
- width: 100%;
1753
- border-top: 1px solid var(--secondary-background-color) !important;
1754
- border-bottom: 1px solid var(--secondary-background-color) !important;
1755
- display: flex !important;
1756
- flex-direction: column;
1757
- align-items: stretch;
1758
- justify-content: space-between;
1683
+ .multicamera[data-multicamera] {
1684
+ float: right;
1685
+ margin-top: 4px;
1686
+ position: relative;
1687
+ margin-right: 20px;
1688
+ width: 20px;
1759
1689
  }
1760
- .speedtest-summary .speedtest-summary-header {
1761
- width: 100%;
1762
- padding-top: 4px;
1763
- text-align: left;
1764
- height: 32px;
1690
+ .multicamera[data-multicamera] button {
1691
+ background-color: transparent;
1692
+ color: #fff;
1693
+ font-family: Roboto, "Open Sans", Arial, sans-serif;
1694
+ -webkit-font-smoothing: antialiased;
1695
+ border: none;
1765
1696
  font-size: 14px;
1766
- font-weight: 500;
1767
- line-height: 20px;
1697
+ padding: 0;
1768
1698
  }
1769
- .speedtest-summary .speedtest-summary-block {
1699
+ .multicamera[data-multicamera] button svg {
1700
+ height: 20px;
1770
1701
  position: relative;
1771
- display: flex;
1772
- flex-direction: row;
1773
- width: 100%;
1702
+ margin-top: 6px;
1774
1703
  }
1775
- .speedtest-summary .speedtest-summary-block .speedtest-summary-subblock {
1776
- width: 50%;
1777
- margin-top: 4px;
1778
- margin-bottom: 12px;
1704
+ .multicamera[data-multicamera] button:hover {
1705
+ color: #c9c9c9;
1779
1706
  }
1780
- .speedtest-summary .speedtest-summary-block .speedtest-summary-subblock-content {
1781
- padding: 2px;
1782
- width: 248px;
1783
- max-width: 100%;
1707
+ .multicamera[data-multicamera] button.changing {
1708
+ animation: pulse 0.5s infinite alternate;
1784
1709
  }
1785
-
1786
- .speedtest-quality {
1787
- width: 100%;
1788
- height: 36px;
1789
- display: flex !important;
1790
- flex-direction: column !important;
1791
- justify-content: space-between !important;
1710
+ .multicamera[data-multicamera] button span.quality-arrow {
1711
+ width: 9px;
1712
+ height: 6px;
1713
+ margin-top: 11px;
1714
+ margin-left: 5px;
1792
1715
  }
1793
- .speedtest-quality .speedtest-quality-header {
1794
- font-size: 12px;
1795
- height: 20px;
1796
- border-left: 2px solid var(--secondary-background-color) !important;
1797
- background-color: var(--secondary-background-color);
1798
- text-align: left;
1716
+ .multicamera[data-multicamera] > ul {
1717
+ padding: 6px 0;
1718
+ right: -24px;
1719
+ width: 245px;
1720
+ list-style-type: none;
1721
+ position: absolute;
1722
+ bottom: 48px;
1723
+ border-radius: 4px;
1724
+ display: none;
1725
+ background-color: rgba(74, 74, 74, 0.9);
1799
1726
  }
1800
- .speedtest-quality-content {
1801
- width: 100%;
1802
- margin-top: 8px;
1803
- height: 8px;
1804
- display: flex !important;
1805
- flex-direction: row !important;
1806
- align-items: stretch !important;
1807
- justify-content: space-between;
1727
+ .multicamera[data-multicamera] > ul::after {
1728
+ content: "";
1729
+ position: absolute;
1730
+ top: 100%;
1731
+ left: 85%;
1732
+ margin-left: -10px;
1733
+ width: 0;
1734
+ height: 0;
1735
+ border-top: 10px solid rgba(74, 74, 74, 0.9);
1736
+ border-right: 10px solid transparent;
1737
+ border-left: 10px solid transparent;
1808
1738
  }
1809
- .speedtest-quality-content-item {
1810
- width: 18.8%;
1811
- background-color: #fff;
1739
+ .multicamera[data-multicamera] li {
1740
+ font-size: 10px;
1741
+ cursor: pointer;
1812
1742
  }
1813
- .speedtest-quality-content-item.speedtest-quality-value-1 {
1814
- background-color: var(--speedtest-red);
1743
+ .multicamera[data-multicamera] li .multicamera-item {
1744
+ display: flex;
1745
+ padding: 10px 0;
1746
+ justify-content: center;
1747
+ position: relative;
1815
1748
  }
1816
- .speedtest-quality-content-item.speedtest-quality-value-2 {
1817
- background-color: var(--speedtest-orange);
1749
+ .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] {
1750
+ pointer-events: none;
1818
1751
  }
1819
- .speedtest-quality-content-item.speedtest-quality-value-3 {
1820
- background-color: var(--speedtest-yellow);
1752
+ .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-screenshot {
1753
+ opacity: 0.5;
1821
1754
  }
1822
- .speedtest-quality-content-item.speedtest-quality-value-4 {
1823
- background-color: var(--speedtest-light-green);
1755
+ .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false] .multicamera-text {
1756
+ opacity: 0.5;
1824
1757
  }
1825
- .speedtest-quality-content-item.speedtest-quality-value-5 {
1826
- background-color: var(--speedtest-green);
1758
+ .multicamera[data-multicamera] li .multicamera-item[data-mulitcamera-selector-live=false]:hover {
1759
+ background-color: rgba(0, 0, 0, 0);
1827
1760
  }
1828
-
1829
- .speedtest-footer {
1830
- position: relative;
1831
- float: left;
1832
- width: 100%;
1833
- height: 30px;
1834
- line-height: 16px;
1761
+ .multicamera[data-multicamera] li .multicamera-item:hover, .multicamera[data-multicamera] li .multicamera-item.multicamera-active {
1762
+ background-color: rgba(0, 0, 0, 0.3);
1835
1763
  }
1836
- .speedtest-footer-about-link {
1837
- position: absolute;
1838
- bottom: 0;
1839
- left: 0;
1840
- color: var(--secondary-text-color);
1841
- text-decoration: underline !important;
1764
+ .multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot {
1765
+ width: 80px;
1766
+ height: 60px;
1842
1767
  }
1843
- .speedtest-footer-about-link:hover {
1844
- color: var(--hover-text-color);
1768
+ .multicamera[data-multicamera] li .multicamera-item .multicamera-screenshot img {
1769
+ width: 80px;
1770
+ height: 60px;
1845
1771
  }
1846
- .speedtest-footer .speedtest-footer-refresh {
1847
- position: absolute;
1848
- bottom: 0;
1849
- right: 0;
1850
- color: var(--secondary-text-color);
1851
- font-size: 14px;
1852
- font-weight: 400;
1853
- line-height: 16px;
1854
- height: 16px;
1855
- display: flex;
1856
- align-items: center;
1857
- gap: 4px;
1772
+ .multicamera[data-multicamera] li .multicamera-item .multicamera-text {
1773
+ width: 120px;
1774
+ text-align: left;
1775
+ margin-left: 15px;
1858
1776
  }
1859
- .speedtest-footer .speedtest-footer-refresh svg path {
1860
- fill: var(--secondary-text-color);
1777
+ .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-title, .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
1778
+ width: 120px;
1779
+ height: 20px;
1780
+ font-family: Roboto, "Open Sans", Arial, sans-serif;
1781
+ font-size: 14px;
1782
+ font-weight: normal;
1783
+ font-style: normal;
1784
+ font-stretch: normal;
1785
+ line-height: 1.43;
1786
+ letter-spacing: normal;
1787
+ text-align: left;
1788
+ color: #fff;
1789
+ text-overflow: ellipsis;
1790
+ overflow: hidden;
1861
1791
  }
1862
- .speedtest-footer .speedtest-footer-refresh:hover {
1863
- color: var(--hover-text-color);
1792
+ .multicamera[data-multicamera] li .multicamera-item .multicamera-text .multicamera-description {
1793
+ opacity: 0.6;
1864
1794
  }
1865
- .speedtest-footer .speedtest-footer-refresh:hover svg path {
1866
- fill: var(--hover-text-color);
1795
+ .multicamera[data-multicamera] li[data-title] {
1796
+ background-color: #c3c2c2;
1797
+ padding: 5px;
1867
1798
  }
1868
-
1869
- .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box {
1870
- position: fixed;
1871
- height: auto;
1872
- width: auto;
1873
- inset: 0;
1874
- min-width: 100vw;
1875
- padding-bottom: 4px;
1876
- padding-left: 4px;
1877
- padding-right: 4px;
1799
+ .multicamera[data-multicamera] li a {
1800
+ color: #444;
1801
+ padding: 2px 10px;
1802
+ display: block;
1803
+ text-decoration: none;
1878
1804
  }
1879
- .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box-top {
1880
- position: fixed;
1805
+ .multicamera[data-multicamera] li a:hover {
1806
+ background-color: #555;
1807
+ color: white;
1881
1808
  }
1882
- .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
1883
- width: 50%;
1809
+ .multicamera[data-multicamera] li a:hover a {
1810
+ color: white;
1811
+ text-decoration: none;
1812
+ }
1813
+ .multicamera[data-multicamera] li.current a {
1814
+ color: #f00;
1884
1815
  }
1885
1816
 
1886
- @media only screen and (orientation: portrait) {
1887
- .mobile .speedtest-summary {
1888
- padding: 0 5px;
1889
- height: auto;
1890
- }
1891
- .mobile .speedtest-summary-block {
1892
- width: 100%;
1893
- flex-direction: column;
1894
- }
1895
- .mobile .speedtest-summary-block .speedtest-summary-subblock {
1896
- width: 100%;
1897
- }
1898
- .mobile .speedtest-summary-block .speedtest-summary-subblock-content {
1899
- width: 100%;
1900
- }
1901
- .mobile .speedtest-summary-header {
1902
- padding-top: 12px;
1903
- height: 38px;
1904
- text-align: center;
1905
- }
1906
- .mobile .speedtest-quality-header {
1907
- text-align: center;
1817
+ @keyframes pulse {
1818
+ 0% {
1819
+ color: #fff;
1908
1820
  }
1909
- .mobile .speedtest-footer .speedtest-footer-refresh {
1910
- inset: 50% auto auto 50%;
1911
- transform: translate(-50%, -50%);
1821
+ 50% {
1822
+ color: #ff0101;
1912
1823
  }
1913
- }
1914
- @media only screen and (orientation: landscape) {
1915
- .mobile .clappr-nerd-stats[data-clappr-nerd-stats] .stats-box ul {
1916
- width: 25%;
1824
+ 100% {
1825
+ color: #B80000;
1917
1826
  }
1918
- }.spinner-three-bounce[data-spinner] {
1827
+ }.seek-time[data-seek-time] {
1919
1828
  position: absolute;
1920
- width: 70px;
1921
- text-align: center;
1922
- z-index: 999;
1923
- left: 0;
1924
- right: 0;
1925
- margin: 0 auto;
1926
- margin-left: auto;
1927
- margin-right: auto;
1928
- /* center vertically */
1929
- top: 50%;
1930
- transform: translateY(-50%);
1829
+ white-space: nowrap;
1830
+ height: 20px;
1831
+ line-height: 20px;
1832
+ font-size: 0;
1833
+ left: -100%;
1834
+ bottom: 55px;
1835
+ background-color: rgba(2, 2, 2, 0.5);
1836
+ z-index: 9999;
1837
+ transition: opacity 0.1s ease;
1931
1838
  }
1932
- .spinner-three-bounce[data-spinner] > div {
1933
- width: 18px;
1934
- height: 18px;
1935
- background-color: #FFF;
1936
- border-radius: 100%;
1937
- display: inline-block;
1938
- animation: bouncedelay 1.4s infinite ease-in-out;
1939
- /* Prevent first frame from flickering when animation starts */
1940
- animation-fill-mode: both;
1839
+ .seek-time[data-seek-time].hidden[data-seek-time] {
1840
+ opacity: 0;
1941
1841
  }
1942
- .spinner-three-bounce[data-spinner] [data-bounce1] {
1943
- animation-delay: -0.32s;
1842
+ .seek-time[data-seek-time] [data-seek-time] {
1843
+ display: inline-block;
1844
+ color: white;
1845
+ font-size: 10px;
1846
+ padding-left: 7px;
1847
+ padding-right: 7px;
1848
+ vertical-align: top;
1944
1849
  }
1945
- .spinner-three-bounce[data-spinner] [data-bounce2] {
1946
- animation-delay: -0.16s;
1850
+ .seek-time[data-seek-time] [data-duration] {
1851
+ display: inline-block;
1852
+ color: rgba(255, 255, 255, 0.5);
1853
+ font-size: 10px;
1854
+ padding-right: 7px;
1855
+ vertical-align: top;
1947
1856
  }
1948
-
1949
- @keyframes bouncedelay {
1950
- 0%, 80%, 100% {
1951
- transform: scale(0);
1952
- }
1953
- 40% {
1954
- transform: scale(1);
1955
- }
1857
+ .seek-time[data-seek-time] [data-duration]::before {
1858
+ content: "|";
1859
+ margin-right: 7px;
1956
1860
  }.scrub-thumbnails {
1957
1861
  position: absolute;
1958
1862
  bottom: 52px;
@@ -2014,55 +1918,118 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
2014
1918
  }
2015
1919
  .scrub-thumbnails .backdrop .carousel img {
2016
1920
  width: auto;
2017
- }.big-mute-icon-wrapper[data-big-mute] {
2018
- position: absolute;
2019
- z-index: 9998;
1921
+ }*,
1922
+ :focus,
1923
+ :visited {
1924
+ outline: none !important;
1925
+ }
1926
+
1927
+ .media-control-cc[data-cc] {
1928
+ position: relative;
1929
+ order: 85;
1930
+ }
1931
+ .media-control-cc[data-cc] button {
2020
1932
  background-color: transparent;
2021
- display: flex;
2022
- justify-content: center;
2023
- width: 100%;
2024
- height: calc(100% - 50px);
2025
- margin: 0 auto;
2026
- opacity: 0.75;
2027
- transition: opacity 0.1s ease;
2028
- pointer-events: auto;
1933
+ color: #fff;
1934
+ -webkit-font-smoothing: antialiased;
1935
+ border: none;
1936
+ cursor: pointer;
2029
1937
  }
2030
- .big-mute-icon-wrapper[data-big-mute].hide {
1938
+ .media-control-cc[data-cc] button .cc-text svg {
1939
+ fill: white;
1940
+ }
1941
+ .media-control-cc[data-cc] button:hover {
1942
+ color: #c9c9c9;
1943
+ }
1944
+ .media-control-cc[data-cc] button.changing {
1945
+ animation: pulse 0.5s infinite alternate;
1946
+ }
1947
+ .media-control-cc[data-cc] ul {
1948
+ width: 80px;
1949
+ list-style-type: none;
1950
+ position: absolute;
1951
+ bottom: 25px;
1952
+ border: 1px solid black;
2031
1953
  display: none;
1954
+ background-color: #e6e6e6;
1955
+ padding: 8px 0;
2032
1956
  }
2033
- .big-mute-icon-wrapper[data-big-mute]:hover {
2034
- cursor: pointer;
1957
+ .media-control-cc[data-cc] li a {
1958
+ color: #444;
1959
+ padding: 2px 10px;
1960
+ display: block;
1961
+ text-decoration: none;
1962
+ }
1963
+ .media-control-cc[data-cc] li a:hover {
1964
+ background-color: #555;
1965
+ color: white;
1966
+ }
1967
+ .media-control-cc[data-cc] li a:hover a {
1968
+ color: white;
1969
+ text-decoration: none;
1970
+ }
1971
+ .media-control-cc[data-cc] li.current a {
1972
+ color: #f00;
1973
+ background-color: #555;
2035
1974
  }
2036
1975
 
2037
- .big-mute-icon[data-big-mute-icon] {
2038
- display: flex;
2039
- align-items: center;
2040
- justify-content: center;
2041
- align-self: center;
2042
- width: 120px;
2043
- height: 120px;
2044
- border: 2px solid white;
2045
- border-radius: 50%;
2046
- filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)";
2047
- filter: alpha(opacity=60);
2048
- opacity: 1;
2049
- box-shadow: 0 0 1px 0 white;
2050
- background: rgba(240, 243, 247, 0.9411764706);
2051
- z-index: 10000;
1976
+ @keyframes pulse {
1977
+ 0% {
1978
+ color: #fff;
1979
+ }
1980
+ 50% {
1981
+ color: #ff0101;
1982
+ }
1983
+ 100% {
1984
+ color: #B80000;
1985
+ }
2052
1986
  }
2053
- .big-mute-icon[data-big-mute-icon] svg {
2054
- margin-left: 5px;
2055
- width: 80px;
2056
- height: 80px;
1987
+ ::cue {
1988
+ visibility: hidden !important;
1989
+ font-size: 0 !important;
2057
1990
  }
2058
- .big-mute-icon[data-big-mute-icon] svg path {
2059
- fill: #1f1e1e !important;
1991
+
1992
+ .ios-fullscreen::cue {
1993
+ visibility: visible !important;
1994
+ font-size: 1em !important;
1995
+ }.spinner-three-bounce[data-spinner] {
1996
+ position: absolute;
1997
+ width: 70px;
1998
+ text-align: center;
1999
+ z-index: 999;
2000
+ left: 0;
2001
+ right: 0;
2002
+ margin: 0 auto;
2003
+ margin-left: auto;
2004
+ margin-right: auto;
2005
+ /* center vertically */
2006
+ top: 50%;
2007
+ transform: translateY(-50%);
2060
2008
  }
2061
- .big-mute-icon[data-big-mute-icon]:hover {
2062
- background: rgba(240, 243, 247, 0.8784313725);
2009
+ .spinner-three-bounce[data-spinner] > div {
2010
+ width: 18px;
2011
+ height: 18px;
2012
+ background-color: #FFF;
2013
+ border-radius: 100%;
2014
+ display: inline-block;
2015
+ animation: bouncedelay 1.4s infinite ease-in-out;
2016
+ /* Prevent first frame from flickering when animation starts */
2017
+ animation-fill-mode: both;
2063
2018
  }
2064
- .big-mute-icon[data-big-mute-icon]:hover svg path {
2065
- fill: #151515 !important;
2019
+ .spinner-three-bounce[data-spinner] [data-bounce1] {
2020
+ animation-delay: -0.32s;
2021
+ }
2022
+ .spinner-three-bounce[data-spinner] [data-bounce2] {
2023
+ animation-delay: -0.16s;
2024
+ }
2025
+
2026
+ @keyframes bouncedelay {
2027
+ 0%, 80%, 100% {
2028
+ transform: scale(0);
2029
+ }
2030
+ 40% {
2031
+ transform: scale(1);
2032
+ }
2066
2033
  }.player-logo[data-logo] {
2067
2034
  position: absolute;
2068
2035
  z-index: 2;
@@ -2072,4 +2039,25 @@ div.player-error-screen__reload, [data-player] div.player-error-screen__reload {
2072
2039
 
2073
2040
  .clappr-logo {
2074
2041
  position: absolute;
2042
+ }.container-with-poster-clickable .skip_time_plugin[data-skip-time] {
2043
+ height: 0;
2044
+ }
2045
+
2046
+ .skip_time_plugin[data-skip-time] {
2047
+ position: absolute;
2048
+ width: 100%;
2049
+ height: calc(100% - 50px);
2050
+ z-index: 9998;
2051
+ background-color: transparent;
2052
+ font-family: Roboto, "Open Sans", Arial, sans-serif;
2053
+ }
2054
+ .skip_time_plugin[data-skip-time] .skip-container[data-skip-container] {
2055
+ width: 100%;
2056
+ height: 100%;
2057
+ display: flex;
2058
+ justify-content: space-between;
2059
+ }
2060
+ .skip_time_plugin[data-skip-time] .skip-container[data-skip-container] .skip-item {
2061
+ width: 33.3%;
2062
+ height: 100%;
2075
2063
  }