/**
 * SSF Toegankelijke Paginering
 * Brand colors: orange #EB5E1C, dark blue #181830.
 */

.ssf-pagination {
	clear: both;
	width: 100%;
	margin: 2rem 0 3rem;
}

.ssf-pagination .ssf-pagination__links,
.ssf-pagination .nav-links,
.ssf-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}

.ssf-pagination ul.page-numbers {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ssf-pagination .ssf-pagination__slot {
	margin: 0;
	padding: 0;
	list-style: none;
}

body .ssf-pagination .page-numbers.ssf-pagination__item {
	box-sizing: border-box;
	display: inline-flex;
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	padding: 0.625rem 0.875rem;
	border: 2px solid #181830;
	border-radius: 1.3125rem;
	background: #fff;
	color: #181830;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
}

body .ssf-pagination a.page-numbers.ssf-pagination__item:hover {
	border-color: #eb5e1c;
	background: #eb5e1c;
	box-shadow: inset 0 0 0 1px #181830;
	color: #181830;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

body .ssf-pagination a.page-numbers.ssf-pagination__item:focus,
body .ssf-pagination a.page-numbers.ssf-pagination__item:focus-visible {
	outline: 3px solid #181830;
	outline-offset: 3px;
}

body .ssf-pagination .page-numbers.current {
	border-color: #eb5e1c;
	background: #eb5e1c;
	color: #181830;
	cursor: default;
}

body .ssf-pagination .ssf-pagination__dots {
	box-sizing: border-box;
	display: inline-flex;
	min-width: 24px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	color: #181830;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
}

.ssf-pagination__status {
	display: none;
	color: #181830;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.ssf-pagination .screen-reader-text,
.ssf-screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	clip-path: inset(50%) !important;
	border: 0 !important;
	white-space: nowrap !important;
}

@media (max-width: 639px) {
	.ssf-pagination {
		margin: 1.5rem 0 2.5rem;
	}

	.ssf-pagination .ssf-pagination__links,
	.ssf-pagination .nav-links,
	.ssf-pagination ul.page-numbers {
		gap: 0.5rem;
	}

	.ssf-pagination--compact .ssf-pagination__links > .page-numbers:not(.prev):not(.next),
	.ssf-pagination--compact .ssf-pagination__slot--page,
	.ssf-pagination--compact .ssf-pagination__slot--dots {
		display: none;
	}

	.ssf-pagination--compact .prev,
	.ssf-pagination--compact .ssf-pagination__slot--prev {
		order: 1;
	}

	.ssf-pagination--compact .ssf-pagination__status {
		display: inline-flex;
		min-height: 44px;
		order: 2;
		align-items: center;
		justify-content: center;
		padding: 0 0.25rem;
	}

	.ssf-pagination--compact .next,
	.ssf-pagination--compact .ssf-pagination__slot--next {
		order: 3;
	}
}

@media (forced-colors: active) {
	body .ssf-pagination .page-numbers.ssf-pagination__item {
		border-color: ButtonText;
	}

	body .ssf-pagination .page-numbers.current {
		border-style: double;
	}
}
