/* ================================================================
   Pagination — Pagy (series_nav + info_tag)
   Used by: dashboard visitors, public feedbacks index
   ================================================================ */

.pagy.series-nav {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.375rem;
}

.pagy.series-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 34px;
  padding: 0 0.625rem;
  border-radius: 8px;
  background: #1c1c21;
  border: 1px solid #34343b;
  color: #d4d4d8;
  font-size: 0.8125rem;
  font-weight: 500;
  text-decoration: none;
  box-sizing: border-box;
  transition: background-color 0.15s, border-color 0.15s, color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.pagy.series-nav a:hover:not([aria-disabled="true"]) {
  background: #3a3a41;
  border-color: #52525b;
  color: #f4f4f5;
  transform: translateY(-1px);
}

.pagy.series-nav a:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.35);
}

/* Disabled prev/next at the ends.
   NOTE: the current page anchor also carries aria-disabled="true", so it is
   explicitly excluded here and styled by the [aria-current="page"] rule below. */
.pagy.series-nav a[aria-disabled="true"]:not([aria-current="page"]) {
  background: transparent;
  border-color: transparent;
  color: #4b4b52;
  cursor: default;
  box-shadow: none;
  transform: none;
}

/* Current page */
.pagy.series-nav a[aria-current="page"] {
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border-color: transparent;
  color: #ffffff;
  font-weight: 600;
  box-shadow: 0 4px 12px -4px rgba(99, 102, 241, 0.6);
}

.pagy.series-nav a[aria-current="page"]:hover {
  background: linear-gradient(135deg, #6366f1, #8b5cf6);
  border-color: transparent;
  color: #ffffff;
}

/* Gap separator (e.g. "…") */
.pagy.series-nav a[role="separator"] {
  background: transparent;
  border-color: transparent;
  color: #5c5c64;
  cursor: default;
  box-shadow: none;
  transform: none;
}

/* "Displaying items X–Y of Z in total" */
.pagy.info {
  display: block;
  color: #8b8b93;
  font-size: 0.8125rem;
  font-weight: 500;
}

/* ---------- Placement inside a dashboard card (visitors) ---------- */
.dashboard-card > .pagy.series-nav {
  padding: 1rem 1.375rem 0.625rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.dashboard-card > .pagy.info {
  padding: 0.625rem 1.375rem 0.875rem;
  margin: 0;
}
