/* SmitScroll — оформление подгрузки списка прокруткой.
   Разметки почти нет: строка состояния под таблицей и невидимая метка, по
   которой браузер понимает, что человек дошёл до низа. */

.smit-scroll-sentinel {
  height: 1px;
  margin: 0;
}

.smit-scroll-status {
  min-height: 22px;
  padding: 10px 4px 4px;
  text-align: center;
  font-size: var(--sc-fz-sm, .82rem);
  color: var(--text-muted, #6c757d);
}

/* «Загружаю ещё…» — с крутящейся точкой, чтобы отличать ожидание от конца */
.smit-scroll-status.smit-scroll-busy::before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-right: 6px;
  vertical-align: -2px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  animation: smit-scroll-spin .7s linear infinite;
}

@keyframes smit-scroll-spin {
  to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
  .smit-scroll-status.smit-scroll-busy::before { animation-duration: 2.4s; }
}

/* Не загрузилось — говорим об этом словами и возвращаем номера страниц */
.smit-scroll-status.smit-scroll-error {
  color: var(--sc-danger, #b02a37);
}

/* Нумерация спрятана, пока прокрутка работает. Именно скрыта, а не удалена:
   при ошибке загрузки её возвращают на место. */
.smit-scroll-hidden {
  display: none !important;
}

/* Строки, до которых человек ещё не долистал в уже отрисованном списке */
.smit-scroll-row-hidden {
  display: none !important;
}
