/*
 * Melegim – formularul de retur (/retur/ și blocul din pagina comenzii), Faza 1G.
 * Folosește tokens.css (culori, câmpuri de 52px, butoane de 48px, ținte de 44px); butoanele și câmpurile vin din base.css.
 * Clase: .mr-* (JavaScript: assets/js/returns.js).
 */

.melegim-retur {
	max-width: 72rem;
	margin: 0 auto;
	color: var(--m-ink);
	font-size: var(--m-text);
	line-height: var(--m-leading);
}

.melegim-retur .mr-step {
	margin: 0 0 0.4rem;
	font-size: var(--m-text-small);
	color: var(--m-muted);
}

.melegim-retur .mr-title {
	margin: 0 0 1.2rem;
	font-family: var(--m-font-serif);
	font-size: 2.8rem;
	font-weight: 400;
	line-height: var(--m-leading-heading);
}

.melegim-retur .mr-title:focus {
	outline: none;
}

.melegim-retur .mr-title:focus-visible {
	outline: 2px solid var(--m-ink);
	outline-offset: 4px;
}

.melegim-retur .mr-subtitle {
	margin: 2.4rem 0 0.8rem;
	font-size: 2rem;
	font-weight: 600;
}

.melegim-retur p {
	margin: 0 0 1.2rem;
}

/*
 * Textul de rezervă (§4.4) e în markup, ca pagina legală de retragere să nu rămână goală dacă returns.js nu pornește.
 * Se ascunde 3 s (animație de 0 s cu întârziere), ca să nu clipească înainte ca scriptul să-l înlocuiască; fără JS apare singur.
 */
@keyframes mr-fallback-show {
	from {
		visibility: hidden;
	}

	to {
		visibility: visible;
	}
}

.melegim-retur .melegim-retur__fallback-wrap {
	animation: mr-fallback-show 0s linear 3s both;
}

/* Formular și câmpuri */
.melegim-retur .mr-form {
	display: grid;
	gap: 1.6rem;
	max-width: 52rem;
}

.melegim-retur .mr-field {
	display: grid;
	gap: 0.6rem;
}

.melegim-retur .mr-field input[type="text"],
.melegim-retur .mr-field input[type="email"],
.melegim-retur .mr-field input[type="tel"],
.melegim-retur .mr-field select,
.melegim-retur .mr-field textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.melegim-retur .mr-field--qty select {
	max-width: 12rem;
}

.melegim-retur .mr-hint {
	margin: 0;
	font-size: var(--m-text-meta);
	color: var(--m-muted);
}

.melegim-retur .mr-hint--off {
	color: var(--m-ink-2);
}

.melegim-retur .mr-error {
	margin: 0;
	font-size: var(--m-text-meta);
	font-weight: 500;
	color: var(--m-error);
}

.melegim-retur .mr-alert {
	margin: 0 0 1.6rem;
	padding: 1.2rem 1.6rem;
	border: 1px solid var(--m-error);
	border-radius: var(--m-radius-s);
	background: var(--m-white);
	color: var(--m-error);
	font-weight: 500;
}

.melegim-retur .mr-notice {
	margin: 0 0 1.6rem;
	padding: 1.2rem 1.6rem;
	border-radius: var(--m-radius-s);
	background: var(--m-warning-bg);
	color: var(--m-warning);
}

.melegim-retur .mr-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
	margin-top: 2.4rem;
}

.melegim-retur .mr-btn,
.melegim-retur .button {
	min-height: var(--m-button);
}

/* Casete de bifat și butoane radio, cu ținta de cel puțin 44px */
.melegim-retur .mr-choice {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	min-height: var(--m-target);
	cursor: pointer;
}

.melegim-retur .mr-choice input[type="checkbox"],
.melegim-retur .mr-choice input[type="radio"] {
	flex: 0 0 auto;
	width: 2.4rem;
	height: 2.4rem;
	margin: 0;
	accent-color: var(--m-ink);
}

.melegim-retur .mr-choice input:disabled + span {
	color: var(--m-muted);
}

/* Lista de produse */
.melegim-retur .mr-lines,
.melegim-retur .mr-orders,
.melegim-retur .mr-photos,
.melegim-retur .mr-summary-lines,
.melegim-retur .mr-next,
.melegim-retur .mr-requests {
	margin: 0 0 1.6rem;
	padding: 0;
	list-style: none;
}

.melegim-retur .mr-next {
	padding-left: 2rem;
	list-style: disc;
}

.melegim-retur .mr-line {
	margin: 0 0 1.6rem;
	padding: 1.6rem;
	border: 1px solid var(--m-line);
	border-radius: var(--m-radius-m);
	background: var(--m-white);
}

.melegim-retur .mr-line__head {
	display: flex;
	gap: 1.6rem;
	align-items: flex-start;
	margin-bottom: 0.8rem;
}

.melegim-retur .mr-line__img {
	flex: 0 0 auto;
	width: 7.2rem;
	height: 7.2rem;
	border-radius: var(--m-radius-s);
	object-fit: cover;
}

.melegim-retur .mr-line__info p {
	margin: 0 0 0.2rem;
}

.melegim-retur .mr-line__name {
	font-weight: 600;
}

.melegim-retur .mr-line__meta,
.melegim-retur .mr-line__deadline {
	font-size: var(--m-text-meta);
	color: var(--m-muted);
}

.melegim-retur .mr-badge {
	display: inline-block;
	margin: 0 0 0.6rem;
	padding: 0.2rem 1rem;
	border-radius: 99px;
	background: var(--m-accent-tint);
	color: var(--m-accent-text);
	font-size: var(--m-text-small);
	font-weight: 600;
}

.melegim-retur .mr-line__panel {
	display: grid;
	gap: 1.6rem;
	margin-top: 1.2rem;
	padding-top: 1.6rem;
	border-top: 1px solid var(--m-line);
}

.melegim-retur .mr-kinds {
	margin: 0;
	padding: 0;
	border: 0;
	min-width: 0;
}

.melegim-retur .mr-kinds legend {
	margin-bottom: 0.4rem;
	padding: 0;
	font-size: var(--m-text-meta);
	font-weight: 500;
}

.melegim-retur .mr-kind {
	margin-bottom: 0.8rem;
}

.melegim-retur .mr-kind .mr-hint {
	padding-left: 3.6rem;
}

/* Pozele: câmpul de fișier e ascuns vizual, dar rămâne în ordinea tastaturii; eticheta arată ca un buton secundar */
.melegim-retur .mr-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.melegim-retur .mr-label {
	margin: 0;
	font-size: var(--m-text-meta);
	font-weight: 500;
}

.melegim-retur .mr-file {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: start;
	min-height: var(--m-button);
	padding: 1.2rem 2.4rem;
	border: 1px solid var(--m-ink);
	border-radius: var(--m-radius-s);
	background: transparent;
	color: var(--m-ink);
	font-size: var(--m-text);
	font-weight: 600;
	cursor: pointer;
}

.melegim-retur .mr-field--photos:focus-within .mr-file {
	outline: 2px solid var(--m-ink);
	outline-offset: 2px;
}

.melegim-retur .mr-photos {
	display: grid;
	gap: 1.2rem;
	margin: 0;
}

.melegim-retur .mr-photo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.2rem;
}

.melegim-retur .mr-photo__img {
	width: 6.4rem;
	height: 6.4rem;
	border-radius: var(--m-radius-s);
	object-fit: cover;
}

.melegim-retur .mr-photo__status {
	flex: 1 1 12rem;
	font-size: var(--m-text-meta);
	color: var(--m-muted);
}

/* Lista comenzilor, sumarul și succesul */
.melegim-retur .mr-orders li {
	margin-bottom: 0.8rem;
}

.melegim-retur .mr-order-link {
	display: flex;
	align-items: center;
	min-height: var(--m-target);
	padding: 0.8rem 1.6rem;
	border: 1px solid var(--m-line);
	border-radius: var(--m-radius-s);
	background: var(--m-white);
	color: var(--m-ink);
	text-decoration: none;
}

.melegim-retur .mr-summary {
	display: grid;
	grid-template-columns: minmax(0, 14rem) minmax(0, 1fr);
	gap: 0.8rem 1.6rem;
	margin: 0;
}

.melegim-retur .mr-summary dt {
	font-weight: 600;
}

.melegim-retur .mr-summary dd {
	margin: 0;
	overflow-wrap: anywhere;
}

.melegim-retur .mr-summary-lines li {
	margin-bottom: 0.6rem;
}

/* Numărul comenzii la pasul de confirmare (art. 11^1: datele care identifică contractul). */
.melegim-retur .mr-confirm-order {
	font-weight: 600;
}

.melegim-retur .mr-success {
	padding: 1.6rem;
	border-radius: var(--m-radius-s);
	background: var(--m-success-bg);
	color: var(--m-success);
	font-weight: 600;
}

.melegim-retur .mr-fallback {
	max-width: 52rem;
}

/* Blocul din pagina comenzii */
.melegim-retur--order .mr-subtitle {
	margin-top: 1.6rem;
}

@media (max-width: 600px) {
	.melegim-retur .mr-title {
		font-size: 2.4rem;
	}

	.melegim-retur .mr-summary {
		grid-template-columns: 1fr;
		gap: 0.2rem;
	}

	.melegim-retur .mr-summary dd {
		margin-bottom: 1rem;
	}

	.melegim-retur .mr-actions > * {
		flex: 1 1 100%;
	}

	.melegim-retur .mr-line {
		padding: 1.2rem;
	}
}
