/* Shared AJAX-only pagination: retain the theme's existing visual language. */
.pty-pagination button.page-numbers,
.pty-ed-pagination button.page-numbers,
.pty-page-links button.page-numbers,
.pty-comments-pagination button.page-numbers,
.pty-sp-pagelinks button.page-numbers {
	font: inherit;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
.pty-pagination button.page-numbers:hover,
.pty-ed-pagination button.page-numbers:hover,
.pty-page-links button.page-numbers:hover,
.pty-comments-pagination button.page-numbers:hover,
.pty-sp-pagelinks button.page-numbers:hover {
	border-color: var(--pty-brand-fg, currentColor);
}
[data-pty-ajax-results] { scroll-margin-top: 110px; }
[data-pty-ajax-results].is-loading { opacity: .67; cursor: progress; }
[data-pty-ajax-results]:focus { outline: none; }
[data-pty-ajax-results] button:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.pty-ajax-pagination-status {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}
@media (prefers-reduced-motion: reduce) {
	[data-pty-ajax-results] { scroll-behavior: auto; transition: none; }
}

.pty-comments-pagination { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin:1.5rem 0; }
.pty-comments-pagination .page-numbers { min-width:42px; min-height:42px; border:1px solid var(--pty-border); border-radius:8px; padding:6px 10px; }
.pty-comments-pagination .current { background:var(--pty-brand-fill); color:var(--pty-brand-ink); }

/* Small catalog pagination elements are now buttons, not links. */
.pty-lp-pagination button.pty-lp-page,
.pty-pa-pagination button.pty-pa-page,
.pty-lc-pagination button.pty-lc-page,
.pty-dsc-pagination button.pty-dsc-page { font: inherit; cursor: pointer; appearance: none; -webkit-appearance: none; }
