/**
 * Loyalty checkout panel — LAYOUT ONLY.
 *
 * Deliberately carries no colour, no border colour, no font family and no
 * type scale. This is a storefront surface: it is seen by our clients'
 * own customers, which puts it outside Iris's scope (tools/iris.md,
 * "Scope boundary — our authenticated clients only"), and the host theme
 * owns its palette. Shipping colours here would fight at-theme and
 * zecha-theme, which are branded differently on purpose.
 *
 * What is left is the minimum that keeps the control usable if a theme
 * styles nothing at all: the controls sit on one row, the feedback line
 * has room, and a request in flight is visibly inert.
 */

.gp-loyalty-checkout-panel__estimate,
.gp-loyalty-checkout-panel__level,
.gp-loyalty-checkout-panel__intro,
.gp-loyalty-checkout-panel__guest-note {
	margin: 0 0 0.5em;
}

.gp-loyalty-wallet {
	margin-top: 1em;
}

.gp-loyalty-wallet-state p {
	margin: 0 0 0.25em;
}

.gp-loyalty-wallet__controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em;
	margin-top: 0.75em;
}

.gp-loyalty-wallet__label {
	flex: 1 0 100%;
}

.gp-loyalty-wallet__input {
	width: 8em;
	max-width: 100%;
}

.gp-loyalty-wallet__feedback {
	margin-top: 0.5em;
}

.gp-loyalty-wallet__feedback:empty {
	display: none;
}

.gp-loyalty-wallet.is-busy {
	opacity: 0.6;
	pointer-events: none;
}

/* Cart-side read-only preview (PointsCartFee::buildFormHtml). */
.gp-loyalty-wallet-preview__heading,
.gp-loyalty-wallet-preview__balance,
.gp-loyalty-wallet-preview__applied,
.gp-loyalty-wallet-preview__note {
	margin: 0 0 0.25em;
}
