.freeze-ui { position:fixed; top:0; left:0; width:100%; height:100%; z-index:999999999; background-color:#fff; opacity:.8; transition:opacity .25s; }
.freeze-ui.is-unfreezing { opacity:0; }

.loader-container {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

.ripple {
    position: relative;
    width: 50px;
    height: 50px;
}

.ripple::before, .ripple::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 4px solid #042e6f;
    opacity: 0;
    animation: ripple 3s infinite;
}

.ripple::after {
    animation-delay: 1.5s;
}

@keyframes ripple {
    0% {
        transform: scale(0.5);
        opacity: 0;
    }
    25% {
        opacity: 1;
    }
    100% {
        transform: scale(2.5);
        opacity: 0;
    }
}
