
.spcustomprogressbar-horizontal ul.spcustomprogressbar {
    height: 75px;
    padding: 0;
    counter-reset: step;
    margin-top: 10px;
}
    .spcustomprogressbar-horizontal ul.spcustomprogressbar li {
        list-style-type: none;
        color: rgb(165,165,165);
        float: left;
        position: relative;
        text-align: center;
        font-size: 12px;
    }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li:before {
            content: counter(step);
            counter-increment: step;
            color: #333;
            width: 42px;
            height: 42px;
            line-height: 42px;
            border-radius: 50%;
            display: block;
            text-align: center;
            margin: 0 auto 10px auto;
            background: rgb(216,216,216);
        }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li:after {
            content: "";
            background: #ddd;
            position: absolute;
            width: 100%;
            height: 14px;
            top: 14px;
            right: -50%;
            z-index: -1;
        }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li:last-child:after {
            content: none;
        }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li.done:before, .spcustomprogressbar-horizontal ul.spcustomprogressbar li.done:after {
            background: rgb(21,219,158);
            color: #fff;
        }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li.current:before {
            background: rgb(104, 191, 250);
            color: #fff;
        }
        .spcustomprogressbar-horizontal ul.spcustomprogressbar li.fail:before {
            background: rgb(229, 48, 40)
        }

/*Vertical types*/

.spcustomprogressbar-vertical ul.spcustomprogressbar {
    height: 75px;
    padding: 0;
    counter-reset: step;
    margin-top: 10px;
}

    .spcustomprogressbar-vertical ul.spcustomprogressbar li {
        list-style-type: none;
        color: rgb(165,165,165);
        float: left;
        position: relative;
        text-align: center;
        font-size: 12px;
        width:100% !important;
    }
    .spcustomprogressbar-vertical ul.spcustomprogressbar li > span{
        margin-top: -32px;
        float: left;
        margin-left: 35px;
    }
        .spcustomprogressbar-vertical ul.spcustomprogressbar li:before {
            content: counter(step);
            counter-increment: step;
            color: #333;
            width: 25px;
            height: 25px;
            line-height: 25px;
            border-radius: 50%;
            display: block;
            text-align: center;
            margin-bottom: 10px;
            background: rgb(216,216,216);
        }

        .spcustomprogressbar-vertical ul.spcustomprogressbar li:after {
            content: "";
            background: #ddd;
            position: absolute;
            width: 10px;
            height: 100%;
            top: 14px;
            left: 8px;
            z-index: -1;
        }

        .spcustomprogressbar-vertical ul.spcustomprogressbar li:last-child:after {
            content: none;
        }

        .spcustomprogressbar-vertical ul.spcustomprogressbar li.done:before, .spcustomprogressbar-vertical ul.spcustomprogressbar li.done:after {
            background: rgb(21,219,158);
            color: #fff;
        }

        .spcustomprogressbar-vertical ul.spcustomprogressbar li.current:before {
            background: rgb(104, 191, 250);
            color: #fff;
        }

        .spcustomprogressbar-vertical ul.spcustomprogressbar li.fail:before {
            background: rgb(229, 48, 40)
        }