/* Product Festive Frame v1.4 — Dedicated WoodMart Overlay */

/* ================================================================
 * Engine tiêu chuẩn: wrapper chỉ dùng cho theme không phải WoodMart.
 * ================================================================ */
.pff-product-frame {
	position: relative;
	max-width: 100%;
	line-height: 0;
	vertical-align: top;
	isolation: isolate;
}

.pff-product-frame--catalog,
.pff-product-frame--block,
.pff-product-frame--js {
	display: block;
	width: 100%;
}

.pff-product-frame > img:not(.pff-frame-overlay),
.pff-product-frame > picture,
.pff-product-frame > a,
.pff-product-frame > div {
	position: relative;
	z-index: 1;
}

.pff-product-frame img:not(.pff-frame-overlay) {
	display: block;
	max-width: 100%;
	height: auto;
}

.pff-product-frame .pff-frame-overlay {
	position: absolute !important;
	inset: 0;
	z-index: 2 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	float: none !important;
	object-fit: var(--pff-frame-fit, fill);
	opacity: var(--pff-frame-opacity, 1);
	pointer-events: none !important;
	user-select: none;
}

.pff-product-frame--block {
	height: 100%;
}

/* ================================================================
 * WoodMart Dedicated Overlay — Revision 4
 *
 * Không dùng ::before/::after của WoodMart.
 * Không bọc, di chuyển hoặc thay thế ảnh sản phẩm.
 * Không sửa position/display/overflow/isolation của container theme.
 * Span overlay được chèn đúng một lần bởi JS vào surface native đã có
 * containing block của WoodMart.
 * ================================================================ */
.pff-frame-engine--woodmart .pff-woodmart-overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background-image: var(--pff-frame-image);
	background-repeat: no-repeat;
	background-position: center;
	background-size: var(--pff-frame-background-size, 100% 100%);
	opacity: var(--pff-frame-opacity, 1);
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none;
}

/* Không ép z-index cho loader, buttons, label hoặc swatches của WoodMart. */

/* ================================================================
 * Fail-safe vùng cấm: sidebar/widget/search/cart/quick-view không có frame.
 * ================================================================ */
.widget .pff-frame-overlay,
.widget-area .pff-frame-overlay,
.product_list_widget .pff-frame-overlay,
.product-list-widget .pff-frame-overlay,
.wd-widget .pff-frame-overlay,
.wd-products-widget .pff-frame-overlay,
.wd-sidebar .pff-frame-overlay,
.sidebar-container .pff-frame-overlay,
.area-sidebar-shop .pff-frame-overlay,
.offcanvas-sidebar-container .pff-frame-overlay,
.wd-search-results .pff-frame-overlay,
.autocomplete-suggestions .pff-frame-overlay,
.shopping-cart-widget .pff-frame-overlay,
.cart-widget-side .pff-frame-overlay,
.wd-dropdown-cart .pff-frame-overlay,
.wd-quick-view .pff-frame-overlay,
.quick-view .pff-frame-overlay,
#secondary .pff-frame-overlay,
aside .pff-frame-overlay,
[role="complementary"] .pff-frame-overlay,
.widget .pff-woodmart-overlay,
.widget-area .pff-woodmart-overlay,
.product_list_widget .pff-woodmart-overlay,
.product-list-widget .pff-woodmart-overlay,
.wd-widget .pff-woodmart-overlay,
.wd-products-widget .pff-woodmart-overlay,
.wd-sidebar .pff-woodmart-overlay,
.sidebar-container .pff-woodmart-overlay,
.area-sidebar-shop .pff-woodmart-overlay,
.offcanvas-sidebar-container .pff-woodmart-overlay,
.wd-search-results .pff-woodmart-overlay,
.autocomplete-suggestions .pff-woodmart-overlay,
.shopping-cart-widget .pff-woodmart-overlay,
.cart-widget-side .pff-woodmart-overlay,
.wd-dropdown-cart .pff-woodmart-overlay,
.wd-quick-view .pff-woodmart-overlay,
.quick-view .pff-woodmart-overlay,
#secondary .pff-woodmart-overlay,
aside .pff-woodmart-overlay,
[role="complementary"] .pff-woodmart-overlay {
	display: none !important;
}

/* ================================================================
 * v1.3 — Ảnh chính trang chi tiết sản phẩm
 *
 * Overlay là span độc lập trên từng slide ảnh lớn. Không tác động thumbnail,
 * lightbox, zoom source, src/srcset hoặc dữ liệu variation.
 * ================================================================ */
.pff-single-product-surface {
	position: relative;
}

.pff-single-product-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background-image: var(--pff-frame-image);
	background-repeat: no-repeat;
	background-position: center;
	background-size: var(--pff-frame-background-size, 100% 100%);
	opacity: var(--pff-frame-opacity, 1);
	pointer-events: none;
	user-select: none;
	-webkit-user-select: none;
}

.flex-control-thumbs .pff-single-product-overlay,
.woocommerce-product-gallery__thumbs .pff-single-product-overlay,
.wd-gallery-thumb .pff-single-product-overlay,
.wd-quick-view .pff-single-product-overlay,
.quick-view .pff-single-product-overlay,
.pswp .pff-single-product-overlay {
	display: none !important;
}
