@hanifhan1f/vidstack-react 1.12.13 → 1.12.14

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 (389) hide show
  1. package/dev/chunks/vidstack-B-FM4-oZ.js +668 -0
  2. package/dev/chunks/vidstack-B92UncBI.js +61 -0
  3. package/dev/chunks/vidstack-BDiAEW1N.js +11691 -0
  4. package/dev/chunks/vidstack-BZIhWvGa.js +1371 -0
  5. package/dev/chunks/vidstack-Bfi_jCvb.js +476 -0
  6. package/dev/chunks/vidstack-CBF7iUqu.js +22 -0
  7. package/dev/chunks/vidstack-CFZ0rYJz.js +34 -0
  8. package/dev/chunks/vidstack-CM82l-7o.js +551 -0
  9. package/dev/chunks/vidstack-CvWDiSTs.js +84 -0
  10. package/dev/chunks/vidstack-CzU-uC5f.js +189 -0
  11. package/dev/chunks/vidstack-D-hQD1eE.js +9 -0
  12. package/dev/chunks/vidstack-D6_9yy0x.js +643 -0
  13. package/dev/chunks/vidstack-DJQOTrl6.js +180 -0
  14. package/dev/chunks/vidstack-DNbKNc4R.js +288 -0
  15. package/dev/chunks/vidstack-D_bWd66h.js +2023 -0
  16. package/dev/chunks/vidstack-Dm1xEU9Q.js +36 -0
  17. package/dev/chunks/vidstack-f6WXkmfP.js +375 -0
  18. package/dev/chunks/vidstack-krOAtKMi.js +34 -0
  19. package/dev/chunks/vidstack-lYFZKRUc.js +401 -0
  20. package/dev/player/vidstack-default-components.js +14 -0
  21. package/dev/player/vidstack-default-icons.js +88 -0
  22. package/dev/player/vidstack-default-layout.js +14 -0
  23. package/dev/player/vidstack-plyr-icons.js +62 -0
  24. package/dev/player/vidstack-plyr-layout.js +636 -0
  25. package/dev/player/vidstack-remotion.js +345 -0
  26. package/dev/vidstack.js +587 -0
  27. package/dom.d.ts +91 -0
  28. package/google-cast.d.ts +1422 -0
  29. package/icons.d.ts +5 -0
  30. package/index.d.ts +8 -0
  31. package/package.json +9 -60
  32. package/player/layouts/default.d.ts +11392 -0
  33. package/player/layouts/plyr.d.ts +5 -0
  34. package/player/remotion.d.ts +5 -0
  35. package/player/styles/base.css +153 -0
  36. package/player/styles/default/buffering.css +55 -0
  37. package/player/styles/default/buttons.css +175 -0
  38. package/player/styles/default/captions.css +181 -0
  39. package/player/styles/default/chapter-title.css +26 -0
  40. package/player/styles/default/controls.css +56 -0
  41. package/player/styles/default/gestures.css +19 -0
  42. package/player/styles/default/icons.css +6 -0
  43. package/player/styles/default/keyboard.css +148 -0
  44. package/player/styles/default/layouts/audio.css +417 -0
  45. package/player/styles/default/layouts/video.css +1082 -0
  46. package/player/styles/default/menus.css +959 -0
  47. package/player/styles/default/poster.css +52 -0
  48. package/player/styles/default/sliders.css +391 -0
  49. package/player/styles/default/theme.css +2461 -0
  50. package/player/styles/default/thumbnail.css +40 -0
  51. package/player/styles/default/time.css +45 -0
  52. package/player/styles/default/tooltips.css +141 -0
  53. package/player/styles/plyr/theme.css +1237 -0
  54. package/prod/chunks/vidstack-0Foyib2F.js +34 -0
  55. package/prod/chunks/vidstack-BbPEqH3g.js +11196 -0
  56. package/prod/chunks/vidstack-Bh7M8kL6.js +663 -0
  57. package/prod/chunks/vidstack-BlPINAXN.js +189 -0
  58. package/prod/chunks/vidstack-C5Rzkyfp.js +375 -0
  59. package/prod/chunks/vidstack-CBF7iUqu.js +22 -0
  60. package/prod/chunks/vidstack-CZNlvfmV.js +288 -0
  61. package/prod/chunks/vidstack-CZgUA94N.js +1979 -0
  62. package/prod/chunks/vidstack-D0XCUWbp.js +159 -0
  63. package/prod/chunks/vidstack-DTyDOhwS.js +504 -0
  64. package/prod/chunks/vidstack-DhC5F6c8.js +470 -0
  65. package/prod/chunks/vidstack-Dm1xEU9Q.js +36 -0
  66. package/prod/chunks/vidstack-Ma9rwtR0.js +386 -0
  67. package/prod/chunks/vidstack-WsodkLQg.js +1371 -0
  68. package/prod/chunks/vidstack-jIPoNqhj.js +545 -0
  69. package/prod/chunks/vidstack-krOAtKMi.js +34 -0
  70. package/prod/chunks/vidstack-vqp2QaHR.js +9 -0
  71. package/prod/chunks/vidstack-xo_SmgiV.js +84 -0
  72. package/prod/chunks/vidstack-xvxeRtaN.js +61 -0
  73. package/prod/player/vidstack-default-components.js +14 -0
  74. package/prod/player/vidstack-default-icons.js +88 -0
  75. package/prod/player/vidstack-default-layout.js +14 -0
  76. package/prod/player/vidstack-plyr-icons.js +62 -0
  77. package/prod/player/vidstack-plyr-layout.js +636 -0
  78. package/prod/player/vidstack-remotion.js +335 -0
  79. package/prod/vidstack-icons.js +435 -0
  80. package/prod/vidstack.js +648 -0
  81. package/server/chunks/vidstack-2zMSe4ym.js +1371 -0
  82. package/server/chunks/vidstack-BtqWstSj.js +375 -0
  83. package/server/chunks/vidstack-C-HdFsZi.js +84 -0
  84. package/server/chunks/vidstack-C4iWXMC-.js +545 -0
  85. package/server/chunks/vidstack-C5zFBMwg.js +386 -0
  86. package/server/chunks/vidstack-CBF7iUqu.js +22 -0
  87. package/server/chunks/vidstack-CEh38XpD.js +288 -0
  88. package/server/chunks/vidstack-CkMAeO-e.js +34 -0
  89. package/server/chunks/vidstack-Cm0qnRvu.js +11196 -0
  90. package/server/chunks/vidstack-CoGzBr_V.js +663 -0
  91. package/server/chunks/vidstack-CyFwkPiu.js +470 -0
  92. package/server/chunks/vidstack-D-hQD1eE.js +9 -0
  93. package/server/chunks/vidstack-D_bWd66h.js +2023 -0
  94. package/server/chunks/vidstack-Dm1xEU9Q.js +36 -0
  95. package/server/chunks/vidstack-DtQSvsQr.js +189 -0
  96. package/server/chunks/vidstack-jlaBqZq5.js +61 -0
  97. package/server/chunks/vidstack-krOAtKMi.js +34 -0
  98. package/server/chunks/vidstack-rWs25cS9.js +159 -0
  99. package/server/chunks/vidstack-uyCXITen.js +504 -0
  100. package/server/player/vidstack-default-components.js +14 -0
  101. package/server/player/vidstack-default-icons.js +88 -0
  102. package/server/player/vidstack-default-layout.js +14 -0
  103. package/server/player/vidstack-plyr-icons.js +62 -0
  104. package/server/player/vidstack-plyr-layout.js +636 -0
  105. package/server/player/vidstack-remotion.js +335 -0
  106. package/server/vidstack.js +648 -0
  107. package/tailwind.cjs +101 -0
  108. package/tailwind.d.cts +15 -0
  109. package/.templates/sandbox/document.css +0 -27
  110. package/.templates/sandbox/favicon-32x32.png +0 -0
  111. package/.templates/sandbox/index.html +0 -21
  112. package/.templates/sandbox/main.tsx +0 -12
  113. package/.templates/sandbox/player.css +0 -39
  114. package/.templates/sandbox/player.tsx +0 -121
  115. package/.templates/sandbox/tracks.ts +0 -23
  116. package/analyze.config.ts +0 -7
  117. package/build/build-icons.js +0 -62
  118. package/rollup.config.ts +0 -256
  119. package/src/components/announcer.tsx +0 -47
  120. package/src/components/layouts/default/audio-layout.tsx +0 -231
  121. package/src/components/layouts/default/context.ts +0 -28
  122. package/src/components/layouts/default/hooks.ts +0 -13
  123. package/src/components/layouts/default/icons.tsx +0 -225
  124. package/src/components/layouts/default/index.ts +0 -11
  125. package/src/components/layouts/default/media-layout.tsx +0 -259
  126. package/src/components/layouts/default/slots.tsx +0 -98
  127. package/src/components/layouts/default/ui/announcer.tsx +0 -22
  128. package/src/components/layouts/default/ui/buttons.tsx +0 -301
  129. package/src/components/layouts/default/ui/captions.tsx +0 -16
  130. package/src/components/layouts/default/ui/controls.tsx +0 -12
  131. package/src/components/layouts/default/ui/keyboard-display.tsx +0 -132
  132. package/src/components/layouts/default/ui/menus/accessibility-menu.tsx +0 -100
  133. package/src/components/layouts/default/ui/menus/audio-menu.tsx +0 -167
  134. package/src/components/layouts/default/ui/menus/captions-menu.tsx +0 -61
  135. package/src/components/layouts/default/ui/menus/chapters-menu.tsx +0 -132
  136. package/src/components/layouts/default/ui/menus/font-menu.tsx +0 -331
  137. package/src/components/layouts/default/ui/menus/items/menu-checkbox.tsx +0 -72
  138. package/src/components/layouts/default/ui/menus/items/menu-items.tsx +0 -135
  139. package/src/components/layouts/default/ui/menus/items/menu-slider.tsx +0 -92
  140. package/src/components/layouts/default/ui/menus/playback-menu.tsx +0 -232
  141. package/src/components/layouts/default/ui/menus/settings-menu.tsx +0 -114
  142. package/src/components/layouts/default/ui/menus/utils.ts +0 -12
  143. package/src/components/layouts/default/ui/sliders.tsx +0 -136
  144. package/src/components/layouts/default/ui/time.tsx +0 -73
  145. package/src/components/layouts/default/ui/title.tsx +0 -24
  146. package/src/components/layouts/default/ui/tooltip.tsx +0 -27
  147. package/src/components/layouts/default/ui.ts +0 -8
  148. package/src/components/layouts/default/video-layout.tsx +0 -344
  149. package/src/components/layouts/plyr/context.ts +0 -26
  150. package/src/components/layouts/plyr/icons/plyr-airplay.js +0 -1
  151. package/src/components/layouts/plyr/icons/plyr-captions-off.js +0 -1
  152. package/src/components/layouts/plyr/icons/plyr-captions-on.js +0 -1
  153. package/src/components/layouts/plyr/icons/plyr-download.js +0 -1
  154. package/src/components/layouts/plyr/icons/plyr-enter-fullscreen.js +0 -1
  155. package/src/components/layouts/plyr/icons/plyr-exit-fullscreen.js +0 -1
  156. package/src/components/layouts/plyr/icons/plyr-fast-forward.js +0 -1
  157. package/src/components/layouts/plyr/icons/plyr-muted.js +0 -1
  158. package/src/components/layouts/plyr/icons/plyr-pause.js +0 -1
  159. package/src/components/layouts/plyr/icons/plyr-pip.js +0 -1
  160. package/src/components/layouts/plyr/icons/plyr-play.js +0 -1
  161. package/src/components/layouts/plyr/icons/plyr-restart.js +0 -1
  162. package/src/components/layouts/plyr/icons/plyr-rewind.js +0 -1
  163. package/src/components/layouts/plyr/icons/plyr-settings.js +0 -1
  164. package/src/components/layouts/plyr/icons/plyr-volume.js +0 -1
  165. package/src/components/layouts/plyr/icons.tsx +0 -71
  166. package/src/components/layouts/plyr/index.ts +0 -11
  167. package/src/components/layouts/plyr/layout.tsx +0 -1024
  168. package/src/components/layouts/plyr/props.ts +0 -104
  169. package/src/components/layouts/plyr/slots.tsx +0 -52
  170. package/src/components/layouts/remotion-ui.ts +0 -13
  171. package/src/components/layouts/utils.ts +0 -17
  172. package/src/components/player-callbacks.ts +0 -67
  173. package/src/components/player.tsx +0 -67
  174. package/src/components/primitives/instances.ts +0 -92
  175. package/src/components/primitives/nodes.tsx +0 -58
  176. package/src/components/primitives/slot.tsx +0 -132
  177. package/src/components/provider.tsx +0 -187
  178. package/src/components/text-track.tsx +0 -106
  179. package/src/components/ui/buttons/airplay-button.tsx +0 -53
  180. package/src/components/ui/buttons/caption-button.tsx +0 -55
  181. package/src/components/ui/buttons/fullscreen-button.tsx +0 -55
  182. package/src/components/ui/buttons/google-cast-button.tsx +0 -53
  183. package/src/components/ui/buttons/live-button.tsx +0 -56
  184. package/src/components/ui/buttons/mute-button.tsx +0 -60
  185. package/src/components/ui/buttons/pip-button.tsx +0 -54
  186. package/src/components/ui/buttons/play-button.tsx +0 -53
  187. package/src/components/ui/buttons/seek-button.tsx +0 -55
  188. package/src/components/ui/buttons/toggle-button.tsx +0 -51
  189. package/src/components/ui/caption.tsx +0 -70
  190. package/src/components/ui/captions.tsx +0 -41
  191. package/src/components/ui/chapter-title.tsx +0 -40
  192. package/src/components/ui/controls.tsx +0 -90
  193. package/src/components/ui/gesture.tsx +0 -43
  194. package/src/components/ui/menu.tsx +0 -251
  195. package/src/components/ui/poster.tsx +0 -101
  196. package/src/components/ui/radio-group.tsx +0 -88
  197. package/src/components/ui/sliders/audio-gain-slider.tsx +0 -55
  198. package/src/components/ui/sliders/quality-slider.tsx +0 -54
  199. package/src/components/ui/sliders/slider-callbacks.ts +0 -14
  200. package/src/components/ui/sliders/slider-value.tsx +0 -13
  201. package/src/components/ui/sliders/slider.tsx +0 -254
  202. package/src/components/ui/sliders/speed-slider.tsx +0 -54
  203. package/src/components/ui/sliders/time-slider.tsx +0 -379
  204. package/src/components/ui/sliders/volume-slider.tsx +0 -55
  205. package/src/components/ui/spinner.tsx +0 -105
  206. package/src/components/ui/thumbnail.tsx +0 -82
  207. package/src/components/ui/time.tsx +0 -77
  208. package/src/components/ui/title.tsx +0 -32
  209. package/src/components/ui/tooltip.tsx +0 -135
  210. package/src/globals.d.ts +0 -3
  211. package/src/hooks/create-text-track.ts +0 -22
  212. package/src/hooks/options/use-audio-gain-options.ts +0 -75
  213. package/src/hooks/options/use-audio-options.ts +0 -71
  214. package/src/hooks/options/use-caption-options.ts +0 -95
  215. package/src/hooks/options/use-chapter-options.ts +0 -97
  216. package/src/hooks/options/use-playback-rate-options.ts +0 -75
  217. package/src/hooks/options/use-video-quality-options.ts +0 -123
  218. package/src/hooks/use-active-text-cues.ts +0 -28
  219. package/src/hooks/use-active-text-track.ts +0 -19
  220. package/src/hooks/use-chapter-title.ts +0 -12
  221. package/src/hooks/use-dom.ts +0 -121
  222. package/src/hooks/use-media-context.ts +0 -6
  223. package/src/hooks/use-media-player.ts +0 -19
  224. package/src/hooks/use-media-provider.ts +0 -31
  225. package/src/hooks/use-media-remote.ts +0 -37
  226. package/src/hooks/use-media-state.ts +0 -58
  227. package/src/hooks/use-signals.ts +0 -24
  228. package/src/hooks/use-slider-preview.ts +0 -126
  229. package/src/hooks/use-slider-state.ts +0 -63
  230. package/src/hooks/use-state.ts +0 -47
  231. package/src/hooks/use-text-cues.ts +0 -33
  232. package/src/hooks/use-thumbnails.ts +0 -69
  233. package/src/icon.ts +0 -37
  234. package/src/icons.ts +0 -754
  235. package/src/index.ts +0 -181
  236. package/src/providers/remotion/index.ts +0 -10
  237. package/src/providers/remotion/layout-engine.ts +0 -123
  238. package/src/providers/remotion/loader.ts +0 -35
  239. package/src/providers/remotion/playback-engine.ts +0 -142
  240. package/src/providers/remotion/provider.tsx +0 -514
  241. package/src/providers/remotion/type-check.ts +0 -13
  242. package/src/providers/remotion/types.ts +0 -94
  243. package/src/providers/remotion/ui/context.tsx +0 -120
  244. package/src/providers/remotion/ui/error-boundary.tsx +0 -57
  245. package/src/providers/remotion/ui/poster.tsx +0 -33
  246. package/src/providers/remotion/ui/slider-thumbnail.tsx +0 -41
  247. package/src/providers/remotion/ui/thumbnail.tsx +0 -166
  248. package/src/providers/remotion/validate.ts +0 -220
  249. package/src/source.ts +0 -5
  250. package/src/utils.ts +0 -27
  251. package/tsconfig.build.json +0 -10
  252. package/tsconfig.json +0 -11
  253. package/types/react/src/components/announcer.d.ts +0 -16
  254. package/types/react/src/components/layouts/default/audio-layout.d.ts +0 -27
  255. package/types/react/src/components/layouts/default/context.d.ts +0 -14
  256. package/types/react/src/components/layouts/default/hooks.d.ts +0 -2
  257. package/types/react/src/components/layouts/default/icons.d.ts +0 -95
  258. package/types/react/src/components/layouts/default/index.d.ts +0 -5
  259. package/types/react/src/components/layouts/default/media-layout.d.ts +0 -133
  260. package/types/react/src/components/layouts/default/slots.d.ts +0 -22
  261. package/types/react/src/components/layouts/default/ui/announcer.d.ts +0 -6
  262. package/types/react/src/components/layouts/default/ui/buttons.d.ts +0 -54
  263. package/types/react/src/components/layouts/default/ui/captions.d.ts +0 -6
  264. package/types/react/src/components/layouts/default/ui/controls.d.ts +0 -6
  265. package/types/react/src/components/layouts/default/ui/keyboard-display.d.ts +0 -8
  266. package/types/react/src/components/layouts/default/ui/menus/accessibility-menu.d.ts +0 -10
  267. package/types/react/src/components/layouts/default/ui/menus/audio-menu.d.ts +0 -10
  268. package/types/react/src/components/layouts/default/ui/menus/captions-menu.d.ts +0 -10
  269. package/types/react/src/components/layouts/default/ui/menus/chapters-menu.d.ts +0 -7
  270. package/types/react/src/components/layouts/default/ui/menus/font-menu.d.ts +0 -6
  271. package/types/react/src/components/layouts/default/ui/menus/items/menu-checkbox.d.ts +0 -13
  272. package/types/react/src/components/layouts/default/ui/menus/items/menu-items.d.ts +0 -49
  273. package/types/react/src/components/layouts/default/ui/menus/items/menu-slider.d.ts +0 -26
  274. package/types/react/src/components/layouts/default/ui/menus/playback-menu.d.ts +0 -10
  275. package/types/react/src/components/layouts/default/ui/menus/settings-menu.d.ts +0 -15
  276. package/types/react/src/components/layouts/default/ui/menus/utils.d.ts +0 -1
  277. package/types/react/src/components/layouts/default/ui/sliders.d.ts +0 -24
  278. package/types/react/src/components/layouts/default/ui/time.d.ts +0 -30
  279. package/types/react/src/components/layouts/default/ui/title.d.ts +0 -6
  280. package/types/react/src/components/layouts/default/ui/tooltip.d.ts +0 -12
  281. package/types/react/src/components/layouts/default/ui.d.ts +0 -8
  282. package/types/react/src/components/layouts/default/video-layout.d.ts +0 -47
  283. package/types/react/src/components/layouts/plyr/context.d.ts +0 -12
  284. package/types/react/src/components/layouts/plyr/icons/plyr-airplay.d.ts +0 -2
  285. package/types/react/src/components/layouts/plyr/icons/plyr-captions-off.d.ts +0 -2
  286. package/types/react/src/components/layouts/plyr/icons/plyr-captions-on.d.ts +0 -2
  287. package/types/react/src/components/layouts/plyr/icons/plyr-download.d.ts +0 -2
  288. package/types/react/src/components/layouts/plyr/icons/plyr-enter-fullscreen.d.ts +0 -2
  289. package/types/react/src/components/layouts/plyr/icons/plyr-exit-fullscreen.d.ts +0 -2
  290. package/types/react/src/components/layouts/plyr/icons/plyr-fast-forward.d.ts +0 -2
  291. package/types/react/src/components/layouts/plyr/icons/plyr-muted.d.ts +0 -2
  292. package/types/react/src/components/layouts/plyr/icons/plyr-pause.d.ts +0 -2
  293. package/types/react/src/components/layouts/plyr/icons/plyr-pip.d.ts +0 -2
  294. package/types/react/src/components/layouts/plyr/icons/plyr-play.d.ts +0 -2
  295. package/types/react/src/components/layouts/plyr/icons/plyr-restart.d.ts +0 -2
  296. package/types/react/src/components/layouts/plyr/icons/plyr-rewind.d.ts +0 -2
  297. package/types/react/src/components/layouts/plyr/icons/plyr-settings.d.ts +0 -2
  298. package/types/react/src/components/layouts/plyr/icons/plyr-volume.d.ts +0 -2
  299. package/types/react/src/components/layouts/plyr/icons.d.ts +0 -25
  300. package/types/react/src/components/layouts/plyr/index.d.ts +0 -6
  301. package/types/react/src/components/layouts/plyr/layout.d.ts +0 -17
  302. package/types/react/src/components/layouts/plyr/props.d.ts +0 -71
  303. package/types/react/src/components/layouts/plyr/slots.d.ts +0 -9
  304. package/types/react/src/components/layouts/remotion-ui.d.ts +0 -3
  305. package/types/react/src/components/layouts/utils.d.ts +0 -1
  306. package/types/react/src/components/player-callbacks.d.ts +0 -6
  307. package/types/react/src/components/player.d.ts +0 -32
  308. package/types/react/src/components/primitives/instances.d.ts +0 -83
  309. package/types/react/src/components/primitives/nodes.d.ts +0 -15
  310. package/types/react/src/components/primitives/slot.d.ts +0 -11
  311. package/types/react/src/components/provider.d.ts +0 -26
  312. package/types/react/src/components/text-track.d.ts +0 -100
  313. package/types/react/src/components/ui/buttons/airplay-button.d.ts +0 -22
  314. package/types/react/src/components/ui/buttons/caption-button.d.ts +0 -24
  315. package/types/react/src/components/ui/buttons/fullscreen-button.d.ts +0 -24
  316. package/types/react/src/components/ui/buttons/google-cast-button.d.ts +0 -22
  317. package/types/react/src/components/ui/buttons/live-button.d.ts +0 -26
  318. package/types/react/src/components/ui/buttons/mute-button.d.ts +0 -30
  319. package/types/react/src/components/ui/buttons/pip-button.d.ts +0 -24
  320. package/types/react/src/components/ui/buttons/play-button.d.ts +0 -23
  321. package/types/react/src/components/ui/buttons/seek-button.d.ts +0 -25
  322. package/types/react/src/components/ui/buttons/toggle-button.d.ts +0 -22
  323. package/types/react/src/components/ui/caption.d.ts +0 -11
  324. package/types/react/src/components/ui/captions.d.ts +0 -20
  325. package/types/react/src/components/ui/chapter-title.d.ts +0 -20
  326. package/types/react/src/components/ui/controls.d.ts +0 -40
  327. package/types/react/src/components/ui/gesture.d.ts +0 -20
  328. package/types/react/src/components/ui/menu.d.ts +0 -102
  329. package/types/react/src/components/ui/poster.d.ts +0 -25
  330. package/types/react/src/components/ui/radio-group.d.ts +0 -39
  331. package/types/react/src/components/ui/sliders/audio-gain-slider.d.ts +0 -29
  332. package/types/react/src/components/ui/sliders/quality-slider.d.ts +0 -28
  333. package/types/react/src/components/ui/sliders/slider-callbacks.d.ts +0 -6
  334. package/types/react/src/components/ui/sliders/slider-value.d.ts +0 -9
  335. package/types/react/src/components/ui/sliders/slider.d.ts +0 -134
  336. package/types/react/src/components/ui/sliders/speed-slider.d.ts +0 -28
  337. package/types/react/src/components/ui/sliders/time-slider.d.ts +0 -124
  338. package/types/react/src/components/ui/sliders/volume-slider.d.ts +0 -29
  339. package/types/react/src/components/ui/spinner.d.ts +0 -31
  340. package/types/react/src/components/ui/thumbnail.d.ts +0 -26
  341. package/types/react/src/components/ui/time.d.ts +0 -20
  342. package/types/react/src/components/ui/title.d.ts +0 -15
  343. package/types/react/src/components/ui/tooltip.d.ts +0 -63
  344. package/types/react/src/hooks/create-text-track.d.ts +0 -7
  345. package/types/react/src/hooks/options/use-audio-gain-options.d.ts +0 -22
  346. package/types/react/src/hooks/options/use-audio-options.d.ts +0 -17
  347. package/types/react/src/hooks/options/use-caption-options.d.ts +0 -24
  348. package/types/react/src/hooks/options/use-chapter-options.d.ts +0 -18
  349. package/types/react/src/hooks/options/use-playback-rate-options.d.ts +0 -22
  350. package/types/react/src/hooks/options/use-video-quality-options.d.ts +0 -35
  351. package/types/react/src/hooks/use-active-text-cues.d.ts +0 -6
  352. package/types/react/src/hooks/use-active-text-track.d.ts +0 -5
  353. package/types/react/src/hooks/use-chapter-title.d.ts +0 -4
  354. package/types/react/src/hooks/use-dom.d.ts +0 -9
  355. package/types/react/src/hooks/use-media-context.d.ts +0 -1
  356. package/types/react/src/hooks/use-media-player.d.ts +0 -7
  357. package/types/react/src/hooks/use-media-provider.d.ts +0 -7
  358. package/types/react/src/hooks/use-media-remote.d.ts +0 -12
  359. package/types/react/src/hooks/use-media-state.d.ts +0 -15
  360. package/types/react/src/hooks/use-signals.d.ts +0 -5
  361. package/types/react/src/hooks/use-slider-preview.d.ts +0 -27
  362. package/types/react/src/hooks/use-slider-state.d.ts +0 -16
  363. package/types/react/src/hooks/use-state.d.ts +0 -18
  364. package/types/react/src/hooks/use-text-cues.d.ts +0 -6
  365. package/types/react/src/hooks/use-thumbnails.d.ts +0 -16
  366. package/types/react/src/icon.d.ts +0 -17
  367. package/types/react/src/icons.d.ts +0 -215
  368. package/types/react/src/index.d.ts +0 -78
  369. package/types/react/src/providers/remotion/index.d.ts +0 -7
  370. package/types/react/src/providers/remotion/layout-engine.d.ts +0 -8
  371. package/types/react/src/providers/remotion/loader.d.ts +0 -9
  372. package/types/react/src/providers/remotion/playback-engine.d.ts +0 -11
  373. package/types/react/src/providers/remotion/provider.d.ts +0 -26
  374. package/types/react/src/providers/remotion/type-check.d.ts +0 -6
  375. package/types/react/src/providers/remotion/types.d.ts +0 -91
  376. package/types/react/src/providers/remotion/ui/context.d.ts +0 -17
  377. package/types/react/src/providers/remotion/ui/error-boundary.d.ts +0 -21
  378. package/types/react/src/providers/remotion/ui/poster.d.ts +0 -18
  379. package/types/react/src/providers/remotion/ui/slider-thumbnail.d.ts +0 -17
  380. package/types/react/src/providers/remotion/ui/thumbnail.d.ts +0 -32
  381. package/types/react/src/providers/remotion/validate.d.ts +0 -12
  382. package/types/react/src/source.d.ts +0 -3
  383. package/types/react/src/utils.d.ts +0 -3
  384. package/types/vidstack/src/core/api/src-types.d.ts +0 -50
  385. package/types/vidstack/src/utils/mime.d.ts +0 -15
  386. package/types/vidstack/src/utils/network.d.ts +0 -17
  387. package/types/vidstack/src/utils/support.d.ts +0 -72
  388. package/vite.config.ts +0 -23
  389. /package/{npm/analyze.json.d.ts → analyze.json.d.ts} +0 -0
@@ -0,0 +1,1082 @@
1
+ /*
2
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3
+ * Video Layout
4
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5
+ */
6
+
7
+ [data-media-player] .vds-video-layout:not([data-match]) {
8
+ display: none !important;
9
+ }
10
+
11
+ [data-media-player][data-layout='video'] {
12
+ background-color: var(--video-bg, black);
13
+ }
14
+
15
+ [data-media-player][data-layout='video']:not([data-fullscreen]) {
16
+ border-radius: var(--video-border-radius, 6px);
17
+ border: var(--video-border, 1px solid rgb(255 255 255 / 0.1));
18
+ }
19
+
20
+ :where(.vds-video-layout) {
21
+ --media-brand: var(--video-brand, #f5f5f5);
22
+ --media-font-family: var(--video-font-family, sans-serif);
23
+ --media-controls-color: var(--video-controls-color, #f5f5f5);
24
+ --media-tooltip-y-offset: 6px;
25
+ --media-menu-y-offset: 6px;
26
+ --media-focus-ring-color: var(--video-focus-ring-color, rgb(78 156 246));
27
+ --media-focus-ring: var(--video-focus-ring, 0 0 0 3px var(--media-focus-ring-color));
28
+ color: var(--video-controls-color, #f5f5f5);
29
+ display: contents;
30
+ }
31
+
32
+ :where([data-media-player][data-focus]:not([data-playing]) .vds-video-layout .vds-controls) {
33
+ border-radius: var(--video-border-radius, 6px);
34
+ box-shadow: var(--media-focus-ring);
35
+ }
36
+
37
+ /*
38
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
39
+ * Controls
40
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41
+ */
42
+
43
+ :where(.vds-video-layout .vds-controls[data-visible]) {
44
+ border-radius: var(--video-border-radius, 6px);
45
+ background-image: linear-gradient(
46
+ to top,
47
+ rgb(0 0 0 / 0.6),
48
+ 10%,
49
+ transparent,
50
+ 95%,
51
+ rgb(0 0 0 / 0.3)
52
+ );
53
+ }
54
+
55
+ .vds-video-layout .vds-controls-group {
56
+ align-items: center;
57
+ display: flex;
58
+ pointer-events: auto;
59
+ z-index: 0;
60
+ padding: 4px 6px;
61
+ }
62
+
63
+ .vds-video-layout .vds-controls-group:first-child {
64
+ z-index: 50;
65
+ }
66
+
67
+ /* second last group */
68
+ .vds-video-layout .vds-controls-group:nth-last-child(2) {
69
+ padding: 0 12px;
70
+ z-index: 11;
71
+ margin-bottom: -16px;
72
+ }
73
+
74
+ .vds-video-layout:not([data-sm]) .vds-controls-group:last-child {
75
+ --media-menu-y-offset: 26px;
76
+ --media-tooltip-y-offset: 26px;
77
+ --media-slider-preview-offset: 26px;
78
+ z-index: 10;
79
+ }
80
+
81
+ :where(.vds-video-layout .vds-button) {
82
+ margin-right: 2.5px;
83
+ }
84
+
85
+ /*
86
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
87
+ * Title
88
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
89
+ */
90
+
91
+ :where(.vds-video-layout[data-sm] .vds-chapter-title) {
92
+ font-size: var(--video-sm-chapter-title-font-size, 15px);
93
+ }
94
+
95
+ :where([data-fullscreen] .vds-video-layout .vds-chapter-title) {
96
+ font-size: var(--video-fullscreen-chapter-title-font-size, 16px);
97
+ }
98
+
99
+ /*
100
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
101
+ * Buttons
102
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
103
+ */
104
+
105
+ :where(.vds-video-layout:not([data-sm]) .vds-mute-button) {
106
+ margin-left: -2.5px;
107
+ margin-right: -5px;
108
+ }
109
+
110
+ :where(.vds-video-layout[data-sm]) {
111
+ --media-button-size: var(--video-sm-button-size, 36px);
112
+ }
113
+
114
+ /*
115
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
116
+ * Sliders
117
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118
+ */
119
+
120
+ :where(.vds-video-layout .vds-time-slider) {
121
+ --media-slider-height: 45px;
122
+ flex-grow: 0;
123
+ }
124
+
125
+ :where(.vds-video-layout .vds-slider-thumbnail) {
126
+ --media-thumbnail-border: var(--video-slider-thumbnail-border, 1px solid #f5f5f5);
127
+ border-radius: var(--video-slider-thumbnail-border-radius, 2px);
128
+ }
129
+
130
+ .vds-video-layout .vds-time-slider .vds-slider-value {
131
+ background-color: var(--video-time-bg, unset);
132
+ text-shadow:
133
+ -1px -1px 0 #333333,
134
+ 1px -1px 0 #333333,
135
+ -1px 1px 0 #333333,
136
+ 1px 1px 0 #333333;
137
+ }
138
+
139
+ :where(.vds-video-layout[data-sm] .vds-time) {
140
+ text-shadow: unset;
141
+ }
142
+
143
+ /*
144
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
145
+ * Large Layout Volume Slider
146
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
147
+ */
148
+
149
+ :where(.vds-video-layout[data-lg] .vds-volume) {
150
+ --gap: var(--video-volume-gap, 10px);
151
+ display: contents;
152
+ }
153
+
154
+ :where(.vds-video-layout[data-lg] .vds-volume-popup) {
155
+ display: contents;
156
+ }
157
+
158
+ :where(.vds-video-layout[data-lg] .vds-volume-slider) {
159
+ margin: 0;
160
+ max-width: 0;
161
+ transition: all 0.15s ease;
162
+ }
163
+
164
+ :where(.vds-video-layout[data-lg] .vds-volume[data-active] .vds-volume-slider),
165
+ :where(.vds-video-layout[data-lg] .vds-volume:has([data-active]) .vds-volume-slider) {
166
+ margin-left: var(--gap);
167
+ opacity: 1;
168
+ visibility: visible;
169
+ max-width: var(--video-volume-slider-max-width, 72px);
170
+ }
171
+
172
+ /* safe area. */
173
+ .vds-video-layout[data-lg] .vds-volume-slider::after {
174
+ content: '';
175
+ position: fixed;
176
+ top: 0;
177
+ left: calc(-1 * var(--gap));
178
+ width: var(--gap);
179
+ height: 100%;
180
+ z-index: 1;
181
+ pointer-events: auto;
182
+ }
183
+
184
+ /*
185
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
186
+ * Small Layout Volume Slider
187
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
188
+ */
189
+
190
+ :where(.vds-video-layout[data-sm] .vds-volume) {
191
+ --media-slider-height: var(--video-volume-height, 96px);
192
+ --media-slider-preview-offset: calc(-200% - 6px);
193
+ --gap: var(--video-volume-gap, 10px);
194
+ position: relative;
195
+ display: flex;
196
+ align-items: center;
197
+ justify-content: center;
198
+ }
199
+
200
+ :where(.vds-video-layout[data-sm] .vds-volume-popup) {
201
+ display: block;
202
+ position: absolute;
203
+ top: calc(100% + var(--gap));
204
+ left: 50%;
205
+ opacity: 0;
206
+ transform: translateX(-50%);
207
+ transition:
208
+ opacity 150ms ease-out,
209
+ visibility 150ms ease-out;
210
+ border-radius: var(--video-volume-border-radius, 8px);
211
+ filter: var(--media-volume-filter, drop-shadow(0 1px 1px rgb(0 0 0 / 0.05)));
212
+ visibility: hidden;
213
+ }
214
+
215
+ /* safe area. */
216
+ .vds-video-layout[data-sm] .vds-mute-button::after {
217
+ content: '';
218
+ position: fixed;
219
+ bottom: calc(-1 * var(--gap));
220
+ right: 0;
221
+ width: 100%;
222
+ height: var(--gap);
223
+ z-index: 1;
224
+ pointer-events: auto;
225
+ }
226
+
227
+ .vds-video-layout .vds-volume-popup {
228
+ background-color: var(--video-volume-bg, var(--media-menu-bg, var(--default-bg)));
229
+ border: var(--video-volume-border, var(--default-border));
230
+ }
231
+
232
+ .light .vds-video-layout .vds-volume-popup,
233
+ .vds-video-layout.light .vds-volume-popup {
234
+ --default-bg: rgb(250 250 250);
235
+ --default-border: 1px solid rgb(10 10 10 / 0.1);
236
+ }
237
+
238
+ .dark .vds-video-layout .vds-volume-popup,
239
+ .vds-video-layout.dark .vds-volume-popup {
240
+ --default-bg: rgb(10 10 10);
241
+ --default-border: 1px solid rgb(255 255 255 / 0.1);
242
+ }
243
+
244
+ :where(.vds-video-layout[data-sm] .vds-volume[data-active] .vds-volume-popup),
245
+ :where(.vds-video-layout[data-sm] .vds-volume:has([data-active]) .vds-volume-popup) {
246
+ transition:
247
+ opacity 150ms ease-in,
248
+ visibility 150ms ease-in;
249
+ opacity: 1;
250
+ visibility: visible;
251
+ }
252
+
253
+ :where(.vds-video-layout[data-sm] .vds-volume[data-active] .vds-tooltip-content) {
254
+ display: none !important;
255
+ }
256
+
257
+ /*
258
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
259
+ * Time
260
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
261
+ */
262
+
263
+ :where(.vds-video-layout .vds-time[data-type='current']) {
264
+ margin-right: 2px;
265
+ }
266
+
267
+ :where(.vds-video-layout .vds-time[data-type='current'][remainder]) {
268
+ margin-left: 2px;
269
+ }
270
+
271
+ .vds-video-layout .vds-time {
272
+ --default-color: #f5f5f5 !important;
273
+ }
274
+
275
+ /*
276
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
277
+ * Captions
278
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
279
+ */
280
+
281
+ :where([data-preview] .vds-video-layout .vds-captions) {
282
+ opacity: 0;
283
+ }
284
+
285
+ :where(.vds-video-layout .vds-captions) {
286
+ z-index: 10;
287
+ transition: var(--video-captions-transition, bottom 0.3s ease-in-out);
288
+ }
289
+
290
+ @media (min-width: 980px) {
291
+ :where([data-fullscreen] .vds-video-layout .vds-captions) {
292
+ bottom: var(--video-lg-fullscreen-captions-offset, 54px);
293
+ }
294
+ }
295
+
296
+ :where([data-media-player][data-controls] .vds-video-layout .vds-captions) {
297
+ bottom: var(--video-captions-offset, 78px);
298
+ }
299
+
300
+ :where([data-media-player][data-controls] .vds-video-layout[data-sm] .vds-captions) {
301
+ bottom: var(--video-sm-captions-offset, 48px);
302
+ }
303
+
304
+ /*
305
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
306
+ * Chapters
307
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
308
+ */
309
+
310
+ :where(.vds-video-layout .vds-time-slider .vds-slider-chapter-title) {
311
+ width: 100%;
312
+ text-align: center;
313
+ text-shadow:
314
+ -1px -1px 0 #212121,
315
+ 1px -1px 0 #212121,
316
+ -1px 1px 0 #212121,
317
+ 1px 1px 0 #212121;
318
+ }
319
+
320
+ /*
321
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
322
+ * Gestures
323
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
324
+ */
325
+
326
+ :where(.vds-video-layout .vds-gesture) {
327
+ top: 0;
328
+ left: 0;
329
+ width: 100%;
330
+ height: 100%;
331
+ z-index: 0;
332
+ }
333
+
334
+ :where(.vds-video-layout .vds-gesture[action='seek:-10']) {
335
+ width: var(--video-gesture-seek-width, 20%);
336
+ z-index: 1;
337
+ }
338
+
339
+ :where(.vds-video-layout .vds-gesture[action='seek:10']) {
340
+ left: unset;
341
+ right: 0;
342
+ width: var(--video-gesture-seek-width, 20%);
343
+ z-index: 1;
344
+ }
345
+
346
+ @media (pointer: coarse) {
347
+ :where(.vds-video-layout .vds-gesture[action='toggle:paused']) {
348
+ display: none;
349
+ }
350
+ }
351
+
352
+ @media not (pointer: coarse) {
353
+ :where([data-media-player] .vds-video-layout .vds-gesture[action='toggle:controls']) {
354
+ display: none;
355
+ }
356
+ }
357
+
358
+ /*
359
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
360
+ * Live Button
361
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
362
+ */
363
+
364
+ :where(.vds-video-layout .vds-live-button) {
365
+ margin-left: 12px;
366
+ }
367
+
368
+ /*
369
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
370
+ * Time Group
371
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
372
+ */
373
+
374
+ :where(.vds-video-layout:not([data-sm]) .vds-time-group) {
375
+ margin-left: 10px;
376
+ }
377
+
378
+ :where(.vds-video-layout[data-sm] .vds-time) {
379
+ font-size: var(--video-sm-time-font-size, 14px);
380
+ }
381
+
382
+ :where([data-fullscreen] .vds-video-layout .vds-time) {
383
+ font-size: var(--video-fullscreen-time-font-size, 16px);
384
+ }
385
+
386
+ /*
387
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
388
+ * Load Container
389
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
390
+ */
391
+
392
+ :where(.vds-video-layout .vds-load-container) {
393
+ position: absolute;
394
+ inset: 0;
395
+ width: 100%;
396
+ height: 100%;
397
+ display: none;
398
+ align-items: center;
399
+ justify-content: center;
400
+ pointer-events: none;
401
+ z-index: 99;
402
+ }
403
+
404
+ :where(
405
+ [data-media-player][data-load='play']:not([data-started])
406
+ .vds-video-layout[data-match]
407
+ .vds-load-container
408
+ ) {
409
+ display: flex;
410
+ }
411
+
412
+ :where(.vds-video-layout .vds-load-container .vds-play-button) {
413
+ --size: var(--video-load-button-size, 56px);
414
+ --color: var(--video-load-button-color, rgb(0 0 0 / 0.8));
415
+ --bg-color: var(--video-load-button-bg, var(--media-brand));
416
+
417
+ --media-button-hover-transform: 0;
418
+ --media-button-border: var(--video-load-button-border, var(--color));
419
+ --media-button-hover-bg: var(--video-load-button-bg, var(--media-brand));
420
+
421
+ width: var(--size);
422
+ height: var(--size);
423
+ pointer-events: auto;
424
+ margin-bottom: 2px;
425
+ overflow: hidden;
426
+ }
427
+
428
+ .vds-video-layout .vds-load-container .vds-play-button {
429
+ border-radius: var(--video-load-button-border-radius, 100%);
430
+ color: var(--color);
431
+ }
432
+
433
+ .vds-video-layout .vds-load-container .vds-play-button {
434
+ background-color: var(--bg-color);
435
+ }
436
+
437
+ :where(.vds-video-layout[data-sm] .vds-load-container .vds-play-button) {
438
+ --size: var(--video-sm-load-button-size, 48px);
439
+ --media-button-hover-transform: translateY(0%);
440
+ width: var(--size);
441
+ height: var(--size);
442
+ transform: translateY(0%);
443
+ }
444
+
445
+ /*
446
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
447
+ * Small Layout
448
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
449
+ */
450
+
451
+ :where(.vds-video-layout[data-sm] .vds-controls-group:nth-last-child(2)) {
452
+ pointer-events: none;
453
+ }
454
+
455
+ :where(.vds-video-layout[data-sm] .vds-controls-group:last-child) {
456
+ z-index: 2;
457
+ margin-top: -2.5px;
458
+ margin-bottom: -6px;
459
+ }
460
+
461
+ :where([data-fullscreen] .vds-video-layout[data-sm] .vds-controls-group:last-child) {
462
+ margin-bottom: 0;
463
+ }
464
+
465
+ .vds-video-layout[data-sm] .vds-controls-group {
466
+ padding: 2px;
467
+ }
468
+
469
+ :where(.vds-video-layout[data-sm])
470
+ :where(
471
+ .vds-button,
472
+ .vds-slider:not(.vds-time-slider),
473
+ .vds-time,
474
+ .vds-time-divider,
475
+ .vds-chapter-title
476
+ ) {
477
+ transition: opacity 0.15s ease;
478
+ }
479
+
480
+ :where([data-media-player]:not([data-started]) .vds-video-layout[data-sm])
481
+ :where(.vds-button .vds-slider, .vds-time-group) {
482
+ opacity: 0;
483
+ visibility: hidden;
484
+ }
485
+
486
+ :where(.vds-video-layout[data-sm] .vds-time-slider) {
487
+ transition: transform 0.1s linear;
488
+ }
489
+
490
+ @media (pointer: coarse) {
491
+ :where([data-preview] .vds-video-layout:not([data-no-scrub-gesture]))
492
+ :where(
493
+ .vds-button,
494
+ .vds-slider:not(.vds-time-slider),
495
+ .vds-time,
496
+ .vds-chapter-title,
497
+ .vds-time-divider,
498
+ .vds-captions,
499
+ .vds-live-button
500
+ ) {
501
+ opacity: 0;
502
+ }
503
+
504
+ :where([data-preview] .vds-video-layout:not([data-no-scrub-gesture]) .vds-time-slider) {
505
+ --track-height: var(--video-sm-slider-focus-track-height, 12px);
506
+ transform: translateY(-6px);
507
+ transition: transform 0.1s linear;
508
+ }
509
+ }
510
+
511
+ :where(.vds-video-layout[data-sm] .vds-controls .vds-play-button) {
512
+ --size: var(--video-sm-play-button-size, 45px);
513
+ --media-button-hover-transform: translateY(25%);
514
+ width: var(--size);
515
+ height: var(--size);
516
+ transform: translateY(25%);
517
+ border-radius: 100%;
518
+ pointer-events: auto;
519
+ margin-bottom: 2px;
520
+ overflow: hidden;
521
+ }
522
+
523
+ .vds-video-layout[data-sm] .vds-controls .vds-play-button {
524
+ background-color: var(--video-sm-play-button-bg, rgba(0 0 0 / 0.6));
525
+ }
526
+
527
+ :where(
528
+ [data-media-player]:not([data-started])
529
+ .vds-video-layout[data-sm]
530
+ .vds-controls-group:not(:nth-child(3))
531
+ ) {
532
+ opacity: 0;
533
+ visibility: hidden;
534
+ }
535
+
536
+ /* center big play button inside buffering indicator. */
537
+ :where(.vds-video-layout[data-sm] .vds-buffering-indicator) {
538
+ --media-buffering-size: 64px;
539
+ transform: translate(-2px, -4px);
540
+ }
541
+
542
+ :where(.vds-video-layout .vds-start-duration .vds-time) {
543
+ position: absolute;
544
+ right: 8px;
545
+ bottom: 8px;
546
+ margin-right: 8px;
547
+ margin-bottom: 8px;
548
+ z-index: 10;
549
+ }
550
+
551
+ .vds-video-layout .vds-start-duration .vds-time {
552
+ padding: var(--video-sm-start-duration-padding, 3px 6px);
553
+ color: var(--video-sm-start-duration-color, var(--video-controls-color));
554
+ background-color: var(--video-sm-start-duration-bg, rgba(0 0 0 / 0.64));
555
+ }
556
+
557
+ :where([data-started] .vds-video-layout .vds-start-duration .vds-time) {
558
+ display: none;
559
+ }
560
+
561
+ :where([data-media-player]:not([data-can-play]) .vds-video-layout .vds-start-duration .vds-time) {
562
+ opacity: 0;
563
+ }
564
+
565
+ :where(.vds-video-layout[data-sm] .vds-time[data-type='current']) {
566
+ margin-left: 8px;
567
+ }
568
+
569
+ /*
570
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
571
+ * Fullscreen
572
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
573
+ */
574
+
575
+ :where([data-fullscreen] .vds-video-layout .vds-controls-group:nth-last-child(2)) {
576
+ margin-bottom: -16px;
577
+ }
578
+
579
+ @media (orientation: portrait) {
580
+ :where([data-fullscreen] .vds-video-layout .vds-captions) {
581
+ bottom: 30lvh;
582
+ bottom: 10dvh;
583
+ }
584
+ }
585
+
586
+ @media (orientation: landscape) {
587
+ :where([data-fullscreen] .vds-video-layout .vds-controls-group:nth-last-child(2)) {
588
+ margin-bottom: -12px;
589
+ }
590
+ }
591
+
592
+ /*
593
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
594
+ * Notflix Modern Rework — Balanced, Clean, Proportional
595
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
596
+ */
597
+
598
+ /* --- Bottom controls group wrapper --- */
599
+ .vds-video-layout .vds-controls-group-bottom {
600
+ display: flex;
601
+ align-items: center;
602
+ gap: 4px;
603
+ padding: 4px 12px 8px;
604
+ }
605
+
606
+ /* --- All buttons: circular, no boxy look --- */
607
+ :where(.vds-video-layout .vds-button) {
608
+ border-radius: 50%;
609
+ transition:
610
+ background-color 0.15s ease,
611
+ transform 0.15s ease;
612
+ }
613
+
614
+ /* --- Buttons in bottom bar: balanced 40px --- */
615
+ :where(.vds-video-layout .vds-controls-group-bottom .vds-button) {
616
+ --media-button-size: 40px;
617
+ --media-button-icon-size: 22px;
618
+ background: transparent;
619
+ border-radius: 50%;
620
+ margin: 0;
621
+ }
622
+
623
+ @media (hover: hover) and (pointer: fine) {
624
+ .vds-video-layout .vds-controls-group-bottom .vds-button:hover {
625
+ background-color: rgba(255, 255, 255, 0.1);
626
+ transform: scale(1.1);
627
+ }
628
+ }
629
+
630
+ /* --- Play button: slightly bigger than the rest --- */
631
+ :where(.vds-video-layout .vds-controls-group-bottom .vds-play-button) {
632
+ --media-button-size: 44px;
633
+ --media-button-icon-size: 26px;
634
+ }
635
+
636
+ /* --- Seek buttons --- */
637
+ :where(.vds-video-layout .vds-controls-group-bottom .vds-seek-button) {
638
+ --media-button-size: 38px;
639
+ --media-button-icon-size: 20px;
640
+ }
641
+
642
+ /* --- Episode button: same row, same size --- */
643
+ .vds-video-layout .vds-episode-button {
644
+ --media-button-size: 40px;
645
+ --media-button-icon-size: 22px;
646
+ border-radius: 50%;
647
+ transition:
648
+ background-color 0.15s ease,
649
+ transform 0.15s ease;
650
+ }
651
+
652
+ @media (hover: hover) and (pointer: fine) {
653
+ .vds-video-layout .vds-episode-button:hover {
654
+ background-color: rgba(255, 255, 255, 0.1);
655
+ transform: scale(1.1);
656
+ }
657
+ }
658
+
659
+ /* --- Scrim: cinematic gradient --- */
660
+ :where(.vds-video-layout .vds-scrim) {
661
+ position: absolute;
662
+ inset: 0;
663
+ pointer-events: none;
664
+ background: linear-gradient(
665
+ to top,
666
+ rgba(0, 0, 0, 0.65) 0%,
667
+ rgba(0, 0, 0, 0.2) 20%,
668
+ transparent 45%,
669
+ transparent 80%,
670
+ rgba(0, 0, 0, 0.15) 100%
671
+ );
672
+ opacity: 0;
673
+ transition: opacity 0.25s ease;
674
+ z-index: 1;
675
+ }
676
+
677
+ :where([data-media-player][data-controls] .vds-video-layout .vds-scrim) {
678
+ opacity: 1;
679
+ }
680
+
681
+ /* --- Menu: glassmorphism, rounded --- */
682
+ :where(.vds-video-layout .vds-menu-items[data-root]) {
683
+ --root-border-radius: 12px;
684
+ --item-border-radius: 8px;
685
+ border-radius: 12px;
686
+ backdrop-filter: blur(16px) saturate(180%);
687
+ background-color: rgba(15, 15, 15, 0.88);
688
+ border: 1px solid rgba(255, 255, 255, 0.08);
689
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
690
+ }
691
+
692
+ :where(.vds-video-layout .vds-menu-item, .vds-video-layout .vds-radio) {
693
+ border-radius: 8px;
694
+ transition: background-color 0.12s ease;
695
+ }
696
+
697
+ /* --- Slider: slightly thicker than default — more grippable --- */
698
+ :where(.vds-video-layout .vds-time-slider) {
699
+ --media-slider-height: 44px;
700
+ --media-slider-track-height: 4px;
701
+ --media-slider-track-focus-height: 6px;
702
+ }
703
+
704
+ :where(.vds-video-layout .vds-slider-track) {
705
+ border-radius: 9999px;
706
+ }
707
+
708
+ :where(.vds-video-layout .vds-slider-track-fill) {
709
+ border-radius: 9999px;
710
+ }
711
+
712
+ /* --- Tooltip: compact pill --- */
713
+ :where(.vds-video-layout .vds-tooltip-content) {
714
+ border-radius: 8px;
715
+ backdrop-filter: blur(10px);
716
+ background-color: rgba(20, 20, 20, 0.92);
717
+ font-size: 12px;
718
+ padding: 5px 10px;
719
+ border: 1px solid rgba(255, 255, 255, 0.07);
720
+ letter-spacing: 0.01em;
721
+ }
722
+
723
+ /* --- Time text --- */
724
+ :where(.vds-video-layout .vds-time) {
725
+ font-variant-numeric: tabular-nums;
726
+ font-size: 13px;
727
+ letter-spacing: 0.01em;
728
+ }
729
+
730
+ /* --- Caption flag slot --- */
731
+ :where(.vds-video-layout .vds-caption-radio) {
732
+ display: flex;
733
+ align-items: center;
734
+ gap: 8px;
735
+ }
736
+
737
+ :where(.vds-video-layout .vds-caption-radio .vds-caption-flag) {
738
+ font-size: 16px;
739
+ line-height: 1;
740
+ flex-shrink: 0;
741
+ }
742
+
743
+ /* --- Small (mobile) layout --- */
744
+ .vds-video-layout[data-sm] .vds-controls-group-bottom .vds-button {
745
+ --media-button-size: 36px;
746
+ --media-button-icon-size: 20px;
747
+ }
748
+
749
+ .vds-video-layout[data-sm] .vds-controls-group-bottom .vds-play-button {
750
+ --media-button-size: 40px;
751
+ --media-button-icon-size: 24px;
752
+ }
753
+
754
+ .vds-video-layout[data-sm] .vds-controls-group-bottom .vds-seek-button {
755
+ --media-button-size: 34px;
756
+ --media-button-icon-size: 18px;
757
+ }
758
+
759
+ /* --- Episodes fullscreen sidebar --- */
760
+ .vds-video-layout .vds-episodes-backdrop {
761
+ position: absolute;
762
+ inset: 0;
763
+ z-index: 19;
764
+ opacity: 0;
765
+ pointer-events: none;
766
+ transition: opacity 0.24s ease;
767
+ background: linear-gradient(90deg, rgb(0 0 0 / 0%) 56%, rgb(0 0 0 / 42%) 100%);
768
+ }
769
+
770
+ .vds-video-layout .vds-episodes-backdrop[data-open='true'] {
771
+ opacity: 1;
772
+ pointer-events: auto;
773
+ }
774
+
775
+ .vds-video-layout .vds-episodes-panel {
776
+ position: absolute;
777
+ top: 50%;
778
+ right: 20px;
779
+ width: min(36vw, 430px);
780
+ max-height: min(74vh, 620px);
781
+ overflow: auto;
782
+ padding: 0;
783
+ background: linear-gradient(180deg, rgb(10 10 10 / 94%) 0%, rgb(4 4 4 / 92%) 100%);
784
+ border: 1px solid rgb(255 255 255 / 20%);
785
+ border-radius: 18px;
786
+ backdrop-filter: blur(14px);
787
+ box-shadow:
788
+ 0 26px 56px rgb(0 0 0 / 58%),
789
+ inset 0 1px 0 rgb(255 255 255 / 8%);
790
+ z-index: 20;
791
+ opacity: 0;
792
+ transform: translate3d(16px, -50%, 0);
793
+ pointer-events: none;
794
+ transition:
795
+ opacity 0.26s ease,
796
+ transform 0.3s cubic-bezier(0.22, 1, 0.36, 1),
797
+ filter 0.26s ease;
798
+ filter: blur(2px);
799
+ scrollbar-width: thin;
800
+ scrollbar-color: rgb(255 255 255 / 28%) transparent;
801
+ }
802
+
803
+ .vds-video-layout .vds-episodes-panel[data-open='true'] {
804
+ opacity: 1;
805
+ transform: translate3d(0, -50%, 0);
806
+ pointer-events: auto;
807
+ filter: blur(0);
808
+ }
809
+
810
+ .vds-video-layout .vds-episodes-panel-header {
811
+ display: flex;
812
+ align-items: center;
813
+ justify-content: space-between;
814
+ padding: 14px 16px 12px;
815
+ border-bottom: 1px solid rgb(255 255 255 / 12%);
816
+ position: sticky;
817
+ top: 0;
818
+ z-index: 1;
819
+ background: linear-gradient(180deg, rgb(10 10 10 / 95%), rgb(10 10 10 / 74%));
820
+ backdrop-filter: blur(8px);
821
+ }
822
+
823
+ .vds-video-layout .vds-episodes-close-btn {
824
+ width: 30px;
825
+ height: 30px;
826
+ border: 0;
827
+ border-radius: 999px;
828
+ background: transparent;
829
+ color: rgb(255 255 255 / 78%);
830
+ display: inline-flex;
831
+ align-items: center;
832
+ justify-content: center;
833
+ cursor: pointer;
834
+ }
835
+
836
+ .vds-video-layout .vds-episodes-close-btn:hover {
837
+ background: rgb(255 255 255 / 10%);
838
+ color: #fff;
839
+ }
840
+
841
+ .vds-video-layout .vds-episodes-panel-title {
842
+ font-size: 15px;
843
+ font-weight: 600;
844
+ letter-spacing: 0.01em;
845
+ white-space: nowrap;
846
+ overflow: hidden;
847
+ text-overflow: ellipsis;
848
+ }
849
+
850
+ .vds-video-layout .vds-episodes-list {
851
+ margin: 0;
852
+ padding: 10px;
853
+ display: grid;
854
+ gap: 0;
855
+ scrollbar-width: thin;
856
+ scrollbar-color: rgb(255 255 255 / 28%) transparent;
857
+ }
858
+
859
+ .vds-video-layout .vds-episodes-empty {
860
+ padding: 12px;
861
+ font-size: 12px;
862
+ color: rgb(255 255 255 / 72%);
863
+ }
864
+
865
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar {
866
+ width: 6px;
867
+ height: 6px;
868
+ -webkit-appearance: none;
869
+ }
870
+
871
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-track {
872
+ background: transparent;
873
+ border-radius: 999px;
874
+ }
875
+
876
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-button {
877
+ display: none;
878
+ width: 0;
879
+ height: 0;
880
+ -webkit-appearance: none;
881
+ }
882
+
883
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-button:single-button {
884
+ display: none;
885
+ width: 0;
886
+ height: 0;
887
+ }
888
+
889
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-thumb {
890
+ border-radius: 999px;
891
+ border: 1px solid rgb(255 255 255 / 12%);
892
+ background: linear-gradient(180deg, rgb(255 255 255 / 30%) 0%, rgb(255 255 255 / 16%) 100%);
893
+ transition:
894
+ background 0.18s ease,
895
+ border-color 0.18s ease;
896
+ }
897
+
898
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-thumb:hover {
899
+ border-color: rgb(255 255 255 / 20%);
900
+ background: linear-gradient(180deg, rgb(255 255 255 / 42%) 0%, rgb(255 255 255 / 24%) 100%);
901
+ }
902
+
903
+ .vds-video-layout .vds-episodes-panel::-webkit-scrollbar-corner {
904
+ background: transparent;
905
+ }
906
+
907
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar {
908
+ width: 6px;
909
+ height: 6px;
910
+ -webkit-appearance: none;
911
+ }
912
+
913
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar-track {
914
+ background: transparent;
915
+ border-radius: 999px;
916
+ }
917
+
918
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar-button,
919
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar-button:single-button {
920
+ display: none;
921
+ width: 0;
922
+ height: 0;
923
+ -webkit-appearance: none;
924
+ }
925
+
926
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar-thumb {
927
+ border-radius: 999px;
928
+ border: 1px solid rgb(255 255 255 / 12%);
929
+ background: linear-gradient(180deg, rgb(255 255 255 / 30%) 0%, rgb(255 255 255 / 16%) 100%);
930
+ }
931
+
932
+ .vds-video-layout .vds-episodes-list::-webkit-scrollbar-thumb:hover {
933
+ border-color: rgb(255 255 255 / 20%);
934
+ background: linear-gradient(180deg, rgb(255 255 255 / 42%) 0%, rgb(255 255 255 / 24%) 100%);
935
+ }
936
+
937
+ .vds-video-layout .vds-episode-item {
938
+ display: grid !important;
939
+ grid-template-columns: 152px minmax(0, 1fr) !important;
940
+ align-items: start;
941
+ width: 100%;
942
+ min-height: 108px;
943
+ gap: 12px;
944
+ padding: 11px 2px;
945
+ border-radius: 0;
946
+ border: 0;
947
+ border-bottom: 1px solid rgb(255 255 255 / 10%);
948
+ background: transparent;
949
+ transition:
950
+ transform 0.18s ease,
951
+ opacity 0.18s ease;
952
+ }
953
+
954
+ .vds-video-layout .vds-episode-item:hover {
955
+ transform: translateX(2px);
956
+ opacity: 0.98;
957
+ }
958
+
959
+ .vds-video-layout .vds-episode-thumb {
960
+ display: block;
961
+ width: 152px;
962
+ height: 86px;
963
+ object-fit: cover;
964
+ border-radius: 10px;
965
+ background: #151515;
966
+ border: 1px solid rgb(255 255 255 / 12%);
967
+ }
968
+
969
+ .vds-video-layout .vds-episode-thumb-wrap {
970
+ width: 152px;
971
+ height: 86px;
972
+ border-radius: 10px;
973
+ overflow: hidden;
974
+ }
975
+
976
+ .vds-video-layout .vds-episode-thumb-placeholder {
977
+ background: linear-gradient(125deg, rgb(255 255 255 / 6%), rgb(255 255 255 / 2%));
978
+ }
979
+
980
+ .vds-video-layout .vds-episode-body {
981
+ min-width: 0;
982
+ display: grid;
983
+ align-content: start;
984
+ gap: 3px;
985
+ }
986
+
987
+ .vds-video-layout .vds-episode-title,
988
+ .vds-video-layout .vds-episode-subtitle {
989
+ margin: 0;
990
+ white-space: nowrap;
991
+ overflow: hidden;
992
+ text-overflow: ellipsis;
993
+ }
994
+
995
+ .vds-video-layout .vds-episode-meta-row {
996
+ display: flex;
997
+ align-items: center;
998
+ justify-content: space-between;
999
+ gap: 8px;
1000
+ }
1001
+
1002
+ .vds-video-layout .vds-episode-label {
1003
+ font-size: 10px;
1004
+ font-weight: 700;
1005
+ letter-spacing: 0.08em;
1006
+ text-transform: uppercase;
1007
+ color: #e50914;
1008
+ }
1009
+
1010
+ .vds-video-layout .vds-episode-runtime {
1011
+ font-size: 11px;
1012
+ color: rgb(255 255 255 / 65%);
1013
+ }
1014
+
1015
+ .vds-video-layout .vds-episode-title {
1016
+ font-size: 14px;
1017
+ font-weight: 600;
1018
+ line-height: 1.2;
1019
+ }
1020
+
1021
+ .vds-video-layout .vds-episode-subtitle {
1022
+ margin-top: 1px;
1023
+ font-size: 12px;
1024
+ color: rgb(255 255 255 / 82%);
1025
+ }
1026
+
1027
+ .vds-video-layout .vds-episode-desc {
1028
+ margin: 0;
1029
+ font-size: 12px;
1030
+ line-height: 1.35;
1031
+ color: rgb(255 255 255 / 78%);
1032
+ line-clamp: 2;
1033
+ display: -webkit-box;
1034
+ -webkit-line-clamp: 2;
1035
+ -webkit-box-orient: vertical;
1036
+ overflow: hidden;
1037
+ }
1038
+
1039
+ @media (max-width: 640px) {
1040
+ .vds-video-layout[data-sm] .vds-controls .vds-play-button {
1041
+ --media-button-size: 38px;
1042
+ --media-button-icon-size: 22px;
1043
+ transform: translateY(0);
1044
+ margin-bottom: 0;
1045
+ }
1046
+
1047
+ .vds-video-layout .vds-episodes-backdrop {
1048
+ background: linear-gradient(180deg, rgb(0 0 0 / 18%) 0%, rgb(0 0 0 / 52%) 100%);
1049
+ }
1050
+
1051
+ .vds-video-layout .vds-episodes-panel {
1052
+ left: 10px;
1053
+ right: 10px;
1054
+ width: auto;
1055
+ top: auto;
1056
+ bottom: 64px;
1057
+ max-height: min(62vh, 480px);
1058
+ border-radius: 14px;
1059
+ transform: translate3d(0, 10px, 0);
1060
+ }
1061
+
1062
+ .vds-video-layout .vds-episodes-panel[data-open='true'] {
1063
+ transform: translate3d(0, 0, 0);
1064
+ }
1065
+
1066
+ .vds-video-layout .vds-episode-item {
1067
+ grid-template-columns: 116px minmax(0, 1fr) !important;
1068
+ min-height: 84px;
1069
+ gap: 10px;
1070
+ padding: 8px 0;
1071
+ }
1072
+
1073
+ .vds-video-layout .vds-episode-thumb {
1074
+ width: 116px;
1075
+ height: 66px;
1076
+ }
1077
+
1078
+ .vds-video-layout .vds-episode-thumb-wrap {
1079
+ width: 116px;
1080
+ height: 66px;
1081
+ }
1082
+ }