.game-block {
  width: 100%;
  max-width: 500px;
  min-width: 300px;
  margin: 20px auto 0 auto;
  padding: 20px;
  background: #cccccc;
  border-radius: 8px;
  color: var(--bg1);
  font-size: var(--fs-small);
}

.game-heading {
  display: block;
  margin-bottom: 20px;
  font-size: var(--fs-large);
}

.game-block label {
  display: block;
  font-weight: bold;
  margin-bottom: 6px;
}

.game-block input, select {
  width: 100%;
  padding: 10px;
  font-size: inherit;
  font-family: inherit;
  border: 2px solid var(--fg2);
  border-radius: 6px;
  outline: none;
  transition: border-color 0.3s ease;
  background: var(--fg1);
  margin-bottom: 20px;
}

.game-block input:focus, select:focus { border-color: var(--bg1); }

.game-block button {
  width: 100%;
  padding: 10px;
  font-size: inherit;
  font-family: inherit;
  font-weight: bold;
  color: var(--fg1);
  background: var(--bg1);
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

.game-block button:hover { background: var(--bg2); }
.game-block button:disabled { background: #aaaaaa; color: #333333; }

.game-block button.gen { margin-bottom: 10px; }
.game-block ul { list-style-position: inside; padding-left: 0.5rem; }