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;
    }
}


/* Highlight Current Spot */

.spot-frame.active {
    border: 3px solid #ffc107 !important;
    box-shadow: 0 0 0 0.25rem rgba(243, 212, 33, 0.301);
    background: #e7f1ff;
}

.spot-label.active {
    background: #ffc107 !important;
    color: #212529 !important;
    box-shadow: 0 0 0 0.25rem rgba(243, 212, 33, 0.301);
    font-weight: bold;
}

@keyframes spot-glow {
    0% {
        box-shadow: 0 0 0 0.25rem rgba(243, 212, 33, 0.3);
    }
    50% {
        box-shadow: 0 0 16px 8px rgba(243, 212, 33, 0.7);
    }
    100% {
        box-shadow: 0 0 0 0.25rem rgba(243, 212, 33, 0.3);
    }
}

.spot-frame.active,
.spot-label.active {
    animation: spot-glow 2s infinite;
}