/* Pagy pagination */
.pagy.nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-md);
}

.pagy.nav > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 40px;
  padding: var(--space-xs) var(--space-sm);
  font-size: var(--text-sm);
  font-weight: var(--font-medium);
  font-variant-numeric: tabular-nums;
  border-radius: var(--radius-md);
  color: var(--text-muted);
  background: var(--surface-2);
  border: none;
  transition: background var(--transition-fast),
              color var(--transition-fast),
              transform var(--transition-fast);
}

.pagy.nav > a[href]:hover {
  color: var(--text);
  background: var(--surface-3);
}

.pagy.nav > a[href]:active {
  transform: scale(0.96);
}

/* Current page */
.pagy.nav > a.current {
  background: var(--accent);
  color: var(--bg);
  font-weight: var(--font-semibold);
}

/* Disabled prev/next */
.pagy.nav > a[aria-disabled="true"]:not(.current):not(.gap) {
  color: var(--text-faint);
  background: var(--surface);
  opacity: 0.5;
  cursor: default;
}

/* Gap (ellipsis) */
.pagy.nav > a.gap {
  color: var(--text-faint);
  min-width: auto;
  padding: 0 var(--space-xs);
  border: none;
  background: none;
}

@media (max-width: 768px) {
  .pagy.nav {
    position: sticky;
    top: 0;
    z-index: var(--z-dropdown);
    background: var(--bg);
    border-bottom: 1px solid var(--border);
    margin: 0 calc(-1 * var(--space-lg));
    padding: var(--space-sm) var(--space-lg);
  }

  .pagy.nav > a {
    min-width: 44px;
    min-height: 44px;
  }
}
