.kce-field-wrap {
	margin: 0 0 1.5em;
	padding: 1.25em;
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	background: #fafafa;
}

.kce-field-wrap .kce-intro {
	margin: 0 0 0.85em;
	font-size: 0.95em;
	line-height: 1.5;
	color: #444;
}

.kce-field-wrap .kce-label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.4em;
	font-size: 0.9em;
}

.kce-field-wrap .kce-label .required {
	color: #c0392b;
}

.kce-field-wrap .kce-input {
	width: 100%;
	max-width: 420px;
	padding: 0.6em 0.75em;
	border: 1.5px solid #ccc;
	border-radius: 6px;
	font-size: 1em;
	box-sizing: border-box;
}

.kce-field-wrap .kce-input:focus {
	outline: none;
	border-color: #5b21b6;
}

.kce-status {
	margin-top: 0.6em;
	font-size: 0.9em;
	min-height: 1.2em;
}

.kce-status.kce-checking {
	color: #777;
}

.kce-status.kce-ok {
	color: #15803d;
	font-weight: 600;
}

.kce-status.kce-err {
	color: #b91c1c;
}

/* Visual cue when the add-to-cart button is gated. */
.single_add_to_cart_button.disabled,
form.cart button[type="submit"].disabled {
	opacity: 0.5;
	cursor: not-allowed;
}
