.gen-job-card.running .gen-progress span,
.gen-job-card.queued .gen-progress span {
  position: relative;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.18) 45%, rgba(255,255,255,.52) 52%, rgba(255,255,255,.18) 59%, rgba(255,255,255,0) 100%),
    linear-gradient(135deg, rgba(255,255,255,.10) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.10) 50%, rgba(255,255,255,.10) 75%, transparent 75%);
  background-size: 180px 100%, 24px 24px;
  animation: generator-progress-working 1.35s linear infinite;
}

.gen-job-card.running .gen-progress,
.gen-job-card.queued .gen-progress {
  box-shadow: inset 0 0 0 1px rgba(11, 23, 33, .03);
}

@keyframes generator-progress-working {
  from { background-position: -180px 0, 0 0; }
  to { background-position: 180px 0, 24px 0; }
}

@media (prefers-reduced-motion: reduce) {
  .gen-job-card.running .gen-progress span,
  .gen-job-card.queued .gen-progress span {
    animation: none;
    background-position: center, 0 0;
  }
}
