.vjs-theme-city {
  --vjs-theme-city--primary: #bf3b4d;
  --vjs-theme-city--secondary: #fff;
}

.vjs-theme-city .vjs-button > .vjs-icon-placeholder::before {
  line-height: 50px;
}

.vjs-theme-city .vjs-play-progress::before {
  display: none;
}

.vjs-theme-city .vjs-progress-control {
  position: absolute;
  bottom: 56px;
  left: 0;
  width: 95%;
  margin-left: 2.5%;
  margin-right: 2.5%;
  height: 20px !important;
}

.vjs-theme-city .vjs-progress-control .vjs-progress-holder {
  position: absolute;
  top: 20px;
  right: 0;
  left: 0;
  width: 100%;
  margin: 0;
}

.vjs-theme-city .vjs-play-progress {
  background-color: var(--vjs-theme-city--primary);
}

.vjs-theme-city .vjs-remaining-time {
  line-height: 50px;
  flex: 3;
  text-align: left;
}

.vjs-theme-city .vjs-play-control {
  font-size: 1.75em;
}

.vjs-theme-city .vjs-volume-panel,
.vjs-theme-city .vjs-picture-in-picture-control,
.vjs-theme-city .vjs-fullscreen-control {
  /*flex: 1;*/
}

/* Volume stuff */
.vjs-theme-city .vjs-volume-panel:hover .vjs-volume-control.vjs-volume-horizontal {
  height: 100%;
}

.vjs-theme-city .vjs-mute-control {
  display: none;
}

.vjs-theme-city .vjs-volume-panel {
  margin-left: 0.5em;
  margin-right: 0.5em;
  padding-top: 1.5em;
}

.vjs-theme-city .vjs-volume-panel,
.vjs-theme-city .vjs-volume-panel:hover,
.vjs-theme-city .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
.vjs-theme-city .vjs-volume-panel:focus .vjs-volume-control.vjs-volume-horizontal,
.vjs-theme-city .vjs-volume-panel:hover .vjs-volume-control.vjs-volume-horizontal,
.vjs-theme-city .vjs-volume-panel:active .vjs-volume-control.vjs-volume-horizontal,
.vjs-theme-city .vjs-volume-panel.vjs-volume-panel-horizontal:hover,
.vjs-theme-city .vjs-volume-bar.vjs-slider-horizontal {
  width: 3em;
}

.vjs-theme-city .vjs-volume-level::before {
  font-size: 1em;
}

.vjs-theme-city .vjs-volume-panel .vjs-volume-control {
  opacity: 1;
  width: 100%;
  height: 100%;
}

.vjs-theme-city .vjs-volume-bar {
  background-color: transparent;
  margin: 0;
}

.vjs-theme-city .vjs-slider-horizontal .vjs-volume-level {
  height: 100%;
}

.vjs-theme-city .vjs-volume-bar.vjs-slider-horizontal {
  margin-top: 0;
  margin-bottom: 0;
  height: 100%;
}

.vjs-theme-city .vjs-volume-bar::before {
  content: '';
  z-index: 0;
  width: 0;
  height: 0;
  position: absolute;
  top: 0px;
  left: 0;

  border-style: solid;
  border-width: 0 0 1.75em 3em;
  border-color: transparent transparent rgba(255, 255, 255, 0.25) transparent;
}

.vjs-theme-city .vjs-volume-level {
  overflow: hidden;
  background-color: transparent;
}

.vjs-theme-city .vjs-volume-level::before {
  content: '';
  z-index: 1;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;

  border-style: solid;
  border-width: 0 0 1.75em 3em;
  border-color: transparent transparent var(--vjs-theme-city--secondary) transparent;
}

.vjs-theme-city .vjs-volume-panel {
  flex: 1;
  padding-left: 10px;
  text-align: start;
}

.vjs-theme-city .vjs-time-control {
  text-align: center;
  font-size: 16px;
  padding-left: 0;
  padding-right: 0;
}

.vjs-theme-city .vjs-playback-rate-value {
  font-size: 16px;
  padding-top: 8px;
}

.vjs-theme-city .vjs-control-bar {
  height: 100%;
  padding-top: 20px;
  align-items: end;
  background: none;
  background-image: linear-gradient(to top, #000, rgba(0, 0, 0, 0));
}

.vjs-theme-city .vjs-button {
  height: 52px;
}

.vjs-theme-city .vjs-control {
  height: 52px;
}

.vjs-theme-city .vjs-control-bar {
  height: 70px;
  padding-top: 20px;
  background: none;
  background-image: linear-gradient(to top, #000, rgba(0, 0, 0, 0));
}

.vjs-theme-city .vjs-menu-content {
  min-width: 75px !important;
  overflow:visible;
  margin-bottom: 20px;
}

@media (max-width: 960px) {


  .vjs-theme-city .vjs-control-bar {
    height: 100%;
    padding-top: 20px;
    align-items: end;
  }

  .vjs-play-control {
    position: absolute !important;
    top: 50%;
    left: 50%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .vjs-skip-backward-10 {
    position: absolute !important;
    top: 50%;
    left: 30%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .vjs-skip-forward-10 {
    position: absolute !important;
    top: 50%;
    left: 70%;
    -ms-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .vjs-control-bar {
    padding-left: 16px;
  }

}
