/**
 * France Tractor — pagination Uncode/WooCommerce
 * Override Uncode table layout (page-prev/page-next 20px on mobile = chevauchement)
 * Couleurs : bleu #1a2744 · rouge #d32f2f
 */
.cssgrid-footer .grid-footer-inner > .pagination,
.cssgrid-footer .pagination,
.grid-footer .grid-footer-inner > .pagination,
.grid-footer .pagination {
	display: flex !important;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: auto !important;
	max-width: 100%;
	margin: 2.5rem auto 1.5rem !important;
	padding: 0 !important;
	list-style: none;
	float: none !important;
	table-layout: auto !important;
	text-align: center !important;
	line-height: 1 !important;
	border-radius: 0 !important;
}

/* Reset Uncode li (inline-block + table-cell behavior) */
.cssgrid-footer .pagination > li,
.grid-footer .pagination > li {
	display: block !important;
	float: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	text-align: center !important;
	flex: 0 0 auto;
	position: relative;
	vertical-align: middle !important;
}

/* Uncode : page-prev / page-next = 33% puis 20px mobile → annuler */
.cssgrid-footer .pagination .page-prev,
.cssgrid-footer .pagination .page-next,
.grid-footer .pagination .page-prev,
.grid-footer .pagination .page-next {
	width: auto !important;
	min-width: 0 !important;
	border: none !important;
	text-align: center !important;
}

.cssgrid-footer .pagination .page-prev > a,
.cssgrid-footer .pagination .page-prev > span,
.cssgrid-footer .pagination .page-next > a,
.cssgrid-footer .pagination .page-next > span,
.grid-footer .pagination .page-prev > a,
.grid-footer .pagination .page-prev > span,
.grid-footer .pagination .page-next > a,
.grid-footer .pagination .page-next > span {
	width: auto !important;
	border-radius: 0 !important;
	text-align: center !important;
}

.cssgrid-footer .pagination .btn-container,
.grid-footer .pagination .btn-container {
	display: block !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Bouton carré unique */
.cssgrid-footer .pagination .btn,
.cssgrid-footer .pagination li > a.btn,
.grid-footer .pagination .btn,
.grid-footer .pagination li > a.btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	float: none !important;
	width: 54px !important;
	height: 54px !important;
	min-width: 54px !important;
	max-width: 54px !important;
	min-height: 54px !important;
	max-height: 54px !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	border: 2px solid #1a2744 !important;
	border-radius: 10px !important;
	background: #fff !important;
	color: #1a2744 !important;
	text-decoration: none !important;
	box-shadow: none !important;
	overflow: hidden !important;
	position: relative !important;
	text-align: center !important;
	transform: none !important;
	transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.cssgrid-footer .pagination .page-prev .btn-link,
.cssgrid-footer .pagination .page-next .btn-link,
.grid-footer .pagination .page-prev .btn-link,
.grid-footer .pagination .page-next .btn-link {
	text-align: center !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	transform: none !important;
}

/* Numéros — reset cercle Uncode 36px */
.cssgrid-footer .pagination .page-numbers,
.grid-footer .pagination .page-numbers {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	color: inherit !important;
	text-decoration: none !important;
	float: none !important;
}

.cssgrid-footer .pagination li .btn:has(a.page-numbers):hover,
.cssgrid-footer .pagination li > a.btn:hover,
.grid-footer .pagination li .btn:has(a.page-numbers):hover,
.grid-footer .pagination li > a.btn:hover {
	background: #d32f2f !important;
	border-color: #d32f2f !important;
	color: #fff !important;
}

.cssgrid-footer .pagination li .btn:has(a.page-numbers):hover .page-numbers,
.grid-footer .pagination li .btn:has(a.page-numbers):hover .page-numbers {
	color: #fff !important;
}

.cssgrid-footer .pagination li .btn:has(.page-numbers.current),
.grid-footer .pagination li .btn:has(.page-numbers.current) {
	background: #1a2744 !important;
	border-color: #1a2744 !important;
	color: #fff !important;
}

.cssgrid-footer .pagination li .btn:has(.page-numbers.current) .page-numbers,
.grid-footer .pagination li .btn:has(.page-numbers.current) .page-numbers {
	color: #fff !important;
	background: none !important;
}

.cssgrid-footer .pagination .page-prev i,
.cssgrid-footer .pagination .page-next i,
.grid-footer .pagination .page-prev i,
.grid-footer .pagination .page-next i {
	display: none !important;
	margin: 0 !important;
}

.cssgrid-footer .pagination .page-prev > .btn::before,
.cssgrid-footer .pagination .page-prev > a::before,
.cssgrid-footer .pagination .page-next > a::before,
.cssgrid-footer .pagination .page-next > .btn::before,
.grid-footer .pagination .page-prev > .btn::before,
.grid-footer .pagination .page-prev > a::before,
.grid-footer .pagination .page-next > a::before,
.grid-footer .pagination .page-next > .btn::before {
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%, -50%) !important;
	display: block !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	color: inherit !important;
	pointer-events: none;
}

.cssgrid-footer .pagination .page-prev > .btn::before,
.cssgrid-footer .pagination .page-prev > a::before,
.grid-footer .pagination .page-prev > .btn::before,
.grid-footer .pagination .page-prev > a::before {
	content: "\2039" !important;
}

.cssgrid-footer .pagination .page-next > a::before,
.cssgrid-footer .pagination .page-next > .btn::before,
.grid-footer .pagination .page-next > a::before,
.grid-footer .pagination .page-next > .btn::before {
	content: "\203A" !important;
}

.cssgrid-footer .pagination .page-prev .btn-disable-hover,
.grid-footer .pagination .page-prev .btn-disable-hover {
	opacity: 0.3 !important;
	pointer-events: none !important;
}

@media (max-width: 767px) {
	.cssgrid-footer .grid-footer-inner > .pagination,
	.cssgrid-footer .pagination,
	.grid-footer .grid-footer-inner > .pagination,
	.grid-footer .pagination {
		gap: 8px !important;
		padding: 0 6px !important;
		flex-wrap: nowrap !important;
		justify-content: center !important;
	}

	.cssgrid-footer .pagination .page-prev,
	.cssgrid-footer .pagination .page-next,
	.grid-footer .pagination .page-prev,
	.grid-footer .pagination .page-next {
		width: auto !important;
		min-width: 0 !important;
	}

	.cssgrid-footer .pagination .btn,
	.cssgrid-footer .pagination li > a.btn,
	.grid-footer .pagination .btn,
	.grid-footer .pagination li > a.btn {
		width: 50px !important;
		height: 50px !important;
		min-width: 50px !important;
		max-width: 50px !important;
		min-height: 50px !important;
		max-height: 50px !important;
		font-size: 17px !important;
		border-radius: 8px !important;
	}

	.cssgrid-footer .pagination .page-numbers,
	.grid-footer .pagination .page-numbers {
		font-size: 17px !important;
		width: 100% !important;
		height: 100% !important;
		margin-top: 0 !important;
		margin-bottom: 0 !important;
	}
}

@media (max-width: 569px) {
	.cssgrid-footer .pagination .page-prev,
	.cssgrid-footer .pagination .page-next,
	.grid-footer .pagination .page-prev,
	.grid-footer .pagination .page-next {
		width: auto !important;
	}
}
