/* ===== گرید ===== */
.avg-wrap,
.avg-wrap * {
	box-sizing: border-box;
}

.avg-wrap .avg-grid {
	display: grid;
	grid-template-columns: repeat(var(--avg-cols, 4), minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 32px;
}

/* پشتیبان: اگر المنتور متغیر ستون‌ها را تنظیم نکرد */
@media (max-width: 1024px) {
	.avg-wrap .avg-grid { --avg-cols: 2; }
}
@media (max-width: 767px) {
	.avg-wrap .avg-grid { --avg-cols: 1; }
}

/* ===== کاور (دکمه) ===== */
/* all:unset استایل‌های سراسری دکمه در قالب وودمارت را خنثی می‌کند */
.avg-wrap .avg-cover {
	all: unset;
	box-sizing: border-box;
	position: relative;
	display: block;
	width: 100%;
	height: var(--avg-cover-height, auto);
	aspect-ratio: var(--avg-cover-ratio, 2 / 3);
	border-radius: var(--avg-cover-radius, 12px);
	overflow: hidden;
	cursor: pointer;
	background: #e4e3ee;
	isolation: isolate;
}

.avg-wrap .avg-cover:focus-visible {
	outline: 3px solid #4c3fa1;
	outline-offset: 3px;
}

.avg-wrap .avg-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	display: block;
	transition: transform .5s ease;
}

.avg-wrap .avg-cover:hover .avg-img {
	transform: scale(1.05);
}

.avg-wrap .avg-overlay {
	position: absolute;
	inset: 0;
	background-color: var(--avg-cover-overlay, rgba(76, 63, 161, .25));
	pointer-events: none;
}

.avg-wrap .avg-play {
	position: absolute;
	inset: 0;
	margin: auto;
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: #fff;
	color: #2b2350;
	box-shadow: 0 6px 18px rgba(20, 18, 43, .25);
	transition: transform .25s ease;
}

.avg-wrap .avg-play svg {
	width: 40%;
	height: 40%;
	transform: translateX(8%); /* تنظیم نوری مثلث در مرکز دایره */
}

.avg-wrap .avg-cover:hover .avg-play {
	transform: scale(1.1);
}

/* ===== متن ===== */
.avg-wrap .avg-title {
	margin: 14px 0 4px;
	font-size: 15px;
	line-height: 1.5;
	font-weight: 700;
	color: var(--avg-title-color, #14122b);
}

.avg-wrap .avg-desc {
	margin: 0;
	font-size: 13px;
	line-height: 1.7;
	color: var(--avg-desc-color, #6b6a80);
}

/* ===== پاپ‌آپ ===== */
.avg-modal {
	position: fixed;
	inset: 0;
	z-index: 999999;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: var(--avg-modal-bg, rgba(14, 12, 32, .88));
}

.avg-modal.is-open {
	display: flex;
	animation: avg-fade .2s ease;
}

.avg-modal .avg-modal-box {
	position: relative;
	width: min(90vw, 960px);
	aspect-ratio: 16 / 9;
}

.avg-modal .avg-modal-frame,
.avg-modal .avg-modal-frame iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 10px;
	background: #000;
}

.avg-modal .avg-modal-close {
	all: unset;
	position: absolute;
	top: -46px;
	inset-inline-end: 0;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 34px;
	line-height: 1;
	cursor: pointer;
	border-radius: 50%;
}

.avg-modal .avg-modal-close:hover {
	background: rgba(255, 255, 255, .15);
}

.avg-modal .avg-modal-close:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

html.avg-lock {
	overflow: hidden;
}

@keyframes avg-fade {
	from { opacity: 0; }
	to   { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.avg-wrap .avg-img,
	.avg-wrap .avg-play { transition: none; }
	.avg-modal.is-open { animation: none; }
}

/* ===== طرح تمپلیت ارسالی: فقط نمایش، بدون تغییر در پاپ‌آپ ===== */
/*
 * --tx از سایت ارث می‌رسد؛ هیچ متغیر سراسری بازنویسی نمی‌شود.
 * بدون --tx، هر واحد 1px است. کنترل‌های دستی المنتور همچنان اولویت دارند.
 * کلاس‌ها را کنترل «طرح نمایش» روی wrapper خود ویجت اضافه می‌کند.
 */
.elementor-widget-avg_video_grid.avg-skin-template,
.elementor-widget-avg_video_grid.avg-skin-media {
	min-width: 0;
	max-width: 100%;
}

.avg-skin-template .avg-wrap,
.avg-skin-media .avg-wrap {
	--avg-cover-height: calc(var(--tx, 1px) * 280);
	--avg-cover-ratio: auto;
	--avg-cover-radius: calc(var(--tx, 1px) * 20);
	--avg-cover-overlay: transparent;
	--avg-title-color: #FFFFFF;
	--avg-desc-color: #FFFFFF;
	width: 100%;
	min-width: 0;
}

/* قاب کامل، مثل کانتینر مرجع */
.avg-skin-template .avg-card {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: calc(var(--tx, 1px) * 15);
	min-width: 0;
	margin: 0;
	padding: calc(var(--tx, 1px) * 15);
	border: 1px solid #AFAFAF;
	border-radius: calc(var(--tx, 1px) * 20);
	background: #FFFFFF1F;
	box-shadow: none;
}

.avg-skin-template .avg-cover,
.avg-skin-media .avg-cover {
	flex: 0 0 auto;
	min-width: 0;
}

.avg-skin-template .avg-img,
.avg-skin-media .avg-img {
	object-position: center center;
}

/* عنوان و توضیح، زیر کاور؛ نه روی تصویر */
.avg-skin-template .avg-title,
.avg-skin-template .avg-desc {
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
	font-family: "IBM Plex Sans", sans-serif;
	font-weight: 400;
	line-height: calc(var(--tx, 1px) * 22);
	letter-spacing: normal;
	text-transform: none;
	text-decoration: none;
	text-align: end;
	overflow-wrap: anywhere;
}

.avg-skin-template .avg-title {
	font-size: calc(var(--tx, 1px) * 18);
}

.avg-skin-template .avg-desc {
	font-size: calc(var(--tx, 1px) * 14);
}

/* جایگزین مستقیم تصویر: قاب و متن از کانتینر اصلی المنتور می‌آیند */
.avg-skin-media .avg-card {
	display: block;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.avg-skin-media .avg-title,
.avg-skin-media .avg-desc {
	display: none;
}

/* مرجع در موبایل متن‌ها را وسط‌چین کرده است. */
@media (max-width: 767px) {
	.avg-skin-template .avg-title,
	.avg-skin-template .avg-desc {
		text-align: center;
	}
}

/* ===== جهت انتخابی؛ حالت ارث‌بری ظاهر قبلی را حفظ می‌کند ===== */
.avg-wrap[dir="rtl"] {
	direction: rtl;
}

.avg-wrap[dir="ltr"] {
	direction: ltr;
}

.avg-wrap[dir] .avg-title,
.avg-wrap[dir] .avg-desc {
	text-align: start;
}

/* ===== اسلایدر؛ همان کارت‌ها در یک ردیف قابل پیمایش ===== */
.elementor-widget-avg_video_grid.avg-display-slider,
.avg-wrap.avg-layout-slider {
	width: 100%;
	min-width: 0;
	max-width: 100%;
}

.avg-wrap.avg-layout-slider .avg-grid {
	grid-template-columns: none;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - (var(--avg-cols, 4) - 1) * var(--avg-column-gap, 24px)) / var(--avg-cols, 4));
	min-width: 0;
	row-gap: 0;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
}

.avg-layout-slider .avg-card {
	min-width: 0;
	scroll-snap-align: start;
	overflow-wrap: anywhere;
}

.avg-wrap.avg-layout-slider .avg-grid {
	scrollbar-width: none;
	-ms-overflow-style: none;
	overflow-anchor: none;
}

.avg-wrap.avg-layout-slider .avg-grid::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.avg-layout-slider .avg-grid:focus-visible,
.avg-layout-slider .avg-cover:focus-visible {
	outline: 3px solid #4c3fa1;
	outline-offset: -3px;
}

.avg-layout-slider .avg-slider-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-top: 20px;
}

.avg-layout-slider .avg-slider-nav[hidden],
.avg-layout-slider .avg-slider-nav button[hidden] {
	display: none;
}

.avg-layout-slider .avg-slider-nav button {
	all: unset;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 1px solid #AFAFAF;
	border-radius: 50%;
	background: #fff;
	color: #2b2350;
	cursor: pointer;
	transition: opacity .2s ease, transform .2s ease;
}

.avg-layout-slider .avg-slider-nav button:hover:not(:disabled) {
	transform: translateY(-2px);
}

.avg-layout-slider .avg-slider-nav button:disabled {
	opacity: .35;
	cursor: default;
}

.avg-layout-slider .avg-slider-nav button:focus-visible {
	outline: 3px solid #4c3fa1;
	outline-offset: 3px;
}

.avg-layout-slider .avg-slider-nav svg {
	width: 20px;
	height: 20px;
	pointer-events: none;
}

.avg-slider-rtl .avg-slider-prev svg,
.avg-slider-rtl .avg-slider-next svg {
	transform: rotate(180deg);
}

@media (prefers-reduced-motion: reduce) {
	.avg-layout-slider .avg-slider-nav button {
		transition: none;
	}
}

/* کنترل‌ها در ترتیب فوکوس قبل از کارت‌ها و در نمایش زیر آن‌ها هستند. */
.avg-wrap.avg-layout-slider {
	display: flex;
	flex-direction: column;
}

.avg-layout-slider .avg-grid {
	order: 1;
	width: 100%;
}

.avg-layout-slider .avg-slider-nav {
	order: 2;
	flex-wrap: wrap;
}

.avg-slider-ready.avg-slider-movable .avg-grid,
.avg-slider-ready.avg-slider-movable .avg-cover {
	cursor: grab;
}

.avg-slider-ready.avg-slider-movable .avg-card {
	user-select: none;
	-webkit-user-select: none;
}

.avg-layout-slider.avg-is-dragging .avg-grid,
.avg-layout-slider.avg-is-dragging .avg-cover {
	cursor: grabbing;
}

.avg-layout-slider .avg-slider-dots {
	display: flex;
	flex: 0 1 auto;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0;
	min-width: 0;
	max-width: 100%;
}

.avg-layout-slider .avg-slider-nav .avg-slider-dot {
	width: 28px;
	height: 32px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	transform: none;
}

.avg-layout-slider .avg-slider-dot::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border: 1px solid currentColor;
	border-radius: 50%;
	background: currentColor;
	opacity: .4;
	transition: opacity .2s ease, width .2s ease;
}

.avg-layout-slider .avg-slider-dot[aria-current="true"]::before {
	width: 20px;
	border-radius: 8px;
	opacity: 1;
}

.avg-layout-slider .avg-slider-dot:hover::before {
	opacity: 1;
}

.avg-skin-template .avg-slider-nav,
.avg-skin-media .avg-slider-nav {
	color: #fff;
}

.avg-layout-slider .avg-slider-start-icon,
.avg-layout-slider .avg-slider-toggle.is-paused .avg-slider-pause-icon {
	display: none;
}

.avg-layout-slider .avg-slider-toggle.is-paused .avg-slider-start-icon {
	display: block;
}

@media (max-width: 767px) {
	.avg-layout-slider .avg-slider-nav { gap: 6px; }
	.avg-layout-slider .avg-slider-nav > button { width: 36px; height: 36px; }
	.avg-layout-slider .avg-slider-nav .avg-slider-dot { width: 24px; }
}

@media (prefers-reduced-motion: reduce) {
	.avg-layout-slider .avg-slider-dot::before { transition: none; }
}
