/**
 * Swiper 11 — Recipefy skin
 * Token-colored pagination, navigation, RTL-aware.
 */

/* Pagination bullets */
.rfy-swiper .swiper-pagination-bullet {
	background: var(--rfy-line);
	opacity: 1;
	width: 8px;
	height: 8px;
	transition: background var(--rfy-transition), transform var(--rfy-transition);
}

.rfy-swiper .swiper-pagination-bullet-active {
	background: var(--rfy-accent);
	transform: scale(1.3);
}

.rfy-swiper .swiper-pagination {
	bottom: -28px;
}

/* Navigation arrows */
.rfy-swiper .swiper-button-next,
.rfy-swiper .swiper-button-prev {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--rfy-surface);
	border: 1px solid var(--rfy-line);
	box-shadow: var(--rfy-shadow-sm);
	color: var(--rfy-primary-dark);
	transition: background var(--rfy-transition), box-shadow var(--rfy-transition), transform var(--rfy-transition);
}

.rfy-swiper .swiper-button-next:hover,
.rfy-swiper .swiper-button-prev:hover {
	background: var(--rfy-accent);
	color: var(--rfy-primary-dark);
	box-shadow: var(--rfy-shadow-md);
	transform: scale(1.08);
}

.rfy-swiper .swiper-button-next::after,
.rfy-swiper .swiper-button-prev::after {
	font-size: 14px;
	font-weight: 900;
}

.rfy-swiper .swiper-button-disabled {
	opacity: 0.35;
	pointer-events: none;
}

/* Homepage gallery block — card slides */
.rfy-block-gallery__swiper {
	padding-bottom: 40px;
}

.rfy-block-gallery__swiper .swiper-wrapper {
	align-items: stretch;
}

.rfy-block-gallery__swiper .swiper-button-prev,
.rfy-block-gallery__swiper .swiper-button-next {
	top: 40%;
}

/* Single recipe gallery — large slides */
.arc-gallery-swiper {
	padding-bottom: 40px;
	border-radius: var(--rfy-radius-lg);
	overflow: hidden;
}

.arc-gallery-swiper .swiper-slide {
	height: auto;
}

.arc-gallery-swiper .arc-gallery-item {
	margin: 0;
	padding: 0;
}

.arc-gallery-swiper .arc-gallery-item .rfy-lightbox__trigger {
	height: 100%;
}

.arc-gallery-swiper .arc-gallery-item img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--rfy-radius-lg);
	display: block;
}

@media (max-width: 767px) {
	.arc-gallery-swiper .arc-gallery-item img {
		border-radius: var(--rfy-radius-md);
	}
}

/* Gallery track outer padding for nav arrows */
.rfy-swiper-outer {
	position: relative;
	padding-inline: 28px;
}

@media (max-width: 640px) {
	.rfy-swiper-outer {
		padding-inline: 0;
	}

	.rfy-swiper .swiper-button-next,
	.rfy-swiper .swiper-button-prev {
		display: none;
	}
}
