

body {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  margin: 0;
  font-family: 'VT323', monospace;
  background-color: #414141;

}

.main {
  width: 100vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Left Area */

#logs {
  margin-left: 10px;
  width: 25vw;
}

.log_caption {
  font-family: 'VT323', monospace;
  font-size: 25px;
  color: #d8ddca

}

#speedUp {
  color: #d8ddca;
}
#speedBuff,
#wallblocked {
  color: red;
}

#speedDebuff,
#doublePoints {
  color: #84bd56;
}

#speedUp,
#wallblocked,
#speedBuff,
#speedDebuff,
#doublePoints {
  opacity: 0;
  font-size: 20px;
  transition: 0.5s ease-out;

}

#speedUp.play,
#wallblocked.play,
#speedBuff.play,
#speedDebuff.play,
#doublePoints.play  {
  opacity: 1;
  font-size: 23px;
  transition: 0.5s ease-in;

}






/* Middle Area */

#gridCanvas {
  position: relative;
  display: grid;
  grid-template-columns: repeat(20, 20px);
  grid-template-rows: repeat(20, 20px);
  margin: 5px;

}
.game-border-1 {
  border: #595f43 solid 10px;
  border-radius: 30px;
  box-shadow: inset 0 0 0 10px #595f43;
}
.game-border-2 {
  border: #abb78a solid 8px;
  border-radius: 26px;
  box-shadow: inset 0 0 0 10px #abb78a;
}
.game-border-3 {
  border: #8b966c solid 30px;
  border-radius: 20px;
  box-shadow: inset 0 0 0 5px #8b966c;
}

.menu-screen {
  position: absolute;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;

  width: 100%;
  height: 100%;
  background-color: #c4cfa3;;
}

#instruction-text {
  
  color: #333;
  width: 18.75rem;
  text-align: center;
  padding: 2rem;
  margin: 0;
}

#logo {
  
}

.scores {
  display: flex;
  justify-content: space-between;
}
#score {
  color: #abb75a;
}
#score,
#highScore {
  font-size: 35px;
  font-weight: bolder;
  margin: 10px 0;
}
#highScore {
  color: #d8ddca;
  
}

.game-border-3,
#logo {
  background-color: #c4cfa3;
}
.snake {
  border: #999 3px solid;
  background-color: #66b447;
}

.snake.head {
  background-color: #66b447;
  border: #999 5px solid;

}
.food {
  background-color: #a83d25;
  border: #999 5px solid;
}
.trap {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgb(187, 0, 255);
  border: #999 2px solid;
}



.trap span, .boni span {
  font-size: 20px;
  font-family: 'VT323', monospace;
}
.boni {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgb(195, 178, 28);
  border: #999 2px solid;
}



#game-over-screen {
  position: absolute;
  display: none; 
  flex-direction: column;
  align-items: center;
  justify-content: center;

  background-color: #c4cfa3; ;
  width: 100%;
  height: 100%;
}
#game-over-text {
  font-size: 50px;
}


/* Right Area */

.rules_Caption {
  width: 100%;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: space-around;

  border-bottom: #abb78a solid 4px;
}
.rules_Caption i:hover {
  cursor: pointer;
}

.rules_side {
  width: 25vw;
  margin-right: 10px;
  border: #abb78a solid 8px;
  background-color: #c4cfa3;
}

.rules {
  padding-left: 1rem;
  color: black;
  max-height: 100vh;
  overflow: hidden;
  transition: max-height 0.5s ease-in ;

}
.rules.hide {
  padding-left: 1rem;
  max-height: 0;
  transition: max-height 0.5s ease-out ;
}

.trap.r, 
.snake.r,
.food.r,
.boni.r {
  width: 0.6rem;
  height: 0.6rem;
}

ul,li {
  padding-left: 1rem;
}