+ .vjs-control-bar {
+ height: $control-bar-height;
+
+ .vjs-progress-control {
+ bottom: 34px;
+ width: 100%;
+ position: absolute;
+ height: 5px;
+
+ .vjs-progress-holder {
+ margin: 0;
+ border-radius: 0;
+ }
+ }
+
+ .vjs-play-control {
+ font-size: $font-size;
+ padding: 0 17px;
+ margin-right: 5px;
+ }
+
+ .vjs-time-control {
+ &.vjs-current-time {
+ font-size: $font-size;
+ display: inline-block;
+ padding: 0;
+
+ .vjs-current-time-display {
+ line-height: $control-bar-height;
+
+ &::after {
+ content: "/";
+ margin: 0 1px 0 2px;
+ }
+ }
+ }
+
+ &.vjs-duration {
+ font-size: $font-size;
+ display: inline-block;
+ padding: 0;
+
+ .vjs-duration-display {
+ line-height: $control-bar-height;
+ }
+ }
+
+ &.vjs-remaining-time {
+ display: none;
+ }
+ }
+
+ .vjs-webtorrent {
+ width: 100%;
+ line-height: $control-bar-height;
+ text-align: right;
+ padding-right: 60px;
+
+ .vjs-webtorrent-displayed {
+ display: block;
+ }
+
+ .vjs-webtorrent-hidden {
+ display: none;
+ }
+
+ .download-speed-number, .upload-speed-number, .peers-number {
+ font-weight: $font-semibold;
+ }
+
+ .download-speed-text, .upload-speed-text, .peers-text {
+ margin-right: 15px;
+ }
+
+ .icon {
+ display: inline-block;
+ width: 15px;
+ height: 15px;
+ background-size: contain;
+ vertical-align: middle;
+ background-repeat: no-repeat;
+ margin-right: 6px;
+ position: relative;
+ top: -1px;
+
+ &.icon-download {
+ background-image: url('../assets/player/images/arrow-down.svg');
+ }
+
+ &.icon-upload {
+ background-image: url('../assets/player/images/arrow-up.svg');
+ }
+ }
+ }
+
+ .vjs-mute-control {
+ .vjs-icon-placeholder {
+ display: inline-block;
+ width: 22px;
+ height: 22px;
+ vertical-align: middle;
+ background: url('../assets/player/images/volume.svg') no-repeat;
+ background-size: contain;
+
+ &::before {
+ content: '';
+ }
+ }
+
+ &.vjs-vol-0 .vjs-icon-placeholder {
+ background: url('../assets/player/images/volume-mute.svg') no-repeat;
+ background-size: contain;
+ }
+ }
+
+ .vjs-volume-menu-button,
+ .vjs-volume-panel {
+ width: 6em;
+ position: absolute;
+ right: 0;
+ margin-right: 65px;
+ }
+
+ .vjs-volume-bar {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcCAQAAACw95UnAAAAMElEQVRIx2NgoBL4n4YKGUYNHkEG4zJg1OCRYDCpBowaPJwMppbLRg0eNXjUYBLEAXWNUA6QNm1lAAAAAElFTkSuQmCC) no-repeat;
+ background-size: 22px 14px;
+ height: 100%;
+ width: 100%;
+ max-width: 22px;
+ max-height: 14px;
+ margin: 7px 4px;
+ border-radius: 0;
+ top: 3px;
+
+ .vjs-volume-level {
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAcAQAAAAAyhWABAAAAAnRSTlMAAHaTzTgAAAAZSURBVHgBYwAB/g9EUv+JokCqiaT+U4MCAPKPS7WUUOc1AAAAAElFTkSuQmCC) no-repeat;
+ background-size: 22px 14px;
+ max-width: 22px;
+ max-height: 14px;
+ height: 100%;
+ }
+ }
+
+ .vjs-volume-panel.vjs-volume-panel-horizontal.vjs-slider-active,
+ .vjs-volume-panel.vjs-volume-panel-horizontal:active,
+ .vjs-volume-panel.vjs-volume-panel-horizontal:focus,
+ .vjs-volume-panel.vjs-volume-panel-horizontal:hover {
+ width: 6em;
+ transition-property: none;
+ }
+
+ .vjs-volume-panel .vjs-mute-control:hover ~ .vjs-volume-control.vjs-volume-horizontal {
+ width: 3em;
+ height: auto;
+ }
+
+ .vjs-volume-panel .vjs-mute-control:hover ~ .vjs-volume-control {
+ transition-property: none;
+ }
+
+ .vjs-volume-panel {
+ .vjs-mute-control {
+ width: 2em;
+ z-index: 1;
+ padding: 0;
+ }
+
+ .vjs-volume-control {
+ display: inline-block;
+ position: relative;
+ left: 5px;
+ opacity: 1;
+ width: 3em;
+ height: auto;
+ }
+ }
+
+ .vjs-fullscreen-control {
+ width: 37px;
+
+ .vjs-icon-placeholder {
+ display: inline-block;
+ width: 22px;
+ height: 22px;
+ vertical-align: middle;
+ background: url('../assets/player/images/fullscreen.svg') no-repeat;
+ background-size: contain;
+
+ &::before {
+ content: '';
+ }
+ }
+ }
+
+ .vjs-menu-button-popup {
+ font-size: 13px;
+ font-weight: $font-semibold;
+ width: 42px;
+
+ // Thanks: https://github.com/kmoskwiak/videojs-resolution-switcher/pull/92/files
+ .vjs-resolution-button-label {
+ line-height: $control-bar-height;
+ position: absolute;
+ top: 0;
+ left: -1px;
+ width: 100%;
+ height: 100%;
+ text-align: center;
+ box-sizing: inherit;
+ }
+
+ .vjs-resolution-button {
+ outline: 0 !important;
+ }
+
+ .vjs-menu {
+ top: 20px;
+
+ .vjs-menu-content {
+ width: 4em;
+ left: 50%; /* Center the menu, in it's parent */
+ margin-left: -2em; /* half of width, to center */
+ }
+
+ li {
+ text-transform: none;
+ font-size: 13px;
+ }
+ }
+ }
+ }