/*
 * Adelaide Skip Bin Form Logic V4.1.2
 * Functional states only. All selectors are scoped to the booking form.
 */

/*
 * Paint-safe initial state. Elementor has used more than one field-group class
 * convention and may attach a field's custom CSS class to either the wrapper or
 * the control. These selectors cover all known variants until JavaScript writes
 * the authoritative active/inactive state.
 */
.adelaide-skip-bin-booking-form .elementor-field-group-waste_description:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_waste_description:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-permit_acknowledgement:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_permit_acknowledgement:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-access_issues:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_access_issues:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-access_other_details:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_access_other_details:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-gas_bottle_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_gas_bottle_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-mattress_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_mattress_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-television_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_television_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-tyre_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group-field_tyre_qty:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-conditional:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-waste-description:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-permit:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-access-issues:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-access-other:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-gas-bottle:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-mattress:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-television:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .elementor-field-group.asbh-condition-tyre:not(.asbh-logic-active),
.adelaide-skip-bin-booking-form .asbh-logic-hidden {
	display: none !important;
}

/* Modern Elementor/browser fallback when custom classes sit on an inner control. */
@supports selector(.elementor-field-group:has(.asbh-conditional)) {
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-conditional):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-waste-description):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-permit):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-access-issues):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-access-other):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-gas-bottle):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-mattress):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-television):not(.asbh-logic-active),
	.adelaide-skip-bin-booking-form .elementor-field-group:has(.asbh-condition-tyre):not(.asbh-logic-active) {
		display: none !important;
	}
}

.adelaide-skip-bin-booking-form .asbh-logic-field-error {
	display: block;
	width: 100%;
	font-size: max(16px, 1em);
}

/* Functional fallback when the optional presentation plugin is disabled. */
.adelaide-skip-bin-booking-form .asbh-guidance-card {
	width: 100%;
}

.adelaide-skip-bin-booking-form .asbh-guidance-card {
	overflow-wrap: anywhere;
}

.adelaide-skip-bin-booking-form .asbh-prohibited-notice {
	width: 100%;
	border-color: #1f7a4d;
	border-left-color: #1f7a4d;
	background: #edf8f2;
}

.adelaide-skip-bin-booking-form .asbh-guidance-list,
.adelaide-skip-bin-booking-form .asbh-price-lines {
	margin-bottom: 0;
}

.adelaide-skip-bin-booking-form [aria-invalid="true"] {
	outline-offset: 1px;
}

.adelaide-skip-bin-booking-form.asbh-logic-submitting {
	cursor: progress;
}

/* Pickup is intentionally unavailable until a valid delivery date exists. */
.adelaide-skip-bin-booking-form .asbh-date-dependent-disabled .elementor-field,
.adelaide-skip-bin-booking-form .asbh-date-dependent-disabled .elementor-field-textual,
.adelaide-skip-bin-booking-form .asbh-date-dependent-disabled .flatpickr-input {
	cursor: not-allowed;
	opacity: 0.62;
}


/* V4.1.2 conditional waste-guide switching and size-compatibility feedback. */
.adelaide-skip-bin-booking-form [data-asbh-waste-guide] [hidden] {
	display: none !important;
}

.adelaide-skip-bin-booking-form .asbh-size-availability-message {
	flex: 1 1 100%;
	width: 100%;
	margin: 8px 0 0;
	font-size: max(16px, 0.95em);
	font-weight: 650;
	line-height: 1.45;
}
