.x-slider {
  position: relative;
  min-height: 48px;
  margin-left: 24px;
  margin-right: 24px;
}
.x-slider--disabled {
  opacity: 0.4;
  pointer-events: none;
}
.x-slider--disabled .x-slider--thumb-knob {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.x-slider--track {
  position: absolute;
  width: 100%;
  height: 4px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.x-slider--track-inactive {
  width: 100%;
  height: 100%;
  background-color: currentColor;
  border-radius: 2px;
  opacity: 0.24;
}
.x-slider--track-active {
  position: absolute;
  top: -1px;
  height: 6px;
  border-radius: 3px;
  background-color: currentColor;
  -webkit-transition: left 80ms ease, right 80ms ease;
  transition: left 80ms ease, right 80ms ease;
  will-change: left, right;
}
.x-slider--thumb {
  position: absolute;
  left: -24px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-transition: -webkit-transform 80ms ease;
  transition: -webkit-transform 80ms ease;
  transition: transform 80ms ease;
  transition: transform 80ms ease, -webkit-transform 80ms ease;
  will-change: transform;
  user-select: none;
  cursor: pointer;
}
.x-slider--thumb::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 50%;
  pointer-events: none;
  background-color: currentColor;
  opacity: 0;
  -webkit-transition: opacity 0.15s linear, background-color 0.15s linear;
  transition: opacity 0.15s linear, background-color 0.15s linear;
}
.x-slider--thumb-focus::before, .x-slider--thumb:hover::before {
  opacity: 0.08;
}
.x-slider--thumb-knob {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 20px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  border-radius: 50%;
  background-color: currentColor;
  -webkit-box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
          box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12);
}
.x-slider--thumb-label-box {
  position: absolute;
  left: 50%;
  bottom: 44px;
  min-height: 32px;
  line-height: 32px;
  padding: 0 12px;
  border-radius: 4px;
  background-color: currentColor;
  opacity: 0.6;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.x-slider--thumb-label-box::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 0;
  border: 6px solid transparent;
  border-top: 6px solid currentColor;
  border-bottom: none;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.x-slider--label {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}