$red: red;

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
}


.game {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding: 1em;
  min-height: 100vh;
  
  .message {
    text-align: center;
  }
  
  &-controls {
    width: 400px;
    margin: 1em;
  }
  &-feedback {
    width: 400px;
    margin: 1em;
  }
}

.phrase {
  font-family: monospace;
  font-size: 3rem;
  letter-spacing: .25em;
  text-align: center;
  margin-bottom: 1em;
  
  .missed-guess {
    color: $red;
  }
}

.alphabet {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  
  .letter {
    border: none;
    background: black;
    color: white;
    margin: .5em;
    width: 4em;
    height: 4em;
    text-transform: uppercase;
  }
}

svg {
  margin-top: 2rem;
  max-width: 300px;
}

.incorrect-guesses {
  list-style: none;
  
}

.incorrect-guess {
  display: inline;
  margin-right: .5em;
  &:not(:last-child)::after {
    content: ",";
  }
}

.loading-ellipses {
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  
  li {
    background: currentColor;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin-right: 1rem;
    animation: float 1.8s infinite;
    transform-origin: center;
    
    &:nth-child(2) {
      animation-delay: .1s;
    }
    
    &:nth-child(3) {
      animation-delay: .2s;
    }
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(8px);
  }
  50% {
    transform: translateY(-8px);
  }
}