/**
 * Stalosan cashback campaign: post-submission confirmation card.
 *
 * Only the success state lives here. The claim form card itself
 * (.sf-cashback-form-wrap) is styled in the /cashback page content, and is
 * deliberately left alone.
 *
 * Colours come from the existing Stalosan tokens. The success accent uses
 * --sf-success-soft / --sf-success-text (a muted olive already in the
 * palette) rather than a saturated "confirmation green", to keep the page
 * premium and agricultural.
 */

.sf-cashback-confirmation[hidden] {
	display: none;
}

.sf-cashback-confirmation {
	/* Matches .sf-cashback-form-wrap so the card does not jump width when it
	   replaces the form. */
	max-width: 600px;
	margin: 0 auto;

	/* Noticeably more vertical padding than the form card's 36px. */
	padding: 56px 40px;

	background: var(--sf-card);
	border: 1px solid var(--sf-border-soft);
	border-radius: var(--sf-radius-lg);
	box-shadow: var(--sf-shadow-soft);
	text-align: center;

	/* Fallback for browsers that ignore scrollIntoView block:center, and a
	   guard against the confirmation sitting under the site header. */
	scroll-margin-top: 120px;
}

.sf-cashback-confirmation:focus {
	outline: none;
}

.sf-cashback-confirmation:focus-visible {
	outline: 2px solid var(--sf-success-text);
	outline-offset: 4px;
}

.sf-cashback-confirmation__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin: 0 0 24px;
	border-radius: 50%;
	background: var(--sf-success-soft);
	color: var(--sf-success-text);
}

.sf-cashback-confirmation__icon svg {
	width: 26px;
	height: 26px;
	display: block;
}

.sf-cashback-confirmation__title {
	font-family: Georgia, Cambria, "Times New Roman", serif;
	font-weight: 400;
	font-size: clamp(26px, 3.2vw, 32px);
	line-height: 1.2;
	color: var(--sf-heading);
	margin: 0 0 20px;
}

.sf-cashback-confirmation__lead {
	font-size: 18px;
	line-height: 1.6;
	font-weight: 700;
	color: var(--sf-heading);
	margin: 0 0 18px;
}

.sf-cashback-confirmation__body {
	font-size: 17px;
	line-height: 1.7;
	color: var(--sf-body);
	max-width: 46ch;
	margin: 0 auto;
}

.sf-cashback-confirmation__reassurance {
	/* Stronger separation than a plain paragraph gap, so the final
	   reassurance reads as its own beat. */
	margin: 32px 0 0;
	padding: 24px 0 0;
	border-top: 1px solid var(--sf-border-soft);
	font-size: 17px;
	line-height: 1.6;
	font-weight: 700;
	color: var(--sf-success-text);
}

@media (max-width: 767px) {
	.sf-cashback-confirmation {
		padding: 44px 26px;
	}

	.sf-cashback-confirmation__body,
	.sf-cashback-confirmation__reassurance {
		font-size: 16px;
	}
}
