/**
 * Returns portal, in the site's own language (Rein 2026-10-20):
 *  - the quiz's layout: steps left-aligned on the left, a photo in a 26px-rounded card on the
 *    right, 1344px measure, 52px gap; one column without the photo below 1000px;
 *  - the quiz's progress ("STEP 1 OF 3", thin black bar), black Public Sans headings;
 *  - the product page's option cards: white, 1px black border, 26px radius, the 22px radio with
 *    a black dot; selected = grey fill + 2px black ring; badges are black pills on the border;
 *  - the theme's pill fields and black pill buttons; "Back" is an underlined link.
 * Tokens from the theme (--pv-*), with the literal values as fallbacks.
 */

.pvc-returns-page {
	--pvc-black: #000;
	--pvc-white: #fff;
	--pvc-grey: var(--pv-surface-background, #f8f7f3);
	--pvc-line: var(--pv-border-default, #e3ded4);
	--pvc-help: #555;
	padding: 2.5rem 1.25rem 5rem;
	color: var(--pvc-black);
}

.pvc-returns-page__inner {
	max-width: 1344px;
	margin: 0 auto;
	padding: 0 clamp(0rem, 3vw, 2.5rem);
}

@media (min-width: 1000px) {
	.pvc-returns-page__inner.has-media {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 52px;
		align-items: start;
	}
}

.pvc-returns-page__aside {
	position: sticky;
	top: 24px;
	height: min(640px, calc(100vh - 48px));
	border-radius: 26px;
	overflow: hidden;
	background: var(--pvc-grey);
}

.pvc-returns-page__aside img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media (max-width: 999px) {
	.pvc-returns-page__aside {
		display: none;
	}
}

/* the script hides follow-up questions with [hidden]; the rules below must not undo that */
.pvc-returns [hidden] {
	display: none !important;
}

.pvc-returns {
	max-width: 640px;
	font-family: var(--pv-font-body, 'Public Sans', system-ui, sans-serif);
}

/* ---- progress, headings ---- */
.pvc-returns__progress {
	margin-bottom: 2.25rem;
}

.pvc-returns__progress-label {
	display: block;
	margin-bottom: .5rem;
	font-size: .8125rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.pvc-returns__progress-bar {
	display: block;
	height: 6px;
	border-radius: 99px;
	background: var(--pvc-line);
	overflow: hidden;
}

.pvc-returns__progress-bar span {
	display: block;
	height: 100%;
	border-radius: 99px;
	background: var(--pvc-black);
	transition: width .3s ease;
}

.pvc-returns__title {
	margin: 0 0 .75rem;
	font-family: 'Public Sans', system-ui, sans-serif;
	font-size: clamp(1.75rem, 4vw, 2.5rem);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.pvc-returns__help,
.pvc-returns__intro {
	margin: 0 0 1.75rem;
	color: var(--pvc-help);
}

.pvc-returns__muted {
	margin: 10px 0 0;
	color: var(--pv-neutral-300, #727272);
	font-size: 14px;
}

.pvc-returns__flash {
	margin-bottom: 1.5rem;
	padding: 14px 20px;
	border-radius: 26px;
	background: var(--pv-status-error-bg, #f4e1e5);
	color: var(--pv-status-error-text, #a8364f);
}

.pvc-returns__note {
	margin: 0 0 1.5rem;
	padding: 14px 20px;
	border-radius: 26px;
	background: var(--pvc-grey);
	color: var(--pvc-black);
}

/* ---- the first step ---- */
.pvc-returns__perks {
	display: grid;
	gap: 10px;
	margin: 0 0 2rem;
	padding: 0;
	list-style: none;
}

.pvc-returns__perks li {
	position: relative;
	padding-left: 30px;
	line-height: 1.4;
}

.pvc-returns__perks li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .3em;
	width: 12px;
	height: 6px;
	border-left: 2px solid var(--pvc-black);
	border-bottom: 2px solid var(--pvc-black);
	transform: rotate(-45deg);
}

.pvc-returns__fields {
	display: grid;
	gap: 18px;
}

.pvc-returns__field {
	display: grid;
	gap: 8px;
	margin-top: 14px;
}

.pvc-returns__fields .pvc-returns__field {
	margin-top: 0;
}

.pvc-returns__field > span {
	font-size: 14px;
	font-weight: 600;
}

.pvc-returns__field input,
.pvc-returns__qty select {
	box-sizing: border-box;
	width: 100%;
	height: 48px;
	padding: 0 18px;
	border: 1px solid var(--pvc-black);
	border-radius: 999px;
	background: var(--pvc-white);
	font: inherit;
	color: inherit;
}

.pvc-returns__field input[type="file"] {
	height: auto;
	padding: 12px 18px;
}

.pvc-returns__field textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 12px 18px;
	border: 1px solid var(--pvc-black);
	border-radius: 20px;
	background: var(--pvc-white);
	font: inherit;
	color: inherit;
}

.pvc-returns__field input:focus,
.pvc-returns__field textarea:focus,
.pvc-returns__qty select:focus {
	outline: 2px solid var(--pvc-black);
	outline-offset: 2px;
}

.pvc-returns__turnstile {
	min-height: 65px;
}

.pvc-returns__wide {
	width: 100%;
	height: 50px;
	margin-top: 22px;
	font-size: 15px;
}

.pvc-returns__fine {
	margin-top: 14px;
	font-size: 13px;
}

.pvc-returns__fine a,
.pvc-returns__check a,
.pvc-returns__back {
	color: var(--pvc-black);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---- option cards (the product page's) ---- */
.pvc-returns__options {
	display: grid;
	gap: 14px;
}

.pvc-returns__option,
.pvc-returns__reason {
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
	box-sizing: border-box;
	width: 100%;
	padding: 20px 26px;
	border: 1px solid var(--pvc-black);
	border-radius: 26px;
	background: var(--pvc-white);
	color: var(--pvc-black);
	font: inherit;
	font-weight: 500;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
	transition: background .15s ease, box-shadow .15s ease;
}

.pvc-returns__option:hover,
.pvc-returns__reason:hover {
	background: var(--pvc-grey);
}

.pvc-returns__option:has(input:checked),
.pvc-returns__reason:has(input:checked) {
	background: var(--pvc-grey);
	box-shadow: inset 0 0 0 2px var(--pvc-black);
	font-weight: 700;
}

.pvc-returns__option:has(input:focus-visible),
.pvc-returns__reason:has(input:focus-visible),
.pvc-returns__option--go:focus-visible {
	outline: 2px solid var(--pvc-black);
	outline-offset: 3px;
}

.pvc-returns input[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	display: grid;
	flex: none;
	place-content: center;
	width: 22px;
	height: 22px;
	margin: 0;
	border: 1px solid var(--pvc-black);
	border-radius: 50%;
	background: var(--pvc-white);
	cursor: pointer;
}

.pvc-returns input[type="radio"]::before {
	content: "";
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--pvc-black);
	transform: scale(0);
	transition: transform .15s ease;
}

.pvc-returns input[type="radio"]:checked::before {
	transform: scale(1);
}

.pvc-returns input[type="checkbox"] {
	width: 20px;
	height: 20px;
	accent-color: var(--pvc-black);
}

/* "Return products" / "Report a problem": a whole card is the button */
.pvc-returns__option--go {
	flex-direction: column;
	align-items: flex-start;
	gap: 6px;
	padding-right: 60px;
}

.pvc-returns__option--go::after {
	content: "";
	position: absolute;
	right: 28px;
	top: 50%;
	width: 10px;
	height: 10px;
	border-top: 2px solid var(--pvc-black);
	border-right: 2px solid var(--pvc-black);
	transform: translateY(-50%) rotate(45deg);
}

.pvc-returns__option--go strong {
	font-size: 17px;
	font-weight: 700;
}

.pvc-returns__option--go span {
	color: var(--pvc-help);
	font-size: 14px;
	font-weight: 400;
}

/* refund / compensation choice: radio | title + text | amount, like the purchase options */
.pvc-returns__option--pick {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr) auto;
	align-items: start;
	gap: 0 12px;
	padding: 20px 24px;
}

.pvc-returns__option-body {
	display: grid;
	gap: 6px;
}

.pvc-returns__option-body strong {
	font-weight: 700;
	line-height: 1.35;
}

.pvc-returns__option-body span {
	color: var(--pvc-black);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
}

.pvc-returns__amount {
	font-weight: 400;
	line-height: 1.35;
	white-space: nowrap;
}

.pvc-returns__option--pick:has(input:checked) .pvc-returns__amount {
	font-weight: 700;
}

/* the product page's "Recommended": a black pill on the card's top edge */
.pvc-returns__tag {
	position: absolute;
	top: -16px;
	right: 28px;
	padding: 8px 12px;
	border-radius: 20px;
	background: var(--pvc-black);
	color: var(--pvc-white);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.2;
}

.pvc-returns__options:has(.pvc-returns__tag) {
	padding-top: 16px;
}

/* ---- products ---- */
.pvc-returns__items {
	display: grid;
	gap: 16px;
	margin-bottom: 16px;
}

.pvc-returns__item {
	padding: 22px 24px 24px;
	border-radius: 26px;
	background: var(--pvc-grey);
}

.pvc-returns__item.is-disabled {
	opacity: .7;
}

.pvc-returns__item-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px;
}

.pvc-returns__img {
	width: 72px;
	height: 72px;
	border-radius: 16px;
	background: var(--pvc-white);
	object-fit: contain;
}

.pvc-returns__item-text {
	display: grid;
	flex: 1 1 180px;
	gap: 2px;
	min-width: 0;
}

.pvc-returns__item-text strong {
	font-weight: 700;
}

.pvc-returns__item-text .pvc-returns__muted {
	margin: 0;
	font-size: 13px;
}

.pvc-returns__price {
	font-weight: 600;
}

.pvc-returns__qty {
	display: grid;
	gap: 6px;
	width: 110px;
	font-size: 13px;
	font-weight: 600;
}

.pvc-returns__badge {
	padding: 8px 14px;
	border-radius: 20px;
	background: var(--pvc-black);
	color: var(--pvc-white);
	font-size: 12px;
	line-height: 1.2;
	white-space: nowrap;
}

.pvc-returns__item-more {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--pvc-line);
}

.pvc-returns__reasons,
.pvc-returns__opened {
	display: grid;
	gap: 10px;
	margin: 0 0 18px;
	padding: 0;
	border: 0;
	min-width: 0;
}

.pvc-returns__reasons legend,
.pvc-returns__opened legend {
	margin-bottom: 12px;
	padding: 0;
	font-weight: 700;
}

.pvc-returns__reason {
	padding: 16px 22px;
}

.pvc-returns__subs {
	display: grid;
	gap: 8px;
	margin: 2px 0 6px 28px;
}

.pvc-returns__subs > span {
	color: var(--pvc-help);
	font-size: 13px;
}

.pvc-returns__reason--sub {
	padding: 12px 20px;
	border-radius: 20px;
	font-size: 15px;
}

/* ---- summary, done, plain cards ---- */
.pvc-returns__card {
	margin-bottom: 16px;
	padding: 24px 26px;
	border-radius: 26px;
	background: var(--pvc-grey);
}

.pvc-returns__card p:first-child {
	margin-top: 0;
}

.pvc-returns__summary {
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.pvc-returns__summary li {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--pvc-line);
}

.pvc-returns__summary li:first-child {
	padding-top: 0;
}

.pvc-returns__summary small {
	display: block;
	margin-top: 2px;
	color: var(--pvc-help);
	font-size: 13px;
}

.pvc-returns__totals {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px 16px;
	margin: 0 0 12px;
}

.pvc-returns__totals dt,
.pvc-returns__totals dd {
	margin: 0;
}

.pvc-returns__totals dd {
	text-align: right;
}

/* the confirmation: plain text under the heading, on the same left edge (no card) */
.pvc-returns__done p {
	margin: 0 0 14px;
}

.pvc-returns__done .pv-btn {
	height: 50px;
	margin-top: 6px;
	padding: 0 32px;
	font-size: 15px;
}

.pvc-returns__ref {
	font-weight: 700;
}

.pvc-returns__check {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-top: 18px;
}

/* ---- actions ---- */
.pvc-returns__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 24px;
	margin-top: 28px;
}

.pvc-returns__actions .pv-btn {
	height: 50px;
	padding: 0 32px;
	font-size: 15px;
}

@media (max-width: 640px) {
	.pvc-returns-page {
		padding-top: 1.5rem;
	}

	.pvc-returns__option,
	.pvc-returns__reason {
		padding: 16px 20px;
		border-radius: 20px;
	}

	.pvc-returns__option--pick {
		grid-template-columns: 22px minmax(0, 1fr);
	}

	.pvc-returns__option--pick .pvc-returns__amount {
		grid-column: 2;
		margin-top: 6px;
	}

	.pvc-returns__item {
		padding: 18px 18px 20px;
	}

	.pvc-returns__item-text {
		flex-basis: calc(100% - 88px);
	}

	.pvc-returns__qty {
		width: 100%;
	}

	.pvc-returns__subs {
		margin-left: 12px;
	}

	.pvc-returns__actions {
		flex-direction: column-reverse;
		align-items: stretch;
		gap: 16px;
		text-align: center;
	}

	.pvc-returns__actions .pv-btn {
		width: 100%;
	}
}
