/* ============================================================
   PRZED-PO SLIDER - Główne style
   ============================================================ */

.przed-po-slider-wrapper {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	user-select: none;
}

/* Kontener suwaka - domyślnie stała wysokość, aby działać bez tła */
.ba-slider-container {
	position: relative;
	width: 100%;
	height: 400px; /* Domyślna wysokość dla trybu normalnego */
	line-height: 0;
	cursor: ew-resize;
	overflow: hidden;
}

/* Zdjęcie "Po" - na spodzie */
.ba-after-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

/* Zdjęcie "Przed" - na wierzchu, przycinane clip-path */
.ba-before-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	overflow: hidden;
	will-change: clip-path;
	clip-path: inset(0 50% 0 0);
}

/* Obrazy wypełniają kontener jak background-size: cover */
.ba-before-image img,
.ba-after-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
	display: block;
	pointer-events: none;
}

/* Linia suwaka - rozmyta biała poświata */
.ba-slider-handle {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 2px;
	margin-left: -1px;
	background: #fff;
	cursor: ew-resize;
	z-index: 10;
	box-shadow: 0 0 20px 10px rgba(255,255,255,0.4),
	            0 0 40px 20px rgba(255,255,255,0.1);
}

/* Ukrywamy strzałki i kółko */
.ba-slider-handle::after,
.ba-slider-handle::before,
.ba-handle-arrow {
	display: none !important;
}

/* ============================================================
   NAPISY "PRZED" i "PO"
   ============================================================ */

.ba-label {
	position: absolute;
	padding: 10px 20px;
	background: rgba(0,0,0,0.5);
	color: #fff;
	z-index: 6;
	pointer-events: none;
	border-radius: 4px;
	font-family: sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 12px;
	letter-spacing: 1px;
	transition: opacity 0.3s ease;
}

.ba-label-before {
	top: 20px;
	left: 20px;
}

.ba-label-after {
	top: 20px;
	right: 20px;
}

/* ============================================================
   TRYB TŁA - wyłącznie Desktop i Tablet (≥768px)
   ============================================================ */

@media (min-width: 768px) {
	/* Suwak rozciąga się na całą kolumnę Elementora */
	.elementor-widget-before_after_slider.ba-bg-active {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		z-index: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		pointer-events: none !important;
	}

	.elementor-widget-before_after_slider.ba-bg-active .elementor-widget-container,
	.elementor-widget-before_after_slider.ba-bg-active .przed-po-slider-wrapper {
		height: 100% !important;
		width: 100% !important;
		position: static !important;
	}

	/* W trybie tła kontener suwaka też musi wypełniać 100% */
	.elementor-widget-before_after_slider.ba-bg-active .ba-slider-container {
		height: 100% !important;
	}

	/* Kolumna Elementora musi być bazą dla absolutnie pozycjonowanego suwaka */
	.elementor-widget-wrap,
	.elementor-column-wrap {
		position: relative !important;
		overflow: hidden !important;
	}

	/* Pozostałe widżety w kolumnie są nad suwakiem */
	.elementor-widget:not(.ba-bg-active) {
		position: relative !important;
		z-index: 2 !important;
	}
}

/* ============================================================
   MOBILE (≤767px) - suwak jako normalny blok
   ============================================================ */

@media (max-width: 767px) {
	/* Resetujemy tryb tła na mobile */
	.elementor-widget-before_after_slider.ba-bg-active {
		position: relative !important;
		inset: auto !important;
		width: 100% !important;
		height: auto !important;
		z-index: auto !important;
		pointer-events: auto !important;
	}

	/* Normalny przepływ suwaka na mobile */
	.elementor-widget-before_after_slider .elementor-widget-container,
	.elementor-widget-before_after_slider .przed-po-slider-wrapper {
		height: 350px !important;
		min-height: 350px !important;
		position: relative !important;
		display: block !important;
	}

	.elementor-widget-before_after_slider .ba-slider-container {
		height: 350px !important;
		min-height: 350px !important;
	}
}

/* ============================================================
   TRYB BEZ RĘCZNEGO PRZESUWANIA
   ============================================================ */

.ba-no-manual {
	cursor: default !important;
}

.ba-no-manual .ba-slider-handle {
	cursor: default !important;
}
