/*generated with Input range slider CSS style generator (version 20211225)
https://toughengineer.github.io/demo/slider-styler*/
input[type=range].volume-slider {
  height: 20px;
  -webkit-appearance: none;
}

/*progress support*/
input[type=range].volume-slider.slider-progress {
  --range: calc(var(--max) - var(--min));
  --ratio: calc((var(--value) - var(--min)) / var(--range));
  --sx: calc(var(--ratio) * 100%);
}

input[type=range].volume-slider:focus {
  outline: none;
}

/*webkit*/
input[type=range].volume-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 0;
  height: 20px;
  visibility: hidden;
}

input[type=range].volume-slider::-webkit-slider-runnable-track {
  height: 20px;
  border: 1px solid #8A8A8A;
  border-radius: 0;
  background: #EFEFEF00;
  box-shadow: none;
}

input[type=range].volume-slider.slider-progress::-webkit-slider-runnable-track {
  background: linear-gradient(to right, #89D289, #2CD113) 0/var(--sx) 100% no-repeat, #EFEFEF00;
}

/*mozilla*/
input[type=range].volume-slider::-moz-range-thumb {
  width: 0;
  height: 20px;
  visibility: hidden;
}

input[type=range].volume-slider::-moz-range-track {
  height: max(calc(20px - 1px - 1px),0px);
  border: 1px solid #8A8A8A;
  border-radius: 0;
  background: #EFEFEF00;
  box-shadow: none;
}

input[type=range].volume-slider.slider-progress::-moz-range-track {
  background: linear-gradient(to right, #89D289, #2CD113) 0/var(--sx) 100% no-repeat, #EFEFEF00;
}

/*ms*/
input[type=range].volume-slider::-ms-fill-upper {
  background: transparent;
  border-color: transparent;
}

input[type=range].volume-slider::-ms-fill-lower {
  background: transparent;
  border-color: transparent;
}

input[type=range].volume-slider::-ms-thumb {
  width: 2em;
  height: 2em;
  border-radius: 1em;
  background: #007cf8;
  border: none;
  box-shadow: 0 0 2px black;
  margin-top: 0;
  box-sizing: border-box;
}

input[type=range].volume-slider::-ms-track {
  height: 20px;
  border-radius: 0;
  background: #EFEFEF00;
  border: 1px solid #8A8A8A;
  box-shadow: none;
  box-sizing: border-box;
}

input[type=range].volume-slider::-ms-thumb:hover {
  background: #0061c3;
}

input[type=range].volume-slider::-ms-thumb:active {
  background: #2f98f9;
}

input[type=range].volume-slider.slider-progress::-ms-fill-lower {
  height: max(calc(20px - 1px - 1px),0px);
  border-radius: 0px 0 0 0px;
  margin: -1px 0 -1px -1px;
  background: linear-gradient(to right, #89D289, #2CD113);
  border: 1px solid #8A8A8A;
  border-right-width: 0;
}
