*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    border: 0;
  }

:root {
  --main-color: #122948;
  --border: 10px solid #122948;
  --button-background: white;
  --button-hover-bg: lightblue;
  --button-focus-bg: goldenrod;
  --screen-bg: white;
}

html {
    font-size: 46px;
    height: 100%;
    width: 100%;
    font-family: "Questrial", sans-serif;
    /* Photo by Johny Goerend on Unsplash */
    background-image: url(assets/Unsplash/johny-goerend-Oz2ZQ2j8We8-unsplash\ \(1\).jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

/* MAIN CONTENT */
.calculator-container {
  height: 650px;
  width: 500px;
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: var(--main-color);
  border: 20px solid var(--main-color);
  border-radius: 2.5%;
}

  .screen {
    height: 12.5%;
    word-wrap: break-word;
    text-align: right;
    padding: 10px;
    margin-bottom: 15px;
    background-color: var(--screen-bg);
  }

  /* BUTTONS */
  .button-container {
    height: 85%;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(4, 1fr);
    column-gap: 0.2rem;
    row-gap: 0.2rem;
    border: var(--border);
    background-color: var(--main-color);
  }

    button {
      font-family: inherit;
      font-size: inherit;
      padding: 8px;
      cursor: pointer;
      background-color: var(--button-background);
    }

    button:hover {
      opacity: 0.75;
      background-color: var(--button-hover-bg);
    }

    button:focus {
      border: 4px solid var(--button-focus-bg);
      padding: 4px;
      opacity: 1;
    }

    button:focus-visible {
      outline: 4px solid transparent;
      border: 4px solid var(--button-focus-bg);
      opacity: 1;
    }

    .letter {
      font-size: 0.65rem;
      color:white;
      background-color: steelblue;
    }

    /* Additional Buttons: Abandoned 
    .other-buttons-container {
      font-size: 0.45rem;
      height: 10%;
      display: flex;
      justify-content: space-around;
      border-top: var(--border);
      border-left: var(--border);
      border-right: var(--border);
    }

    .other-buttons-container button {
      padding: 3px;
      width: 12.5%;
    } */

/* IPads */
@media screen and (min-height: 1000px) {
  html {
    font-size: 55px;
  }

  .calculator-container {
    width: 70vw;
    height: 75vh;
  }
}

/* Phones */
@media screen and (max-width: 600px) {
  
  html {
    background-image: url(assets/Unsplash/johny-goerend-Oz2ZQ2j8We8-unsplash.jpg);
    font-size: 30px;
  }

  .calculator-container {
    border: 10px solid var(--main-color);
    width: 95vw;
    height: 70vh;
  }

  .button-container {
    border: 5px solid var(--main-color);
  }
}