body, header, div, h1, h2, h3, img, a, p, ul, li, canvas, i {
  margin: 0;
  padding: 0;
  border: none;
  font-family: sans-serif;
  font-size: inherit;
  color: inherit;
  text-decoration: none;
  list-style: none;
}

body {
  display: grid;
  justify-content: center;
}

header {
  padding: 15px 0 10px;
  height: 50px;
  display: flex;
  justify-content: space-between;
}

header h1 {
  font-family: fantasy;
  font-size: 40px;
  margin-left: 10px;
}

header ul {
  display: flex;
  align-items: center;
}

header ul li {
  font-size: 20px;
  font-weight: bold;
  margin: 0 10px;
}

header ul li:hover {
  color: white;
  text-shadow: -1px 0 1px black, 0 1px 1px black, 1px 0 1px black, 0 -1px 1px black;
}

.modal {
  position: absolute;
  top: 3px;
  left: 3px;
  border-radius: 10px;
  width: 800px;
  height: 500px;
  background-color: rgba(255, 255, 255, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
}

.modal h1 {
  text-align: center;
  font-size: 40px;
  font-family: fantasy;
}

.game {
  position: relative;
  width: 800px;
  height: 500px;
}

.how-to {
  font-size: 20px;
  line-height: 30px;
  margin: 10px 0;
  text-align: center;
}

.how-to h1 {
  font-size: 30px;
  margin-bottom: 5px;
}

.how-to b {
  padding: 0 5px;
  border: 2px solid black;
  border-radius: 20px;
}

#red, #blue {
  width: 30px;
}

#drum {
  position: absolute;
  top: 170px;
  left: 15px;
  width: 122px;
}

#fire {
  position: absolute;
  top: 0;
  right: -65px;
  width: 180px;
}

#score {
  position: absolute;
  left: 15px;
  top: 78px;
  font-size: 30px;
  color: red;
  font-style: italic;
  font-weight: bold;
}

#score-counter {
  position: absolute;
  left: 130px;
  top: 50px;
  font-family: monospace;
  font-size: 65px;
  font-style: italic;
  text-shadow: -1px 0 1px white, 0 2px 1px white, 2px 0 1px white, 0 -2px 1px white;
}

#combo {
  position: absolute;
  right: 20px;
  bottom: 10px;
  color: white;
  font-size: 100px;
  font-style: italic;
  text-shadow: -1px 0 1px black, 0 2px 1px black, 2px 0 1px black, 0 -2px 1px black;
}

#spirit {
  position: absolute;
  font-size: 60px;
  right: 10px;
  top: 47px;
  color: white;
  text-shadow: -1px 0 1px black, 0 3px 1px black, 3px 0 1px black, 0 -3px 1px black;
}

canvas {
  border: 3px solid black;
  border-radius: 10px;
  background-image: url('../gifs/bg.jpg');
  background-repeat: no-repeat;
  background-size: contain;
  background-color: rgba(255, 255, 255, 0.15);
  background-blend-mode: color;
}

.game .hide {
  display: none;
}

.play-pause, .music-mute, #restart {
  position: absolute;
  top: 20px;
  cursor: pointer;
}

.play-pause:hover, .music-mute:hover {
  color: white;
}

.play-pause {
  left: 65px;
  transform: scale(1.8);
}

#restart {
  left: 25px;
  transform: scale(1.8);
}

#restart:hover {
  color: white;
}

.music-mute {
  right: 20px;
  transform: scale(2);
}

#volume-off {
  padding: 0 10px 0 0;
}
