/**
 * Single product — photo full width + Photo/Video/3D tabs (desktop).
 */

.liliya-product-media {
	width: 100%;
	max-width: none;
}

.liliya-product-media__tabs {
	display: none;
}

.liliya-product-media__panel[data-liliya-media-panel="video"],
.liliya-product-media__panel[data-liliya-media-panel="3d"] {
	display: none;
}

@media (min-width: 993px) {
	.liliya-product-media,
	.liliya-product-media__panels,
	.liliya-product-media__panel,
	.liliya-product-media .woocommerce-product-gallery,
	.liliya-product-media .woocommerce-product-gallery__wrapper,
	.liliya-product-media .woocommerce-product-gallery__image,
	.liliya-product-media .flex-viewport {
		width: 100% !important;
		max-width: none !important;
		float: none !important;
	}

	.liliya-product-media .woocommerce-product-gallery {
		opacity: 1 !important;
	}

	.liliya-product-media .woocommerce-product-gallery__image {
		display: block;
		margin: 0;
	}

	.liliya-product-media .woocommerce-product-gallery__image a {
		display: block;
		width: 100%;
	}

	.liliya-product-media .woocommerce-product-gallery__image img,
	.liliya-product-media .wp-post-image,
	.liliya-product-media .woocommerce-product-gallery img {
		display: block !important;
		width: 100% !important;
		max-width: none !important;
		height: auto !important;
		object-fit: cover;
		border-radius: var(--radius-lg);
	}

	.liliya-product-media .woocommerce-product-gallery .flex-control-thumbs {
		display: flex;
		flex-wrap: wrap;
		gap: 0.5rem;
		margin: 0.75rem 0 0;
		padding: 0;
		width: 100%;
	}

	.liliya-product-media .woocommerce-product-gallery .flex-control-thumbs li {
		float: none !important;
		width: calc(25% - 0.4rem) !important;
		margin: 0 !important;
	}

	.liliya-product-media .woocommerce-product-gallery .flex-control-thumbs img {
		width: 100% !important;
		height: auto !important;
		object-fit: cover;
		border-radius: var(--radius-sm);
	}

	.liliya-product-media.has-tabs .liliya-product-media__tabs,
	.liliya-product-media.has-video .liliya-product-media__tabs {
		display: flex;
		width: 100%;
		gap: 0.35rem;
		margin: 0 0 0.85rem;
		padding: 0.3rem;
		border-radius: var(--radius-md);
		background: var(--color-bg-alt);
		border: 1px solid var(--color-border);
		box-shadow: 0 6px 18px var(--color-shadow);
		box-sizing: border-box;
	}

	.liliya-product-media__tab {
		appearance: none;
		border: 0;
		margin: 0;
		flex: 1 1 0;
		padding: 0.7rem 1rem;
		border-radius: calc(var(--radius-md) - 2px);
		background: transparent;
		color: var(--color-text-muted);
		font-family: var(--font-body);
		font-size: 0.95rem;
		font-weight: 600;
		letter-spacing: 0.02em;
		cursor: pointer;
		text-align: center;
		transition: background 0.2s ease, color 0.2s ease;
	}

	.liliya-product-media__tab:hover {
		color: var(--color-accent);
	}

	.liliya-product-media__tab.is-active {
		background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 55%, var(--color-accent) 100%);
		color: #fff;
	}

	.liliya-product-media__panel[hidden] {
		display: none !important;
	}

	.liliya-product-media__panel.is-active {
		display: block;
		width: 100%;
	}

	.liliya-product-media__panel[data-liliya-media-panel="video"].is-active,
	.liliya-product-media__panel[data-liliya-media-panel="3d"].is-active {
		display: block;
	}

	.liliya-product-media__video {
		position: relative;
		width: 100%;
		aspect-ratio: 1 / 1;
		border-radius: var(--radius-lg);
		overflow: hidden;
		background: #1a1215;
		border: 1px solid var(--color-border);
		box-shadow: 0 12px 36px var(--color-shadow);
	}

	.liliya-product-media__player,
	.liliya-product-media__iframe {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		border: 0;
		display: block;
		background: #000;
	}

	.liliya-product-media__player {
		object-fit: contain;
	}

	.liliya-product-media__3d {
		position: relative;
		width: 100%;
		aspect-ratio: 1 / 1;
		border-radius: var(--radius-lg);
		overflow: hidden;
		background: var(--color-bg-alt);
		border: 1px solid var(--color-border);
		box-shadow: 0 12px 36px var(--color-shadow);
		cursor: grab;
		user-select: none;
		touch-action: pan-y;
	}

	.liliya-product-media__3d.is-dragging {
		cursor: grabbing;
	}

	.liliya-product-media__3d-image {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		pointer-events: none;
	}

	.liliya-product-media__3d-hint {
		position: absolute;
		left: 50%;
		bottom: 0.85rem;
		transform: translateX(-50%);
		padding: 0.4rem 0.85rem;
		border-radius: 999px;
		background: rgba(45, 36, 40, 0.72);
		color: #fff;
		font-size: 0.8rem;
		font-weight: 500;
		pointer-events: none;
		white-space: nowrap;
	}

	.liliya-product-media__3d-data {
		display: none;
	}
}
