/*
 * Auction interface controls — loaded after the supplied catalog/card CSS.
 * Only the popup and closed notice are configurable. Other site forms are untouched.
 * Values come from Silent Auction > Appearance (sanitized CSS custom properties).
 */
#sc-bid-container.vpt-auction-ui {
	background: rgba(var(--vpt-ui-overlay-rgb, 0,0,0), var(--vpt-ui-overlay-opacity, .65));
	padding: 12px;
	overscroll-behavior: contain;
}
#sc-bid-container.vpt-auction-ui.is-open {
	align-items: flex-start;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window {
	width: min(100%, var(--vpt-ui-modal-width, 680px));
	max-width: var(--vpt-ui-modal-width, 680px);
	max-height: calc(100vh - 24px);
	max-height: calc(100dvh - 24px);
	margin: 0 auto;
	padding: var(--vpt-ui-modal-padding, 16px);
	background: var(--vpt-ui-modal-background, #fff);
	color: var(--vpt-ui-modal-text, #252525);
	border-radius: var(--vpt-ui-border-radius, 8px);
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 10px;
	padding: 0;
	background: var(--vpt-ui-heading-background, #fff);
}
#sc-bid-container.vpt-auction-ui #sc-bid-window #vpt-auction-modal-title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	padding: 0;
	font-size: var(--vpt-ui-heading-size, 24px);
	line-height: 1.2;
	color: var(--vpt-ui-heading-color, #154f69);
	overflow-wrap: anywhere;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window #sc-close-bid {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	float: none;
	margin: 0;
	padding: 6px 10px;
	min-height: 44px;
	width: auto;
	border: 1px solid currentColor;
	border-radius: 4px;
	color: var(--vpt-ui-close-text, #222) !important;
	background: var(--vpt-ui-close-background, #f5f5f5) !important;
	font-size: var(--vpt-ui-close-size, 16px);
	line-height: 1.2;
	cursor: pointer;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper {
	margin: 0 !important;
	color: var(--vpt-ui-modal-text, #252525);
	--gf-form-gap-y: var(--vpt-ui-field-gap, 10px);
	--gf-ctrl-size: 44px;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_fields {
	row-gap: var(--vpt-ui-field-gap, 10px) !important;
	column-gap: 12px;
	margin: 0;
	padding: 0;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gfield {
	margin-top: 0 !important;
	padding-top: 0;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window ul.gform_fields > li.gfield {
	margin-bottom: var(--vpt-ui-field-gap, 10px);
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper .gfield_label,
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper .gform-field-label,
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper label {
	color: var(--vpt-ui-label-color, #252525) !important;
	font-size: var(--vpt-ui-label-size, 14px) !important;
	line-height: 1.3;
	margin-bottom: 4px;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper .ginput_container {
	margin-top: 0 !important;
}
/* Do not change hidden controls, checkbox/radio sizing, CAPTCHA or file inputs. */
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="text"],
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="email"],
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="tel"],
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="number"],
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper select,
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper textarea {
	color: var(--vpt-ui-input-text, #222) !important;
	background: var(--vpt-ui-input-background, #fff) !important;
	font-size: var(--vpt-ui-input-size, 16px) !important;
	line-height: 1.3;
	padding: 8px 10px;
	min-height: 44px;
	max-width: 100%;
	box-sizing: border-box;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window #bid-highest-message,
#sc-bid-container.vpt-auction-ui #sc-bid-window #bid-highest-message * {
	color: var(--vpt-ui-note-text, #222) !important;
	font-size: var(--vpt-ui-note-size, 16px) !important;
	line-height: 1.35;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window #bid-highest-message {
	background: var(--vpt-ui-note-background, #eef4f6);
	padding: 8px 10px;
	margin: 0 0 8px;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_footer,
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_page_footer {
	margin: 12px 0 0 !important;
	padding: 0 !important;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="submit"],
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper button[type="submit"] {
	width: 100%;
	min-height: 44px;
	padding: 9px 14px;
	margin: 0;
	color: var(--vpt-ui-submit-text, #fff) !important;
	background: var(--vpt-ui-submit-background, #154f69) !important;
	border: 1px solid var(--vpt-ui-submit-background, #154f69);
	font-size: var(--vpt-ui-submit-size, 16px) !important;
	line-height: 1.3;
	border-radius: 4px;
	cursor: pointer;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper input[type="submit"]:hover:not(:disabled),
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper button[type="submit"]:hover:not(:disabled) {
	background: var(--vpt-ui-submit-hover, #0b3548) !important;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_wrapper [type="submit"]:disabled {
	opacity: .55;
	cursor: not-allowed;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-modal-status {
	margin: 0 0 8px;
	padding: 8px 10px;
	font-size: 16px;
	line-height: 1.35;
}
#sc-bid-container.vpt-auction-ui [hidden],
.vpt-auction-closed-banner[hidden],
.vpt-auction-closed-banner [hidden] {
	display: none !important;
}
/* In-flight validation/confirmation remains readable even when a close arrives. */
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_validation_errors,
#sc-bid-container.vpt-auction-ui #sc-bid-window .validation_message,
#sc-bid-container.vpt-auction-ui #sc-bid-window .gfield_validation_message,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-panel-error {
	color: #9b1c1c !important;
	font-size: 16px;
	line-height: 1.4;
}
#sc-bid-container.vpt-auction-ui #sc-bid-window .gform_confirmation_message {
	color: var(--vpt-ui-modal-text, #252525) !important;
	font-size: 16px;
	line-height: 1.4;
}
.vpt-auction-catalog .vpt-auction-closed-banner,
.vpt-auction-empty .vpt-auction-closed-banner {
	margin: 0 0 20px;
	padding: var(--vpt-ui-closed-padding, 20px);
	background: var(--vpt-ui-closed-background, #fff1f0);
	color: var(--vpt-ui-closed-text, #7b1e1e);
	border: 2px solid var(--vpt-ui-closed-border, #b42318);
	border-radius: var(--vpt-ui-border-radius, 8px);
	text-align: center;
	overflow-wrap: anywhere;
}
.vpt-auction-closed-banner .vpt-auction-closed-title {
	display: block;
	color: inherit;
	font-size: var(--vpt-ui-closed-size, 32px);
	font-weight: 700;
	line-height: 1.2;
}
.vpt-auction-closed-banner .vpt-auction-closed-detail {
	color: inherit;
	font-size: 16px;
	line-height: 1.4;
	margin: 8px 0 0;
}
@media (max-width: 640px) {
	#sc-bid-container.vpt-auction-ui { padding: 8px; }
	#sc-bid-container.vpt-auction-ui #sc-bid-window {
		max-height: calc(100vh - 16px);
		max-height: calc(100dvh - 16px);
		padding: min(var(--vpt-ui-modal-padding, 16px), 16px);
		scrollbar-gutter: auto;
	}
	#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-modal-header { gap: 8px; }
}
/* Never suppress native focus outlines or required/validation markers. */

.vpt-auction-catalog .vpt-auction-after-close-feedback {
	background: #f1f5f7;
	color: #252525;
	border-left: 4px solid #154f69;
	padding: 12px 16px;
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 20px;
}


/* Bid/status recovery controls. No effect on other site forms or auction cards. */
.vpt-auction-catalog .vpt-auction-status-recovery,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-status-recovery {
	margin: 0 0 12px;
	padding: 10px 12px;
	border-left: 4px solid #154f69;
	background: var(--vpt-ui-note-background, #eef4f6);
	color: var(--vpt-ui-note-text, #222) !important;
}
.vpt-auction-catalog .vpt-auction-status-recovery.has-error,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-status-recovery.has-error {
	border-left-color: #9b1c1c;
}
.vpt-auction-catalog .vpt-auction-status-recovery-message,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-status-recovery-message,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-rejected-bid p {
	margin: 0 0 8px;
	color: var(--vpt-ui-note-text, #222) !important;
	font-size: 16px !important;
	line-height: 1.4;
}
.vpt-auction-catalog .vpt-auction-retry-status,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-retry-status,
#sc-bid-container.vpt-auction-ui #sc-bid-window a.vpt-auction-retry-bid {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	max-width: 100%;
	padding: 8px 14px;
	border: 1px solid var(--vpt-ui-submit-background, #154f69);
	border-radius: 4px;
	background: var(--vpt-ui-submit-background, #154f69) !important;
	color: var(--vpt-ui-submit-text, #fff) !important;
	font-size: 16px !important;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	box-sizing: border-box;
	cursor: pointer;
}
.vpt-auction-catalog .vpt-auction-retry-status:hover:not(:disabled),
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-retry-status:hover:not(:disabled),
#sc-bid-container.vpt-auction-ui #sc-bid-window a.vpt-auction-retry-bid:hover {
	background: var(--vpt-ui-submit-hover, #0b3548) !important;
}
.vpt-auction-catalog .vpt-auction-retry-status:focus-visible,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-retry-status:focus-visible,
#sc-bid-container.vpt-auction-ui #sc-bid-window a.vpt-auction-retry-bid:focus-visible {
	outline: 3px solid #aa6400;
	outline-offset: 3px;
}
.vpt-auction-catalog .vpt-auction-retry-status:disabled,
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-retry-status:disabled {
	opacity: .65;
	cursor: wait;
}
.vpt-auction-catalog .vpt-auction-status-recovery[hidden],
.vpt-auction-catalog .vpt-auction-status-recovery [hidden],
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-status-recovery[hidden],
#sc-bid-container.vpt-auction-ui #sc-bid-window .vpt-auction-status-recovery [hidden] {
	display: none !important;
}
