.cube-anim {
  width: 200px;
  height: 200px;
  border: 0px solid #ccc;
  perspective: 400px;
  padding-top: 100px;
  padding-left: 30%;
}

.cube {
  width: 200px;
  height: 200px;
  position: relative;
  transform-style: preserve-3d;
  transform: translateZ(-100px);
  transition: transform 2s;
}

.cube.show-front {
  transform: translateZ(-100px) rotateY(0deg);
}
.cube.show-right {
  transform: translateZ(-100px) rotateY(-90deg);
}
.cube.show-back {
  transform: translateZ(-100px) rotateY(-180deg);
}
.cube.show-left {
  transform: translateZ(-100px) rotateY(90deg);
}
.cube.show-top {
  transform: translateZ(-100px) rotateX(-90deg);
}
.cube.show-bottom {
  transform: translateZ(-100px) rotateX(90deg);
}

.cube__face {
  position: absolute;
  width: 200px;
  height: 200px;
  border: 8px solid white;
  border-radius: 30px;
  line-height: 200px;
  font-size: 40px;
  font-weight: bold;
  color: white;
  text-align: center;
}

.cube__face--front {
  background: hsla(0, 100%, 50%, 0.3);
}
.cube__face--right {
  background: hsla(60, 100%, 50%, 0.3);
}
.cube__face--back {
  background: hsla(120, 100%, 50%, 0.3);
}
.cube__face--left {
  background: hsla(180, 100%, 50%, 0.3);
}
.cube__face--top {
  background: hsla(240, 100%, 50%, 0.3);
}
.cube__face--bottom {
  background: hsla(300, 100%, 50%, 0.3);
}

.cube__face--front {
  transform: rotateY(0deg) translateZ(100px);
}
.cube__face--right {
  transform: rotateY(90deg) translateZ(100px);
}
.cube__face--back {
  transform: rotateY(180deg) translateZ(100px);
}
.cube__face--left {
  transform: rotateY(-90deg) translateZ(100px);
}
.cube__face--top {
  transform: rotateX(90deg) translateZ(100px);
}
.cube__face--bottom {
  transform: rotateX(-90deg) translateZ(100px);
}
