| /* Copyright (c) 2017 The Chromium Authors. All rights reserved. |
| Use of this source code is governed by a BSD-style license that can be |
| found in the LICENSE file.*/ |
| |
| /** |
| * Used in MediaDocument only. |
| * TODO: Move those outside of this file. |
| */ |
| |
| video:-webkit-full-page-media { |
| margin: auto; |
| position: absolute; |
| top: 0; |
| right: 0; |
| bottom: 0; |
| left: 0; |
| max-height: 100%; |
| max-width: 100%; |
| } |
| |
| /** |
| * Panel Structure |
| */ |
| |
| audio::-webkit-media-controls, |
| video::-webkit-media-controls { |
| writing-mode: horizontal-tb; |
| width: inherit; |
| height: inherit; |
| position: relative; |
| direction: ltr; |
| display: flex; |
| flex-direction: column; |
| font-family: 'Roboto', 'Noto', sans-serif; |
| color: #000; |
| justify-content: flex-end; |
| align-items: center; |
| font-size: 14px; |
| |
| margin-top: env(safe-area-inset-top); |
| margin-left: env(safe-area-inset-left); |
| margin-right: env(safe-area-inset-right); |
| margin-bottom: env(safe-area-inset-bottom); |
| } |
| |
| audio::-webkit-media-controls-enclosure, |
| video::-webkit-media-controls-enclosure { |
| bottom: 0; |
| text-indent: 0; |
| padding: 0; |
| margin: 0; |
| box-sizing: border-box; |
| |
| display: flex; |
| justify-content: flex-end; |
| flex: 1; |
| width: 100%; |
| } |
| |
| audio::-webkit-media-controls-panel, |
| video::-webkit-media-controls-panel { |
| -webkit-appearance: -internal-media-control; |
| |
| display: flex; |
| flex-direction: column; |
| justify-content: flex-end; |
| -webkit-user-select: none; |
| z-index: 0; |
| overflow: hidden; |
| bottom: auto; |
| |
| min-width: 48px; |
| flex: 1; |
| |
| font-size: 12px; |
| font-weight: normal; /* Make sure that we don't inherit non-defaults. */ |
| font-style: normal; |
| |
| opacity: 1; |
| transition: opacity 0.25s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| audio::-webkit-media-controls-panel.transparent, |
| video::-webkit-media-controls-panel.transparent { |
| opacity: 0; |
| transition: opacity 1s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| video::-webkit-media-controls:not(.audio-only) div[pseudo="-webkit-media-controls-panel" i] { |
| background: |
| -webkit-image-set(url('default_100_percent/modern/gradient_bg.png') 1x) |
| repeat-x bottom left; |
| } |
| |
| video::-webkit-media-controls.sizing-small div[pseudo="-webkit-media-controls-panel" i] { |
| background-size: auto 92px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium div[pseudo="-webkit-media-controls-panel" i] { |
| background-size: auto 200px; |
| } |
| |
| video::-webkit-media-controls.sizing-large div[pseudo="-webkit-media-controls-panel" i] { |
| background-size: auto 312px; |
| } |
| |
| /* Need dark gradient at the top of the video when the scrubbing message is |
| * shown */ |
| video::-webkit-media-controls:not(.audio-only) div[pseudo="-webkit-media-controls-panel" i].scrubbing-message { |
| background: |
| -webkit-image-set(url('default_100_percent/modern/top_gradient_bg.png') 1x) |
| repeat-x top left, |
| -webkit-image-set(url('default_100_percent/modern/gradient_bg.png') 1x) |
| repeat-x bottom left; |
| } |
| |
| video::-webkit-media-controls.sizing-small div[pseudo="-webkit-media-controls-panel" i].scrubbing-message { |
| background-size: auto 120px, auto 92px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium div[pseudo="-webkit-media-controls-panel" i].scrubbing-message { |
| background-size: auto 120px, auto 200px; |
| } |
| |
| video::-webkit-media-controls.sizing-large div[pseudo="-webkit-media-controls-panel" i].scrubbing-message { |
| background-size: auto 120px, auto 312px; |
| } |
| |
| audio::-internal-media-controls-button-panel, |
| video::-internal-media-controls-button-panel { |
| -webkit-appearance: -internal-media-control; |
| |
| flex-direction: row; |
| align-items: flex-end; |
| display: flex; |
| |
| /* We use flex-start here to ensure that the play button is visible even |
| * if we are too small to show all controls. |
| */ |
| justify-content: flex-start; |
| -webkit-user-select: none; |
| position: relative; |
| width: 100%; |
| z-index: 0; |
| overflow: hidden; |
| text-align: right; |
| bottom: auto; |
| height: 48px; |
| min-width: 48px; |
| line-height: 48px; |
| padding: 0 10px 0 16px; |
| box-sizing: border-box; |
| } |
| |
| video::-internal-media-controls-button-spacer { |
| flex: 1; |
| } |
| |
| audio::-internal-media-controls-button-spacer, |
| video::-webkit-media-controls.audio-only [pseudo="-internal-media-controls-button-spacer"] { |
| display: none; |
| } |
| |
| audio::-internal-media-controls-button-panel, |
| video::-internal-media-controls-button-panel, |
| audio::-webkit-media-controls-timeline, |
| video::-webkit-media-controls-timeline { |
| opacity: 1; |
| transition: opacity 0.5s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| .transparent div[pseudo="-internal-media-controls-button-panel"], |
| .transparent input[pseudo="-webkit-media-controls-timeline"] { |
| opacity: 0; |
| transition: opacity 0.75s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| /** |
| * Media Buttons |
| */ |
| |
| audio::-webkit-media-controls-play-button, |
| video::-webkit-media-controls-play-button, |
| audio::-webkit-media-controls-mute-button, |
| video::-webkit-media-controls-mute-button, |
| video::-internal-media-controls-cast-icon, |
| video::-webkit-media-controls-fullscreen-button, |
| audio::-webkit-media-controls-fullscreen-button, |
| video::-internal-media-controls-cast-button, |
| audio::-internal-media-controls-cast-button, |
| video::-internal-media-controls-overflow-button, |
| audio::-internal-media-controls-overflow-button, |
| video::-webkit-media-controls-toggle-closed-captions-button, |
| audio::-internal-media-controls-download-button, |
| video::-internal-media-controls-download-button, |
| video::-internal-media-controls-picture-in-picture-button { |
| -webkit-appearance: -internal-media-control; |
| background-size: 24px; |
| background-repeat: no-repeat; |
| background-position: center center; |
| width: 32px; |
| height: 32px; |
| min-width: 32px; |
| padding: 0; |
| border-width: 0; |
| background-color: initial; |
| color: inherit; |
| } |
| |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-play-button" i], |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-mute-button" i], |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-fullscreen-button" i], |
| video::-webkit-media-controls.sizing-small input[pseudo="-internal-media-controls-overflow-button" i] { |
| width: 48px; |
| height: 48px; |
| min-width: 48px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-play-button" i], |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-mute-button" i], |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-fullscreen-button" i], |
| video::-webkit-media-controls.sizing-medium input[pseudo="-internal-media-controls-overflow-button" i] { |
| width: 64px; |
| height: 64px; |
| min-width: 64px; |
| background-size: 32px; |
| } |
| |
| /* TODO(https://crbug.com/857120): remove these rules and the sizing-large CSS class. */ |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-play-button" i], |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-mute-button" i], |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-fullscreen-button" i], |
| video::-webkit-media-controls.sizing-large input[pseudo="-internal-media-controls-overflow-button" i] { |
| width: 64px; |
| height: 64px; |
| min-width: 64px; |
| background-size: 32px; |
| } |
| |
| video::-webkit-media-controls.sizing-small div[pseudo="-internal-media-controls-button-panel" i] { |
| height: 48px; |
| line-height: 48px; |
| padding: 0 0 0 16px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium div[pseudo="-internal-media-controls-button-panel" i] { |
| height: 64px; |
| line-height: 64px; |
| padding: 0 32px 0 32px; |
| } |
| |
| /* TODO(https://crbug.com/857120): remove these rules and the sizing-large CSS class. */ |
| video::-webkit-media-controls.sizing-large div[pseudo="-internal-media-controls-button-panel" i] { |
| height: 64px; |
| line-height: 64px; |
| padding: 0 32px 0 32px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small [pseudo="-webkit-media-controls-current-time-display"], |
| video::-webkit-media-controls.sizing-small [pseudo="-webkit-media-controls-time-remaining-display"] { |
| font-size: 16px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium [pseudo="-webkit-media-controls-current-time-display"], |
| video::-webkit-media-controls.sizing-medium [pseudo="-webkit-media-controls-time-remaining-display"] { |
| font-size: 16px; |
| } |
| |
| video::-webkit-media-controls.sizing-large [pseudo="-webkit-media-controls-current-time-display"], |
| video::-webkit-media-controls.sizing-large [pseudo="-webkit-media-controls-time-remaining-display"] { |
| font-size: 16px; |
| } |
| |
| audio::-webkit-media-controls-play-button, |
| video::-webkit-media-controls-play-button { |
| background-image: -webkit-image-set(url(ic_play_arrow.svg) 1x); |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-webkit-media-controls-play-button"] { |
| background-image: -webkit-image-set(url(ic_play_arrow_white.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-mute-button, |
| video::-webkit-media-controls-mute-button { |
| background-image: -webkit-image-set(url(ic_volume_up.svg) 1x); |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-webkit-media-controls-mute-button"] { |
| background-image: -webkit-image-set(url(ic_volume_up_white.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-mute-button.muted, |
| video::-webkit-media-controls-mute-button.muted { |
| background-image: -webkit-image-set(url(ic_volume_off.svg) 1x); |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-webkit-media-controls-mute-button"].muted { |
| background-image: -webkit-image-set(url(ic_volume_off_white.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-fullscreen-button, |
| video::-webkit-media-controls-fullscreen-button { |
| background-image: -webkit-image-set(url(ic_fullscreen.svg) 1x); |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-webkit-media-controls-fullscreen-button"] { |
| background-image: -webkit-image-set(url(ic_fullscreen_white.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-fullscreen-button.fullscreen, |
| video::-webkit-media-controls-fullscreen-button.fullscreen { |
| background-image: -webkit-image-set(url(ic_fullscreen_exit.svg) 1x); |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-webkit-media-controls-fullscreen-button"].fullscreen { |
| background-image: -webkit-image-set(url(ic_fullscreen_exit_white.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-mute-button:disabled, |
| video::-internal-media-controls-overflow-button:disabled, |
| video::-webkit-media-controls-mute-button:disabled, |
| video::-webkit-media-controls-fullscreen-button:disabled { |
| opacity: 0.3; |
| } |
| |
| audio::-internal-media-controls-cast-button, |
| video::-internal-media-controls-cast-button { |
| background-image: -webkit-image-set(url(ic_cast_off.svg) 1x); |
| } |
| |
| audio::-internal-media-controls-cast-button.on, |
| video::-internal-media-controls-cast-button.on { |
| background-image: -webkit-image-set(url(ic_cast_on.svg) 1x); |
| } |
| |
| audio::-webkit-media-controls-toggle-closed-captions-button { |
| display: none; |
| } |
| |
| video::-webkit-media-controls-toggle-closed-captions-button { |
| background-image: -webkit-image-set(url(ic_subtitles.svg) 1x); |
| } |
| |
| video::-webkit-media-controls-toggle-closed-captions-button.closed-captions { |
| background-image: -webkit-image-set(url(ic_closed_caption.svg) 1x); |
| } |
| |
| video::-internal-media-controls-download-button, |
| audio::-internal-media-controls-download-button { |
| background-image: -webkit-image-set(url(ic_download.svg) 1x); |
| } |
| |
| video::-internal-media-controls-overflow-button, |
| audio::-internal-media-controls-overflow-button { |
| background-image: -webkit-image-set(url(ic_menu.svg) 1x); |
| } |
| |
| video::-internal-media-controls-picture-in-picture-button { |
| background-image: -webkit-image-set( |
| url(ic_picture_in_picture.svg) 1x); |
| } |
| |
| video::-internal-media-controls-picture-in-picture-button.on { |
| background-image: -webkit-image-set( |
| url(ic_picture_in_picture_exit.svg) 1x); |
| } |
| |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-panel"] [pseudo="-internal-media-controls-overflow-button"] { |
| background-image: -webkit-image-set(url(ic_menu_white.svg) 1x); |
| } |
| |
| video::-webkit-media-controls-overlay-play-button { |
| -webkit-appearance: -internal-media-control; |
| display: flex; |
| justify-content: center; |
| align-items: center; |
| flex: 1; |
| min-height: 0; |
| width: 100%; |
| box-sizing: border-box; |
| overflow: hidden; |
| background: transparent; |
| margin-bottom: -48px; |
| position: relative; |
| opacity: 1; |
| transition: opacity 0.25s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| video::-webkit-media-controls-overlay-play-button.hidden { |
| opacity: 0; |
| transition: opacity 0.75s cubic-bezier(0.25, 0.1, 0.25, 1); |
| } |
| |
| input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| width: var(--overlay-play-button-width, 48px); |
| height: var(--overlay-play-button-width, 48px); |
| border-radius: 50%; |
| |
| background-size: 50%; |
| background-repeat: no-repeat; |
| background-position: center center; |
| background-image: -webkit-image-set(url(ic_play_arrow.svg) 1x); |
| background-color: rgba(255, 255, 255, .9); |
| box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.10); |
| |
| transition: opacity cubic-bezier(0.4, 0.0, 0.6, 1) 600ms; |
| } |
| |
| .phase-pre-ready input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| transition: none; |
| } |
| |
| .state-playing input[pseudo="-webkit-media-controls-play-button" i], |
| .state-playing input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| background-image: -webkit-image-set(url(ic_pause.svg) 1x); |
| } |
| |
| video::-webkit-media-controls.state-playing:not(.audio-only) input[pseudo="-webkit-media-controls-play-button" i] { |
| background-image: -webkit-image-set(url(ic_pause_white.svg) 1x); |
| } |
| |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-overlay-play-button" i] { |
| margin-bottom: -48px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-overlay-play-button" i] { |
| margin-bottom: -64px; |
| } |
| |
| /* TODO(https://crbug.com/857120): remove these rules and the sizing-large CSS class. */ |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-overlay-play-button" i] { |
| margin-bottom: -64px; |
| } |
| |
| /** |
| * Timeline |
| */ |
| |
| audio::-webkit-media-controls-timeline, |
| video::-webkit-media-controls-timeline { |
| -webkit-appearance: -internal-media-control; |
| |
| height: 4px; |
| padding-left: 16px; |
| padding-right: 16px; |
| margin: 0; |
| background: transparent; |
| /* This prevents layout issues in quirks mode */ |
| box-sizing: unset !important; |
| } |
| |
| audio::-webkit-media-controls-timeline, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-timeline"] { |
| padding-top: 26px; |
| padding-bottom: 26px; |
| } |
| |
| video::-webkit-media-controls-timeline { |
| z-index: 0; |
| } |
| |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i] { |
| padding: 0 16px 12px 16px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i] { |
| padding: 0 32px 36px 32px; |
| } |
| |
| /* TODO(https://crbug.com/857120): remove these rules and the sizing-large CSS class. */ |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i] { |
| padding: 0 32px 36px 32px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i], |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before, |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-background { |
| height: 4px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i], |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before, |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-background { |
| height: 4px; |
| } |
| |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i], |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before, |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-background { |
| height: 4px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| width: 12px; |
| height: 12px; |
| margin-top: -4px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| width: 12px; |
| height: 12px; |
| margin-top: -4px; |
| } |
| |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| width: 12px; |
| height: 12px; |
| margin-top: -4px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-small input[pseudo="-webkit-media-controls-timeline" i]::-internal-media-controls-segmented-track { |
| border-radius: 2px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-medium input[pseudo="-webkit-media-controls-timeline" i]::-internal-media-controls-segmented-track { |
| border-radius: 2px; |
| } |
| |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.sizing-large input[pseudo="-webkit-media-controls-timeline" i]::-internal-media-controls-segmented-track { |
| border-radius: 2px; |
| } |
| |
| video::-webkit-media-controls.sizing-small div[pseudo="-internal-media-controls-loading-panel" i]::-internal-media-controls-loading-panel-spinner-frame { |
| margin-top: calc( |
| (var(--overlay-play-button-width, 48px) |
| + 16px /* timeline height + padding-bottom */) |
| / -2); |
| } |
| |
| video::-webkit-media-controls.sizing-medium div[pseudo="-internal-media-controls-loading-panel" i]::-internal-media-controls-loading-panel-spinner-frame { |
| margin-top: calc( |
| (var(--overlay-play-button-width, 48px) |
| + 40px /* timeline height + padding-bottom */) |
| / -2); |
| } |
| |
| /* TODO(https://crbug.com/857120): remove these rules and the sizing-large CSS class. */ |
| video::-webkit-media-controls.sizing-large div[pseudo="-internal-media-controls-loading-panel" i]::-internal-media-controls-loading-panel-spinner-frame { |
| margin-top: calc( |
| (var(--overlay-play-button-width, 48px) |
| + 40px /* timeline height + padding-bottom */) |
| / -2); |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-media-controls-segmented-track { |
| -webkit-appearance: -internal-media-control; |
| |
| flex: 1; |
| background: rgba(0, 0, 0, .2); |
| border-radius: 2px; |
| position: relative; |
| } |
| video::-webkit-media-controls:not(.audio-only) input[pseudo="-webkit-media-controls-timeline" i]::-internal-media-controls-segmented-track { |
| background: rgba(255, 255, 255, .3); |
| box-shadow: 0 2px 10px 0 rgba(0,0,0,0.5); |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| -webkit-appearance: -internal-media-control; |
| background: rgba(0, 0, 0, .87); |
| box-shadow: 0 0 10px 0 #fff; |
| |
| width: 12px; |
| height: 12px; |
| border-radius: 50%; |
| margin-top: -4px; |
| flex: 0 0 0; |
| } |
| |
| video::-webkit-media-controls:not(.audio-only) input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| background: #FFFFFF; |
| box-shadow: unset; |
| } |
| |
| .state-no-source input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| display: none; |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-background { |
| position: absolute; |
| width: 100%; |
| top: 0; |
| height: 4px; |
| overflow: hidden; |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before, |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after { |
| position: absolute; |
| height: 4px; |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before { |
| background: rgba(0, 0, 0, .87); |
| border-radius: 100px; |
| } |
| video::-webkit-media-controls:not(.audio-only) input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before { |
| background: rgba(255, 255, 255, 1); |
| } |
| |
| input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after { |
| background: rgba(0, 0, 0, .54); |
| border-radius: 2px; |
| } |
| video::-webkit-media-controls:not(.audio-only) input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after { |
| background: rgba(255, 255, 255, .54); |
| } |
| |
| audio::-webkit-media-controls-volume-slider, |
| video::-webkit-media-controls-volume-slider { |
| display: none; |
| } |
| |
| /** |
| * Time Display |
| */ |
| |
| audio::-webkit-media-controls-time-remaining-display, |
| video::-webkit-media-controls-time-remaining-display { |
| text-align: left; |
| margin-left: 4px; |
| } |
| |
| audio::-webkit-media-controls-current-time-display, |
| video::-webkit-media-controls-current-time-display, |
| audio::-webkit-media-controls-time-remaining-display, |
| video::-webkit-media-controls-time-remaining-display { |
| opacity: 0.87; |
| font-family: Roboto-Regular, Roboto, sans-serif; |
| font-size: 14px; |
| color: #000000; |
| letter-spacing: 0; |
| text-shadow: 0 0 10px #FFFFFF; |
| } |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-current-time-display"], |
| video::-webkit-media-controls:not(.audio-only) [pseudo="-webkit-media-controls-time-remaining-display"] { |
| color: #FFFFFF; |
| text-shadow: unset; |
| opacity: unset; |
| } |
| |
| /** |
| * Overflow Menu |
| */ |
| |
| audio::-internal-media-controls-text-track-list, |
| video::-internal-media-controls-text-track-list, |
| audio::-internal-media-controls-overflow-menu-list, |
| video::-internal-media-controls-overflow-menu-list { |
| position: fixed; |
| max-width: 50%; |
| max-height: 250px; |
| min-width: 180px; |
| overflow-x: hidden; |
| overflow-y: auto; |
| white-space: nowrap; |
| font-size: 14px; |
| background: #FFFFFF; |
| box-shadow: 0 1px 9px 0 rgba(0,0,0,0.40); |
| border-radius: 2px; |
| } |
| |
| audio::-internal-media-controls-text-track-list-header, |
| video::-internal-media-controls-text-track-list-header, |
| audio::-internal-media-controls-text-track-list-item, |
| video::-internal-media-controls-text-track-list-item, |
| audio::-internal-media-controls-overflow-menu-list-item, |
| video::-internal-media-controls-overflow-menu-list-item { |
| display: flex; |
| align-items: center; |
| justify-content: flex-start; |
| |
| font-family: Roboto-Regular, Roboto, sans-serif; |
| font-size: 14px; |
| color: rgba(0,0,0,0.87); |
| letter-spacing: 0; |
| |
| line-height: 48px; |
| padding-left: 16px; |
| padding-right: 16px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small div[pseudo="-internal-media-controls-overflow-menu-list" i] { |
| min-width: 180px; |
| max-width: 180px; |
| max-height: 250px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium div[pseudo="-internal-media-controls-overflow-menu-list" i] { |
| min-width: 180px; |
| max-width: 180px; |
| max-height: 250px; |
| } |
| |
| video::-webkit-media-controls.sizing-large div[pseudo="-internal-media-controls-overflow-menu-list" i] { |
| min-width: 180px; |
| max-width: 180px; |
| max-height: 250px; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small label[pseudo="-internal-media-controls-overflow-menu-list-item" i] { |
| font-size: 14px; |
| height: 48px; |
| padding: 0 16px 0; |
| } |
| |
| video::-webkit-media-controls.sizing-medium label[pseudo="-internal-media-controls-overflow-menu-list-item" i] { |
| font-size: 14px; |
| height: 48px; |
| padding: 0 16px 0; |
| } |
| |
| video::-webkit-media-controls.sizing-large label[pseudo="-internal-media-controls-overflow-menu-list-item" i] { |
| font-size: 14px; |
| height: 48px; |
| padding: 0 16px 0; |
| } |
| |
| /* TODO(https://crbug.com/857120): All these are the same, so these are unnecessary. */ |
| video::-webkit-media-controls.sizing-small label[pseudo="-internal-media-controls-overflow-menu-list-item" i] input { |
| margin-left: 0; |
| margin-right: 16px; |
| width: 24px; |
| height: 24px; |
| min-width: 24px; |
| background-size: 24px; |
| } |
| |
| video::-webkit-media-controls.sizing-medium label[pseudo="-internal-media-controls-overflow-menu-list-item" i] input { |
| margin-left: 0; |
| margin-right: 16px; |
| width: 24px; |
| height: 24px; |
| min-width: 24px; |
| background-size: 24px; |
| } |
| |
| video::-webkit-media-controls.sizing-large label[pseudo="-internal-media-controls-overflow-menu-list-item" i] input { |
| margin-left: 0; |
| margin-right: 16px; |
| width: 24px; |
| height: 24px; |
| min-width: 24px; |
| background-size: 24px; |
| } |
| |
| label[pseudo="-internal-media-controls-overflow-menu-list-item"] input { |
| margin-left: -9px; |
| margin-right: 6px; |
| pointer-events: none; |
| } |
| |
| label[pseudo="-internal-media-controls-overflow-menu-list-item"] div { |
| display: inline-grid; |
| margin: 16px 0 16px 0; |
| overflow: hidden; |
| } |
| |
| label[pseudo="-internal-media-controls-overflow-menu-list-item"] div.with-subtitle { |
| margin: 8px 0 8px 0; |
| } |
| |
| label[pseudo="-internal-media-controls-overflow-menu-list-item"] div span { |
| line-height: normal; |
| overflow: hidden; |
| text-overflow: ellipsis; |
| } |
| |
| label[pseudo="-internal-media-controls-overflow-menu-list-item"] div span.subtitle { |
| color: rgba(0,0,0,0.54); |
| } |
| |
| audio::-internal-media-controls-text-track-list-header:focus, |
| video::-internal-media-controls-text-track-list-header:focus, |
| audio::-internal-media-controls-overflow-menu-list-item:focus, |
| video::-internal-media-controls-overflow-menu-list-item:focus, |
| audio::-internal-media-controls-text-track-list-item:focus, |
| video::-internal-media-controls-text-track-list-item:focus { |
| background-color: #e0e0e0; |
| outline: none; |
| } |
| |
| audio::-internal-media-controls-text-track-list-header, |
| video::-internal-media-controls-text-track-list-header, |
| audio::-internal-media-controls-text-track-list-item, |
| video::-internal-media-controls-text-track-list-item { |
| padding-left: 58px; |
| display: block; |
| } |
| |
| audio::-internal-media-controls-text-track-list-header, |
| video::-internal-media-controls-text-track-list-header { |
| background-size: 18px; |
| background-position: 20px center; |
| background-repeat: no-repeat; |
| background-image: -webkit-image-set(url(ic_arrow_back.svg) 1x); |
| } |
| |
| label[pseudo="-internal-media-controls-text-track-list-item"] input { |
| -webkit-appearance: none; |
| width: 18px; |
| height: 18px; |
| margin: 15px; |
| float: right; |
| pointer-events: none; |
| } |
| |
| label[pseudo="-internal-media-controls-text-track-list-item"] input:checked { |
| background-image: -webkit-image-set(url(ic_check_blue.svg) 1x); |
| } |
| |
| video::-webkit-media-controls-overlay-enclosure { |
| position: absolute; |
| width: 100%; |
| height: 100%; |
| } |
| |
| /** |
| * Audio Controls |
| */ |
| |
| audio:not([controls]) { |
| display: none !important; |
| } |
| |
| audio { |
| width: 300px; |
| height: 54px; |
| } |
| |
| audio::-webkit-media-controls, |
| video::-webkit-media-controls.audio-only { |
| min-width: 240px; |
| min-height: 54px; |
| } |
| |
| audio::-webkit-media-controls-overlay-enclosure, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-overlay-enclosure"] { |
| display: none; |
| } |
| |
| audio::-webkit-media-controls-enclosure, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-enclosure"] { |
| min-height: 54px; |
| max-height: 54px; |
| flex-direction: row; |
| background: #F1F3F4; |
| border-radius: 100px; |
| overflow: hidden; |
| } |
| |
| audio::-webkit-media-controls-panel, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-panel"] { |
| flex-direction: row; |
| background: none; |
| padding: 0 10px; |
| align-items: center; |
| justify-content: flex-start; |
| } |
| |
| audio::-internal-media-controls-play-button, |
| video::-webkit-media-controls.audio-only [pseudo="-internal-media-controls-play-button"] { |
| display: none; |
| } |
| |
| audio::-webkit-media-controls-current-time-display, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-current-time-display"] { |
| text-align: right; |
| margin-left: 5px; |
| } |
| |
| audio::-webkit-media-controls-current-time-display, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-current-time-display"], |
| audio::-webkit-media-controls-time-remaining-display, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-time-remaining-display"] { |
| min-width: auto; |
| flex: 0; |
| white-space: nowrap; |
| } |
| |
| audio::-webkit-media-controls-timeline, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-timeline"] { |
| flex: 1 0 0px; |
| width: 0; |
| } |
| |
| audio::-webkit-media-controls-play-button, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-play-button"], |
| audio::-webkit-media-controls-mute-button, |
| video::-webkit-media-controls.audio-only [pseudo="-webkit-media-controls-mute-button"], |
| audio::-internal-media-controls-overflow-button, |
| video::-webkit-media-controls.audio-only [pseudo="-internal-media-controls-overflow-button"] { |
| flex: 0 0 32px; |
| } |
| |
| /** |
| * Preload state |
| */ |
| |
| .use-default-poster { |
| background: #333; |
| } |
| |
| .state-no-source input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| opacity: .3; |
| background-image: -webkit-image-set(url(ic_no_source.svg) 1x); |
| } |
| |
| /** |
| * Loading spinner |
| */ |
| |
| video::-internal-media-controls-loading-panel { |
| position: absolute; |
| left: 0; |
| top: 0; |
| right: 0; |
| bottom: 0; |
| overflow: hidden; |
| z-index: 1; |
| pointer-events: none; |
| } |
| |
| audio::-internal-media-controls-loading-panel, |
| video::-webkit-media-controls.audio-only [pseudo="-internal-media-controls-loading-panel"] { |
| display: none; |
| } |
| |
| /** |
| * Text Tracks |
| */ |
| video::-webkit-media-text-track-container { |
| position: relative; |
| width: inherit; |
| height: inherit; |
| overflow: hidden; |
| |
| font: 22px sans-serif; |
| text-align: center; |
| color: rgba(255, 255, 255, 1); |
| |
| letter-spacing: normal; |
| word-spacing: normal; |
| text-transform: none; |
| text-indent: 0; |
| text-decoration: none; |
| pointer-events: none; |
| -webkit-user-select: none; |
| word-break: break-word; |
| } |
| |
| video::cue { |
| display: inline; |
| |
| background-color: rgba(0, 0, 0, 0.8); |
| padding: 2px 2px; |
| } |
| |
| video::-webkit-media-text-track-region { |
| position: absolute; |
| line-height: 5.33vh; |
| writing-mode: horizontal-tb; |
| background: rgba(0, 0, 0, 0.8); |
| color: rgba(255, 255, 255, 1); |
| word-wrap: break-word; |
| overflow-wrap: break-word; |
| overflow: hidden; |
| } |
| |
| video::-webkit-media-text-track-region-container { |
| position: relative; |
| |
| display: flex; |
| flex-flow: column; |
| flex-direction: column; |
| } |
| |
| video::-webkit-media-text-track-region-container.scrolling { |
| transition: top 433ms linear; |
| } |
| |
| |
| video::-webkit-media-text-track-display { |
| position: absolute; |
| overflow: hidden; |
| white-space: pre-wrap; |
| -webkit-box-sizing: border-box; |
| flex: 0 0 auto; |
| } |
| |
| video::cue(:future) { |
| color: gray; |
| } |
| |
| video::cue(b) { |
| font-weight: bold; |
| } |
| |
| video::cue(u) { |
| text-decoration: underline; |
| } |
| |
| video::cue(i) { |
| font-style: italic; |
| } |
| |
| /** |
| * Overlay cast button |
| */ |
| |
| video::-internal-media-controls-overlay-cast-button { |
| -webkit-appearance: none; |
| background-image: -webkit-image-set( |
| url(default_100_percent/legacy/mediaplayer_overlay_cast_off.png) 1x); |
| background-size: cover; |
| background-repeat: no-repeat; |
| background-position: center center; |
| display: flex; |
| position: absolute; |
| top: 8px; |
| left: 8px; |
| margin-left: 0px; |
| margin-top: 0px; |
| border-width: 0px; |
| background-color: transparent; |
| width: 48px; |
| height: 48px; |
| padding: 0; |
| transition: opacity 0.3s; |
| } |
| |
| video::-internal-media-controls-overlay-cast-button.on { |
| background-image: -webkit-image-set( |
| url(default_100_percent/legacy/mediaplayer_overlay_cast_on.png) 1x); |
| } |
| |
| /** |
| * Scrubbing |
| */ |
| |
| video::-internal-media-controls-scrubbing-message { |
| position: absolute; |
| top: 12px; |
| text-align: center; |
| width: 100%; |
| color: #FFFFFF; |
| } |
| |
| .state-scrubbing input[pseudo="-webkit-media-controls-overlay-play-button" i] { |
| display: none; |
| } |
| |
| /** |
| * VR styling. |
| */ |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i], |
| video::-webkit-media-controls.immersive-mode div[pseudo="-internal-media-controls-button-panel" i] { |
| padding-left: 32px; |
| padding-right: 32px; |
| } |
| |
| /* Timeline sizing does not include padding in max width. */ |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i] { |
| max-width: 471px; |
| height: 5px; |
| margin-bottom: 20px; |
| padding-top: 19px; |
| padding-bottom: 19px; |
| } |
| |
| /* Button panel sizing does include padding in max width. */ |
| video::-webkit-media-controls.immersive-mode div[pseudo="-internal-media-controls-button-panel" i] { |
| max-width: 535px; /* 471px + 64px padding. */ |
| } |
| |
| video::-webkit-media-controls.immersive-mode div[pseudo="-webkit-media-controls-panel" i] { |
| /* Centering the button panel and timeline within the controls. */ |
| text-align: -webkit-center; |
| |
| /* Taller scrim. */ |
| background: |
| -webkit-image-set(url('default_100_percent/modern/vr_gradient_bg.png') 1x) |
| repeat-x bottom left; |
| } |
| |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-before, |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-highlight-after, |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i]::-internal-track-segment-background { |
| height: 5px; |
| } |
| |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-timeline" i]::-webkit-slider-thumb { |
| width: 16px; |
| height: 16px; |
| border-radius: 8px; |
| margin-top: -5px; |
| } |
| |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| width: 64px; |
| height: 64px; |
| border-radius: 32px; |
| background-size: 36px; |
| } |
| |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-mute-button" i], |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-fullscreen-button" i], |
| video::-webkit-media-controls.immersive-mode input[pseudo="-internal-media-controls-overflow-button" i] { |
| width: 43px; |
| height: 43px; |
| min-width: 43px; |
| margin-left: 5px; |
| background-size: 24px; |
| } |
| |
| video::-webkit-media-controls.immersive-mode div[pseudo="-internal-media-controls-button-panel" i] { |
| height: 43px; |
| line-height: 43px; |
| } |
| |
| video::-webkit-media-controls.immersive-mode div[pseudo="-webkit-media-controls-current-time-display" i], |
| video::-webkit-media-controls.immersive-mode div[pseudo="-webkit-media-controls-time-remaining-display" i] { |
| font-size: 16px; |
| } |
| |
| /* Hover highlighting. */ |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-mute-button" i]:hover, |
| video::-webkit-media-controls.immersive-mode input[pseudo="-webkit-media-controls-fullscreen-button" i]:hover, |
| video::-webkit-media-controls.immersive-mode input[pseudo="-internal-media-controls-overflow-button" i]:hover { |
| background-color: rgba(255, 255, 255, 0.2); |
| border-radius: 4px; |
| } |
| |
| @media (-webkit-min-device-pixel-ratio: 2) { |
| video::-webkit-media-controls.immersive-mode div[pseudo="-webkit-media-controls-panel" i] { |
| background: |
| -webkit-image-set(url('default_200_percent/modern/vr_gradient_bg.png') 1x) |
| repeat-x bottom left auto 198px; |
| } |
| } |
| |
| /** |
| * Test mode styles to remove animations/transitions to make layout tests |
| * simpler. |
| */ |
| /* Hide the loading panel. */ |
| video::-webkit-media-controls.test-mode div[pseudo="-internal-media-controls-loading-panel" i] { |
| display: none !important; |
| } |
| /* Prevent transitions. */ |
| audio::-webkit-media-controls.test-mode *, |
| video::-webkit-media-controls.test-mode *, |
| video::-webkit-media-controls.test-mode input[pseudo="-webkit-media-controls-overlay-play-button" i]::-internal-media-controls-overlay-play-button-internal { |
| transition: none !important; |
| } |