| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265 | /* ========================================================================     Component: timeline ========================================================================== */$timeline-badge-size : 36px;$timeline-datetime-height : 20px;$timeline-separator-width : 120px;// Timeline container// --------------------------------.timeline,.timeline-alt {    list-style: none;    padding: 0 0 20px;    position: relative;    z-index: 0; // Timeline central line    @include clearfix();    &:before {        position: absolute;        top: 0;        bottom: 0;        content: " ";        width: 1px;        background-color: #d1d2d3;        left: $timeline-badge-size / 2;    } // clear all float element using a last item    .timeline-end {        float: none;        clear: both;    } // change popover default colors to use no title    .popover {        &.left>.arrow:after {            border-left-color: #fff;        }        &.right>.arrow:after {            border-right-color: #fff;        } // but restore the color if we use a title        &.left>.popover-title+.arrow:after {            border-left-color: $popover-arrow-color;        }        &.right>.popover-title+.arrow:after {            border-right-color: $popover-arrow-color;        }    } // Timeline list itmes    // --------------------------------    >li {        @include clearfix();        margin-bottom: 20px;        &.timeline-separator {            position: relative;            float: none;            clear: both;            margin: 0 auto;            padding: 40px 0;            &:first-child {                padding-top: 0;            }            &:before {                content: attr(data-datetime);                display: inline-block;                width: $timeline-separator-width;                text-align: center;                padding: 0 20px;                line-height: 30px;                background-color: #b6c5da;                color: #fff;            }        }    } // Timeline card    // --------------------------------    >li>.timeline-card {        margin-left: $timeline-separator-width / 2; // Popover inside timeline cards        .popover {            position: relative;            display: block;            margin: 0;            width: 100%;            max-width: none;            .arrow {                top: $timeline-badge-size/2;                display: none;            }            .popover-content {                .popover-title {                    background-color: transparent;                    border: 0;                    padding-left: 0;                    padding-top: 0;                }            }        }    } // Timeline Date    // --------------------------------    >li>.timeline-date {        margin: -$timeline-datetime-height 0 0;        display: block;        height: $timeline-datetime-height;        line-height: $timeline-datetime-height;        font-size: 13px;        >time {            &:after {                content: attr(datetime);            }        }    } // Timeline badges    // --------------------------------    >li>.timeline-badge {        position: absolute;        left: 0;        width: $timeline-badge-size;        height: $timeline-badge-size;        border-radius: 500px;        line-height: $timeline-badge-size;        font-size: 1em;        text-align: center;        color: #fff;        background-color: #999;        z-index: 100; // Color variants        &.primary {            background-color: $primary;        }        &.success {            background-color: $success;        }        &.warning {            background-color: $warning;        }        &.danger {            background-color: $danger;        }        &.info {            background-color: $info;        }        &.inverse {            background-color: $inverse;        }        &.green {            background-color: $green;        }        &.pink {            background-color: $pink;        }        &.purple {            background-color: $purple;        }        &.dark {            background-color: $dark;        }        &.yellow {            background-color: $yellow;        }    }}.timeline-alt {    .popover .arrow {        display: block !important;    }}// Timeline title// --------------------------------.timeline-title {    margin-top: 0;    color: inherit;}// Timeline Body// --------------------------------.timeline-body>p,.timeline-body>ul {    margin-bottom: 0;}.timeline-body>p+p {    margin-top: 5px;}// Timeline for Desktops// --------------------------------@include media-breakpoint-up(lg) {    .timeline {        &:before {            left: 50%;            margin-left: ($timeline-badge-size/2);        }        >li {            float: left;            clear: left;            width: 45%;            &.timeline-inverted {                float: right;                clear: right;                margin-top: 50px;            }        }        >li.timeline-separator {            text-align: center;            &:before {                margin-left: ($timeline-badge-size);            }        }        >li>.timeline-badge {            left: 50%;            margin-left: 0;        }        >li>.timeline-date {            float: none;            position: absolute;            width: 40%;            left: 50%;            top: $timeline-badge-size / 2;            margin-left: $timeline-badge-size * 1.5;            margin-top: -($timeline-datetime-height/2);        }        >li>.timeline-card {            margin: 0;            &:before {                border-left-width: 15px;                border-right-width: 0;                top: 26px;                right: -15px;                left: auto;            }            &:after {                border-left-width: 14px;                border-right-width: 0;                top: 27px;                right: -14px;                left: auto;            }            .popover .arrow {                display: block;            }        } // Timeline inverted        // --------------------------------        >li.timeline-inverted {            >.timeline-card {                padding-left: $timeline-badge-size;            }            .timeline-date {                left: auto;                right: 50%;                width: auto;                margin-left: 0;                margin-right: $timeline-badge-size;            }        }    }}
 |