.loading-wrapper {
    background-color: #f2f2f3;
    pointer-events: none;
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
    z-index: 999999999999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loader {
    --size: 55px;
    width: var(--size);
    height: var(--size);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
}

.loader span {
    width: 100%;
    height: 100%;
    background-color: var(--color);
    animation: keyframes-blink 0.5s alternate infinite linear;
}

.loader span:nth-child(1) {
    animation-delay: 0ms;
    background-color: #de3b5d;
}

.loader span:nth-child(2) {
    animation-delay: 150ms;
    background-color: #2c7e7b;
}

.loader span:nth-child(3) {
    animation-delay: 150ms;
    background-color: #ff6f00;
}

.loader span:nth-child(4) {
    animation-delay: 280ms;
    background-color: #2f5dc4;
}

@keyframes keyframes-blink {
    0% {
        opacity: 0.5;
        transform: scale(0.5) rotate(20deg);
    }

    50% {
        opacity: 1;
        transform: scale(1);
    }
}
