/*
 * Melegim – pagina de produs, zona de cumpărare (spec §5.4).
 * Scara e mobil-întâi (de aici se comandă cel mai des); de la 922px (desktop în Astra) crește,
 * în blocul de la sfârșitul fișierului.
 */

/* Astra lasă 68px deasupra pozei pe mobil; aici cam un rând de text. */
.single-product #primary {
	margin-top: 1.6rem;
}

.woocommerce div.product .woocommerce-product-gallery {
	margin-bottom: 1.6rem;
}

/* Fără poză, galeria e goală: breadcrumb-ul urcă direct sub header. */
.woocommerce div.product .woocommerce-product-gallery--without-image {
	margin-bottom: 0;
}

/* Un singur rând: ultimul element e numele produsului, care e oricum titlul de dedesubt. */
.woocommerce div.product .summary .woocommerce-breadcrumb {
	overflow: hidden;
	margin-bottom: 1.2rem;
	font-size: 1.3rem;
	line-height: 1.5;
	color: var(--m-muted);
	white-space: nowrap;
	text-overflow: ellipsis;
}

/* WooCommerce dă linkurilor #777 (contrast 4,2:1 pe --m-ivory, sub 4,5:1). */
.woocommerce div.product .summary .woocommerce-breadcrumb a {
	color: var(--m-muted);
}

.woocommerce div.product .summary .woocommerce-breadcrumb a:hover {
	color: var(--m-ink);
}

.melegim-eyebrow {
	margin: 0 0 0.4rem;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--m-muted);
}

.woocommerce div.product .summary .product_title {
	margin-bottom: 1rem;
	font-size: 2rem;
	line-height: 1.25;
}

.woocommerce div.product .summary p.price,
.woocommerce div.product .summary span.price {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.8rem;
	margin-bottom: 0.8rem;
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--m-ink);
}

.woocommerce div.product .summary .price ins {
	order: 1;
	text-decoration: none;
	font-weight: 700;
}

.woocommerce div.product .summary .price del {
	order: 2;
	font-size: 1.6rem;
	font-weight: 400;
	color: var(--m-muted);
	opacity: 1;
}

.woocommerce div.product .summary .price .tiered-pricing-dynamic-price-wrapper {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 1rem;
}

/* Eticheta „Economisești X lei" */
.melegim-savings {
	display: inline-block;
	margin: 0 0 1.6rem;
	padding: 0.3rem 0.8rem;
	border-radius: var(--m-radius-s);
	background-color: var(--m-accent-tint);
	color: var(--m-accent-text);
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.5;
}

/* Subtitlul (descrierea scurtă) */
.woocommerce div.product .summary .woocommerce-product-details__short-description {
	margin-bottom: 1.6rem;
	font-size: 1.5rem;
	line-height: 1.55;
	color: var(--m-ink-2);
}

.woocommerce div.product .summary .woocommerce-product-details__short-description p {
	margin-bottom: 0.8rem;
}

.woocommerce div.product .summary .woocommerce-product-details__short-description > :last-child {
	margin-bottom: 0;
}

.woocommerce div.product .summary p.stock {
	margin-bottom: 1.2rem;
	font-size: 1.4rem;
}

.melegim-savings[hidden] {
	display: none;
}

/* Variante: swatch-uri cu numele culorii */
.woocommerce div.product form.cart .variations {
	margin-bottom: 1.6rem;
	border: 0;
}

.woocommerce div.product form.cart .variations th.label,
.woocommerce div.product form.cart .variations td.value {
	display: block;
	padding: 0;
}

.woocommerce div.product form.cart .variations label {
	display: block;
	margin-bottom: 0.8rem;
	font-size: 1.4rem;
	font-weight: 600;
}

.woocommerce div.product form.cart .variations .cfvsw-selected-label {
	display: none;
}

.cfvsw-swatches-container {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
}

.cfvsw-swatches-container .cfvsw-swatches-option {
	display: inline-flex;
	align-items: center;
	gap: 0.8rem;
	min-height: var(--m-target);
	padding: 0.4rem 1.2rem 0.4rem 0.4rem;
	border: 1px solid var(--m-line);
	border-radius: 999px;
	background-color: var(--m-white);
	cursor: pointer;
}

.cfvsw-swatches-container .cfvsw-swatches-option .cfvsw-swatch-inner {
	flex: 0 0 auto;
	width: 2.8rem;
	height: 2.8rem;
	border-radius: 50%;
	background-color: var(--m-stone);
}

/*
 * Swatch-urile-etichetă (mărime, dimensiune): textul e în .cfvsw-swatch-inner, deci pastilă cu text,
 * fără cerc. Pluginul pune inline border-radius (100% sau 5px), de aici !important.
 */
.cfvsw-swatches-container .cfvsw-swatches-option.cfvsw-label-option {
	padding: 0.4rem 1.6rem;
}

.cfvsw-swatches-container .cfvsw-swatches-option.cfvsw-label-option .cfvsw-swatch-inner {
	width: auto;
	height: auto;
	border-radius: 0;
	background-color: transparent;
	font-size: 1.4rem;
	color: var(--m-ink);
	white-space: nowrap;
}

.cfvsw-swatches-container .cfvsw-swatches-option {
	border-radius: 999px !important;
}

.melegim-swatch-name {
	font-size: 1.4rem;
	color: var(--m-ink);
	white-space: nowrap;
}

.cfvsw-swatches-container .cfvsw-swatches-option.cfvsw-selected-swatch {
	border-color: var(--m-ink);
	box-shadow: inset 0 0 0 1px var(--m-ink);
}

/* Cantitate + buton cu prețul, pe un rând; butonul ia restul lățimii. */
.woocommerce div.product form.cart:not(.variations_form),
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 1rem;
}

.woocommerce div.product form.cart div.quantity,
.woocommerce div.product form.cart .single_add_to_cart_button {
	float: none;
	margin: 0;
}

/* Astra: `.woocommerce-js div.product form.cart .button.single_add_to_cart_button { padding: 10px 20px }`. */
.woocommerce-js div.product form.cart .button.single_add_to_cart_button {
	flex: 1 1 0;
	min-height: 5.2rem;
	padding-left: 1.6rem;
	padding-right: 1.6rem;
	font-size: 1.6rem;
}

/*
 * Câmpurile din formular (opțiunile YayExtra, „Preț total" etc.) stau pe rândul lor, și la produsele cu variante:
 * altfel intrau pe rândul cantității și întindeau cantitatea și butonul pe toată înălțimea lor (halatul cu inițiale).
 */
.woocommerce div.product form.cart:not(.variations_form) > :not(.quantity):not(.single_add_to_cart_button),
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart > :not(.quantity):not(.single_add_to_cart_button) {
	flex-basis: 100%;
}

.woocommerce div.product form.cart .single_add_to_cart_button[aria-disabled="true"] {
	opacity: 0.55;
}

/* Sub buton, pe toată lățimea (cantitatea și butonul sunt flotante în WooCommerce). */
.melegim-variation-hint {
	clear: both;
	flex-basis: 100%;
	margin: 0;
	padding-top: 0.2rem;
	font-size: 1.4rem;
	color: var(--m-muted);
}

.melegim-variation-hint[hidden] {
	display: none;
}

.melegim-variation-hint--error {
	color: var(--m-error);
	font-weight: 500;
}

/* Opțiunea nealeasă, după click pe „Adaugă în coș" */
.woocommerce div.product form.cart .variations tr.melegim-variation-missing th.label label {
	color: var(--m-error);
}

.woocommerce div.product form.cart .variations tr.melegim-variation-missing .cfvsw-swatches-option {
	border-color: var(--m-error);
}

.melegim-variation-error {
	margin: 0.6rem 0 0;
	font-size: 1.4rem;
	font-weight: 500;
	color: var(--m-error);
}

/* Cutia de încredere */
.melegim-trust {
	margin: 2rem 0;
	padding: 1.2rem 1.6rem;
	border: 1px solid var(--m-line);
	border-radius: var(--m-radius-m);
	background-color: var(--m-white);
	list-style: none;
}

.melegim-trust__item {
	position: relative;
	padding: 0.5rem 0 0.5rem 2.8rem;
	font-size: 1.4rem;
	line-height: 1.5;
	color: var(--m-ink-2);
}

.melegim-trust__item::before {
	content: "";
	position: absolute;
	top: 1rem;
	left: 0.4rem;
	width: 1.2rem;
	height: 0.7rem;
	border-left: 2px solid var(--m-success);
	border-bottom: 2px solid var(--m-success);
	transform: rotate(-45deg);
}

.melegim-trust__item--shipping {
	font-weight: 600;
	color: var(--m-success);
}

/* Cantitatea la aceeași înălțime cu butonul; 16px, altfel iOS mărește pagina la atingere. */
.woocommerce div.product form.cart .quantity .qty {
	width: 6.4rem;
	height: 100%;
	min-height: 5.2rem;
	border-radius: var(--m-radius-s);
	font-size: 1.6rem;
}

/* SKU, categorii: câte unul pe rând. Etichetele sunt cuvinte-cheie fără spații („pernadinpufdegasca"),
   nu ajută clientul, deci nu se afișează. */
.woocommerce div.product .product_meta {
	padding-top: 0;
	font-size: 1.3rem;
	line-height: 1.6;
	color: var(--m-muted);
}

.woocommerce div.product .product_meta > span {
	display: block;
	margin: 0;
}

.woocommerce div.product .product_meta .tagged_as {
	display: none;
}

.woocommerce div.product .product_meta a {
	color: var(--m-ink-2);
}

.woocommerce div.product form.cart .reset_variations {
	display: inline-flex;
	align-items: center;
	min-height: var(--m-target);
	font-size: 1.4rem;
	color: var(--m-muted);
}

/* Până se alege ceva, WooCommerce îl ascunde cu visibility, deci ar ține 44px goi sub culori. */
.woocommerce div.product form.cart .reset_variations[style*="hidden"] {
	display: none;
}

/* Prețul variantei se repetă: prețul de sus îl actualizează pluginul Tiered Price Table,
   iar butonul arată deja „Adaugă în coș · X lei". Disponibilitatea („Stoc epuizat") rămâne. */
.woocommerce div.product form.cart .single_variation .woocommerce-variation-price {
	display: none;
}

/* Acordeonul (tab-urile Descriere / Informații suplimentare / Recenzii) */
.melegim-accordion {
	clear: both;
	margin: 3.2rem 0;
	border-top: 1px solid var(--m-line);
}

.melegim-accordion__item {
	border-bottom: 1px solid var(--m-line);
}

.melegim-accordion__heading {
	margin: 0;
	font-size: 1.9rem;
	line-height: 1.2;
}

.melegim-accordion__button,
.melegim-accordion__button:hover,
.melegim-accordion__button:focus {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 5.2rem;
	padding: 1.2rem 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--m-ink);
	font-family: var(--m-font-serif);
	font-size: 1.9rem;
	font-weight: 400;
	line-height: 1.2;
	text-align: left;
}

.melegim-accordion__button::after {
	content: "";
	flex: 0 0 auto;
	width: 1rem;
	height: 1rem;
	margin-right: 0.4rem;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.2s ease;
}

.melegim-accordion__button[aria-expanded="true"]::after {
	transform: rotate(-135deg);
}

.melegim-accordion__panel {
	padding: 0 0 2rem;
	font-size: 1.5rem;
	line-height: 1.65;
	color: var(--m-ink-2);
}

.melegim-accordion__panel :is(p, ul, ol, table) {
	margin-bottom: 1.2rem;
}

.melegim-accordion__panel :is(ul, ol) {
	margin-left: 2rem;
}

/* Titlurile din panou (ex. „Recenzii" de la WooCommerce) repetă butonul acordeonului. */
.melegim-accordion__panel :is(h2, h3) {
	margin-bottom: 1.2rem;
	font-size: 1.8rem;
}

.melegim-accordion__panel[hidden] {
	display: none;
}

/* „Se potrivește cu" */
.woocommerce div.product section.related > h2,
.woocommerce div.product section.upsells > h2 {
	margin-bottom: 1.6rem;
	font-size: 2.4rem;
}

/* Opțiunile YayExtra (inițiale, împachetare). Setarea pluginului „label font size" e 9px, cu !important inline. */
body .yayextra-option-field-name,
body .yayextra-total-price .total-price-title,
body .yayextra-extra-subtotal-price .total-price-title {
	font-size: var(--m-text-meta) !important;
	font-weight: 600 !important;
	color: var(--m-ink);
}

body .yayextra-option-field-wrap {
	margin-bottom: 1.6rem;
}

body .yayextra-option-field-label {
	font-size: 1.5rem;
}

body .yayextra-option-field-wrap .yayextra-addition-des {
	margin: 0.4rem 0 0;
	font-size: 1.4rem;
	color: var(--m-muted);
}

body .yayextra-option-field-wrap textarea {
	min-height: 8rem;
	font-size: 1.6rem; /* sub 16px, iOS mărește pagina la atingere */
}

/* Desktop: aceeași ordine, puțin mai mare; rezumatul nu se întinde peste ~520px. */
@media (min-width: 922px) {
	.single-product #primary {
		margin-top: 4rem;
	}

	.woocommerce div.product .summary {
		max-width: 52rem;
	}

	.woocommerce div.product .summary .woocommerce-breadcrumb {
		font-size: 1.4rem;
	}

	.melegim-eyebrow {
		font-size: 1.3rem;
	}

	.woocommerce div.product .summary .product_title {
		font-size: 2.4rem;
	}

	.woocommerce div.product .summary p.price,
	.woocommerce div.product .summary span.price {
		font-size: 2.8rem;
	}

	.woocommerce div.product .summary .price del {
		font-size: 1.8rem;
	}

	.melegim-savings,
	.woocommerce div.product .product_meta {
		font-size: 1.4rem;
	}

	.woocommerce div.product .summary .woocommerce-product-details__short-description,
	.melegim-trust__item,
	.melegim-accordion__panel {
		font-size: 1.6rem;
	}

	.melegim-accordion__heading,
	.melegim-accordion__button,
	.melegim-accordion__button:hover,
	.melegim-accordion__button:focus {
		font-size: 2.2rem;
	}

	.melegim-accordion__panel {
		max-width: 72rem;
	}

	.woocommerce div.product section.related > h2,
	.woocommerce div.product section.upsells > h2 {
		font-size: 3rem;
	}
}
