:root {
	color-scheme: dark;
	--onecoach-bg: #151414;
	--onecoach-surface: #202121;
	--onecoach-surface-raised: #282a2a;
	--onecoach-input: #242525;
	--onecoach-border: #444747;
	--onecoach-text: #e5e0d8;
	--onecoach-muted: #aaa196;
	--onecoach-accent: #ea4335;
	--onecoach-accent-hover: #c93429;
	--onecoach-on-accent: #ffffff;
}

body#dark-mode,
body#dark-mode #wrapper {
	background-color: var(--onecoach-bg);
	color: var(--onecoach-text);
}

body#dark-mode #header:not(.transparent-header),
body#dark-mode #header.cloned,
body#dark-mode.page-template-template-dashboard #header {
	background-color: var(--onecoach-surface);
}

body#dark-mode h1,
body#dark-mode h2,
body#dark-mode h3,
body#dark-mode h4,
body#dark-mode h5,
body#dark-mode h6 {
	color: var(--onecoach-text);
}

body#dark-mode input,
body#dark-mode input[type="text"],
body#dark-mode input[type="password"],
body#dark-mode input[type="email"],
body#dark-mode input[type="number"],
body#dark-mode textarea,
body#dark-mode select,
body#dark-mode .select2-container--default .select2-selection--single,
body#dark-mode .select2-dropdown {
	background-color: var(--onecoach-input);
	border-color: var(--onecoach-border);
	color: var(--onecoach-text);
}

body#dark-mode input::placeholder,
body#dark-mode textarea::placeholder {
	color: var(--onecoach-muted);
}

/* Search discipline selector: selected value and every dropdown option. */
body#dark-mode .bootstrap-select.btn-group button,
body#dark-mode .bootstrap-select.btn-group .dropdown-toggle .filter-option,
body#dark-mode .bootstrap-select.btn-group .dropdown-menu li a,
body#dark-mode .bootstrap-select.btn-group .dropdown-menu li a span.text {
	color: var(--onecoach-text) !important;
}

body#dark-mode .bootstrap-select.btn-group .dropdown-menu li:not(.disabled) a:hover,
body#dark-mode .bootstrap-select.btn-group .dropdown-menu li:not(.disabled) a:focus,
body#dark-mode .bootstrap-select.btn-group .dropdown-menu li.selected a,
body#dark-mode .bootstrap-select.btn-group .dropdown-menu li.active a {
	background-color: var(--onecoach-surface-raised) !important;
	color: var(--onecoach-on-accent) !important;
}

body#dark-mode .listing-item-container,
body#dark-mode .dashboard-list-box,
body#dark-mode .message-content,
body#dark-mode .booking-widget,
body#dark-mode .boxed-widget {
	background-color: var(--onecoach-surface-raised);
}

/* Elementor sections whose editor-level light background overrides Listeo. */
body#dark-mode #header-container,
body#dark-mode .elementor-element.elementor-element-8c45452,
body#dark-mode .elementor-element.elementor-element-ff7acd2,
body#dark-mode.page-id-1250 .elementor-element.elementor-element-bf2502c,
body#dark-mode.page-id-1250 .elementor-element.elementor-element-2a914571,
body#dark-mode.page-id-1250 .elementor-element.elementor-element-7cfd342,
body#dark-mode.page-id-580 .elementor-element.elementor-element-7c7a21c4,
body#dark-mode.page-id-580 .elementor-element.elementor-element-320cfc99,
body#dark-mode.page-id-488 .elementor-element.elementor-element-7c7a21c4,
body#dark-mode.page-id-488 .elementor-element.elementor-element-a76b03f,
body#dark-mode.page-id-488 .elementor-element.elementor-element-19905ac,
body#dark-mode.page-id-488 .one-coach-pricing-section {
	background-color: var(--onecoach-bg) !important;
}

body#dark-mode .oc-step-card,
body#dark-mode .oc-feature-card,
body#dark-mode .onecoach-advantage-card,
body#dark-mode .one-coach-pricing-card,
body#dark-mode .one-coach-step-card,
body#dark-mode .oc-button-secondary {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode .oc-step-card p,
body#dark-mode .oc-feature-card p,
body#dark-mode .onecoach-advantage-card p,
body#dark-mode .one-coach-pricing-card p,
body#dark-mode .one-coach-step-card p {
	color: var(--onecoach-muted) !important;
}

body#dark-mode.page-id-1250 .elementor-element-616b99c7 p,
body#dark-mode.page-id-1250 .elementor-element-616b99c7 .elementor-icon-list-text,
body#dark-mode.page-id-488 .elementor-element-63cc085c p,
body#dark-mode.page-id-488 .elementor-image-box-description,
body#dark-mode.page-id-488 .one-coach-section-subtitle {
	color: var(--onecoach-muted) !important;
}

body#dark-mode .elementor-element-8c45452 p,
body#dark-mode .elementor-element-8c45452 a,
body#dark-mode .elementor-element-8c45452 .elementor-icon-list-text,
body#dark-mode .elementor-element-ff7acd2 p,
body#dark-mode .elementor-element-ff7acd2 a,
body#dark-mode .elementor-element-ff7acd2 span {
	color: var(--onecoach-muted) !important;
}

body#dark-mode .elementor-element-8c45452 a:hover,
body#dark-mode .elementor-element-ff7acd2 a:hover {
	color: var(--onecoach-text) !important;
}

body#dark-mode footer#colophon .elementor-widget-text-editor {
	color: var(--onecoach-muted) !important;
}

body#dark-mode footer#colophon .elementor-icon-list-icon i {
	color: var(--onecoach-accent) !important;
}

/* Primary actions stay on-brand instead of falling back to bright theme styles. */
body#dark-mode .oc-button-primary,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-accept {
	background: var(--onecoach-accent) !important;
	border-color: var(--onecoach-accent) !important;
	color: var(--onecoach-on-accent) !important;
}

body#dark-mode .oc-button-primary:hover,
body#dark-mode .oc-button-primary:focus,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-accept:hover,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-accept:focus {
	background: var(--onecoach-accent-hover) !important;
	border-color: var(--onecoach-accent-hover) !important;
	color: var(--onecoach-on-accent) !important;
}

body#dark-mode .cmplz-cookiebanner {
	background-color: var(--onecoach-surface) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode .cmplz-cookiebanner .cmplz-title,
body#dark-mode .cmplz-cookiebanner .cmplz-message,
body#dark-mode .cmplz-cookiebanner .cmplz-category-title,
body#dark-mode .cmplz-cookiebanner .cmplz-description {
	color: var(--onecoach-text) !important;
}

body#dark-mode .cmplz-cookiebanner .cmplz-category,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-deny,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-view-preferences,
body#dark-mode .cmplz-cookiebanner .cmplz-btn.cmplz-save-preferences {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode .cmplz-cookiebanner a {
	color: var(--onecoach-accent) !important;
}

/* Complianz cookie details page. */
body#dark-mode.cmplz-document .cookies-per-purpose {
	background-color: var(--onecoach-border) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode.cmplz-document .cookies-per-purpose > div {
	background-color: var(--onecoach-surface) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode.cmplz-document .cookies-per-purpose > .name-header,
body#dark-mode.cmplz-document .cookies-per-purpose > .retention-header,
body#dark-mode.cmplz-document .cookies-per-purpose > .function-header {
	background-color: var(--onecoach-surface-raised) !important;
}

/* FAQ cards and tabs are custom components with an embedded light palette. */
body#dark-mode .onecoach-faq-item {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
}

body#dark-mode .onecoach-faq-question,
body#dark-mode .onecoach-faq-title {
	color: var(--onecoach-text) !important;
}

body#dark-mode .onecoach-faq-description,
body#dark-mode .onecoach-faq-answer,
body#dark-mode .onecoach-faq-answer p {
	color: var(--onecoach-muted) !important;
}

body#dark-mode .onecoach-faq-tab {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}

body#dark-mode .onecoach-faq-tab.active,
body#dark-mode .onecoach-faq-tab:hover,
body#dark-mode .onecoach-faq-tab:focus {
	background-color: var(--onecoach-accent) !important;
	border-color: var(--onecoach-accent) !important;
	color: var(--onecoach-on-accent) !important;
}

/* Contact page custom blocks. */
body#dark-mode .onecoach-contact {
	background-color: var(--onecoach-bg) !important;
}

body#dark-mode .onecoach-contact-form,
body#dark-mode .onecoach-contact-info {
	background-color: var(--onecoach-surface) !important;
	border-color: var(--onecoach-border) !important;
}

body#dark-mode .onecoach-info-block {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
}

body#dark-mode .onecoach-social-link {
	background-color: var(--onecoach-surface-raised) !important;
	border: 1px solid var(--onecoach-border) !important;
}

body#dark-mode .onecoach-social-link svg {
	fill: var(--onecoach-accent) !important;
}

body#dark-mode .onecoach-contact-description,
body#dark-mode .onecoach-info-text,
body#dark-mode .onecoach-info-block p {
	color: var(--onecoach-muted) !important;
}

/* About page sections whose Elementor palette was authored for a light site. */
body#dark-mode.page-id-405 .elementor-element.elementor-element-4a749c02,
body#dark-mode.page-id-405 .elementor-element.elementor-element-feb6932,
body#dark-mode.page-id-405 .elementor-element.elementor-element-bf2502c,
body#dark-mode.page-id-405 .elementor-element.elementor-element-7c7a21c4 {
	background-color: var(--onecoach-bg) !important;
}

body#dark-mode.page-id-405 .elementor-widget-text-editor,
body#dark-mode.page-id-405 .elementor-widget-text-editor p,
body#dark-mode.page-id-405 .elementor-image-box-description {
	color: var(--onecoach-muted) !important;
}

body#dark-mode.page-id-405 .elementor-cta__button {
	background-color: var(--onecoach-accent) !important;
	border-color: var(--onecoach-accent) !important;
	color: var(--onecoach-on-accent) !important;
}

body#dark-mode.page-id-405 .elementor-cta__button:hover,
body#dark-mode.page-id-405 .elementor-cta__button:focus {
	background-color: var(--onecoach-accent-hover) !important;
	border-color: var(--onecoach-accent-hover) !important;
	color: var(--onecoach-on-accent) !important;
}

/* Image placeholders on coach recommendations must not flash light grey. */
body#dark-mode.single-listing .listing-item {
	background-color: var(--onecoach-surface-raised) !important;
}

/* WooCommerce notices can otherwise retain their default white panel. */
body#dark-mode .woocommerce-error,
body#dark-mode .woocommerce-info,
body#dark-mode .woocommerce-message,
body#dark-mode .wc-block-components-notice-banner {
	background-color: var(--onecoach-surface-raised) !important;
	border-color: var(--onecoach-border) !important;
	color: var(--onecoach-text) !important;
}
