body {
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  background-color: hsl(0, 0%, 95%);
}

#calculator {
  font-family: Arial, sans-serif;
  background-color: hsl(0, 0%, 15%);
  border-radius: 15px;
  width: 90vw; /* Responsive width */
  max-width: 500px; /* Max width for larger screens */
  overflow: hidden;
}

#display {
  width: 100%;
  padding: 5vw; /* Relative padding */
  font-size: 5rem;
  text-align: left;
  border: none;
  background-color: hsl(0, 0%, 20%);
  color: white;
}

#keys {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2vw; /* Relative gap */
  padding: 5vw; /* Relative padding */
}

button {
  width: 100%; /* Make the button fill its grid cell */
  height: 0;
  padding-bottom: 100%; /* Make the button a square by using padding and aspect ratio tricks */
  border-radius: 50%;
  border: none;
  background-color: hsl(0, 0%, 30%);
  color: white;
  font-size: 3rem;
  font-weight: bold;
  cursor: pointer;
  position: relative;
}

button:hover {
  background-color: hsl(0, 0%, 40%);
}

button:active {
  background-color: hsl(0, 0%, 50%);
}

.operatorbtn {
  background-color: hsl(35, 100%, 55%);
}

.operatorbtn:hover {
  background-color: hsl(35, 100%, 65%);
}

.operatorbtn:active {
  background-color: hsl(35, 100%, 75%);
}

button::before {
  position: absolute;
  content: attr(data-content);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Media queries for different screen sizes */
@media (max-width: 768px) { /* Example for tablets and smaller */
    #display {
    font-size: 3rem; /* Make the display a bit smaller for small screens*/
  }
  #keys{
    gap:1.5vw;
    padding: 4vw;
  }
  button{
      font-size: 2rem;
  }
}

@media (max-width: 480px) { /* Example for phones */
  #display {
    font-size: 2rem; /* Make the display even smaller for very small screens*/
  }
  #keys{
    gap: 1vw;
    padding: 3vw;
  }
  button{
      font-size: 1.5rem;
  }
}