.catalog-page { min-height: 65vh; }
.catalog-scroll-status {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  margin: 24px auto 12px;
  color: var(--muted);
  font-size: 12px;
  text-align: center;
}
.catalog-scroll-indicator {
  display: inline-grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--accent);
  background: color-mix(in srgb, var(--accent) 8%, var(--panel));
  font-size: 13px;
}
.catalog-scroll-status[aria-busy="true"] .catalog-scroll-indicator { animation: catalog-loading 1.1s linear infinite; }
.catalog-retry { min-height: 34px; padding: 6px 11px; font-size: 11px; }
.catalog-card-enter { animation: catalog-card-arrive .28s ease both; }
@keyframes catalog-loading { to { transform: rotate(360deg); } }
@keyframes catalog-card-arrive { from { opacity: 0; transform: translateY(9px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) {
  .catalog-card-enter, .catalog-scroll-status[aria-busy="true"] .catalog-scroll-indicator { animation: none; }
}
