/* MuscleTurtle Timeline Builder 1.6.0 — one stylesheet for preview and published output. */
.mtb-timeline{
  --mtb-ink:#222;--mtb-muted:#666;--mtb-rule:#d0d0d0;
  --mtb-desktop-left:24%;--mtb-desktop-axis:9%;--mtb-mobile-left:24%;--mtb-mobile-axis:9%;
  --mtb-desktop-padding-left:0px;--mtb-desktop-padding-right:0px;
  --mtb-mobile-padding-left:0px;--mtb-mobile-padding-right:0px;
  --mtb-label-size:14px;--mtb-title-size:16px;--mtb-note-size:13px;
  --mtb-marker-width:14px;--mtb-marker-height:14px;
  --mtb-align-left:right;--mtb-align-right:left;
  width:100%;max-width:100%;margin:0;padding:0 var(--mtb-desktop-padding-right) 0 var(--mtb-desktop-padding-left);
  color:var(--mtb-ink);font-family:inherit;box-sizing:border-box;
}
.mtb-timeline *, .mtb-timeline *::before, .mtb-timeline *::after{box-sizing:border-box}
.mtb-heading{font-family:inherit;font-size:1.2em;font-weight:700;margin:0 0 18px;line-height:1.5}
.mtb-timeline .mtb-row{
  position:relative;display:grid;grid-template-columns:minmax(0,var(--mtb-desktop-left)) minmax(0,var(--mtb-desktop-axis)) minmax(0,1fr);
  min-height:55px;align-items:stretch;color:var(--mtb-event-ink,var(--mtb-ink));
  --mtb-current-offset-left:var(--mtb-offset-desktop-left,0px);
  --mtb-current-offset-right:var(--mtb-offset-desktop-right,0px);
}
.mtb-timeline .mtb-label{
  display:flex;flex-direction:column;justify-content:flex-start;min-width:0;
  padding:2px 8px 20px 0;margin:0;text-align:var(--mtb-align-left);
  font-size:var(--mtb-event-label-size,var(--mtb-label-size));line-height:1.55;
  overflow-wrap:anywhere;transform:translateY(var(--mtb-current-offset-left));
}
.mtb-timeline .mtb-axis{position:relative;display:flex;flex-direction:column;align-items:center;padding:2px 0 0;min-width:0}
.mtb-timeline.mtb-has-line .mtb-axis::before{
  content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--mtb-rule);transform:translateX(-50%);
}
.mtb-timeline.mtb-has-line .mtb-row:first-child .mtb-axis::before{top:calc(2px + var(--mtb-event-marker-height,var(--mtb-marker-height)) / 2)}
.mtb-timeline.mtb-has-line .mtb-row:last-child .mtb-axis::before{bottom:calc(100% - 2px - var(--mtb-event-marker-height,var(--mtb-marker-height)) / 2)}
.mtb-timeline .mtb-marker{
  position:relative;z-index:1;display:flex;align-items:center;justify-content:center;
  flex:0 0 auto;width:var(--mtb-event-marker-width,var(--mtb-marker-width));
  height:var(--mtb-event-marker-height,var(--mtb-marker-height));
  min-width:0;min-height:0;max-width:none;max-height:none;margin:0;padding:0;
  color:var(--mtb-event-ink,var(--mtb-ink));background:var(--mtb-axis-bg,#fff);
}
.mtb-timeline .mtb-dot{display:block;width:100%;height:100%;background:currentColor;border-radius:50%}
.mtb-timeline .mtb-marker-image{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;margin:0;padding:0;border:0}
.mtb-timeline .mtb-icon-svg{display:block;width:100%;height:100%;fill:currentColor}
.mtb-timeline .mtb-marker-label{color:var(--mtb-event-ink,var(--mtb-ink))}
.mtb-timeline .mtb-marker-inner-label{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  padding:3px;text-align:center;font-size:var(--mtb-event-marker-text-size,11px);
  color:var(--mtb-marker-text-color,#fff);line-height:1.1;overflow-wrap:anywhere;z-index:2;
}
.mtb-timeline .mtb-axis-label{
  position:relative;z-index:1;max-width:100%;margin-top:5px;padding:0 2px;
  font-size:var(--mtb-event-label-size,var(--mtb-label-size));line-height:1.35;
  text-align:center;overflow-wrap:anywhere;background:#fff;
}
.mtb-timeline .mtb-content{
  min-width:0;display:flex;flex-direction:column;justify-content:flex-start;
  padding:0 0 20px 8px;margin:0;text-align:var(--mtb-align-right);
  overflow-wrap:anywhere;transform:translateY(var(--mtb-current-offset-right));
}
.mtb-timeline .mtb-title{font-size:var(--mtb-event-title-size,var(--mtb-title-size));font-weight:700;line-height:1.55;color:inherit;margin:0;padding:0}
.mtb-timeline .mtb-title a{color:inherit;text-decoration:underline}
.mtb-timeline .mtb-note{font-size:var(--mtb-event-note-size,var(--mtb-note-size));font-weight:400;line-height:1.65;margin:5px 0 0;color:var(--mtb-muted);white-space:normal}
.mtb-timeline .mtb-double-left .mtb-title{font-size:var(--mtb-event-left-title-size,var(--mtb-event-title-size,var(--mtb-title-size)))}
.mtb-timeline.mtb-layout-double .mtb-axis-label{max-width:calc(100vw - 36px);min-width:max-content;overflow-wrap:normal;word-break:normal}
.mtb-timeline.mtb-layout-double .mtb-content{gap:8px}
.mtb-timeline .mtb-photo-wrap{min-width:0;border-radius:inherit;overflow:hidden}
.mtb-timeline .mtb-photo,.mtb-timeline .mtb-sample-photo{
  display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin:0;border:0;border-radius:inherit;
}
.mtb-timeline.mtb-ratio-16_9 .mtb-photo,.mtb-timeline.mtb-ratio-16_9 .mtb-sample-photo{aspect-ratio:16/9}
.mtb-timeline .mtb-sample-photo{display:flex;align-items:center;justify-content:center;background:#dedede;color:#555;font-size:12px}
.mtb-timeline.mtb-layout-article .mtb-content.mtb-has-photo{display:grid;grid-template-columns:minmax(0,43%) minmax(0,1fr);gap:12px}
.mtb-timeline.mtb-layout-article .mtb-text{min-width:0}
.mtb-timeline .mtb-row.mtb-valign-left-center .mtb-label{justify-content:center}
.mtb-timeline .mtb-row.mtb-valign-right-center .mtb-content{justify-content:center}
.mtb-timeline.mtb-layout-article .mtb-row.mtb-valign-right-center .mtb-content.mtb-has-photo{align-items:center}
.mtb-timeline.mtb-divider-solid .mtb-row:not(:last-child)::after,
.mtb-timeline.mtb-divider-dashed .mtb-row:not(:last-child)::after{
  content:"";position:absolute;bottom:0;left:0;right:0;border-bottom:1px solid #e4e4e4;pointer-events:none;
}
.mtb-timeline.mtb-divider-dashed .mtb-row:not(:last-child)::after{border-bottom-style:dashed}
.mtb-timeline.mtb-decoration-card .mtb-text,.mtb-timeline.mtb-decoration-balloon .mtb-text{
  position:relative;min-width:0;border:1px solid #d8d8d8;padding:12px 14px;margin:0 0 10px;background:#fff;
}
.mtb-timeline.mtb-decoration-card .mtb-text{border-radius:6px}
.mtb-timeline.mtb-decoration-balloon .mtb-text{border-radius:10px}
.mtb-timeline.mtb-decoration-balloon .mtb-text::before{
  content:"";position:absolute;left:-7px;top:15px;width:12px;height:12px;transform:rotate(45deg);
  border-left:1px solid #d8d8d8;border-bottom:1px solid #d8d8d8;background:#fff;
}
.mtb-timeline.mtb-layout-double.mtb-decoration-card .mtb-double-left,
.mtb-timeline.mtb-layout-double.mtb-decoration-balloon .mtb-double-left{
  position:relative;border:1px solid #d8d8d8;padding:12px 14px;margin:0 8px 14px 0;background:#fff;
}
.mtb-timeline.mtb-layout-double.mtb-decoration-card .mtb-double-left{border-radius:6px}
.mtb-timeline.mtb-layout-double.mtb-decoration-balloon .mtb-double-left{border-radius:10px}
.mtb-timeline.mtb-layout-double.mtb-decoration-balloon .mtb-double-left::after{
  content:"";position:absolute;right:-7px;top:15px;width:12px;height:12px;transform:rotate(45deg);
  border-right:1px solid #d8d8d8;border-top:1px solid #d8d8d8;background:#fff;
}
@media(max-width:600px){
  .mtb-timeline{padding-left:var(--mtb-mobile-padding-left);padding-right:var(--mtb-mobile-padding-right)}
  .mtb-timeline .mtb-row{grid-template-columns:minmax(0,var(--mtb-mobile-left)) minmax(0,var(--mtb-mobile-axis)) minmax(0,1fr);--mtb-current-offset-left:var(--mtb-offset-mobile-left,var(--mtb-offset-desktop-left,0px));--mtb-current-offset-right:var(--mtb-offset-mobile-right,var(--mtb-offset-desktop-right,0px))}
  .mtb-timeline .mtb-content{padding-left:5px}.mtb-timeline .mtb-label{padding-right:5px}
  .mtb-timeline.mtb-layout-article .mtb-content.mtb-has-photo{display:flex;flex-direction:column;align-items:stretch;gap:8px}
}
/* Admin preview emulates a narrow viewport independently of the browser width. */
.mtb-preview-sim-mobile .mtb-timeline{padding-left:var(--mtb-mobile-padding-left);padding-right:var(--mtb-mobile-padding-right)}
.mtb-preview-sim-mobile .mtb-timeline .mtb-row{
  grid-template-columns:minmax(0,var(--mtb-mobile-left)) minmax(0,var(--mtb-mobile-axis)) minmax(0,1fr);
  --mtb-current-offset-left:var(--mtb-offset-mobile-left,var(--mtb-offset-desktop-left,0px));
  --mtb-current-offset-right:var(--mtb-offset-mobile-right,var(--mtb-offset-desktop-right,0px));
}
.mtb-preview-sim-mobile .mtb-timeline .mtb-content{padding-left:5px}
.mtb-preview-sim-mobile .mtb-timeline .mtb-label{padding-right:5px}
.mtb-preview-sim-mobile .mtb-timeline.mtb-layout-article .mtb-content.mtb-has-photo{display:flex;flex-direction:column;align-items:stretch;gap:8px}

/* An unused side in the two-sided layout remains a column, not an empty card. */
.mtb-timeline .mtb-text-empty{display:none!important}
.mtb-timeline.mtb-layout-double .mtb-side-empty{border:0!important;background:transparent!important;padding:0!important;margin:0!important}
.mtb-timeline.mtb-layout-double .mtb-side-empty::after{display:none!important}
/* The left card must fit its content, not stretch to the height of a photo on the right. */
.mtb-timeline.mtb-layout-double.mtb-decoration-card .mtb-double-left,
.mtb-timeline.mtb-layout-double.mtb-decoration-balloon .mtb-double-left{align-self:start}
.mtb-timeline.mtb-layout-double .mtb-row.mtb-valign-left-center .mtb-double-left{align-self:center}

.mtb-timeline.mtb-layout-article .mtb-content.mtb-photo-only{display:block}
