html,
body {
    height: 100vh;
}

/* Circular Progressive Bar */
/* Circular Progressive Bar */
.pure-css-progress {
    width: 100%;
    /* Adjust size dynamically based on card body width */
    height: 100%;
    /* Maintain aspect ratio */
    border-radius: 50%;
    background: conic-gradient(var(--color) calc(var(--progress) * 3.6deg), #e0e0e0 0deg);
    display: flex;
    align-items: center;
    justify-content: center;
    /* margin: 0 auto; */
    position: relative;
}

.pure-css-progress::before {
    content: '';
    width: 90%;
    /* Inner circle size relative to outer circle */
    height: 90%;
    /* Inner circle size relative to outer circle */
    background: rgba(113, 113, 113, 0.4);
    /* Background color */
    border-radius: 50%;
    position: absolute;
}

.progress-text {
    position: relative;
    color: white;
    font-size: 1.5rem;
    /* Adjust font size dynamically */
    font-weight: bold;
}


@media (min-width: 1400px) {
    .custom-container {
        max-width: 100vw !important;
    }
}

/* Loading Bar */
.loading {
    position: fixed;
    z-index: 9999;
    height: 100vh;
    width: 100vw;
    overflow: visible;
    margin: auto;
    background: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

.spinner {
    -webkit-animation: rotator 1.4s linear infinite;
    animation: rotator 1.4s linear infinite;
    position: fixed;
    top: 50%;
    left: 50%;
}

@-webkit-keyframes rotator {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(270deg);
    }
}

@keyframes rotator {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(270deg);
    }
}

.path {
    stroke-dasharray: 187;
    stroke-dashoffset: 0;
    transform-origin: center;
    -webkit-animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
    animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
}

@-webkit-keyframes colors {
    0% {
        stroke: #4285f4;
    }

    25% {
        stroke: #de3e35;
    }

    50% {
        stroke: #f7c223;
    }

    75% {
        stroke: #1b9a59;
    }

    100% {
        stroke: #4285f4;
    }
}

@keyframes colors {
    0% {
        stroke: #4285f4;
    }

    25% {
        stroke: #de3e35;
    }

    50% {
        stroke: #f7c223;
    }

    75% {
        stroke: #1b9a59;
    }

    100% {
        stroke: #4285f4;
    }
}

@-webkit-keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        transform: rotate(450deg);
    }
}

@keyframes dash {
    0% {
        stroke-dashoffset: 187;
    }

    50% {
        stroke-dashoffset: 46.75;
        transform: rotate(135deg);
    }

    100% {
        stroke-dashoffset: 187;
        transform: rotate(450deg);
    }
}