:root {
  --audio-play-w: 26px;
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

audio:not([controls]) {
  display: none;
}

[hidden] {
  display: none;
}

.audioWrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #666666;
  font-family: Arial, sans-serif;
  border-radius: 10px;
  margin-right: 10px;
}

.functionControl {
  cursor: pointer;
  text-decoration: none;
  border-radius: 4px;
  border-radius: 50%;
  width: var(--audio-play-w);
  height: var(--audio-play-w);
  background-color: #BEDFC7;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 12px;
}

.currentTime,
.durationTime {
  margin: 0 4px;
  width: 50px;
  text-align: center;
}

.currentTime {
  margin-left: 8px;
}

.durationTime {
  margin-right: 8px;
}

.progressWrapper {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  background-color: rgba(220, 220, 220, 0.5);
  height: 10px;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  width: 210px;
}

.progressBar {
  background-color: #2B9E7D;
  height: 100%;
  border-radius: 5px;
  position: absolute;
}

.volumeControl {
  cursor: pointer;
  color: #C2C2C2;
  font-size: 1.25rem;
}

.audioWrapper.playing .progressWrapper {
  background-color: #BEDFC7;
}

.audioWrapper.playing .functionControl {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(68%, #43a7a3), to(#6498c7));
  background: linear-gradient(to bottom, #43a7a3 68%, #6498c7 100%);
}

.audioWrapper.playing .volumeControl {
  color: #2B9E7D;
}

audio {
  display: none;
}

@media screen and (max-width: 1366px) {
  .progressWrapper {
    width: 10vw;
  }
}

@media screen and (max-width: 1024px) {
  :root {
    --audio-play-w: 30px;
  }
}

@media screen and (max-width: 767px) {
  .audioWrapper {
    margin: 4px 0;
  }
  .volumeControl {
    font-size: 20px;
  }
}
