*{
    box-sizing: border-box;
}
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700&display=swap');
body{
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-evenly;
    align-items: center;
    background: #161627;
    color: #F2E9E4;
    height: 60vh;
    font-family: 'Poppins', sans-serif;
    font-size: 15px;
    font-weight: 400;
}
h1{
    font-weight: 500;
}
.box{
    display: flex;
    align-items: center;
}
.switch{
    visibility: hidden;
}
.switch + label{
    width: 50px;
    height: 15px;
    background: #F2E9E4;
    border-radius: 25px;
    position: relative;
    display: flex;
    align-items: center;
    cursor: pointer;
    margin: 20px;
}
.switch + label + span{
    transition: all .3s ease;
    font-weight: 500;
    color: #4A4E69;

}
.switch:checked + label + span{
    color: #F2E9E4;
    text-shadow: #F2E9E4 0 0 5px;
}
.switch:checked + label::before,.switch:not(:checked) + label::before{
    content: '';
    border-radius: 50%;
    background: #4A4E69;
    width: 25px;
    height: 25px;
    position: absolute;
    left: -10px;
    transition: all .3s ease;
}
.switch:checked + label::before{
    transform: translate(150%);
}
#board{
    width: auto;
    height: auto;
    display: flex;
    flex-flow: row wrap;
    width: 180px;
    height: 180px;
    position: relative;
}
#board .cell{
    background: #F2E9E4;
    width: 60px;
    height: 60px;
    border: 5px #161627 solid;
    border-radius: 10px;
    cursor: pointer;
    font-family: "FontAwesome";
    transition: all .2s ease;
    color: #F2E9E4; 
    font-size: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#board .cell.tic, #board .cell.clean.set-tic:hover, .popup.tic{
    background-color: #C9ADA7;
}
#board .cell.clean.set-tic:hover::after{
    content: '\f00d';
}
#board .cell.tac, #board .cell.clean.set-tac:hover, .popup.tac{
    background-color: #4A4E69;
}
#board .cell.clean.set-tac:hover::after{
    content: "\f111";
}
.popup{
    position: absolute;
    bottom: 20%;
    font-weight: 500;
    padding: 40px;
    border-radius: 15px;
    box-shadow: #0a0a11 5px 5px 0px ;
    cursor: pointer;
    background-color: #4A4E69;
    color: #F2E9E4;
    text-align: center;
}
.popup i{
    font-size: 40px;
}
.restart{
    width: 50px;
    height: 50px;
    border-radius: 15px;
    background-color: #0a0a11;
    color: #F2E9E4; 
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: absolute;
    left: 60%;
}
.restart i{
    transition: all 1s ease;
}
.restart:hover i{
    transform: rotate(-360deg);

}

@media screen and (max-width: 990px){
    .restart{
        right: 7vw;
        left: unset;
    }
}