/**
 * Frontend: Smart Link wrappers.
 */

.forwp-smart-link-wrapper {
	box-sizing: border-box;
}

.forwp-smart-link-wrapper:focus {
	outline: none;
}

.forwp-smart-link-wrapper:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.forwp-smart-link-host {
	box-sizing: border-box;
}

.forwp-smart-link-host:focus {
	outline: none;
}

.forwp-smart-link-host:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Page-level lightbox gallery: no layout impact (core/gallery interactivity context). */
.forwp-smart-link-page-lightbox-gallery {
	display: contents;
}

/* Lightbox overlay figure (Cover slides in core/image overlay). */
.wp-lightbox-overlay .lightbox-image-container .forwp-smart-link-lightbox-figure {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	margin: 0;
}

.wp-lightbox-overlay .lightbox-image-container .forwp-smart-link-lightbox-figure img {
	object-fit: contain;
	max-width: 100%;
	max-height: 100%;
}

.wp-block-cover.forwp-smart-link-cover-has-lightbox {
	position: relative;
}

/* Trigger at end of Cover: icon only (cover area not clickable). */
.wp-block-cover.forwp-smart-link-cover-has-lightbox > .forwp-smart-link-cover-lightbox,
.wp-block-cover.forwp-smart-link-cover-has-lightbox > .wp-lightbox-container.forwp-smart-link-cover-lightbox {
	position: absolute;
	inset: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	margin: 0;
	pointer-events: none;
}

.forwp-swipe-carousel .swiper-slide .wp-block-cover.forwp-smart-link-cover-has-lightbox > .forwp-smart-link-cover-lightbox,
.forwp-swipe-carousel .swiper-slide .wp-block-cover.forwp-smart-link-cover-has-lightbox > .wp-lightbox-container.forwp-smart-link-cover-lightbox {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	left: 0 !important;
	right: 0 !important;
}

/* Fallback only (no background <img> on Cover) — never target .wp-block-cover__image-background. */
.forwp-smart-link-cover-lightbox-fallback-host {
	position: absolute;
	inset: 0;
	z-index: 5;
	pointer-events: none;
}

.forwp-smart-link-cover-lightbox-fallback-host .forwp-smart-link-cover-lightbox__ref {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0;
	pointer-events: none;
}

.wp-block-cover.forwp-smart-link-cover-has-lightbox .lightbox-trigger,
.forwp-smart-link-cover-lightbox .lightbox-trigger {
	opacity: 1;
	top: 16px;
	right: 16px;
	left: auto;
	bottom: auto;
	pointer-events: auto;
	z-index: 10;
}

.wp-block-cover.forwp-smart-link-cover-has-lightbox .lightbox-trigger:focus,
.wp-block-cover.forwp-smart-link-cover-has-lightbox .lightbox-trigger:focus-visible,
.forwp-smart-link-cover-lightbox .lightbox-trigger:focus,
.forwp-smart-link-cover-lightbox .lightbox-trigger:focus-visible {
	opacity: 1;
}
