/**
 * Rate Offers — guest-facing toggle for the booking widget
 *
 * Compact and theme-friendly. Uses existing HSC color tokens where
 * available; falls back to neutral grays. The featured (discounted)
 * option gets an accent border and a small "Save X%" pill.
 *
 * @package HavenStreamlineConnector
 * @since   3.13.0
 */

.hsc-rate-offers {
	border: 0;
	margin: 16px 0;
	padding: 0;
}

.hsc-rate-offers__legend {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	margin: 0 0 8px;
	padding: 0;
	text-transform: uppercase;
	color: var( --hsc-text-muted, #555 );
}

.hsc-rate-offers__slot {
	margin-top: 8px;
}

.hsc-rate-offers__slot[hidden] {
	display: none;
}

.hsc-rate-offers__hint {
	color: var( --hsc-text-muted, #6b6b6b );
	font-size: 12px;
	margin: 6px 0 0;
}

.hsc-rate-offers__seo-note {
	color: var( --hsc-text-muted, #6b6b6b );
	font-size: 12px;
	line-height: 1.45;
	margin: 8px 0 0;
}

.hsc-rate-offer {
	align-items: center;
	background: #fff;
	border: 1px solid var( --hsc-border-color, #d8d8d8 );
	border-radius: 8px;
	cursor: pointer;
	display: grid;
	gap: 4px 12px;
	grid-template-columns: auto 1fr auto;
	grid-template-areas:
		"radio title price"
		"radio sub   sub";
	margin-bottom: 8px;
	padding: 12px 14px;
	position: relative;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.hsc-rate-offer:hover {
	border-color: var( --hsc-color-accent, #b08d57 );
}

.hsc-rate-offer input[type="radio"] {
	accent-color: var( --hsc-color-accent, #b08d57 );
	grid-area: radio;
	margin: 0;
}

.hsc-rate-offer__title {
	font-weight: 600;
	grid-area: title;
}

.hsc-rate-offer__price {
	font-weight: 600;
	grid-area: price;
	text-align: right;
	white-space: nowrap;
}

.hsc-rate-offer__sub {
	color: var( --hsc-text-muted, #6b6b6b );
	font-size: 12px;
	grid-area: sub;
}

.hsc-rate-offer--selected {
	background: var( --hsc-bg-selected, #fcf8f1 );
	border-color: var( --hsc-color-accent, #b08d57 );
	box-shadow: 0 0 0 1px var( --hsc-color-accent, #b08d57 ) inset;
}

.hsc-rate-offer--featured {
	border-color: var( --hsc-color-accent, #b08d57 );
}

.hsc-rate-offer__badge {
	background: var( --hsc-color-accent, #b08d57 );
	border-radius: 999px;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 2px 8px;
	position: absolute;
	right: 12px;
	text-transform: uppercase;
	top: -10px;
}

/* Cancellation badge — non-refundable modifier */
.hsc-cancellation-badge--no-refund {
	color: #8a2a2a;
}
