.stepped-progress {
    --line-background: #ffa632;
    --line-stroke: #7b7b7b;
    --button-gradient-start: #ffb74a;
    --button-gradient-end: #fe8700;
    --tooltip-border-color: #5ADBFF;
    --background-gradient-start: rgba(255, 221, 74, 0.1);
    --background-gradient-end: #fff;
    --box-shadow-inner: rgba(0, 0, 0, 0.3);
    --box-shadow-outer: rgba(0, 0, 0, 0.1);
    --message-text: #515151;
}

.bar {
    display: flex;
    flex-direction: row-reverse;
    margin: auto auto 0;
    /* width: 300px; */
    max-width: calc(100% - 30px);
}

.step-bar-input {
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: -9999px;
    left: -9999px;
}

.step-bar-input:checked~.bar-view:nth-child(20):after {
    transition-delay: 0s;
}

.step-bar-input:checked~.bar-view:nth-child(20) .bar-button:before {
    transition-delay: 0.01s;
}

.step-bar-input:checked~.bar-view:nth-child(18):after {
    transition-delay: 0.05s;
}

.step-bar-input:checked~.bar-view:nth-child(18) .bar-button:before {
    transition-delay: 0.11s;
}

.step-bar-input:checked~.bar-view:nth-child(16):after {
    transition-delay: 0.15s;
}

.step-bar-input:checked~.bar-view:nth-child(16) .bar-button:before {
    transition-delay: 0.21s;
}

.step-bar-input:checked~.bar-view:nth-child(14):after {
    transition-delay: 0.25s;
}

.step-bar-input:checked~.bar-view:nth-child(14) .bar-button:before {
    transition-delay: 0.31s;
}

.step-bar-input:checked~.bar-view:nth-child(12):after {
    transition-delay: 0.35s;
}

.step-bar-input:checked~.bar-view:nth-child(12) .bar-button:before {
    transition-delay: 0.41s;
}

.step-bar-input:checked~.bar-view:nth-child(10):after {
    transition-delay: 0.45s;
}

.step-bar-input:checked~.bar-view:nth-child(10) .bar-button:before {
    transition-delay: 0.51s;
}

.step-bar-input:checked~.bar-view:nth-child(8):after {
    transition-delay: 0.55s;
}

.step-bar-input:checked~.bar-view:nth-child(8) .bar-button:before {
    transition-delay: 0.61s;
}

.step-bar-input:checked~.bar-view:nth-child(6):after {
    transition-delay: 0.65s;
}

.step-bar-input:checked~.bar-view:nth-child(6) .bar-button:before {
    transition-delay: 0.71s;
}

.step-bar-input:checked~.bar-view:nth-child(4):after {
    transition-delay: 0.75s;
}

.step-bar-input:checked~.bar-view:nth-child(4) .bar-button:before {
    transition-delay: 0.81s;
}

.step-bar-input:checked~.bar-view:nth-child(2):after {
    transition-delay: 0.85s;
}

.step-bar-input:checked~.bar-view:nth-child(2) .bar-button:before {
    transition-delay: 0.91s;
}


.step-bar-input:checked~.bar-view:after {
    transform: scaleX(1);
}

.step-bar-input:checked~.bar-view .bar-button:before {
    transform: none;
    opacity: 1;
}

/*
.step-bar-input:checked+.bar-view .bar-button:after {
    opacity: 1;
    -webkit-animation: bouncing 0.6s cubic-bezier(0, 0, 0.74, 1.04) infinite;
    animation: bouncing 0.6s cubic-bezier(0, 0, 0.74, 1.04) infinite;
}
    */

.bar-view {
    display: flex;
    flex-grow: 1;
    position: relative;
}

.bar-view:after {
    height: 2px;
    top: calc(50% - 1px);
    transition: transform 0.06s cubic-bezier(0, 0.72, 0.58, 1);
    transform: scaleX(0);
    background: var(--line-background);
    transform-origin: left;
    z-index: 1;
}

.bar-view:not(:last-child):before,
.bar-view:not(:last-child):after {
    content: "";
    width: calc(100% - 24px);
    position: absolute;
    right: calc(50% + 12px);
}

.bar-view:not(:last-child):before {
    height: 6px;
    top: calc(50% - 3px);
    background: var(--line-stroke);
}

.bar-view:not(:last-child):nth-child(2):after {
    transition-delay: 0s;
}

.bar-view:not(:last-child):nth-child(2) .bar-button:before {
    transition-delay: 0.06s;
}

.bar-view:not(:last-child):nth-child(4):after {
    transition-delay: 0.1s;
}

.bar-view:not(:last-child):nth-child(4) .bar-button:before {
    transition-delay: 0.16s;
}

.bar-view:not(:last-child):nth-child(6):after {
    transition-delay: 0.2s;
}

.bar-view:not(:last-child):nth-child(6) .bar-button:before {
    transition-delay: 0.26s;
}

.bar-view:not(:last-child):nth-child(8):after {
    transition-delay: 0.3s;
}

.bar-view:not(:last-child):nth-child(8) .bar-button:before {
    transition-delay: 0.36s;
}

.bar-view:not(:last-child):nth-child(10):after {
    transition-delay: 0.4s;
}

.bar-view:not(:last-child):nth-child(10) .bar-button:before {
    transition-delay: 0.46s;
}

.bar-view:not(:last-child):nth-child(12):after {
    transition-delay: 0.5s;
}

.bar-view:not(:last-child):nth-child(12) .bar-button:before {
    transition-delay: 0.56s;
}

.bar-view:not(:last-child):nth-child(14):after {
    transition-delay: 0.6s;
}

.bar-view:not(:last-child):nth-child(14) .bar-button:before {
    transition-delay: 0.66s;
}

.bar-view:not(:last-child):nth-child(16):after {
    transition-delay: 0.7s;
}

.bar-view:not(:last-child):nth-child(16) .bar-button:before {
    transition-delay: 0.76s;
}

.bar-view:not(:last-child):nth-child(18):after {
    transition-delay: 0.8s;
}

.bar-view:not(:last-child):nth-child(18) .bar-button:before {
    transition-delay: 0.86s;
}

.bar-view:not(:last-child):nth-child(20):after {
    transition-delay: 0.9s;
}

.bar-view:not(:last-child):nth-child(20) .bar-button:before {
    transition-delay: 0.96s;
}

.bar-button {
    display: block;
    width: 30px;
    height: 30px;
    margin: auto;
    border-radius: 50%;
    border: 3px solid var(--line-stroke);
    position: relative;
    cursor: pointer;
    box-shadow: inset 2px 2px 4px var(--box-shadow-inner), 2px 2px 8px var(--box-shadow-outer);
}

.bar-button:hover:after {
    transform: none;
    opacity: 1;
}

.bar-button:before,
.bar-button:after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.bar-button:before {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: radial-gradient(circle at center, var(--button-gradient-start), var(--button-gradient-end));
    transform: scale(0.3);
    opacity: 0;
    transition-property: transform, opacity;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0, 0.72, 0.58, 1);
}

.bar-button:after {
    border: 8px solid transparent;
    border-top-color: var(--tooltip-border-color);
    bottom: calc(100% + 10px);
    left: calc(50% - 8px);
    transform: translateY(-10px);
    opacity: 0;
    transition-property: transform, opacity;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0, 0, 0, 1.97);
}



@-webkit-keyframes bouncing {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }
}

@keyframes bouncing {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }
}

@-webkit-keyframes fade {
    50% {
        opacity: 0.3;
    }
}

@keyframes fade {
    50% {
        opacity: 0.3;
    }
}

.step-bar-input,
.bar-button {
    pointer-events: none;
}

.stepped-progress .message {
    min-height: 24px;
    text-align: center;
    color: var(--message-text);
}

.stepped-progress .message.text-main{
    color: var(--main);
}

.dataTables_wrapper .stepped-progress .bar {
    max-width: 400px !important;
    min-width: 250px;
}

@media(min-width: 970px) {
    .dataTables_wrapper .stepped-progress {
        margin-top: -18px;
    }
}
