/* RS Timeline v1.1.1: responsive collision-safe markers, with bounded line extensions. */
/* RS Timeline v1.0, shared visual geometry, token based. */
.rs-timeline__scroll{overflow-x:auto;overflow-y:hidden;padding:1rem 0 .5rem;scrollbar-width:thin}
.rs-timeline__track{display:grid;grid-template-columns:repeat(var(--rs-timeline-columns),minmax(120px,1fr));min-width:max(100%,calc(var(--rs-timeline-columns) * 120px));position:relative;align-items:start}
.rs-timeline__line{position:absolute;top:52px;left:calc(50% / var(--rs-timeline-columns) - 16px);right:calc(50% / var(--rs-timeline-columns) - 16px);height:3px;border-radius:3px;background:var(--rs-border-strong,#46525e);z-index:0;pointer-events:none}
.rs-timeline .rs-timeline__event{position:relative;z-index:1;display:grid;grid-template-rows:24px 56px minmax(25px,auto) auto;justify-items:center;align-items:center;gap:0;min-width:0;min-height:105px;width:100%;margin:0;padding:0 5px;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;cursor:pointer;font:inherit;appearance:none;line-height:normal;transition:none}
.rs-timeline__label{grid-row:1;font-size:.76rem;line-height:1.1;white-space:nowrap}
.rs-timeline__dot{grid-row:2;display:block;box-sizing:border-box;width:min(var(--rs-timeline-dot,18px),calc(100% - 24px),38px);height:min(var(--rs-timeline-dot,18px),calc(100% - 24px),38px);flex:none;border:3px solid var(--rs-surface-1,#10171b);border-radius:50%;background:var(--rs-info,#79a9d7);box-shadow:0 0 0 1px var(--rs-border-strong,#647788);align-self:center;justify-self:center}
.rs-timeline__count{grid-row:3;font-size:.76rem;white-space:nowrap}
.rs-timeline__breakdown{grid-row:4;font-size:.68rem;text-align:center}
.rs-timeline .rs-timeline__event:disabled{opacity:.5;cursor:default}
.rs-timeline__event:disabled .rs-timeline__dot{width:8px;height:8px;background:var(--rs-surface-1,#10171b)}
.rs-timeline .rs-timeline__event[aria-expanded=true] .rs-timeline__dot{background:var(--rs-text-primary,#fff);box-shadow:0 0 0 3px var(--rs-info,#79a9d7)}
.rs-timeline .rs-timeline__event:focus-visible{outline:2px solid var(--rs-border-focus,#86c9ff);outline-offset:-2px}
.rs-timeline__detail[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.rs-timeline__event,.rs-timeline__dot{transition:none}}

/* Never let a marker exceed its grid cell, including narrow embedded layouts.
   Each period has at least 120px of track width; narrower viewports scroll.
   Long labels and breakdowns wrap within their own period rather than overlap. */
.rs-timeline .rs-timeline__event{box-sizing:border-box;max-width:100%;overflow:visible}
.rs-timeline__label,.rs-timeline__count,.rs-timeline__breakdown{box-sizing:border-box;max-width:100%;overflow-wrap:anywhere;text-align:center}
.rs-timeline__breakdown{white-space:normal}
.rs-timeline__dot{max-width:calc(100% - 24px);max-height:38px;aspect-ratio:1}

/* Track has a 120px minimum cell width, so 16px end extensions remain within the track. */
