/**
 * Wildcard Rental Engine — shared brand theme (Phase 24.2).
 * Scoped under .wre-ui. Variables injected via wp_add_inline_style.
 */

.wre-ui {
	box-sizing: border-box;
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-ui *,
.wre-ui *::before,
.wre-ui *::after {
	box-sizing: border-box;
}

.wre-ui .wre-btn,
.wre-ui .wre-product-availability__submit,
.wre-ui .wre-availability-page__submit,
.wre-ui .wre-rental-calendar__clear,
.wre-ui .wre-recommendations__add,
.wre-ui .wre-recommendations__view {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.55em 1.1em;
	border: 1px solid var(--wre-color-primary, #c4a35a);
	border-radius: var(--wre-radius, 2px);
	background: var(--wre-color-primary, #c4a35a);
	/* Phase 26.33 — ordinary WRE primary buttons: black label text */
	color: #000;
	font-size: 0.95em;
	font-weight: 600;
	letter-spacing: 0.04em;
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
	box-shadow: none;
}

.wre-ui .wre-btn:not(.wre-btn--secondary):link,
.wre-ui .wre-btn:not(.wre-btn--secondary):visited,
.wre-ui a.wre-btn:not(.wre-btn--secondary):link,
.wre-ui a.wre-btn:not(.wre-btn--secondary):visited {
	color: #000;
}

.wre-ui .wre-btn:not(.wre-btn--secondary):hover,
.wre-ui .wre-product-availability__submit:hover,
.wre-ui .wre-availability-page__submit:hover,
.wre-ui .wre-rental-calendar__clear:hover,
.wre-ui .wre-recommendations__add:hover {
	background: var(--wre-color-secondary, var(--wre-color-primary-hover, #e0c878));
	border-color: var(--wre-color-secondary, var(--wre-color-primary-hover, #e0c878));
	color: #000;
}

.wre-ui .wre-btn:focus-visible,
.wre-ui .wre-product-availability__submit:focus-visible,
.wre-ui .wre-availability-page__submit:focus-visible,
.wre-ui .wre-rental-calendar__clear:focus-visible,
.wre-ui .wre-recommendations__add:focus-visible,
.wre-ui .wre-recommendations__view:focus-visible,
.wre-ui input:focus-visible,
.wre-ui button:focus-visible,
.wre-ui a:focus-visible {
	outline: 3px solid var(--wre-color-focus, #c4a35a);
	outline-offset: 2px;
}

.wre-ui .wre-btn--secondary,
.wre-ui .wre-availability-page__view,
.wre-ui .wre-recommendations__view {
	background: transparent;
	border: 1px solid var(--wre-color-primary, #c4a35a);
	color: var(--wre-color-primary, #c4a35a);
}

/*
 * Phase 26.34 — secondary interactive: light fill + dark text (always contrast).
 * Primary .wre-btn:hover is excluded above so it cannot fight these states.
 */
.wre-ui .wre-btn--secondary:hover,
.wre-ui .wre-btn--secondary:focus,
.wre-ui .wre-btn--secondary:focus-visible,
.wre-ui a.wre-btn--secondary:hover,
.wre-ui a.wre-btn--secondary:focus,
.wre-ui a.wre-btn--secondary:focus-visible,
.wre-ui a.wre-btn--secondary:visited:hover,
.wre-ui a.wre-btn--secondary:visited:focus,
.wre-ui .wre-availability-page__view:hover,
.wre-ui .wre-recommendations__view:hover,
.wre-ui .wre-recommendations__view:focus {
	background: var(--wre-color-light-accent, #faf7f0);
	border-color: var(--wre-color-primary-hover, #e0c878);
	color: var(--wre-color-text-dark, #1a1a1a);
}

.wre-ui a.wre-btn--secondary:visited {
	color: var(--wre-color-primary, #c4a35a);
}

.wre-ui input[type="date"],
.wre-ui input[type="number"],
.wre-ui input[type="text"],
.wre-ui .wre-rental-period__input,
.wre-ui .wre-product-availability__input,
.wre-ui .wre-availability-page__input {
	min-height: 44px;
	padding: 0.5em 0.65em;
	border: 1px solid var(--wre-color-field-border, #c9bfa8);
	border-radius: var(--wre-radius, 2px);
	background: var(--wre-color-field-bg, #fff);
	color: var(--wre-color-text-dark, #1a1a1a);
	font-size: 16px;
	line-height: 1.4;
}

.wre-ui .wre-heading,
.wre-ui h2,
.wre-ui h3,
.wre-ui legend {
	color: var(--wre-color-primary, #c4a35a);
}

.wre-ui .wre-muted,
.wre-ui .wre-product-availability__intro,
.wre-ui .wre-availability-page__intro,
.wre-ui .wre-rental-period__intro {
	color: var(--wre-color-muted, #6b6560);
}

.wre-ui .wre-status-ok {
	color: var(--wre-color-success, #2f6b3a);
}

.wre-ui .wre-status-bad {
	color: var(--wre-color-error, #8b2e2e);
}

/*
 * Phase 26.39 — Product-card text alignment (settings-driven).
 * Variable: --wre-product-card-text-align (center|left) on .wre-ui.
 * Action rows keep justify-content:center in their own rules.
 */
.wre-ui .wre-catalog__card-inner,
.wre-ui .wre-recommendations__card-inner,
.wre-ui .wre-byo__card,
.wre-ui .wre-availability-page__body,
.wre-ui.wre-current-product .related ul.products li.product,
.wre-ui.wre-current-product .upsells ul.products li.product {
	text-align: var(--wre-product-card-text-align, center);
}

.wre-ui .wre-catalog__description,
.wre-ui .wre-catalog__description *,
.wre-ui.wre-current-product .related ul.products li.product .woocommerce-loop-product__title,
.wre-ui.wre-current-product .upsells ul.products li.product .woocommerce-loop-product__title,
.wre-ui.wre-current-product .related ul.products li.product .price,
.wre-ui.wre-current-product .upsells ul.products li.product .price {
	text-align: inherit;
}
