.progress-wrap {
    position: fixed;
    right: 50px;
    bottom: 50px;
    height: 46px;
    width: 46px;
    cursor: pointer;
    display: block;
    border-radius: 50px;
    box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.2);
    z-index: 10000;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 200ms linear;
}

@media screen and (max-width:767px) {
    .progress-wrap {
        right: 30px;
        bottom: 30px;
    }
}

.progress-wrap.active-progress {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Default SVG arrow styling */
.progress-wrap .default-arrow {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    pointer-events: none;
    color: var(--progress-color, #1f2029);
}

.progress-wrap .default-arrow path {
    stroke: currentColor;
}

/* Custom SVG icon styling */
.progress-wrap .custom-svg-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    pointer-events: none;
    object-fit: contain;
}

.progress-wrap svg path {
    fill: none;
}

.progress-wrap svg.progress-circle path {
    stroke: var(--progress-color, #1f2029);
    stroke-width: 4;
    box-sizing: border-box;
}

/* Background circle color */
.progress-wrap svg.progress-circle .circle-bg {
    stroke: var(--circle-color, #e0e0e0);
}