:root {
    --light-color: rgba(10, 10, 220, .2);
    --dark-color: rgba(10, 10, 220, 1);
    --radius: 64px;
    --ring-width: 4px;
}


#app {
    display: flex;
    align-items: center;
    justify-content: center;
}

.loading-wrapper {
    width: 100%;
    height: 100%;
    position: fixed;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #80808087;
}

.loading {
    width: var(--radius);
    height: var(--radius);
    border-radius: 50%;
    border: var(--ring-width) solid var(--light-color);
    position: fixed;
    background: #fff;
}

.loading:before {
    display: block;
    position: relative;
    left: calc(var(--ring-width) * -1);
    top: calc(var(--ring-width) * -1);
    content: ' ';
    width: var(--radius);
    height: var(--radius);
    border-radius: 50%;
    border: var(--ring-width) solid;
    border-color: var(--dark-color) transparent transparent transparent;
    animation: loading-rotate .8s ease-out infinite;
}

@keyframes loading-rotate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
