/* Responsive Gallery Widget Styles */

.responsive-gallery-wrapper {
	position: relative;
}

.responsive-gallery-wrapper .gallery {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.responsive-gallery-wrapper .gallery-item {
	position: relative;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	width: 25%; /* Default 4 columns */
}

/* Column variations based on data attribute */
.responsive-gallery-wrapper[data-columns="1"] .gallery-item {
	width: 100%;
}

.responsive-gallery-wrapper[data-columns="2"] .gallery-item {
	width: 50%;
}

.responsive-gallery-wrapper[data-columns="3"] .gallery-item {
	width: 33.333%;
}

.responsive-gallery-wrapper[data-columns="4"] .gallery-item {
	width: 25%;
}

.responsive-gallery-wrapper[data-columns="5"] .gallery-item {
	width: 20%;
}

.responsive-gallery-wrapper[data-columns="6"] .gallery-item {
	width: 16.666%;
}

.responsive-gallery-wrapper[data-columns="7"] .gallery-item {
	width: 14.285%;
}

.responsive-gallery-wrapper[data-columns="8"] .gallery-item {
	width: 12.5%;
}

.responsive-gallery-wrapper[data-columns="9"] .gallery-item {
	width: 11.111%;
}

.responsive-gallery-wrapper[data-columns="10"] .gallery-item {
	width: 10%;
}

/* Dynamic column changes via JavaScript */
.responsive-gallery-wrapper[data-current-columns="1"] .gallery-item {
	width: 100% !important;
}

.responsive-gallery-wrapper[data-current-columns="2"] .gallery-item {
	width: 50% !important;
}

.responsive-gallery-wrapper[data-current-columns="3"] .gallery-item {
	width: 33.333% !important;
}

.responsive-gallery-wrapper[data-current-columns="4"] .gallery-item {
	width: 25% !important;
}

.responsive-gallery-wrapper[data-current-columns="5"] .gallery-item {
	width: 20% !important;
}

.responsive-gallery-wrapper[data-current-columns="6"] .gallery-item {
	width: 16.666% !important;
}

.responsive-gallery-wrapper[data-current-columns="7"] .gallery-item {
	width: 14.285% !important;
}

.responsive-gallery-wrapper[data-current-columns="8"] .gallery-item {
	width: 12.5% !important;
}

.responsive-gallery-wrapper[data-current-columns="9"] .gallery-item {
	width: 11.111% !important;
}

.responsive-gallery-wrapper[data-current-columns="10"] .gallery-item {
	width: 10% !important;
}

.responsive-gallery-wrapper .gallery-item img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.responsive-gallery-wrapper .gallery-item:hover img {
	transform: scale(1.05);
	opacity: 0.9;
}

.responsive-gallery-wrapper .gallery-caption {
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.4;
	color: #666;
}

/* RTL Support */
.rtl .responsive-gallery-wrapper .gallery {
	direction: rtl;
}

.rtl .responsive-gallery-wrapper .gallery-item {
	text-align: right;
}

/* Custom spacing support */
.gallery-spacing-custom .gallery-item {
	padding: 0;
}

.gallery-spacing-custom .gallery {
	margin: 0;
}

/* Lightbox enhancements */
.responsive-gallery-wrapper .gallery-item a {
	display: block;
	position: relative;
	overflow: hidden;
}

.responsive-gallery-wrapper .gallery-item a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.1);
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index: 1;
}

.responsive-gallery-wrapper .gallery-item a:hover::before {
	opacity: 1;
}

/* Accessibility improvements */
.responsive-gallery-wrapper .gallery-item a:focus {
	outline: 2px solid #007cba;
	outline-offset: 2px;
}

/* Print styles */
@media print {
	.responsive-gallery-wrapper .gallery-item {
		width: 25% !important;
		page-break-inside: avoid;
	}
}
