:root {
    --txt-color: #fff;
    --txt-box-bg: #424242;
    --main-bg: #000;
    --main-front-color: #00a8ff;
    --second-front-color: #e84118;
    --third-front-color: #fbc531;
  }
  
html, body {
    width:100%;
    height:100%;
    margin:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    background-color: var(--background-color);
}

.header {
    width:100%;
    height:5%;
    border-bottom:1px solid var(--header-border);
    display: flex;
    align-items: center;
    z-index:2;
    justify-content: space-between;
}

.gameBody {
    height:95%;
    width:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:space-evenly;
  }

.gameArea, .controlArea {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.gameArea {
    margin:30px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    overflow-y: auto;
    overflow-x: hidden;
    height:70%;
}

.controlArea {
    justify-content: center;
    align-content: center;
    flex-direction: row;
    flex-wrap: wrap;
    flex-grow: 1;
}

.endArea {
    width:100%;
    display:flex;
    align-content: center;
    flex-direction: column;
    flex-wrap:nowrap;
    flex-grow: 1;
}

.loseArea {
    display:flex;
    justify-content: center;
    align-content: center;
    flex-direction: row;
    margin:10px;
}

.loseMessage, .winMessage {
    font-family: 'Rowdies';
    text-align: center;
    margin:0;
}

.loseMessage {
    color:red;
    font-size: 2.6vmin;
}

.winMessage {
    color:green;
    font-size: 3vmin;
}

.endColor {
  margin:0.8vmin;
}

.left {
  margin-left: 1vw;
  justify-content: flex-start;
}

.right {
    margin-right: 1vw;
    justify-content: flex-end;
}

.options {
    justify-content: flex-end;
}

.left, .right {
    display: flex;
    min-width:40vmin;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
}

#header_middle {
    display:flex;
    height:100%;
    align-items:center;
    justify-content:center;
    flex-grow: 1;
}

#reset_img {
    filter: var(--reset-image-color);
    width:24px;
    animation-name: spin-back;
    animation-duration: 200ms;
    animation-iteration-count: 1;
    animation-timing-function: linear; 
}

.row {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    margin:0.3vmin 2vmin 0.3vmin 2vmin;
}

.cell {
    margin:0.8vmin;
    background-color:transparent;
}

.color {
    border:1px solid;
    border-color: var(--control-border);
    width: var(--control-width);
    height: var(--control-height);
    margin: var(--control-margin);
}

.color:hover {
    cursor:pointer;
    box-shadow: 0px 0px 5px var(--default-shadow);
}

.color:active {
    cursor: grab;
}

#header_text {
    color: var(--text-color);
    font-family: 'Rowdies', cursive;
    font-weight: 200;
    font-size: 3.5vmin;
    line-height: 100%;
    letter-spacing: 0.01em;
    text-align: center;
    left: 0;
    right: 0;
    cursor:default;
}

#header_text:hover {
  -webkit-text-stroke: 0px #000000;
  animation: text-rainbow 8s linear infinite;
              
}

#resetButton {
    width:64px;
    border:none;
    background-color: transparent;
    display:flex;
    align-items:center;
    justify-content:center;
}

#reset_img:hover{
    animation-name: spin;
    animation-duration: 200ms;
    animation-iteration-count: 1;
    animation-timing-function: linear; 
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(-360deg);
    }
}

@keyframes spin-back {
    from {
        transform:rotate(-360deg);
    }
    to {
        transform:rotate(0deg);
    }
}

@keyframes bounce {
    0% {
        transform:translateY(0%);
    }
    25% {
        transform:translateY(5%);
    }
    50% {
        transform:translateY(0%);
    }
    75% {
        transform:translateY(5%);
    }
    100% {
        transform:translateY(0%);
    }
}

.popup {
    background-color:#c0d6d9;
    padding:1px 15px;
    position:absolute;
    left:1%;
    bottom:1%;
    border-radius:20px;
    display:none;
}

.popup:hover {
    background-color: #94d3dc;
    animation-name: bounce;
    animation-duration: 200ms;
    animation-iteration-count: 1;
    animation-timing-function: linear; 
    cursor:grab;
}   

#popup_content {
    font-family:'Rowdies'
}

#popup_content:hover {
  cursor:grab;
}

@keyframes text-rainbow {
  0% {
    color: #000000;
  }
  5% {
    color: var(--main-front-color);
  }
  25% {
    color: var(--second-front-color);
  }
  50% {
    color: var(--third-front-color);
  }
  75% {
    color: var(--second-front-color);
  }
  95% {
    color: var(--main-front-color);
  }
  100% {
    color: #000000;
  }
}

/* Handle on hover */
.gameArea::-webkit-scrollbar-thumb:hover {
    background: #4a5767;
}

.gameArea::-webkit-scrollbar {
    display: block;
    width: 10px;
}
.gameArea::-webkit-scrollbar-track {
    box-shadow: inset 0 0 5px grey; 
    border-radius: 10px;
}
    
.gameArea::-webkit-scrollbar-thumb {
    border-right: none;
    border-left: none;
    background: #89939f;
    border-radius: 10px;
}

.enter {
    color: var(--text-color);
    background-color: var(--enter-button-background);
    font-family:'Rowdies';
    font-size:90%;
  }

.stat_container {
display: var(--display-stats);
flex-direction:column;
}

.guess_stats {
width:100%;
height:50%;
display:flex;
flex-direction:row;
align-items:center;
justify-content:space-evenly;
}

.guess_stat {
    color: var(--text-color);
    font-family:"Rowdies";
    width:1vmin;
    height:50%;
}

.guess_rect {
    width:2vmin;
    height:2vmin;
    border-radius:2vmin;
}

#help_svg:hover {
    cursor: pointer;
}