/**
 * LatePoint booking flow — EcoFlex brand layer.
 * Written against LatePoint 5.6.7 + Pro 1.5.0 as installed on
 * ecoflexdetailing.com (selectors verified on the live instant page).
 *
 * Delivery: enqueued normally for lightbox contexts AND attached to
 * LatePoint's own 'latepoint-main-front' handle so it prints on the
 * "clean" instant-booking page, which skips wp_head. See functions.php.
 *
 * Variables are set on html/body (not :root) so they beat LatePoint's
 * inline :root settings regardless of print order.
 */

/* ---------- LatePoint variables → EcoFlex tokens ---------- */
html.latepoint-clean,
body.latepoint,
body.latepoint-clean-body,
.latepoint-w {
	--latepoint-brand-primary: #8BE04F;
	--latepoint-body-color: #C6D9C6;
	--latepoint-headings-color: #F2F7EF;
	--latepoint-color-text-faded: #8CA18C;
	--latepoint-timeslot-selected-color: #8BE04F;
	--latepoint-calendar-weekday-label-color: #F2F7EF;
	--latepoint-calendar-weekday-label-bg: #131A15;
	--latepoint-side-panel-bg: #131A15;
	--latepoint-summary-panel-bg: #131A15;
	--latepoint-border-radius: 6px;
	--latepoint-border-radius-sm: 4px;
	--latepoint-border-radius-md: 6px;
	--latepoint-border-radius-lg: 8px;
}

/* ---------- page shell (instant booking page) ---------- */
body.latepoint-clean-body,
body.latepoint-clean-body.with-pattern {
	background-color: #0A0E0B !important;
	background-image: none !important;
}

.latepoint-booking-form-element {
	background-color: #0E130F !important;
	box-shadow: none !important;
	border: 1px solid rgba(190, 230, 190, 0.24) !important;
}

.latepoint-booking-form-element .latepoint-body,
.latepoint-booking-form-element .latepoint-form-w,
.latepoint-booking-form-element .latepoint-step-content,
.latepoint-booking-form-element .latepoint-footer {
	background-color: transparent !important;
}

.latepoint-booking-form-element .latepoint-footer {
	border-top: 1px solid rgba(190, 230, 190, 0.13) !important;
}

/* ---------- side panel (left) ---------- */
.latepoint-side-panel .latepoint-desc-title,
.latepoint-side-panel .latepoint-heading-w,
.latepoint-side-panel h2, .latepoint-side-panel h3 {
	color: #F2F7EF !important;
}
.latepoint-side-panel .latepoint-desc-content,
.latepoint-side-panel .latepoint-questions {
	color: #8CA18C !important;
}
.latepoint-side-panel a {
	color: #C6D9C6 !important;
}
.latepoint-side-panel a:hover {
	color: #A6EF72 !important;
}

/* ---------- headings ---------- */
.latepoint-w .os-heading-text,
.latepoint-w .latepoint-step-content h2,
.latepoint-w .latepoint-step-content h3 {
	color: #F2F7EF !important;
}

/* ---------- selectable rows (services, vehicle types, agents…) ---------- */
.latepoint-w .os-items .os-item .os-item-i {
	background: #131A15 !important;
	border: 1px solid rgba(190, 230, 190, 0.13) !important;
	color: #C6D9C6 !important;
	box-shadow: none !important;
}
.latepoint-w .os-items .os-item .os-item-i:hover,
.latepoint-w .os-items .os-item:focus .os-item-i {
	border-color: #8BE04F !important;
	box-shadow: 0 0 0 1px #8BE04F !important;
}
.latepoint-w .os-items .os-item.selected .os-item-i,
.latepoint-w .os-items .os-item.os-selected .os-item-i,
.latepoint-w .os-items .os-item .os-item-i.selected {
	background: #182219 !important;
	border-color: #8BE04F !important;
	box-shadow: 0 0 0 1px #8BE04F !important;
}
.latepoint-w .os-item-name-w,
.latepoint-w .os-item-name {
	color: #F2F7EF !important;
}
.latepoint-w .os-item-price-w,
.latepoint-w .os-item-price {
	color: #A6EF72 !important;
	font-variant-numeric: tabular-nums;
}

/* ---------- buttons ---------- */
.latepoint-btn.latepoint-btn-primary {
	background-color: #8BE04F !important;
	background-image: none !important;
	color: #0A0E0B !important;
	box-shadow: none !important;
	text-shadow: none !important;
}
.latepoint-btn.latepoint-btn-primary:hover {
	background-color: #A6EF72 !important;
	color: #0A0E0B !important;
}
.latepoint-btn.latepoint-btn-primary * {
	color: #0A0E0B !important;
}
.latepoint-btn.latepoint-btn-white:not(.latepoint-btn-link) {
	background-color: #182219 !important;
	color: #F2F7EF !important;
	border: 1px solid rgba(190, 230, 190, 0.24) !important;
	box-shadow: none !important;
}
.latepoint-btn.latepoint-btn-white.latepoint-btn-link,
.latepoint-btn.latepoint-btn-white.latepoint-btn-link span {
	color: #C6D9C6 !important;
	border-bottom-color: rgba(190, 230, 190, 0.4) !important;
}

/* ---------- summary panel (right) ---------- */
.latepoint-summary-w,
.latepoint-summary-w .os-summary-contents {
	background-color: #131A15 !important;
	color: #C6D9C6 !important;
}
.latepoint-summary-w .summary-header,
.latepoint-summary-w .summary-header-inner {
	background: transparent !important;
	background-image: none !important;
	border-bottom: 1px solid rgba(190, 230, 190, 0.13) !important;
}
.latepoint-summary-w .summary-header-label,
.latepoint-summary-w .summary-box-heading {
	color: #8CA18C !important;
}
.latepoint-summary-w .summary-box,
.latepoint-summary-w .summary-box-inner,
.latepoint-summary-w .summary-box-content {
	background: transparent !important;
	border-color: rgba(190, 230, 190, 0.13) !important;
	color: #F2F7EF !important;
}
.latepoint-summary-w .os-cart-item {
	color: #F2F7EF !important;
}
.latepoint-summary-w .summary-price-item-w {
	color: #C6D9C6 !important;
	border-color: rgba(190, 230, 190, 0.13) !important;
	font-variant-numeric: tabular-nums;
}
.latepoint-summary-w .summary-price-item-w.spi-total {
	color: #F2F7EF !important;
	border-top-color: rgba(190, 230, 190, 0.24) !important;
}
.latepoint-summary-w .summary-price-item-w.spi-total .spi-price {
	color: #A6EF72 !important;
}
.latepoint-summary-w .latepoint-add-another-item-trigger {
	color: #8BE04F !important;
}

/* ---------- form controls ---------- */
.latepoint-w .os-form-group.os-form-select-group .os-form-control,
.latepoint-w .os-form-group.os-form-textfield-group .os-form-control,
.latepoint-w .os-form-group.os-form-group-simple.os-form-textfield-group .os-form-control,
.latepoint-w .os-form-group.os-form-group-simple.os-form-select-group .os-form-control,
.latepoint-w .os-form-group.os-form-phonefield-group,
.latepoint-w .os-form-group .os-form-control {
	background-color: #0A0E0B !important;
	border-color: rgba(190, 230, 190, 0.24) !important;
	color: #F2F7EF !important;
}
.latepoint-w .os-form-group .os-form-control:focus {
	background-color: #0A0E0B !important;
	border-color: #8BE04F !important;
}
.latepoint-w .os-form-group .os-form-control::placeholder {
	color: #8CA18C !important;
}
.latepoint-w .os-form-group label {
	color: #8CA18C !important;
}

/* ---------- calendar & time slots ---------- */
.latepoint-w .os-monthly-calendar-days-w,
.latepoint-w .os-monthly-calendar-days {
	background: transparent !important;
}
.latepoint-w .os-day {
	color: #C6D9C6 !important;
}
.latepoint-w .os-day .os-day-box {
	color: inherit;
}
.latepoint-w .os-day.selected .os-day-box,
.latepoint-w .os-day.os-day-selected .os-day-box {
	background-color: #8BE04F !important;
	color: #0A0E0B !important;
}
.latepoint-w .os-day.os-day-passed,
.latepoint-w .os-day.os-not-in-month,
.latepoint-w .os-day.os-day-next-month,
.latepoint-w .os-day.os-day-prev-month {
	color: #4A574A !important;
	background-color: transparent !important;
}
.latepoint-w .timeslot,
.latepoint-w .os-timeslot {
	background-color: #131A15 !important;
	border-color: rgba(190, 230, 190, 0.13) !important;
	color: #C6D9C6 !important;
}
.latepoint-w .timeslot.selected,
.latepoint-w .os-timeslot.selected {
	background-color: #8BE04F !important;
	color: #0A0E0B !important;
}

/* ---------- progress / misc ---------- */
.latepoint-w .latepoint-progress {
	background-color: transparent !important;
}
.latepoint-w .latepoint-lightbox-close,
.latepoint-w .latepoint-lightbox-summary-trigger {
	color: #C6D9C6 !important;
	background: #182219 !important;
	border-color: rgba(190, 230, 190, 0.24) !important;
}

/* ---------- lightbox variant (booking opened on a normal page) ---------- */
.latepoint-lightbox-w {
	background: rgba(6, 9, 7, 0.85) !important;
	backdrop-filter: none !important;
}
