.lp-bs-walkin-wrap {
	margin-top: 12px;
}
.lp-bs-btn-walkin {
	background: #2d7a4f;
	color: #fff;
}
.lp-bs-aff-msg {
	padding: 10px 16px;
	border-radius: 4px;
	margin-bottom: 10px;
}
.lp-bs-aff-valid {
	color: #1a7f37;
}
.lp-bs-aff-invalid {
	color: #b42318;
}

/* Hide the "Did you know you can create an account..." info box on the customer step */
.latepoint-booking-form-element .info-box {
	display: none !important;
}

/* Hide "New Customer / Already have an account?" tab switcher — keeps form on new-customer fields */
.latepoint-booking-form-element .os-step-tabs {
	display: none !important;
}

/* Preset-skipped steps: LP progress uses all_steps; JS marks these as hidden */
.latepoint-booking-form-element .latepoint-progress li.lp-bs-progress-hidden,
.latepoint-booking-form-element .latepoint-step-desc-library.lp-bs-progress-hidden,
.latepoint-booking-form-element .os-heading-text-library.lp-bs-progress-hidden {
	display: none !important;
}

/* selected_extra="0" — hide Service Extras in progress even before JS runs */
.latepoint-booking-form-element:has(input[name="restrictions[selected_extra]"][value="0"]) .latepoint-progress li[data-step-code="booking__service_extras"],
.latepoint-booking-form-element:has(input[name="restrictions[selected_extra]"][value="0"]) .latepoint-step-desc-library[data-step-code="booking__service_extras"],
.latepoint-booking-form-element:has(input[name="restrictions[selected_extra]"][value="0"]) .os-heading-text-library[data-step-code="booking__service_extras"],
.latepoint-booking-form-element:has(input[name="restrictions[lp_bs_hide_extras]"]) .latepoint-progress li[data-step-code="booking__service_extras"],
.latepoint-book-form-wrapper[data-selected-extra] .latepoint-progress li[data-step-code="booking__service_extras"],
.latepoint-book-form-wrapper[data-selected-extra] .latepoint-step-desc-library[data-step-code="booking__service_extras"],
.latepoint-book-form-wrapper[data-selected-extra] .os-heading-text-library[data-step-code="booking__service_extras"] {
	display: none !important;
}

/* selected_extra positive ID — also hide the picker from progress */
.latepoint-booking-form-element:has(input[name="restrictions[selected_extra]"]:not([value=""]):not([value="0"])) .latepoint-progress li[data-step-code="booking__service_extras"],
.latepoint-booking-form-element:has(input[name="restrictions[selected_extra]"]:not([value=""]):not([value="0"])) .latepoint-step-desc-library[data-step-code="booking__service_extras"] {
	display: none !important;
}

/* Walk-in / modern auth: hide OTP and continue-with alternatives once contact form is shown */
.latepoint-booking-form-element[data-lp-bs-shortcut] .latepoint-customer-otp-input-container:empty,
.latepoint-book-form-wrapper[data-lp-walkin] .alternative-login-option,
.latepoint-book-button-wrapper[data-lp-walkin] .alternative-login-option,
.latepoint-booking-form-element:has(input[name="lp_bs_walkin"]) .alternative-login-option,
.latepoint-booking-form-element:has(input[name="lp_bs_walkin"]) .os-social-or {
	display: none !important;
}

/* Hide "Contact Information / Not You? / Logout" header shown when customer is already logged in */
.latepoint-booking-form-element .step-customer-logged-in-header-w {
	display: none !important;
}

/* Duration price tile — discounted price display (strikethrough original + sale price) */
.os-duration-price.os-duration-price-has-discount {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 1px;
}
.os-duration-price-original {
	font-size: 0.75em;
	text-decoration: line-through;
	opacity: 0.55;
	line-height: 1;
}
.os-duration-price-sale {
	color: #16a34a;
	font-size: 0.95em;
	font-weight: 600;
	line-height: 1;
}

/* Block confirmation: replace LP checkmark with user-slash */
.summary-status-wrapper .ss-icon.lp-bs-block-confirm-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	line-height: 1;
}
.summary-status-wrapper .ss-icon.lp-bs-block-confirm-icon::before {
	content: none !important;
}
.summary-status-wrapper .ss-icon.lp-bs-block-confirm-icon .fa-user-slash {
	display: inline-block;
}
