/* Actual activity, not a fabricated percentage. Native progress stays accessible. */
.progress progress.track {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden;
  clip-path: inset(50%);
}
.activity-track {
  height: 7px;
  margin: 16px 0 20px;
  overflow: hidden;
  border-radius: 7px;
  background: var(--panel2);
}
.activity-track span {
  display: block;
  width: 32%;
  height: 100%;
  border-radius: inherit;
  background: var(--accent);
  animation: lecture-activity 1.7s ease-in-out infinite;
}
.activity-track.complete span { width: 100%; animation: none; transform: none; }
.activity-track.waiting span { animation: none; width: 100%; opacity: .45; }
.progress.waiting .stage.active .node { animation: none; }
.page-hidden .activity-track span { animation-play-state: paused; }
@keyframes lecture-activity {
  from { transform: translateX(-100%); }
  to { transform: translateX(320%); }
}
@media (prefers-reduced-motion: reduce) {
  .activity-track span { animation: none; width: 100%; opacity: .65; }
  .activity-track.complete span { opacity: 1; }
}
