/***********************************************************************************************************************

    Timeline
    
 **********************************************************************************************************************/

/* Timeline holder */
ul.timeline {
    list-style-type: none;
    position: relative;
    padding-left: 1.5rem;
}

/* Timeline vertical line */
ul.timeline:before {
    content: ' ';
    background: #042859;
    display: inline-block;
    position: absolute;
    left: 16px;
    width: 4px;
    height: 100%;
    z-index: 400;
    border-radius: 1rem;
    border: 1px solid rgba(0, 0, 0, .125);
}

li.timeline-item {
    margin: 20px 0;
    border: 1px solid rgba(0, 0, 0, .125);
}

/* Timeline item arrow */
.timeline-arrow {
    border-top: 0.5rem solid transparent;
    border-right: 0.5rem solid rgba(0, 0, 0, .125);
    border-bottom: 0.5rem solid transparent;
    display: block;
    position: absolute;
    left: 2rem;
}

/* Timeline item circle marker */
li.timeline-item::before {
    content: ' ';
    background: #f8f9fa;
    display: inline-block;
    position: absolute;
    border-radius: 50%;
    border: 3px solid #042859;
    left: 11px;
    width: 14px;
    height: 14px;
    z-index: 400;
}

/* Timeline item circle marker */
li.timeline-item-start::before {
    content: ' ';
    background: #f8f9fa;
    display: inline-block;
    position: absolute;
    border-radius: 50%;
    border: 3px solid #198754;
    left: 11px;
    width: 14px;
    height: 14px;
    z-index: 400;
}

/* Timeline item circle marker */
li.timeline-item-finish::before {
    content: ' ';
    background: #f8f9fa;
    display: inline-block;
    position: absolute;
    border-radius: 50%;
    border: 3px solid #dc3545;
    left: 11px;
    width: 14px;
    height: 14px;
    z-index: 400;
}