html,body{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background-color: skyblue;
}
html,body,ul,li,ol,dl,dd,dt,p,h1,h2,h3,h4,h5,h6,form,fieldset,legend,img {
    margin: 0;
    padding: 0
}
#main{
    height: 100%;
    width: 100%;
    position: relative;
}
#before{
    width: 100%;
    height: 100%;
    background:skyblue;
    position: absolute;
    z-index: 80;
}
.dn{
    display: none!important;
}
.message-container{
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: url(loading.jpg) center center;
    /* background: rgba(15, 23, 49, 0.8); */
    background-size: cover;
    font-size:30px;
    z-index: 88;
    animation: fade 5s linear forwards;
}
@keyframes fade {
    0%{
        opacity: 1;
    }
    60%{
        opacity: 0.6;
        /*display: none!important;*/
    }
    100%{
        opacity: 0.1;
    }

}
.message{
    width: 100%;
    line-height: 100%;
    margin:60% auto;
    text-align: center;
    z-index: 999;
    /*animation: fontMove 2s linear forwards;*/
}
@keyframes fontMove {
    0%{
        transform:rotate(-360deg) scale(1);
    }
    50%{
        transform:rotate(-180deg) scale(1.4);
    }
    100%{
        transform:rotate(0deg) scale(1);
    }
}
.message span{
    display: inline-block;
    color: #8385eb;
    opacity: 0;
    font-size:24px;
    animation: spanMove 2s ease forwards;
}
.message span:nth-of-type(1){
    animation-delay: 0ms;
}
/*.message span:nth-of-type(2){
    animation-delay: 500ms;
}
.message span:nth-of-type(3){
    animation-delay: 700ms;
}
.message span:nth-of-type(4){
    animation-delay: 900ms;
}*/
@keyframes spanMove{
    0%{
        opacity: 0;
        transform: translateY(-200px)  scale(1);

    }
    60%{
        transform: translateY(100px)  scale(2);
    }
    100%{
        opacity: 1;
        transform: translateY(80px)  scale(1);
    }
}
header{
    margin: 0 auto;
    width:100%;
    text-align: center;
}
header h1{
    font-family:Arial;
    font-size:40px;
    font-weight:bold;
    margin: 20px;
}
header #newgamebutton{
    display: block;
    margin: 10px auto;
    width: 100px;
    padding: 10px 10px;
    background-color: #8f7a66;
    font-family:Arial;
    color: white;
    border-radius:10px;
    text-decoration: none;
}
header #newgamebutton:hover{
    background: #9f8b77;
}
header p{
    font-family:Arial;
    font-size:25px;
    margin: 10px auto;
}
#grid-container{
    width: 460px;
    height: 460px;
    padding: 20px;
    margin: 0px auto;
    background-color: #bbada0;
    border-radius:10px;
    position: relative;
}
.grid-cell{
    width: 100px;
    height: 100px;
    border-radius:6px;
    background-color: #ccc0b3;
    position: absolute;
}
.number-cell{
    border-radius: 6px;
    font-family:Arial;
    font-weight:bold;
    font-size:26px;
    line-height:100px;
    text-align: center;
    position: absolute;
}