.infinite-scroll {
  position: relative; display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: 12px; min-height: 64px; margin: 24px 0 12px;
  padding: 14px 8px; color: var(--text-faint, #8a8e97); font-size: 11px;
}
.infinite-scroll[hidden], .infinite-scroll [hidden] { display: none !important; }
.infinite-scroll-sentinel { position: absolute; top: 0; left: 0; width: 1px; height: 1px; pointer-events: none; }
.infinite-scroll-status { line-height: 1.5; text-align: center; }
.infinite-scroll .infinite-scroll-more {
  border: 1px solid rgb(255 255 255 / .1); border-radius: 999px;
  background: rgb(255 255 255 / .025); color: var(--text-muted, #a9abb1);
  padding: 9px 16px; min-height: 40px; font: inherit; cursor: pointer;
  transition: border-color 180ms ease, box-shadow 180ms ease, color 180ms ease;
}
.infinite-scroll .infinite-scroll-more:is(:hover,:focus-visible) {
  outline: none; border-color: rgb(227 19 50 / .65); color: var(--text, #f2efe8);
  box-shadow: 0 0 18px rgb(227 19 50 / .13);
}
.infinite-scroll .infinite-scroll-more:is(:disabled,[aria-disabled="true"]) { cursor: progress; opacity: .5; }
.infinite-scroll-spinner {
  flex: 0 0 16px; width: 16px; height: 16px; border: 1px solid rgb(227 19 50 / .16);
  border-top-color: var(--accent, #e31332); border-radius: 50%;
  filter: drop-shadow(0 0 4px rgb(227 19 50 / .25)); animation: infinite-scroll-turn 800ms linear infinite;
}
@keyframes infinite-scroll-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .infinite-scroll-spinner { animation: none; border-color: var(--accent, #e31332); }
  .infinite-scroll .infinite-scroll-more { transition: none; }
}
