@font-face {
    font-family: myFont;
    src: url("Bitter-ExtraBold.ttf") format("opentype");
}

:root {
    /* Disable ZOOM on phone */
    touch-action: pan-x pan-y; height: 100%;
}

body {
    margin: 0;
    overflow: hidden;
    background: black;
}

canvas {
    cursor: url(VisualVault/aim.png) 30 30, auto;
}

.score {
    position: absolute;
    top: 10px;
    left: 10px;
    font-family: myFont, bitter, arial;
    font-size: 20px;
    color: white;
    user-select: none;
    z-index: 1;
}
#scorenum {
    display: inline-block;
    margin-left: 3px;
}

/*/ Dropdown game controls menu  /*/
.__container {
    width: 70px;
    height: 270px;
    position: absolute;
    top: -210px;
    right: 0px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;

    transition-delay: 1s;
    transition: top .5s ease;
    z-index: 0;
}
.__container:hover {
    top: 10px;
}
.__container:hover .menuButton {
    transform: rotate(180deg);
}

.menu {
    width: 50px;
    height: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    background: white;
    border-radius: 100px;
}

.menuButton {
    height: 50px;
    width: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 50px;
    user-select: none;

    transition: .5s ease;
}

/* Menu Button images */
#musicControl {
    width: 42px;
    height: 42px;
    background-size: contain;
    background-image: url(VisualVault/music.png);

    transition: .5s;
}

#soundControl {
    width: 42px;
    height: 42px;
    background-size: contain;
    background-image: url(VisualVault/sound.png);

    transition: .5s;
}

#gameControl {
    width: 44px;
    height: 44px;
    background-size: contain;
    background-image: url(VisualVault/pause.png);

    transition: .2s;
}

#musicControl, #soundControl, #gameControl:hover {
    opacity: 0.85;
}

/*/ Under animation layers /*/
div[class^='layer'] {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.layer1 {
    background-color: #2fe3fe;
    transition: 1.30s ease-in-out;
    z-index: 4;
}

.layer2 {
    background-color:#Ed00aa;
    transition: 1.15s ease-in-out;
    z-index: 5;
}

/*/ Game Percentage Loading circle /*/
.layer3 {
    background-color:#240f52;
    transition: 1s ease-in-out;
    z-index: 6;
}

._container {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transition: 1s ease-in-out;
    z-index: 7;
}

.outer {
    height: 300px;
    width: 300px;
    background: linear-gradient(135deg, #feed07 0%, #fe6a50 5%, #Ed00aa, #2fe3fe 50%, #8900ff 100%);
    border-radius: 50%;
    margin-top: -70px;
    scale: 1;
}

.outer.active-loader {
    animation: rotate 2s ease infinite;
}
@keyframes rotate {
    to { transform: rotate(360deg); }
}

.outer.active-loader-2 {
    animation: rotate2 3s ease;
}@keyframes rotate2 {
    to { transform: rotate(360deg); }
}

.inner {
    position: absolute;
    width: 275px;
    height: 275px;
    text-align: center;
    line-height: 275px;
    background: #240f52;
    border-radius: 50%;
    margin-top: -69px;
    user-select: none;
    cursor: default;
    box-shadow: 0 0 5px #240f52;
    scale: 1;

    transition: .2s;
    z-index: 7;
}
.inner:hover {
    background: #2d1663;
    cursor: pointer;
}

.inner span {
    font-size: 60px;
    font-weight: 800;
    color: transparent;
    font-family: myFont, bitter, arial;
    background:  linear-gradient(135deg, #feed07 0%, #fe6a50 5%, #Ed00aa, #2fe3fe 50%, #8900ff 100%);

    -webkit-background-clip: text;
    background-size: 300%;
}

/*/ Process display board /*/
.processing {
    position: absolute;
    width: 400px;
    height: 450px;
    margin: 0;
    top: 55%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-family: myFont, bitter, arial;
    transition: transform 0s;
    scale: 1;
}

.processing .p1, .p2, .p3 {
    width: 400px;
    height: 80px;
    font-size: 17px;
    color: #2fe3fe;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;

    transition: transform 0s;
    opacity: 0;
    scale: 1;
}

.layer4 {
    background-color: #240f52;
    transition: 1.30s ease-in-out;
    z-index: 1;
}
.layer5 {
    background-color: #2afda1;
    transition: 1.15s ease-in-out;
    z-index: 2;
}

.layer6 {
    background-color: #5010e5;
    display: flex;
    align-items: center;
    justify-content: center;

    transition: 1s ease-in-out;
    z-index: 3;
}

.alias-container {
    width: 500px;
    height: 200px;
    padding: 20px;
    font-size: large;
    padding-bottom: 10px;
    border-radius: 15px;
    background: white;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    color: #2d1663;
    font-family: myFont, bitter, arial;
    user-select: none;
    scale: 1;
}

#text-box {
    width: 450px;
    height: 50px;
    border-radius: 10px;
    font-size: larger;
    text-align: center;
    background-color: #e6e6e6;
    border: 2px solid #240f52;
}
#text-box:focus {
    outline-color: #5010e5;
}

.alias-container button {
    width: 100px;
    height: 40px;
    margin: auto;
    border-radius: 100px;
    background: #feed07;
}
.alias-container button:first-of-type {
    background: #fa178c;
}
.alias-container button:first-of-type + button {
    background: #2afda1;
}

/* Main Menu */
.main {
    position: absolute;
    top: -200px;
    left: 0;
    right: 0;
    margin: auto;
    padding: 0 20px;
    width: 350px;
    height: 50px;
    font-family: myFont, bitter, arial;
    font-size: larger;
    background: white;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    user-select: none;

    transition: 1.5s ease-in-out;
    z-index: 1;
}

#power1 {
    width: 40px;
    height: 40px;
    background-size: contain;
    background-image: url(VisualVault/ultraField.png);
}
#power2 {
    width: 40px;
    height: 40px;
    background-size: contain;
    background-image: url(VisualVault/gigaShot.png);
    opacity: 0.5;
}
#power3 {
    width: 40px;
    height: 40px;
    background-size: contain;
    background-image: url(VisualVault/doomswave.png);
    opacity: 0.5;
}

.guid {
    position: absolute;
    top: 75%;
    left: -320px;
    width: 300px;
    height: 80px;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    user-select: none;
    overflow: hidden;

    z-index: 2;
} 
.guid span {
    text-align: center;
    font-family: myFont;
    font-size: larger;
}
.guid #img {
    width: 70px;
    height: 70px;
    background-size: contain;
    background-image: url(VisualVault/mouse.gif);
}


/* Width Scale*/
@media (max-width: 850px) {
    ._container .inner, .outer, .processing {
        scale: .8;
    }
    .processing {
        top: 45%;
    }
    .alias-container {
        scale: .8;
    }
    .guid {
        width: 250px;
        height: 70px;

    }
    .guid img {
        width: 50px;
    }
}
@media (max-width: 390px) {
    ._container .inner, .outer, .processing {
        scale: .5;
    }
    .processing {
        top: 38%;
    }
    .alias-container {
        scale: .5;
    }
    .main {
        scale: .9;
    }
}
@media (max-width: 305px) {
    ._container .inner, .outer, .processing {
        scale: .4;
    }
    .alias-container {
        scale: .4;
    }
    .main {
        scale: .8;
        margin-left: -35px;
    }
}

/* Height Scale*/
@media (max-height: 770px) {
    ._container .inner, .outer, .processing {
        scale: .5;
    }
    .processing {
        top: 38%;
    }
    .alias-container {
        scale: .5;
    }
}

/* Touch Devices */
@media (pointer: coarse) {
    .guid #img {
        width: 60px;
        height: 60px;
        background: url(VisualVault/click.gif) no-repeat;
        background-size: contain;
    }
}
