body {
    margin: 0;

    --background-color: #111;

    background-color: var(--background-color);
    font-family: 'Abril Fatface', sans-serif;
    color: white;
}

a {
    color: white;
    text-decoration: none;
}

a:hover {
    opacity: 0.75;
}

main {

    background-color: var(--background-color);
    width: 100%; height: calc(100% - 55px);
}

header {

    text-align: center;

    top: 0;
    width: 100%;
    padding: 10px 0 10px 0;
}

.title {
    font-family: 'Codystar', cursive;
    font-size: 30px;
}

.game {

    background-color: black;
    box-shadow: 0px 0px 100px black;

    position: relative;
    
    --scale-factor: 0.8;

    /* Center Vertically */
    margin: 0; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
}

.overlay {
    opacity: 0.5;

    position: absolute;
    bottom: 5px;
    width: 100%;
    cursor: default;
}

.material-icons {
    cursor: pointer;
    font-size: 24px;
}

.github {
    float: left;
    padding-left: 5px;
    padding-top: 5px;
}

#github-icon {
    width: 20px;
    height: 20px;
}

#fullscreen { float: right; margin-right: 5px;}

/* Maintain 16:9 Aspect Ratio */
@media (max-aspect-ratio:16/9) {
    .game { width: calc(var(--scale-factor) * 100vw); height: calc(var(--scale-factor) * 56.25vw); }
}
@media (min-aspect-ratio:16/9) {
    .game { width: calc(var(--scale-factor) * 177.77vh); height: calc(var(--scale-factor) * 100vh); }
}

.canvas {
    background-color: black;

    position: absolute;
    top: 0; left: 0; bottom: 0; right: 0;

    width: 100%;
    height: 100%;
}
