/* Reset */
body {
  margin: 0;
  min-height: 100vh;

  display: flex;
  flex-direction: column;
  justify-content: center;   /* vertical center */
  align-items: center;       /* horizontal center */

  background-color: #011F3F;
  text-align: center;
}

/* Heading */
#level-title {
  font-family: 'Press Start 2P', cursive;
  font-size: clamp(1.5rem, 5vw, 3rem);
  color: #FEF2BF;

  margin: 0;
  margin-bottom: clamp(20px, 5vh, 60px);
}

/* Grid container */
.container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;

  width: min(90vw, 400px);
}

/* Buttons */
.btn {
  aspect-ratio: 1 / 1;   /* keeps square shape */
  border: 8px solid black;
  border-radius: 20%;
  cursor: pointer;
}

/* Colors */
.green { background-color: green; }
.red { background-color: red; }
.yellow { background-color: yellow; }
.blue { background-color: blue; }

/* Effects */
.pressed {
  box-shadow: 0 0 20px white;
  background-color: grey;
}

.game-over {
  background-color: red;
  opacity: 0.8;
}

/* Mobile tweaks */
@media (max-width: 480px) {
  .container {
    gap: 15px;
  }

  .btn {
    border-width: 6px;
  }
}