.timeline {
  display: flex;
  align-items: center;
  gap: 3px;
}

.timeline__date {
  padding: 3px 10px 3px 0;
  color: #94a3b8;
  font-family: 'Fredoka', sans-serif;
  font-size: 12px;
  font-weight: 400;
  white-space: nowrap;
  border-right: 2px solid #333;
  margin-right: 4px;
}

.timeline__separator { display: none; }

.timeline__step {
  padding: 4px 11px;
  border: 2px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #94a3b8;
  font-family: 'Fredoka', sans-serif;
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: background .12s, color .12s, border-color .12s, box-shadow .12s, transform .1s;
  white-space: nowrap;
}
.timeline__step:hover {
  background: #1e3a5f;
  color: #f1f5f9;
  border-color: #334155;
}
.timeline__step--active {
  background: #0ea5e9;
  color: #fff;
  border: 2px solid #000;
  box-shadow: 2px 2px 0px #000;
  font-weight: 600;
}

@media (max-width: 480px) {
  .timeline__step  { padding: 4px 7px; font-size: 11px; }
  .timeline__date  { display: none; }
}
