* {
  box-sizing: border-box;
}

body {
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
  margin: 0;
}


.container {

  max-width: 500px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.button-row {
  text-align: center;
}

.button-row button {
  display: inline-block;
  margin: 0 4px;
}

.state-label {
  margin-top: 8px;
  font-weight: bold;
}

.lights {
  background-color: black;
  padding: 20px;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

.light {
  background-color: grey;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  flex-shrink: 0;
  transition: background 0.2s, box-shadow 0.2s;
}

.light.green {
  background-color: green;
  box-shadow: 0 0 20px green, 0 0 40px green;
}

.light.yellow {
  background-color: yellow;
  box-shadow: 0 0 20px yellow, 0 0 40px yellow;
}

.light.red {
  background-color: red;
  box-shadow: 0 0 20px red, 0 0 40px red;
}

#btn-green {
  background-color: green;
}

#btn-yellow {
  background-color: yellow;
}

#btn-red {
  background-color: red;
}