body {
  margin: 0;
  padding: 0;
  font-family: 'Courier New', monospace;
  background-color: black;
  color: #00ff00;
  text-align: center;
}

#keno-container {
  padding: 1rem;
  max-width: 900px;
  margin: 0 auto;
}

header h1 {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

#game-info div {
  margin: 0.25rem 0;
}

#keno-board {
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  gap: 5px;
  margin: 1rem auto;
}

#keno-board button {
  background: transparent;
  border: 1px solid #00ff00;
  color: #00ff00;
  padding: 0.5rem;
  cursor: pointer;
}

#keno-board button.selected {
  background-color: #005500;
}

#controls,
#drawn-numbers,
#rival-stats,
#payout-message,
#payout-preview,
#season-summary {
  margin-top: 1rem;
}

#controls select,
#controls button {
  margin: 0.2rem;
  padding: 0.4rem;
  background: transparent;
  border: 1px solid #00ff00;
  color: #00ff00;
  cursor: pointer;
}

#drawn-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.3rem;
}

#drawn-list span {
  padding: 0.4rem;
  border: 1px solid #00ff00;
}

#drawn-list span.match {
  background-color: #003300;
  font-weight: bold;
  color: #00ff88;
  border: 1px solid #00ff88;
}

#payout-text {
  font-size: 1.2rem;
  color: #00ff88;
  font-weight: bold;
}

#payout-preview table {
  margin: 0 auto;
  border-collapse: collapse;
  margin-top: 0.5rem;
}

#payout-preview th,
#payout-preview td {
  border: 1px solid #00ff00;
  padding: 0.3rem 0.8rem;
}

.hidden {
  display: none;
}
