/* Vertical Display */

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps {
    list-style: none;
    padding: 0;
    margin: 30px auto;
    position: relative;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li{
    position: relative;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li:not(:last-child)::after {
    content: '';
    position: absolute;
    left: 20px;
    top: 40px;
    height: 100%;
    width: 2px;
    background-color: #797979;
    z-index: 0;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.active:not(:last-child)::after {
    background-color: #2db36f;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li {
    position: relative;
    padding-left: 50px;
    margin-bottom: 40px;
    font-family: 'Roboto', sans-serif;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps .circle::before {
    content: '✔';
    position: absolute;
    left: 0;
    top: 0;
    width: 40px;
    height: 40px;
    background-color: #fff;
    border: 2px solid #797979;
    border-radius: 50%;
    line-height: 40px;
    text-align: center;
    font-size: 18px;
    color: #797979;
    z-index: 1;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.active .circle::before {
    content: '✔';
    background-color: #2db36f;
    border-color: #2db36f;
    color: #fff;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.asp-oa-step-rejected .circle::before{
    content: "×";
    font-size: 28px;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.asp-oa-step-expired .circle::before {
    content: "!";
    font-size: 28px;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.active .circle::before {
    background-color: #2db36f;
    border-color: #2db36f;
    color: #fff;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.asp-oa-step-rejected.active .circle::before,
.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.asp-oa-step-expired.active .circle::before{
    border-color: #FF0000;
    background-color: #FF0000;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps .text strong {
    font-size: 14px;
    color: #797979;
    font-weight: 600;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.active .text strong {
    color: #2db36f;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps .text p {
    font-size: 11px;
    font-weight: 500;
    color: #797979;
    margin: 5px 0 0;
    line-height: 1.4;
}

.asp-oa-order-approval-progress-vertical .asp-oa-progress-steps li.active .text p {
    color: #2db36f;
}

/* Horizontal Display */


.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps {
    margin: 2em 0 30px 0;
    padding: 0;
    display: flex;
    justify-content: center;
    list-style-type: none;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li {
    position: relative;
    width: 33.33%;
    text-align: center;
    font-family: 'Roboto', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #797979;
}

/* Connector line */
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #797979;
    top: 20px;
    left: -50%;
    z-index: -1;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li:first-child::after {
    content: none;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.active::after {
    background-color: #2db36f;
}

/* Circle */
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li::before {
    content: '✔';
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 auto 10px auto;
    line-height: 40px;
    font-size: 18px;
    border-radius: 50%;
    border: 2px solid #797979;
    background-color: #fff;
    color: #797979;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.asp-oa-step-rejected::before {
    content: "×";
    font-size: 28px;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.asp-oa-step-expired::before {
    content: "!";
    font-size: 28px;
}

/* Active circles */
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.active::before {
    background-color: #2db36f;
    border-color: #2db36f;
    color: #fff;
}

.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.asp-oa-step-rejected.active::before,
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.asp-oa-step-expired.active::before{
    border-color: #FF0000;
    background-color: #FF0000;
}

/* Time text */
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li p {
    font-size: 12px;
    font-weight: 500;
    color: #797979;
    margin-top: 5px;
    line-height: 1.6;
}

/* Active time text */
.asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li.active p {
    color: #2db36f;
}

@media screen and (max-width: 768px) {
    .asp-oa-order-approval-progress-horizontal .asp-oa-progress-steps li{
        font-size: 10px;
    }
}