/**
 * Divi CSS specificity fix.
 *
 * Divi's own theme stylesheet uses long, deeply-nested selector chains
 * (e.g. ".et-db #et-boc .et-l ...") for its list/image resets, which beat
 * this plugin's simple class-based rules. These re-assert the carousel's
 * own styling with matching (or higher) specificity. Only enqueued when
 * Divi is detected — see continuous_slider_plus_lightbox_load_styles_and_js().
 */

/* ---------- Modern engine ---------- */

.et_pb_module .cicwl-engine-modern,
.et-db #et-boc .et-l .cicwl-engine-modern {
	overflow: hidden !important;
	position: relative !important;
	width: 100% !important;
}

.et_pb_module .cicwl-modern-track,
.et-db #et-boc .et-l .cicwl-modern-track {
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.et_pb_module .cicwl-engine-modern img,
.et-db #et-boc .et-l .cicwl-engine-modern img {
	display: block !important;
	max-width: none !important;
	margin: 0 !important;
	border: none !important;
}

.et_pb_module .cicwl-modern-caption,
.et-db #et-boc .et-l .cicwl-modern-caption {
	display: block !important;
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	margin: 0 !important;
	padding: 4px 8px !important;
	background: rgba( 0, 0, 0, 0.6 ) !important;
	color: #fff !important;
	font-size: 12px !important;
	line-height: 1.4 !important;
}

/* ---------- Legacy (bxSlider) engine ---------- */

.et_pb_module .bx-wrapper,
.et-db #et-boc .et-l .bx-wrapper {
	position: relative !important;
}

.et_pb_module .bx-wrapper .bx-viewport,
.et-db #et-boc .et-l .bx-wrapper .bx-viewport {
	overflow: hidden !important;
	position: relative !important;
	width: 100% !important;
}

.et_pb_module .responsiveSlider,
.et-db #et-boc .et-l .responsiveSlider {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
}

/* Note: no margin/width overrides on the item wrappers here — bxSlider sets
   marginRight/width (from the Image Margin / Image Width settings) via
   inline style at init time, and those need to stay in control. Only
   reinforcing the structural properties that make the horizontal layout
   work in the first place. */
.et_pb_module .v-wrap_cont_,
.et-db #et-boc .et-l .v-wrap_cont_,
.et_pb_module .v-wrap_cont,
.et-db #et-boc .et-l .v-wrap_cont {
	list-style: none !important;
	float: left !important;
	box-sizing: border-box !important;
}

.et_pb_module .bx-wrapper img,
.et-db #et-boc .et-l .bx-wrapper img {
	display: block !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	border: none !important;
}

.et_pb_module .bx-wrapper .bx-caption,
.et-db #et-boc .et-l .bx-wrapper .bx-caption {
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	background: rgba( 80, 80, 80, 0.75 ) !important;
}

.et_pb_module .bx-wrapper .bx-caption span,
.et-db #et-boc .et-l .bx-wrapper .bx-caption span {
	display: block !important;
	color: #fff !important;
	font-size: 13px !important;
	padding: 10px !important;
	margin: 0 !important;
}
