/*
 * Copyright (c) ACTICO GmbH, Germany. All rights reserved.
 */
.splash-screen {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: white;
    z-index: 99999;
    pointer-events: none;
}

.splash-screen-hidden {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 0.33s, opacity 0.33s linear;
}

.splash-screen .center {
    display: block;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.splash-screen .logo {
    width: 240px;
    margin: 0 auto;
}

.splash-screen .spinner-wrapper {
    display: block;
    position: relative;
    width: 100%;
    min-height: 100px;
    height: 100px;
}

.splash-screen .spinner-wrapper .spinner {
    position: absolute;
    overflow: hidden;
    left: 50%;
    margin-left: -60px;
    animation: outer-rotate 2.91667s linear infinite;
}

.spinner .inner {
    width: 100px;
    height: 100px;
    position: relative;
    animation: sporadic-rotate 5.25s cubic-bezier(.35, 0, .25, 1) infinite;
}

.inner .gap {
    position: absolute;
    left: 49px;
    right: 49px;
    top: 0;
    bottom: 0;
    border-top: 10px solid;
    box-sizing: border-box;
}

.inner .left,
.inner .right {
    position: absolute;
    top: 0;
    height: 100px;
    width: 50px;
    overflow: hidden;
}

.inner .left .half-circle,
.inner .right .half-circle {
    position: absolute;
    top: 0;
    width: 100px;
    height: 100px;
    box-sizing: border-box;
    border: 10px solid #3382c0;
    border-bottom-color: transparent;
    border-radius: 50%;
}

.inner .left {
    left: 0;
}

.inner .left .half-circle {
    left: 0;
    border-right-color: transparent;
    -webkit-animation: left-wobble 1.3125s cubic-bezier(.35, 0, .25, 1) infinite;
    animation: left-wobble 1.3125s cubic-bezier(.35, 0, .25, 1) infinite;
}

.spinner .inner .right {
    right: 0;
}

.inner .right .half-circle {
    right: 0;
    border-left-color: transparent;
    -webkit-animation: right-wobble 1.3125s cubic-bezier(.35, 0, .25, 1) infinite;
    animation: right-wobble 1.3125s cubic-bezier(.35, 0, .25, 1) infinite;
}

@keyframes outer-rotate {
    0% {
        transform: rotate(0deg) scale(.5);
    }
    100% {
        transform: rotate(360deg) scale(.5);
    }
}

@keyframes left-wobble {
    0%, 100% {
        transform: rotate(130deg);
    }
    50% {
        transform: rotate(-5deg);
    }
}

@keyframes right-wobble {
    0%, 100% {
        transform: rotate(-130deg);
    }
    50% {
        transform: rotate(5deg);
    }
}

@keyframes sporadic-rotate {
    12.5% {
        transform: rotate(135deg);
    }
    25% {
        transform: rotate(270deg);
    }
    37.5% {
        transform: rotate(405deg);
    }
    50% {
        transform: rotate(540deg);
    }
    62.5% {
        transform: rotate(675deg);
    }
    75% {
        transform: rotate(810deg);
    }
    87.5% {
        transform: rotate(945deg);
    }
    100% {
        transform: rotate(1080deg);
    }
}