@import url("https://fonts.googleapis.com/css?family=DM+Sans:400,500,700&display=swap");

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}

body {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 10px;
  font-family: 'DM Sans', sans-serif;
  transition: background .4s ease-in;
  background-color: #FFFFFF;

  &.blue {
    background-color: #428aa6;
  }
}

input[type=radio] {
  display: none;
}

.card {
  position: absolute;
  width: 80%;
  height: auto;
  left: 0;
  right: 0;
  margin: auto;
  transition: transform .4s ease;
  cursor: pointer;
}

.container {
  width: 100%;
  height: 100%;
  transform-style: preserve-3d;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}

.cards {
  position: relative;
  width: 100%;
  height: 100%;
  margin-bottom: 20px;
}

img {
  width: 100%;
  height: 100%;
  border: solid;
  border-radius: 10px;
  object-fit: cover;
}

#item-1:checked ~ .cards #song-23, #item-23:checked ~ .cards #song-22, #item-22:checked ~ .cards #song-21, #item-21:checked ~ .cards #song-20, 
#item-20:checked ~ .cards #song-19, #item-19:checked ~ .cards #song-18, #item-18:checked ~ .cards #song-17,
#item-17:checked ~ .cards #song-16, #item-16:checked ~ .cards #song-15, #item-15:checked ~ .cards #song-14, #item-14:checked ~ .cards #song-13,
#item-13:checked ~ .cards #song-12, #item-12:checked ~ .cards #song-11, #item-11:checked ~ .cards #song-10, #item-10:checked ~ .cards #song-9,
#item-9:checked ~ .cards #song-8, #item-8:checked ~ .cards #song-7, #item-7:checked ~ .cards #song-6, #item-6:checked ~ .cards #song-5,
#item-5:checked ~ .cards #song-4, #item-4:checked ~ .cards #song-3, #item-3:checked ~ .cards #song-2, #item-2:checked ~ .cards #song-1 {
  transform: translatex(-20%) scale(.8);
  opacity: .4;
  z-index: 0;
}

#item-1:checked ~ .cards #song-2, #item-2:checked ~ .cards #song-3, #item-3:checked ~ .cards #song-4, #item-4:checked ~ .cards #song-5,
#item-5:checked ~ .cards #song-6, #item-6:checked ~ .cards #song-7, #item-7:checked ~ .cards #song-8, #item-8:checked ~ .cards #song-9,
#item-9:checked ~ .cards #song-10, #item-10:checked ~ .cards #song-11, #item-11:checked ~ .cards #song-12, #item-12:checked ~ .cards #song-13,
#item-13:checked ~ .cards #song-14, #item-14:checked ~ .cards #song-15, #item-15:checked ~ .cards #song-16, #item-16:checked ~ .cards #song-17,
#item-17:checked ~ .cards #song-18, #item-18:checked ~ .cards #song-19, #item-19:checked ~ .cards #song-20, #item-20:checked ~ .cards #song-21,
#item-21:checked ~ .cards #song-22, #item-22:checked ~ .cards #song-23, #item-23:checked ~ .cards #song-1 {
  transform: translatex(20%) scale(.8);
  opacity: .4;
  z-index: 0;
}

#item-1:checked ~ .cards #song-1, #item-2:checked ~ .cards #song-2, #item-3:checked ~ .cards #song-3, #item-4:checked ~ .cards #song-4,
#item-5:checked ~ .cards #song-5, #item-6:checked ~ .cards #song-6, #item-7:checked ~ .cards #song-7, #item-8:checked ~ .cards #song-8,
#item-9:checked ~ .cards #song-9, #item-10:checked ~ .cards #song-10, #item-11:checked ~ .cards #song-11, #item-12:checked ~ .cards #song-12,
#item-13:checked ~ .cards #song-13, #item-14:checked ~ .cards #song-14, #item-15:checked ~ .cards #song-15, #item-16:checked ~ .cards #song-16,
#item-17:checked ~ .cards #song-17, #item-18:checked ~ .cards #song-18, #item-19:checked ~ .cards #song-19, #item-20:checked ~ .cards #song-20, 
#item-21:checked ~ .cards #song-21, #item-22:checked ~ .cards #song-22, #item-23:checked ~ .cards #song-23 {
  transform: translatex(0) scale(1);
  opacity: 1;
  z-index: 1;

  img {
    box-shadow: 0px 0px 5px 0px rgba(81, 81, 81, 0.47);
  }
}

.player {
  background-color: #fff;
  border-radius: 8px;
  min-width: 320px;
  padding: 16px 10px;
}

.upper-part {
  position: relative;
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  height: 36px;
  overflow: hidden;
}

.play-icon{ margin-right: 10px; }

.song-info {
  width: calc(100% - 32px);
  display: block;
}

.song-info .title {
  color: #403d40;
  font-size: 14px;
  line-height: 24px;
}

.sub-line {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.subtitle, .time {
  font-size: 12px;
  line-height: 16px;
  color: #c6c5c6;
}

.time {
  font-size: 12px;
  line-height: 16px;
  color: #a5a5a5;
  font-weight: 500;
  margin-left: auto;
}

.progress-bar {
  height: 3px;
  width: 100%;
  background-color: #e9efff;
  border-radius: 2px;
  overflow: hidden;
}

.progress {
  display: block;
  position: relative;
  width: 60%;
  height: 100%;
  background-color: #2992dc;
  border-radius: 6px;
}

.info-area {
  width: 100%;
  position: absolute;
  top: 0;
  left: 30px;
  transition: transform .4s ease-in;
}

#item-2:checked ~ .player #test {
  transform: translateY(0);
}

#item-2:checked ~ .player #test  {
  transform: translateY(-40px);
}

#item-3:checked ~ .player #test  {
  transform: translateY(-80px);
}
