@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800&family=Roboto:ital,wght@0,300;0,500;0,700;1,100&display=swap");
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: "Poppins", sans-serif;
}
.loader {
  padding: 2rem;
  background-color: #000000ce;
  height: 100vh;
  width: 100%;
  position: absolute;
  z-index: 2;
}

.spinner,
.popup {
  padding: 2rem;
  height: 100%;
  display: flex;
  justify-content: center;
  place-items: center;
}

.popup {
  flex-direction: column;
}

.popup span {
  display: flex;
  flex-direction: column;
  place-items: center;
  background-color: white;
  padding: 2rem 5rem;
  filter: drop-shadow(0.4px 0.4px 2.7px #6aaa64);
  border-radius: 0.4rem;
  font-size: 1.2rem;
  text-align: center;
}

.popup span h5 {
  padding: 1rem;
}

.popup button {
  background-color: #6aaa64;
  color: white;
  padding: 0.5rem 1.1rem;
}

svg {
  width: 100px;
  stroke: #6aaa64;
}

.first-letter {
  opacity: 0;
  animation: bounce 2s 0s forwards;
}

.second-letter {
  opacity: 0;
  animation: bounce 2s 1s forwards;
}

.third-letter {
  opacity: 0;
  animation: bounce 2s 1.5s forwards;
}

.forth-letter {
  opacity: 0;
  animation: bounce 2s 2s forwards;
}

.fifth-letter {
  opacity: 0;
  animation: bounce 2s 2.5s forwards;
}

.six-letter {
  opacity: 0;
  animation: bounce 2s 3s forwards;
}

.spinner-letter {
  font-size: 4rem;
  font-weight: 900;
}

@keyframes bounce {
  0% {
    transform: translateY(-400px);
    animation-timing-function: ease-in;
    /* opacity: 1; */
  }
  38% {
    transform: translateY(0);
    animation-timing-function: ease-out;
    opacity: 1;
  }
  55% {
    transform: translateY(-65px);
    animation-timing-function: ease-in;
  }
  72% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  81% {
    transform: translateY(-28px);
    animation-timing-function: ease-in;
  }
  90% {
    transform: translateY(0);
    animation-timing-function: ease-out;
  }
  95% {
    transform: translateY(-8px);
    animation-timing-function: ease-in;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    animation-timing-function: ease-out;
  }
}

@keyframes loader {
  0% {
    transform: rotateZ(0deg);
  }
  100% {
    transform: rotateZ(360deg);
  }
}
header {
  width: 100%;
  padding: 0.1rem 0px;
  text-align: center;
  margin-top: 1rem;
}

h1 {
  font-weight: 700;
  color: black;
  font-style: normal;
  font-size: 28px;
}
main {
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
}

.hide {
  display: none !important;
}
.boxes {
  width: 21rem;
  padding: 0.5rem;
}
.box-item {
  width: 95%;
  display: flex;
  justify-content: space-evenly;
  margin: 0.2rem auto;
}

.box {
  width: 3.5rem;
  height: 3.5rem;
  border: 2px solid #d3d6da;
  background-color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  font-weight: 700;
  text-transform: capitalize;
}

.backspace {
  font-weight: 700;
}

.letters {
  margin-top: 0rem;
  width: 32rem;
}

.keys-item {
  display: flex;
  justify-content: space-evenly;
  width: 100%;
  margin: 0.3rem 0.1rem;
}
#center-line {
  width: 90%;
  margin: 4px auto;
}
button {
  border-radius: 4px;
  padding: 1.1rem 1.1rem;
  border: none;
  color: black;
  cursor: pointer;
  font-weight: 700;
  text-transform: capitalize;
  outline: none;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ced0d2;
}

.border {
  border: 2px solid black !important;
}

.clicked {
  background-color: #0973f4;
  color: white;
  font-weight: 600;
}

.check {
  color: #6aaa64;
}

.position {
  color: #c9b458;
}

.fail {
  color: #787c7e;
}

.correct {
  background-color: #6aaa64;
  border: #6aaa64;
  color: white;
  font-weight: 600;
  animation-name: vertical-rotate;
  animation-duration: 1.5s;
  animation-delay: 0.5s;
  animation-timing-function: ease-in-out;
}

.correct-btn {
  background-color: #6aaa64;
  border: #6aaa64;
  color: white;
  font-weight: 600;
}

.warning {
  background-color: #c9b458;
  border: #c9b458;
  color: white;
  font-weight: 600;
  animation-name: vertical-rotate;
  animation-duration: 1.5s;
  animation-delay: 0.5s;
  animation-timing-function: ease-in-out;
}

.warning-btn {
  background-color: #c9b458;
  border: #c9b458;
  color: white;
  font-weight: 600;
}

.wrong {
  background-color: #787c7e;
  border: #787c7e;
  color: white;
  font-weight: 600;
  animation-name: vertical-rotate;
  animation-duration: 1.5s;
  animation-delay: 0.5s;
  animation-timing-function: ease-in-out;
}

.wrong-btn {
  background-color: #787c7e;
  border: #787c7e;
  color: white;
  font-weight: 600;
}

@keyframes vertical-rotate {
  0% {
    transform: rotateX(0deg);
  }
  100% {
    transform: rotateX(360deg);
  }
}

.incomplete {
  animation: incomplete 0.1s ease-in-out 3;
}

@keyframes incomplete {
  0% {
    transform: translatex(-1rem);
  }
  50% {
    transform: translatex(1rem);
  }
  100% {
    transform: translatex(-1rem);
  }
}

/* tablet view */
@media only screen and (min-width: 426px) and (max-width: 768px) {
  /* .letters {
        width: 25rem;
       } */

  /* button{
        padding: 1rem 0.75rem;
       } */
}

/* mobile view */
@media only screen and (max-width: 425px) {
  .letters {
    width: 90%;
  }

  button {
    padding: 1rem 3%;
    font-size: x-small;
  }
  .box {
    width: 3rem;
    height: 3rem;
  }

  .boxes {
    width: 18rem;
    padding: 0.5rem;
  }
}
