/* Container remains full-screen */
.cssload-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    /* optional */
}

/* Remove the :before and :after sliding effects */
.cssload-container:before,
.cssload-container:after {
    content: '';
    display: none;
}

/* Centered progress */
.cssload-progress {
    position: relative;
    width: 48px;
    height: 48px;
    transform: translate(-50%, -50%);
}

/* The spinner circle */
.cssload-progress .cssload-progress-item {
    width: 100%;
    height: 100%;
    border: 5px solid #fad1b2;
    border-bottom-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    animation: spin 1s linear infinite;
    margin: 0 auto;
}

/* Remove nested pseudo-elements */
.cssload-progress .cssload-progress-item:before,
.cssload-progress.cssload-shadow:before,
.cssload-progress.cssload-shadow:after {
    content: none;
}

/* Simple rotation keyframes */
@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* Vendor prefixes (optional, for older browsers) */
@-webkit-keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@-moz-keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@-ms-keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@-o-keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}