/**
 * Yaniv Category Layouts Pro
 * Structural containment: loaded as a linked stylesheet so theme/Elementor rules cannot easily win.
 * Colors, radii, and per-instance values still come from JS <style>.
 */

/* Elementor: flex/grid children default to min-width:auto — wide images blow the column (RTL shows as “floating” right). */
/* Widget wrap is flex: without grow + width, the item shrink-wraps; in RTL it hugs inline-start (right) and leaves a gap on the left. */
.elementor-widget-yaniv-category-layouts-pro {
	box-sizing: border-box;
	min-width: 0 !important;
	max-width: 100%;
	width: 100%;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: auto;
}

.elementor-widget-yaniv-category-layouts-pro .elementor-widget-container {
	min-width: 0 !important;
	max-width: 100%;
	width: 100%;
}

.elementor-column .elementor-widget-wrap .elementor-widget-yaniv-category-layouts-pro,
.e-con .elementor-widget-yaniv-category-layouts-pro {
	box-sizing: border-box;
	min-width: 0 !important;
	max-width: 100%;
	width: 100%;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: auto;
}

.yclp-container {
	position: relative;
	min-height: 1px;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.yclp-container .yclp-root {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.yclp-container .yclp-grid {
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.yclp-container .yclp-grid > [role="listitem"] {
	display: flex !important;
	min-width: 0 !important;
	max-width: 100%;
}

.yclp-container .yclp-grid > [role="listitem"] > .yclp-card {
	flex: 1 1 auto;
	min-width: 0 !important;
	max-width: 100%;
	width: 100%;
}

.yclp-container .yclp-image-wrapper {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.yclp-container .yclp-image-wrapper[style*="padding-bottom"] {
	height: 0;
}

/* Aspect-box layers: dedicated class names (no shared generic image class). */
.yclp-container .yclp-image-wrapper .yclp-layer-base,
.yclp-container .yclp-image-wrapper .yclp-layer-hover {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	display: block;
}

.yclp-container .yclp-image-wrapper .yclp-layer-hover {
	opacity: 0;
}

.yclp-container .yclp-preset-card .yclp-std-img-wrap {
	min-width: 0;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

.yclp-container .yclp-preset-studio .yclp-studio-shell {
	min-width: 0;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

.yclp-container .yclp-preset-studio .yclp-studio-well {
	min-width: 0;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

/* Studio well: normal flow. Extra specificity + legacy classes beat stale inline `.uid .yclp-img{position:absolute}` from old JS. */
.elementor-widget-yaniv-category-layouts-pro .yclp-container .yclp-preset-studio .yclp-studio-well .yclp-studio-photo,
.elementor-widget-yaniv-category-layouts-pro .yclp-container .yclp-preset-studio .yclp-studio-well .yclp-img,
.elementor-widget-yaniv-category-layouts-pro .yclp-container .yclp-preset-studio .yclp-studio-well .yclp-studio-img,
.elementor-widget-yaniv-category-layouts-pro .yclp-container .yclp-preset-studio .yclp-studio-well img,
.yclp-container .yclp-root .yclp-preset-studio .yclp-studio-well .yclp-studio-photo,
.yclp-container .yclp-root .yclp-preset-studio .yclp-studio-well .yclp-img,
.yclp-container .yclp-root .yclp-preset-studio .yclp-studio-well .yclp-studio-img,
.yclp-container .yclp-root .yclp-preset-studio .yclp-studio-well img,
.yclp-container .yclp-preset-studio .yclp-studio-well .yclp-studio-photo,
.yclp-container .yclp-preset-studio .yclp-studio-well .yclp-img,
.yclp-container .yclp-preset-studio .yclp-studio-well .yclp-studio-img,
.yclp-container .yclp-preset-studio .yclp-studio-well img {
	position: static !important;
	inset: auto !important;
	left: auto !important;
	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: 220px !important;
	margin: 0 auto !important;
	display: block !important;
	box-sizing: border-box !important;
}

.yclp-container .yclp-preset-card.yclp-card-ref .yclp-ref-shell {
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

.yclp-container .yclp-preset-card.yclp-card-ref .yclp-ref-well {
	min-width: 0;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	display: block;
	box-sizing: border-box;
}

.yclp-container .yclp-preset-card.yclp-card-ref .yclp-ref-well .yclp-image-wrapper {
	width: 100% !important;
	max-width: 100%;
	min-width: 0;
	display: block;
	overflow: hidden;
}

.yclp-container .yclp-card:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.yclp-container .yclp-arrow:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}
