input[type='range']{
  
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  position: relative;
  display: inline-block;
  
  width: 200px;
  height: 2em;
  box-sizing: border-box;
  line-height: 1;
  
  background-color: whitesmoke;
  border: none;
  
  box-shadow: inset 0 0 3px 0 darkgray;
  border-radius: 3px;

  overflow: hidden;
}


input[type='range']:focus{
  outline: none;
  box-shadow: inset 0 0 3px 0 darkgray;
}


input[type='range']::-webkit-slider-runnable-track{

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  position: relative;
  display: block;
  
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;

  padding: 1px;
  
}

input[type='range']::-webkit-slider-thumb{

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  width: 20px;
  height: calc( 100% );
  border-radius: 3px;
  background-color: whitesmoke;
  border: none;
  box-sizing: border-box;
  box-shadow:
    0 0 3px 0 darkgray,
    -9999px 0 2px 9999px palegreen;
  ;
  transform: scaleX( 0.9 );

}


 /*moz */
@supports(-moz-appearance:none){

  input[type='range']::-moz-range-track {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
  }

  input[type='range']::-moz-range-thumb {
    
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    
    width: 20px;
    height: calc( 100% - 2px );
    border-radius: 3px;
    background-color: whitesmoke;
    border: none;
    box-sizing: border-box;
    box-shadow:
      0 0 3px 0 darkgray,
      -9999px 0 2px 9999px palegreen;
    ;
    transform: scaleX( 0.9 );
  }
  
}