body {
    background: #000900;

    /* Prevent the ugly blue highlighting from accidental selection of text */
    user-select: none;

    /* Disable long touch hold select */
    -webkit-touch-callout: none !important;

    overflow: hidden;
}

#wrapper {
    position: absolute;

    /* Wrapper covers entire window height and width */
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

#gamecontainer {

    /* Set game container width, height and background */
    width: 640px;
    height: 480px;

    /* Use a wider splash screen and center it within the container */
    background: url("images/splashscreenwide.png");
    background-position: center;
    background-repeat: no-repeat;

    /* Center the game container relative to outer wrapper */
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center center;
}

.gamelayer {
    width: 100%;
    height: 100%;
    position: absolute;
    display: none;
}

/* Game Starting Menu Screen */

#gamestartscreen {
    padding-top: 250px;
    text-align: center;
}

#gamestartscreen img {
    margin: 10px;
    cursor: pointer;
}

/* Level Selection Screen */

#levelselectscreen {
    padding-top: 150px;
    padding-left: 50px;
}

#levelselectscreen input {
    margin: 20px;
    cursor: pointer;

    background: url("images/icons/level.png") no-repeat;
    color: yellow;
    font-size: 20px;

    width: 64px;
    height: 64px;

    border: 0;

    /* Remove the default blue border when an input is selected */
    outline: 0;
}

/* Loading Screen */

#loadingscreen {
    background: rgba(100, 100, 100, 0.5);
}

#loadingmessage {
    margin-top: 400px;
    text-align: center;
    height: 48px;
    color: white;
    background: url("images/loader.gif") no-repeat center;
    font: 12px Arial;
}

/* Score Screen */

#scorescreen {
    height: 60px;
    font: 32px "Comic Sans MS";
    text-shadow: 0 0 2px black;
    color: white;
}

#scorescreen img {
    opacity: 0.6;
    top: 5%;
    left: 5%;
    position: relative;
    padding: 8px;
    cursor: pointer;
}

#score {
    position: absolute;
    top: 5%;
    right: 5%;
}

/* Ending Screen */

#endingscreen {
    text-align: center;
    background: rgba(1, 1, 1, 0.3);
}

#endingscreen div {

    /* Center the popup div within the screen */
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center center;


    height: 250px;
    width: 330px;

    border: 1px solid gray;
    border-radius: 25px;
    background: rgba(1, 1, 1, 0.3);

    padding: 10px 30px 40px 50px;

    text-align: left;
}

.endingoption {
    font: 20px "Comic Sans MS";
    text-shadow: 0 0 2px black;
    color: white;
}

#endingscreen p img {
    top: 10px;
    position: relative;
    cursor: pointer;

    padding-right: 20px;
}

#endingmessage {
    font: 25px "Comic Sans MS";
    text-shadow: 0 0 2px black;
    color: yellow;
    text-align: center;
}
