@import url("https://fonts.googleapis.com/css?family=Underdog");

::selection {
  color: black;
  background: transparent;
}
::-moz-selection {
  color: black;
  background: transparent;
}

* {
  margin: 0;
  padding: 0;
  font-family: "Underdog";
}
body {
  background-color: white;
}
.wrap {
  margin-left: auto;
  margin-right: auto;
}
header {
  width: 340px;
  font-size: 0;
}
canvas {
  border-style: solid;
  border-width: 10px;
  border-color: rgba(191, 191, 191);
  margin-top: 8px
}
canvas:focus {
  outline: none;
}

/* Top Styles */
h1 {
  display: inline-block;
  width: 100px;
  font-size: 32px;
  color: black;
  margin-top: 3px;
  transform: translateY(3px);
}
.score {
  display: inline-block;
  width: 240px;
  font-size: 20px;
  color: black;
  text-align: right;
}
.score_value {
  font-size: inherit;
}

/* All screens style */
#gameover a,
#setting a,
#menu a {
  display: block;
}

#gameover a,
#setting a:hover,
#menu a:hover {
  cursor: pointer;
}

#gameover a:hover::before,
#setting a:hover::before,
#menu a:hover::before {
  content: ">";
  margin-right: 10px;
}

/* Menu Screen Style */
#menu {
  display: block;
  width: 340px;
  padding-top: 95px;
  padding-bottom: 95px;
  font-size: 40px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: black;
}

#menu h2 {
  -webkit-animation: logo-ani 1000ms linear infinite;
  animation: logo-ani 1000ms linear infinite;
  margin-bottom: 30px;
}

#menu a {
  font-size: 30px;
}

@-webkit-keyframes logo-ani {
  50% {
    -webkit-transform: scale(1.2, 1.2);
  }
  100% {
    -webkit-transform: scale(1, 1);
  }
}

@keyframes logo-ani {
  50% {
    transform: scale(1.2, 1.2);
  }
  100% {
    transform: scale(1, 1);
  }
}

/* Game Over Screen Style */

#gameover, #win {
  display: none;
  width: 420px;
  padding-top: 95px;
  padding-bottom: 95px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-size: 30px;
  color: black;
}

#gameover p {
  margin-top: 25px;
  font-size: 20px;
}

/* Settings Screen Style */
#setting {
  display: none;
  width: 420px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 85px;
  padding-bottom: 85px;
  font-size: 30px;
  color: black;
  text-align: center;
}

#setting h2 {
  margin-bottom: 15px;
}

#setting p {
  margin-top: 10px;
}

#setting input {
  display: none;
}

#setting label {
  cursor: pointer;
}

#setting input:checked + label {
  background-color: black;
  color: white;
}

#snake {
  display: flex;
  justify-content: center;
  flex-direction: column
}

#letters {
  color: black;
  display: flex;
  justify-content: center;
  width: 350px;
  margin-top: 10px;
  margin-left: auto;
  margin-right: auto;
}

.letter {
  background-color: rgba(191, 191, 191, .2);
  border: 2px solid rgba(191, 191, 191);
  width: 30px;
  text-align: center;
  font-size: 1.2em;
  padding: 5px;
  min-height: 22px;
}

h3 {
  display: inline;
}