@font-face {
    font-family: 'zabras';
    src: url('assets/fonts/Zabars.ttf') format('truetype');
}

body {
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100vh;
    background-image: url('./assets/img/background.png');
    background-position: center;
    background-size: cover;
    font-family: 'zabras', Arial, Helvetica, sans-serif !important;
    overflow: hidden;
}

.d-none {
    display: none !important;
}

#gameInstructions{
    top: 0;
    position: absolute;
    font-size: 30px;
    z-index: 2;
    gap: 10px;
    height: 100%;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

#gameInstructions h2 {
    font-size: 48px;
    margin-top: 20px;
    margin-bottom: 0;
}


.single-instruction-container{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 400px;
}

.single-instruction-container span{
   width: 160px;
   text-align: center;
}

.single-instruction-container img{
    width: 34px;
 }

.panel{
    width: 100%;
    position: absolute;
    display: flex;
    justify-content: center;
    gap: 10px;
    z-index: 3;
}

#panelBottom{
    bottom: 0;
    justify-content: space-between;
    display: none;
}
.panel-wrapper{
    display: flex;
    gap: 30px;
}

canvas {
    width: 100%;
    background-color: black;
}

h1 {
    font-size: 84px;
    margin: 20px;
    text-shadow: 4px 4px 2px rgba(0, 0, 0, 0.5);
    letter-spacing: 6px;
}

.game-container {
    display: flex;
    position: relative;
}

#startScreen {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-end;
}

#startScreen img {
    height: 100%;
    width: 100%;
}

.startscreen-buttons {
    height: 70px;
    width: 100%;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: space-evenly;/
}

.button {
    background-color: #FFDB04;
    height: 40px;
    width: 70px; /* 80 */
    border: 1px solid black;
    border-radius: 10px;
    font-family: 'zabras', Arial, Helvetica, sans-serif;
    font-size: 24px;
    padding: 5px;
    box-shadow: 4px 4px 2px rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
}

.button:hover {
    cursor: pointer;
    background-color: #ffd904d8;
    border-width: 2px;
}

#loadingScreen {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: black;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 100; 
}

.loading-text {
    font-size: 30px;
    display: flex;
    justify-content: center;
    grid-row: 3/3;
}

.loader {
    width: 100px;
    height: 100px;
    animation: spin 2s linear infinite;
}

.buttons-top-size{
    height: 20px !important;
    width: 40px;
}

.touch-button{
    background-color: #FFDB04;
    height: 35px; 
    width: 50px; 
    border: 1px solid black;
    border-radius: 10px;
    font-family: 'zabras', Arial, Helvetica, sans-serif;
    font-size: 24px;
    padding: 5px;
    box-shadow: 4px 4px 2px rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
}

.touch-button:hover {
    cursor: pointer;
    background-color: #f7d200;
    border-width: 2px;
} 

.touch-button img{
    height: 24px;
}

.end-screen-buttons {
    width: 100%;
    display: flex;
    position: absolute;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

#loseScreen {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

#loseScreen img {
    width: 100%;
    height: 100%;
}

.margin-top-lose {
    margin-top: 45%;
}

#winningScreen {
    height: 100%;
    width: 100%;
    position: absolute;
    background-color: black;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

#winningScreen img {
    height: 15%;
    width: 50%;
}

.margin-top-win {
    margin-top: 40%;
}

#rotate-device {
    height: 100%;
    width: 100%;
    top: 0;
    position: absolute;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: rgb(190, 190, 190);
    z-index: 1000;
}

#rotate-device span {
   font-size: 40px;
   margin-bottom: 20px;
}

#rotate-device img {
    height: 200px;
    width: 200px;
}

@media screen and (orientation: portrait){
    #rotate-device{
        display: flex;
    }
}

@media screen and (orientation: landscape){
    #rotate-device{
        display: none;
    }
}

@media only screen and (max-width: 720px) {
    .game-container {
        width: 100%;
        height: 100%;
    }
}

@media (max-width: 430px){
    .loader {
     height: 80px !important;
     width: 80px !important;
    }
 }
 
@media (max-height: 430px){
    .game-container{
        height: 100vh;
        width: 100vw;
    }

    #fullscreenButton{
        display: none;
    }
    #panelBottom{
        display: flex;
    }
    .margin-top-lose{
        margin-top: 30%;
    }
    .margin-top-win{
        margin-top: 20%;
    }
}

@media (max-height: 375px){
   .touch-button{
    height: 30px;
   }

   #gameInstructions{
    gap: 5px;
    font-size: 20px;
   }

   .loading-text {
    font-size: 20px;
   }

   #gameInstructions h2{
    font-size: 30px;
   }

   .single-instruction-container img{
    width: 24px;
   }

   .margin-top-lose{
    margin-top: 60%;
   }

   .margin-top-win{
    margin-top: 25%;
   }

   .single-instruction-container{
    width: 320px;
   }
}

/*---------------- LOADING-ANIMATION ----------------*/
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Safari */
@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
    }
}

/*--------------------------------------------*/