/* Убираем выделение по нажатию клавиш */
canvas:focus {
    outline: none;
}

html, body {
    /* Убираем отступы */
    padding: 0;
    margin: 0;

    /* Отключаем скролл и лонгтап на IOS */
    overflow: hidden;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);

    /* Ставим высоту на 100% */
    height: 100%;

    /* Центрируем, если привязана картинка или творим магию, чтобы можно было использовать градиент */
    background-position-x: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;

    /* Скрываем скролл */
    -ms-overflow-style: none;
    scrollbar-width: none;
    scrollbar-height: none;
}

/* Канвас и загрузочный экран */
#canvas {
    position: fixed;
    width: 100%;
    height: 100%;
}

.loading_bg {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1;
    /* Центрируем, если привязана картинка или творим магию, чтобы можно было использовать градиент */
    background-position-x: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.loading {
    position: absolute;
    /*background-color:red;*/
}

.loading_bar {
    position: absolute;
    z-index: 6;
    transform: translate(-50%, -50%);
}

.loading_bar_fill {
    position: absolute;
    z-index: 6;
    width: 0%;
    height: 100%;
    top: 0%;
    bottom: 0%;
    left: 0%;
}

.loading_logo {
    position: absolute;
    transform: translate(-50%, -50%);
    z-index: 6;
    pointer-events: none;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    background-attachment: scroll;
}

.console_helper {
    position: absolute;
    background-color: white;
    transform: translate(-50%, -50%);
    left: 50%;
    -webkit-box-shadow: 0px 0px 10px 5px rgba(34, 60, 80, 0.24);
    -moz-box-shadow: 0px 0px 10px 5px rgba(34, 60, 80, 0.24);
    box-shadow: 0px 0px 10px 5px rgba(34, 60, 80, 0.24);
    overflow: hidden;
    display: none;
}

p {
    font-family: Arial, Helvetica, sans-serif;
    word-wrap: break-word;
}

.spinner {
    position: absolute;
    border: 5px solid #FFF;
    border-bottom-color: transparent;
    border-radius: 50%;
    box-shadow: 0px 0px 0px 7px rgba(34, 60, 80, 0.2);
    margin: auto;
    top: 70%;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 6;
    animation: spinner-spin 1.1s infinite linear;
}

@keyframes spinner-spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
