body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 40rem;
  margin: 0 auto;
  padding: 1rem 2rem;
  font-family: sans-serif;
  background-color: hsl(0 0% 99%);
  color: hsl(0 0% 5%);
}

h1 {
  margin-bottom: 0;
}

form {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 0.5rem;
}

details {
  padding: 1rem 2rem;
  border: 1px solid hsl(0 0% 80%);
  border-radius: 0.5rem;
}

h2 {
  display: inline-block;
  margin: 0;
  font-size: 1rem;
}

summary a {
  color: hsl(0 0% 80%);
  text-decoration: none;

  &:hover {
    color: hsl(0 0% 70%);
  }
}

.loader {
  display: block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  border: 3px solid #eee;
  border-top-color: #000;
  animation: loader 1s linear infinite;
}

@keyframes loader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
