.wcsuite-gift-vouchers {
	--wcsuite-gift-voucher-accent: var(--wcsuite-widget-accent, #2271b1);
	--wcsuite-gift-voucher-border: #dcdcde;
	--wcsuite-gift-voucher-error: #b32d2e;
	--wcsuite-gift-voucher-muted: #646970;
	box-sizing: border-box;
	color: var(--wcsuite-widget-text, #1d2327);
	margin-inline: auto;
	max-width: 920px;
	width: 100%;
}

.wcsuite-gift-vouchers *,
.wcsuite-gift-vouchers *::before,
.wcsuite-gift-vouchers *::after {
	box-sizing: inherit;
}

.wcsuite-gift-vouchers__notice {
	border-left: 4px solid #dba617;
	background: #fcf9e8;
	margin: 0 0 20px;
	padding: 12px 16px;
}

.wcsuite-gift-vouchers__notice--success {
	background: #edfaef;
	border-left-color: #00a32a;
}

.wcsuite-gift-vouchers__notice--error {
	background: #fcf0f1;
	border-left-color: var(--wcsuite-gift-voucher-error);
}

.wcsuite-gift-vouchers__title {
	margin: 0 0 10px;
}

.wcsuite-gift-vouchers__intro {
	margin-bottom: 24px;
}

.wcsuite-gift-vouchers__intro > :first-child {
	margin-top: 0;
}

.wcsuite-gift-vouchers__form {
	display: grid;
	gap: 22px;
}

.wcsuite-gift-vouchers__fieldset {
	border: 0;
	margin: 0;
	min-width: 0;
	padding: 0;
}

.wcsuite-gift-vouchers__fieldset > legend,
.wcsuite-gift-vouchers__field > label,
.wcsuite-gift-vouchers__step > h3 {
	display: block;
	font-weight: 600;
	margin-bottom: 7px;
}

.wcsuite-gift-vouchers__step {
	display: grid;
	gap: 16px;
}

.wcsuite-gift-vouchers__step > h3 {
	font-size: 1.05em;
	margin: 0;
}

.wcsuite-gift-vouchers__help {
	color: var(--wcsuite-gift-voucher-muted);
	font-size: .9em;
	margin: 5px 0 0;
}

.wcsuite-gift-vouchers__validity {
	color: var(--wcsuite-gift-voucher-muted);
	font-size: .9em;
	margin: 6px 0 0;
}

.wcsuite-gift-vouchers__grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.wcsuite-gift-vouchers__field input,
.wcsuite-gift-vouchers__field textarea,
.wcsuite-gift-vouchers__field select {
	background: #fff;
	border: 1px solid var(--wcsuite-gift-voucher-border);
	border-radius: 6px;
	color: inherit;
	display: block;
	font: inherit;
	line-height: 1.4;
	padding: 11px 12px;
	width: 100%;
}

.wcsuite-gift-vouchers__field textarea {
	min-height: 120px;
	resize: vertical;
}

.wcsuite-gift-vouchers__field input:focus,
.wcsuite-gift-vouchers__field textarea:focus,
.wcsuite-gift-vouchers__field select:focus {
	border-color: var(--wcsuite-gift-voucher-accent);
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--wcsuite-gift-voucher-accent) 25%, transparent);
	outline: 2px solid transparent;
}

.wcsuite-gift-vouchers .has-error input,
.wcsuite-gift-vouchers .has-error textarea,
.wcsuite-gift-vouchers .has-error select {
	border-color: var(--wcsuite-gift-voucher-error);
}

.wcsuite-gift-vouchers__error {
	color: var(--wcsuite-gift-voucher-error);
	font-size: .9em;
	font-weight: 600;
	margin: 6px 0 0;
}

.wcsuite-gift-vouchers__optional {
	color: var(--wcsuite-gift-voucher-muted);
	font-size: .85em;
	font-weight: 400;
}

.wcsuite-gift-vouchers__radio-row,
.wcsuite-gift-vouchers__consent label {
	align-items: flex-start;
	display: flex;
	gap: 9px;
	margin-top: 10px;
}

.wcsuite-gift-vouchers__radio-row input,
.wcsuite-gift-vouchers__consent input {
	flex: 0 0 auto;
	margin-top: .25em;
}

.wcsuite-gift-vouchers__submit {
	appearance: none;
	background: var(--wcsuite-gift-voucher-accent);
	border: 1px solid var(--wcsuite-gift-voucher-accent);
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	justify-self: start;
	min-height: 44px;
	padding: 10px 22px;
}

.wcsuite-gift-vouchers__submit:disabled {
	cursor: not-allowed;
	opacity: .5;
}

.wcsuite-gift-vouchers__submit:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--wcsuite-gift-voucher-accent) 35%, transparent);
	outline-offset: 3px;
}

@media (max-width: 720px) {
	.wcsuite-gift-vouchers__grid {
		grid-template-columns: 1fr;
	}

	.wcsuite-gift-vouchers__submit {
		justify-self: stretch;
		width: 100%;
	}
}
