body {
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-color: skyblue;
  background-image: -webkit-linear-gradient(200deg, skyblue 0%, steelblue 100%);
  background-attachment: fixed;
  background-size: 100% 100%;
  overflow: hidden;
}

/* CLOUDS */
body:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-radius: 100%;
  background: transparent;
  display: block;

  box-shadow: 0 0 150px 100px rgba(255, 255, 255, 0.6),
    200px 0 200px 150px rgba(255, 255, 255, 0.6),
    -250px 0 300px 150px rgba(255, 255, 255, 0.6),
    550px 0 300px 200px rgba(255, 255, 255, 0.6),
    -550px 0 300px 200px rgba(255, 255, 255, 0.6);
}
h1 {
  font-family: "Luckiest Guy";
  color: rgb(0, 127, 0);
  letter-spacing: 6px;
  text-align: center;
  font-size: 68px;
  margin-bottom: 10px;
}

h3 {
  font-family: "Luckiest Guy";
  color: rgb(0, 127, 0);
  text-align: center;
  font-size: 24px;
  letter-spacing: 1px;
  margin-top: 10px;
}

#container {
  position: relative;
  background-color: rgba(255, 255, 255, 0.6);
  width: 70%;
  max-width: 680px;
  min-height: 500px;
  border: 2px solid rgba(0, 127, 0, 0.6);
  box-shadow: 3px 3px rgba(0, 27, 0, 0.2);
  border-radius: 20px;
  padding: 0 40px 40px 40px;
  margin: 10vh auto 0 auto;
  overflow: hidden;
}

#container form,
#container h1,
#container h3 {
  transition-duration: 0.2s;
}

#container.generated form,
#container.generated h1,
#container.generated h3 {
  opacity: 0;
}

#output {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 70%;
  max-width: 680px;
  transition-duration: 1s;
  font-family: "Delius";
  font-size: 22px;
  color: rgb(0, 127, 0);
  transform: translate(-50%, -100%);
}

#container.generated #output {
  transform: translate(-50%, -50%);
}

input {
  display: block;
  width: 60%;
  margin: 20px auto;
  color: rgb(0, 127, 0);
}

input:focus {
  outline: 1px solid rgb(0, 127, 0);
}

input::placeholder {
  text-align: center;
}

button {
  display: block;
  color: white;
  background-color: rgb(0, 127, 0);
  margin: 40px auto 0 auto;
  width: 100px;
  height: 30px;
  font-size: 18px;
  border: none;
}

button:hover {
  background-color: rgb(0, 180, 0);
}

/* Added CSS elements */

@keyframes floatClouds {
  0% {
    transform: translateX(-100px);
  }
  50% {
    transform: translateX(100px);
  }
  100% {
    transform: translateX(-100px);
  }
}

body:after {
  animation: floatClouds 10s infinite alternate ease-in-out;
}

input {
  transition: 0.3s ease-in-out;
}

input:focus {
  box-shadow: 0 0 10px rgba(0, 127, 0, 0.6);
  border: 1px solid rgb(0, 180, 0);
}

button {
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 10px;
}

button:active {
  transform: scale(0.95);
  background-color: rgb(0, 100, 0);
}
