html, body, div {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
}

body {
    background: #000;
    height: 100%;
    width: 100%;
    text-align: center;
    padding-top: constant(safe-area-inset-top);
    padding-right: constant(safe-area-inset-right);
    padding-bottom: constant(safe-area-inset-bottom);
    padding-left: constant(safe-area-inset-left);
}

.game {
    position: fixed;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: center;
    background-size: contain;
    margin: 0 auto;
    left: 0;
    right: 0;
    -moz-box-shadow: 0 0 10px #000;
    -webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.full-size {
    width: 100%!important;
    height: 100%!important;
}

canvas {
    position: absolute;
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.alert {
    position: absolute;
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    color: #FFF;
    width: 90%;
    font-size: 40px;
    text-align: left;
    padding-top: 20px;
}

.mobile .alert {
    font-size: 40px;
}

/* mobile */
:fullscreen { background-color: #000; }
:-webkit-full-screen { background-color: #000; }
:-moz-full-screen { background-color: #000; }
:-ms-fullscreen{ background-color: #000; }

.landscape{
    z-index: 5;
    display: none;
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background-color: #000;
    background-size: 40%;
    background-repeat: no-repeat;
    background-position: center;
}

.fullscreen {
    z-index: 10;
    position: relative;
    overflow: scroll;
    width: 100%;
    bottom: 0;
    background-color: #000;
    background-size: 30%;
    background-repeat: no-repeat;
    background-position: center top;
}

.hidden {
    display: none;
}

.spine {
    pointer-events: none;
    touch-action: none;
    user-select: none;
}

.vertical-background {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    object-fit: cover;
    touch-action: none;
    user-select: none;
    pointer-events: none;
}

.mobile .vertical-background {
    display: none;
}