html {
  font-size: 20px;
  color: white;
  text-align: center;
}

#root {
  height: 100vh;
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #dddddd;
  
}

#app {
  background: #333333;
  border: 2px solid black;
  margin: 0 auto;
}

#output {
  display: block;
  font-size: 1.5em;
  margin: 5px auto;
  width: 310px;
  background: #555555;
}

#display {
  height: 35px;
  width: 100%;
  text-align: right;
  background: #555555;
  overflow: hidden;
}

#result {
  height: 35px;
  width: 100%;
  text-align: left;
  background: #555555;
  overflow: hidden;
}

#buttons {
  display: grid;
  width: 320px;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 80px 80px 80px 80px 80px;
  margin: 5px;
  grid-gap: 2px;
}

#buttons button {
  background: #666666;
  cursor: pointer;
  outline: 1px solid #333333;
  font-size: 1.6em;
  color: white;
}
#buttons button:hover {
    color: black;
    outline: 1px solid white;
}

#equals {
  grid-column: 4;
  grid-row: 4 / 6;  
}

#zero {
  grid-column: 1 / 3;
  grid-row: 5;   
}