@import url("https://fonts.googleapis.com/css?family=Russo+One");
@keyframes float {
  0% {
    top: 0;
  }
  30% {
    top: -30px;
  }
  90% {
    top: 5px;
  }
  100% {
    top: 0;
  }
}
@keyframes shadow-aperture {
  0% {
    opacity: 0.35;
    transform: translate(-50%, -50%) scale(1, 0.2);
  }
  30% {
    opacity: 0.15;
    transform: translate(-50%, -50%) scale(0.8, 0.15);
  }
  90% {
    opacity: 0.4;
    transform: translate(-50%, -50%) scale(1.1, 0.25);
  }
  100% {
    opacity: 0.35;
    transform: translate(-50%, -50%) scale(1, 0.2);
  }
}
@keyframes inflate {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(1080deg);
  }
}
* {
  box-sizing: border-box;
}

body, html {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  background-color: #595656;
  font-family: "Russo One";
}

#stage {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

h1 {
  flex: 1 0 100%;
  text-align: center;
  color: #fff;
  font-size: 6rem;
  margin-bottom: 0;
}

.content-width {
  max-width: 760px;
  margin: 0 auto;
}

.box-list {
  display: flex;
  padding: 0;
  margin: 0;
  width: 100%;
  justify-content: space-around;
  align-items: center;
  list-style-type: none;
}
.box-list li {
  padding: 1em;
  position: relative;
  flex: 0 0 20%;
  height: 200px;
}
.box-list li .box {
  background-color: transparent;
  border: 0;
  display: block;
  width: 100%;
  height: 150px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0;
  animation-name: float;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}
.box-list li .box:hover, .box-list li .box:focus {
  animation: inflate 0.5s 1, float 2s infinite;
  cursor: pointer;
  outline: 0;
}
.box-list li .box.click {
  animation: spin 0.5s 1, inflate 0.5s 1, float 2s infinite;
  -webkit-filter: blur(2px);
}
.box-list li .box.open {
  background-image: url(https://loot-goblin.de/container.png);
}
.box-list li .box.closed {
 background-image: url(https://loot-goblin.de/container.png);
}
.box-list li .loot-shadow {
  position: absolute;
  bottom: -50%;
  left: 50%;
  transform: translate(-50%, -20%) scale(1, 0.2);
  border-radius: 50%;
  width: calc(100% - 3em);
  height: 100px;
  background: black;
  opacity: 0.35;
  -webkit-filter: blur(10px);
  animation-name: shadow-aperture;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

#again {
  display: none;
}