/* ============ APPLICATION TIMELINE (addendum, style.css stays unchanged) ============ */
.timeline-wrap {
  display: flex; flex-direction: column; gap: 0;
  position: relative;
  padding-left: var(--space-2);
}
.timeline-track {
  position: relative;
  margin-left: 9px;
  border-left: 2px solid var(--color-border);
  display: flex; flex-direction: column; gap: var(--space-6);
  padding: var(--space-2) 0;
}
.timeline-item { position: relative; padding-left: var(--space-6); }
.timeline-dot {
  position: absolute; left: -9px; top: 2px;
  width: 18px; height: 18px; border-radius: 50%;
  background: var(--color-surface); border: 3px solid var(--color-primary);
}
.timeline-item.is-past .timeline-dot { background: var(--color-primary); border-color: var(--color-primary); }
.timeline-item.is-now .timeline-dot {
  background: var(--color-warning); border-color: var(--color-warning);
  box-shadow: 0 0 0 4px var(--color-warning-highlight);
}
.timeline-date {
  font-family: var(--font-display); font-weight: 700; font-size: var(--text-sm);
  color: var(--color-primary); display: block; margin-bottom: var(--space-1);
}
.timeline-item.is-now .timeline-date { color: var(--color-warning); }
.timeline-item-head { display: flex; align-items: center; gap: var(--space-2); flex-wrap: wrap; margin-bottom: var(--space-1); }
.timeline-title { font-weight: 600; font-size: var(--text-sm); }
.timeline-desc { font-size: var(--text-sm); color: var(--color-text-muted); max-width: 62ch; }
.timeline-flag {
  font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .04em;
  padding: 2px var(--space-2); border-radius: var(--radius-full);
  background: var(--color-warning-highlight); color: var(--color-warning);
}
.timeline-flag.done { background: var(--color-success-highlight); color: var(--color-success); }

@media (max-width: 520px) {
  .timeline-track { margin-left: 6px; }
  .timeline-item { padding-left: var(--space-5); }
}

/* Footer attribution links (footer.attribution base rule lives, unchanged, in style.css) */
footer.attribution a { color: var(--color-primary); text-decoration: underline; text-underline-offset: 2px; }
footer.attribution a:hover { color: var(--color-primary-hover); }
