/*!
 * Themeasy — Timeline
 *
 * Vertical, alternating timeline of dated events. Each item renders a card on
 * one side and a date pill on the other, joined by a central connector line and
 * an icon node. Two skins (Material shadow / Outline bold). Entrance motion is
 * driven by the shared on-view animation runtime; layout is pure CSS, so the
 * widget is fully visible and usable with no JS and under reduced motion.
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.tms-timeline{--tms-timeline-line-width:4px;--tms-timeline-node-size:calc(2 * var(--tms-timeline-icon-size,1.25rem));position:relative}.tms-timeline.tms-timeline--outline{--tms-timeline-line-width:2px}.tms-timeline .tms-timeline__item{justify-content:space-between;align-items:flex-start;width:100%;margin:3rem 0;display:flex;position:relative}.tms-timeline .tms-timeline__item:before{content:"";top:0;left:calc(50% - var(--tms-timeline-line-width,4px) / 2);width:var(--tms-timeline-line-width,4px);background-color:var(--tms-border-color,#e5e7eb);height:calc(100% + 5rem);position:absolute}.tms-timeline .tms-timeline__item:first-child{margin-top:0}.tms-timeline .tms-timeline__item:last-child{margin-bottom:0}.tms-timeline .tms-timeline__item:last-child:before{content:none}.tms-timeline .tms-timeline__item .tms-timeline__content{width:calc(50% - var(--tms-timeline-line-width,4px) / 2 - 3rem);margin-left:0;margin-right:3rem;position:relative}.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content:first-child{order:2;margin-left:3rem;margin-right:0}.tms-timeline .tms-timeline__item .tms-timeline__content.tms-timeline__content--date{height:var(--tms-timeline-node-size,2.5rem);justify-content:flex-start;align-items:center;padding:0;display:flex}.tms-timeline .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date{margin-left:3rem;margin-right:0}.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{justify-content:flex-end;margin-left:0;margin-right:3rem}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-card{border-radius:var(--tms-radius-md,1rem);background:var(--tms-bg-color,#fff);padding:2.75rem;box-shadow:0 10px 10px #0000000d}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-card__body{padding:0}.tms-timeline.tms-timeline--outline .tms-timeline__item .tms-timeline__content .tms-card{border:2px solid;border-color:var(--tms-border-color,#e5e7eb);border-radius:var(--tms-radius-sm,.25rem);box-shadow:none;background:0 0}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon{z-index:1;right:auto;left:calc(-3rem - var(--tms-timeline-line-width,4px) / 2 - var(--tms-timeline-node-size,2.5rem) / 2);width:var(--tms-timeline-node-size,2.5rem);height:var(--tms-timeline-node-size,2.5rem);background-color:var(--tms-primary-color,#4f46e5);font-size:var(--tms-timeline-icon-size,1.25rem);color:var(--tms-white-color,#fff);border-radius:50%;justify-content:center;align-items:center;transition:background-color .3s,color .3s;display:flex;position:absolute}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon svg{fill:currentColor;width:1em;height:1em}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon svg[fill=none]{fill:none;stroke:currentColor}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon img{width:1em;height:1em}.tms-timeline.tms-timeline--outline .tms-timeline__item .tms-timeline__content .tms-timeline__icon{border-radius:var(--tms-radius-sm,.25rem);background-color:var(--tms-button-bg-color,#111827);color:var(--tms-button-text-color,#fff)}.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content .tms-timeline__icon{right:calc(-3rem - var(--tms-timeline-line-width,4px) / 2 - var(--tms-timeline-node-size,2.5rem) / 2);left:auto}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__date{border-radius:var(--tms-radius-pill,100px);background:var(--tms-bg-color,#fff);font-family:var(--tms-heading-font);font-size:85%;font-weight:var(--tms-semibold-font-weight,600);color:var(--tms-heading-color,#111827);justify-content:center;align-items:center;margin-top:0;margin-bottom:0;padding:10px 20px;display:flex;box-shadow:0 10px 10px #0000000d}.tms-timeline.tms-timeline--outline .tms-timeline__item .tms-timeline__content .tms-timeline__date{box-shadow:none;border-radius:0;padding:0;background:0 0!important}.tms-timeline.tms-timeline--left,.tms-timeline.tms-timeline--right{--tms-timeline-gutter:calc(var(--tms-timeline-node-size,2.5rem) + 3rem)}.tms-timeline.tms-timeline--left .tms-timeline__item,.tms-timeline.tms-timeline--right .tms-timeline__item{flex-direction:column;gap:.75rem}.tms-timeline.tms-timeline--left .tms-timeline__item:before{right:auto;left:calc(var(--tms-timeline-node-size,2.5rem) / 2 - var(--tms-timeline-line-width,4px) / 2)}.tms-timeline.tms-timeline--right .tms-timeline__item:before{right:calc(var(--tms-timeline-node-size,2.5rem) / 2 - var(--tms-timeline-line-width,4px) / 2);left:auto}.tms-timeline.tms-timeline--left .tms-timeline__item:before,.tms-timeline.tms-timeline--right .tms-timeline__item:before{height:calc(100% + 3rem + var(--tms-timeline-node-size,2.5rem) / 2)}.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(odd) .tms-timeline__content,.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(2n) .tms-timeline__content{width:calc(100% - var(--tms-timeline-gutter));margin-right:0;margin-left:var(--tms-timeline-gutter);order:0}.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(odd) .tms-timeline__content,.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(2n) .tms-timeline__content{width:calc(100% - var(--tms-timeline-gutter));margin-right:var(--tms-timeline-gutter);order:0;margin-left:0}.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date,.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{margin-right:0;margin-left:var(--tms-timeline-gutter);order:-1;justify-content:flex-start}.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date,.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{margin-right:var(--tms-timeline-gutter);order:-1;justify-content:flex-end;margin-left:0}.tms-timeline.tms-timeline--left .tms-timeline__item .tms-timeline__content .tms-timeline__icon{right:auto;left:calc(-1 * var(--tms-timeline-gutter))}.tms-timeline.tms-timeline--right .tms-timeline__item .tms-timeline__content .tms-timeline__icon{right:calc(-1 * var(--tms-timeline-gutter));left:auto}@media (max-width:767px){.tms-timeline .tms-timeline__item{flex-direction:column;gap:5px}.tms-timeline .tms-timeline__item:before{top:15px}.tms-timeline.tms-timeline--outline .tms-timeline__item:before{content:none}.tms-timeline .tms-timeline__item .tms-timeline__content{width:100%;margin-right:0}.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content:first-child{margin-left:0}.tms-timeline .tms-timeline__item .tms-timeline__content.tms-timeline__content--date,.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{z-index:2;order:-1;justify-content:center;position:relative}.tms-timeline .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date{order:-1;margin-left:0;margin-right:0}.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon,.tms-timeline .tms-timeline__item:nth-child(2n) .tms-timeline__content .tms-timeline__icon{position:absolute;top:25px;left:auto;right:10px}.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(odd) .tms-timeline__content,.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(2n) .tms-timeline__content{margin-left:var(--tms-timeline-gutter)}.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(odd) .tms-timeline__content,.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(2n) .tms-timeline__content{margin-right:var(--tms-timeline-gutter)}.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date,.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{margin-left:var(--tms-timeline-gutter);justify-content:flex-start}.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(odd) .tms-timeline__content.tms-timeline__content--date,.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(2n) .tms-timeline__content.tms-timeline__content--date{margin-right:var(--tms-timeline-gutter);justify-content:flex-end}.tms-timeline.tms-timeline--left .tms-timeline__item:before,.tms-timeline.tms-timeline--right .tms-timeline__item:before{top:0}.tms-timeline.tms-timeline--outline.tms-timeline--left .tms-timeline__item:not(:last-child):before,.tms-timeline.tms-timeline--outline.tms-timeline--right .tms-timeline__item:not(:last-child):before{content:""}.tms-timeline.tms-timeline--left .tms-timeline__item .tms-timeline__content .tms-timeline__icon,.tms-timeline.tms-timeline--left .tms-timeline__item:nth-child(2n) .tms-timeline__content .tms-timeline__icon{top:auto;right:auto;left:calc(-1 * var(--tms-timeline-gutter))}.tms-timeline.tms-timeline--right .tms-timeline__item .tms-timeline__content .tms-timeline__icon,.tms-timeline.tms-timeline--right .tms-timeline__item:nth-child(2n) .tms-timeline__content .tms-timeline__icon{top:auto;right:calc(-1 * var(--tms-timeline-gutter));left:auto}}@media (prefers-reduced-motion:reduce){.tms-timeline .tms-timeline__item .tms-timeline__content .tms-timeline__icon{transition:none}}