/* BOS Framework light/dark theme layer. */
:root,
html[data-bos-theme="light"] {
	--bos-page-bg: #f5f7fa;
	--bos-panel-bg: #ffffff;
	--bos-panel-soft-bg: #fafbfc;
	--bos-text: #101828;
	--bos-muted-text: #667085;
	--bos-heading-text: #344054;
	--bos-border: #d7dde5;
	--bos-border-soft: #edf0f3;
	--bos-topbar-bg: #127698;
	--bos-brandbar-bg: #ffffff;
	--bos-brandbar-border: #d7dde5;
	--bos-nav-bg: #127698;
	--bos-footer-bg: #127698;
	--bos-footer-text: #ffffff;
	--bos-nav-button-bg: #ffffff;
	--bos-nav-button-text: #101828;
	--bos-nav-button-hover: #eef4ff;
	--bos-input-bg: #ffffff;
	--bos-input-text: #101828;
	--bos-focus: #b9d6ff;
	--bos-shadow-soft: 0 1px 2px rgba(0,0,0,.05);
	--bos-accent: #127698;
	--bos-accent-soft: #e0f2fe;
	--bos-accent-border: #7dd3fc;
	--bos-accent-text: #0e7490;
	--bos-link: #0f6f8f;
	--bos-link-hover: #0b4f67;
	--bos-link-visited: #6d28d9;
	--bos-badge-bg: #e0f2fe;
	--bos-badge-border: #7dd3fc;
	--bos-badge-text: #0e7490;
	--bos-success-bg: #e7f7ed;
	--bos-success-border: #86efac;
	--bos-success-text: #146c2e;
	--bos-warning-bg: #fff4d7;
	--bos-warning-border: #fcd34d;
	--bos-warning-text: #8a5a00;
	--bos-danger-bg: #fde7e7;
	--bos-danger-border: #fca5a5;
	--bos-danger-text: #9b1c1c;
	--bos-card-info-bg: #eff6ff;
	--bos-card-info-border: #93c5fd;
	--bos-card-info-text: #1e3a8a;
	--bos-card-info-accent: #2563eb;
	--bos-card-success-bg: var(--bos-success-bg);
	--bos-card-success-border: var(--bos-success-border);
	--bos-card-success-text: var(--bos-success-text);
	--bos-card-success-accent: #16a34a;
	--bos-card-warning-bg: var(--bos-warning-bg);
	--bos-card-warning-border: var(--bos-warning-border);
	--bos-card-warning-text: var(--bos-warning-text);
	--bos-card-warning-accent: #d97706;
	--bos-card-danger-bg: var(--bos-danger-bg);
	--bos-card-danger-border: var(--bos-danger-border);
	--bos-card-danger-text: var(--bos-danger-text);
	--bos-card-danger-accent: #dc2626;
	--bos-card-provider-bg: #f5f3ff;
	--bos-card-provider-accent: #7c3aed;
	--bos-card-service-group-bg: #f0fdfa;
	--bos-card-service-group-accent: #0f766e;
	--bos-module-tm-accent: #2563eb;
	--bos-module-tm-soft: #dbeafe;
	--bos-module-tm-border: #93c5fd;
	--bos-module-tm-text: #1d4ed8;
	--bos-module-tm-panel: #eff6ff;
	--bos-module-ob-accent: #16a34a;
	--bos-module-ob-soft: #dcfce7;
	--bos-module-ob-border: #86efac;
	--bos-module-ob-text: #15803d;
	--bos-module-ob-panel: #ecfdf3;
}

html[data-bos-theme="dark"] {
	--bos-page-bg: #121820;
	--bos-panel-bg: #1b2430;
	--bos-panel-soft-bg: #202b38;
	--bos-text: #edf2f7;
	--bos-muted-text: #b8c2cc;
	--bos-heading-text: #f5f8fb;
	--bos-border: #3a4654;
	--bos-border-soft: #2c3744;
	--bos-topbar-bg: #0b4f67;
	--bos-brandbar-bg: #1b2430;
	--bos-brandbar-border: #3a4654;
	--bos-nav-bg: #0b4f67;
	--bos-footer-bg: #0b4f67;
	--bos-footer-text: #edf2f7;
	--bos-nav-button-bg: #223044;
	--bos-nav-button-text: #f5f8fb;
	--bos-nav-button-hover: #2d405a;
	--bos-input-bg: #111923;
	--bos-input-text: #f5f8fb;
	--bos-focus: #5b8def;
	--bos-shadow-soft: 0 1px 2px rgba(0,0,0,.35);
	--bos-accent: #0891b2;
	--bos-accent-soft: #164e63;
	--bos-accent-border: #0891b2;
	--bos-accent-text: #cffafe;
	--bos-link: #67e8f9;
	--bos-link-hover: #a5f3fc;
	--bos-link-visited: #c4b5fd;
	--bos-badge-bg: #164e63;
	--bos-badge-border: #0891b2;
	--bos-badge-text: #cffafe;
	--bos-success-bg: #102f22;
	--bos-success-border: #15803d;
	--bos-success-text: #bbf7d0;
	--bos-warning-bg: #3f2a18;
	--bos-warning-border: #9a3412;
	--bos-warning-text: #fed7aa;
	--bos-danger-bg: #3f1515;
	--bos-danger-border: #991b1b;
	--bos-danger-text: #fecaca;
	--bos-card-info-bg: #102a43;
	--bos-card-info-border: #2563eb;
	--bos-card-info-text: #bfdbfe;
	--bos-card-info-accent: #60a5fa;
	--bos-card-success-bg: var(--bos-success-bg);
	--bos-card-success-border: var(--bos-success-border);
	--bos-card-success-text: var(--bos-success-text);
	--bos-card-success-accent: #22c55e;
	--bos-card-warning-bg: var(--bos-warning-bg);
	--bos-card-warning-border: var(--bos-warning-border);
	--bos-card-warning-text: var(--bos-warning-text);
	--bos-card-warning-accent: #f59e0b;
	--bos-card-danger-bg: var(--bos-danger-bg);
	--bos-card-danger-border: var(--bos-danger-border);
	--bos-card-danger-text: var(--bos-danger-text);
	--bos-card-danger-accent: #ef4444;
	--bos-card-provider-bg: #25164a;
	--bos-card-provider-accent: #a78bfa;
	--bos-card-service-group-bg: #0f2f2c;
	--bos-card-service-group-accent: #2dd4bf;
	--bos-module-tm-accent: #2563eb;
	--bos-module-tm-soft: #1e3a5f;
	--bos-module-tm-border: #2563eb;
	--bos-module-tm-text: #bfdbfe;
	--bos-module-tm-panel: #102a43;
	--bos-module-ob-accent: #16a34a;
	--bos-module-ob-soft: #14532d;
	--bos-module-ob-border: #16a34a;
	--bos-module-ob-text: #bbf7d0;
	--bos-module-ob-panel: #0f2f22;
}

html[data-bos-accent="forest"] {
	--bos-accent: #3f7f78;
	--bos-accent-soft: #e3f2ef;
	--bos-accent-border: #9bc9c2;
	--bos-accent-text: #356b66;
	--bos-badge-bg: #e3f2ef;
	--bos-badge-border: #9bc9c2;
	--bos-badge-text: #356b66;
	--bos-topbar-bg: #3f7f78;
	--bos-brandbar-bg: #f5fbf9;
	--bos-brandbar-border: #b8d8d2;
	--bos-nav-bg: #3f7f78;
	--bos-footer-bg: #3f7f78;
	--bos-focus: #9bc9c2;
	--bos-nav-button-hover: #f2f8f6;
	--bos-link: #356b66;
	--bos-link-hover: #134e4a;
	--bos-link-visited: #4d7c0f;
	--bos-module-tm-accent: #0f766e;
	--bos-module-tm-soft: #ccfbf1;
	--bos-module-tm-border: #5eead4;
	--bos-module-tm-text: #0f766e;
	--bos-module-tm-panel: #f0fdfa;
	--bos-module-ob-accent: #65a30d;
	--bos-module-ob-soft: #ecfccb;
	--bos-module-ob-border: #bef264;
	--bos-module-ob-text: #4d7c0f;
	--bos-module-ob-panel: #f7fee7;
	--bos-card-info-bg: #f0fdfa;
	--bos-card-info-border: #5eead4;
	--bos-card-info-text: #134e4a;
	--bos-card-info-accent: #0f766e;
	--bos-card-provider-bg: #f7fee7;
	--bos-card-provider-accent: #65a30d;
	--bos-card-service-group-bg: #f0fdfa;
	--bos-card-service-group-accent: #0f766e;
}

html[data-bos-theme="dark"][data-bos-accent="forest"] {
	--bos-accent-soft: #223f3d;
	--bos-accent-border: #4f8f87;
	--bos-accent-text: #c9e7e2;
	--bos-badge-bg: #223f3d;
	--bos-badge-border: #4f8f87;
	--bos-badge-text: #c9e7e2;
	--bos-topbar-bg: #2e5f59;
	--bos-brandbar-bg: #1e3433;
	--bos-brandbar-border: #4f8f87;
	--bos-nav-bg: #2e5f59;
	--bos-footer-bg: #2e5f59;
	--bos-focus: #6fa8a1;
	--bos-nav-button-hover: #2b3f3d;
	--bos-link: #9bc9c2;
	--bos-link-hover: #c9e7e2;
	--bos-link-visited: #d9f99d;
	--bos-module-tm-soft: #134e4a;
	--bos-module-tm-border: #0d9488;
	--bos-module-tm-text: #ccfbf1;
	--bos-module-tm-panel: #0f2f2c;
	--bos-module-ob-soft: #365314;
	--bos-module-ob-border: #65a30d;
	--bos-module-ob-text: #d9f99d;
	--bos-module-ob-panel: #1f2f12;
	--bos-card-info-bg: #0f2f2c;
	--bos-card-info-border: #0d9488;
	--bos-card-info-text: #ccfbf1;
	--bos-card-info-accent: #2dd4bf;
	--bos-card-provider-bg: #1f2f12;
	--bos-card-provider-accent: #a3e635;
	--bos-card-service-group-bg: #0f2f2c;
	--bos-card-service-group-accent: #2dd4bf;
}

html[data-bos-accent="violet"] {
	--bos-accent: #74649b;
	--bos-accent-soft: #eeeaf5;
	--bos-accent-border: #bcb1d1;
	--bos-accent-text: #625485;
	--bos-badge-bg: #eeeaf5;
	--bos-badge-border: #bcb1d1;
	--bos-badge-text: #625485;
	--bos-topbar-bg: #74649b;
	--bos-brandbar-bg: #f7f5fb;
	--bos-brandbar-border: #cbc2dc;
	--bos-nav-bg: #74649b;
	--bos-footer-bg: #74649b;
	--bos-focus: #bcb1d1;
	--bos-nav-button-hover: #f4f1f8;
	--bos-link: #625485;
	--bos-link-hover: #4a3e68;
	--bos-link-visited: #8a4d67;
	--bos-module-tm-accent: #74649b;
	--bos-module-tm-soft: #eeeaf5;
	--bos-module-tm-border: #bcb1d1;
	--bos-module-tm-text: #625485;
	--bos-module-tm-panel: #f7f5fb;
	--bos-module-ob-accent: #9a647c;
	--bos-module-ob-soft: #f5eaf0;
	--bos-module-ob-border: #d8b2c2;
	--bos-module-ob-text: #7d4e63;
	--bos-module-ob-panel: #fbf5f8;
	--bos-card-info-bg: #f7f5fb;
	--bos-card-info-border: #bcb1d1;
	--bos-card-info-text: #4a3e68;
	--bos-card-info-accent: #74649b;
	--bos-card-provider-bg: #fbf5f8;
	--bos-card-provider-accent: #9a647c;
	--bos-card-service-group-bg: #f7f5fb;
	--bos-card-service-group-accent: #74649b;
}

html[data-bos-theme="dark"][data-bos-accent="violet"] {
	--bos-accent-soft: #3a3349;
	--bos-accent-border: #74649b;
	--bos-accent-text: #e4def0;
	--bos-badge-bg: #3a3349;
	--bos-badge-border: #74649b;
	--bos-badge-text: #e4def0;
	--bos-topbar-bg: #4f4369;
	--bos-brandbar-bg: #292431;
	--bos-brandbar-border: #74649b;
	--bos-nav-bg: #4f4369;
	--bos-footer-bg: #4f4369;
	--bos-focus: #9a8bb7;
	--bos-nav-button-hover: #363040;
	--bos-link: #cbc2dc;
	--bos-link-hover: #e4def0;
	--bos-link-visited: #d8b2c2;
	--bos-module-tm-soft: #3a3349;
	--bos-module-tm-border: #74649b;
	--bos-module-tm-text: #e4def0;
	--bos-module-tm-panel: #292431;
	--bos-module-ob-soft: #44303a;
	--bos-module-ob-border: #9a647c;
	--bos-module-ob-text: #edd6df;
	--bos-module-ob-panel: #2f242b;
	--bos-card-info-bg: #292431;
	--bos-card-info-border: #74649b;
	--bos-card-info-text: #e4def0;
	--bos-card-info-accent: #a79bc2;
	--bos-card-provider-bg: #2f242b;
	--bos-card-provider-accent: #c08aa2;
	--bos-card-service-group-bg: #292431;
	--bos-card-service-group-accent: #a79bc2;
}

html[data-bos-accent="ember"] {
	--bos-accent: #c2410c;
	--bos-accent-soft: #ffedd5;
	--bos-accent-border: #fdba74;
	--bos-accent-text: #c2410c;
	--bos-badge-bg: #ffedd5;
	--bos-badge-border: #fdba74;
	--bos-badge-text: #c2410c;
	--bos-topbar-bg: #c2410c;
	--bos-brandbar-bg: #fff7ed;
	--bos-brandbar-border: #fdba74;
	--bos-nav-bg: #c2410c;
	--bos-footer-bg: #c2410c;
	--bos-focus: #fdba74;
	--bos-nav-button-hover: #fff7ed;
	--bos-link: #c2410c;
	--bos-link-hover: #7c2d12;
	--bos-link-visited: #92400e;
	--bos-module-tm-accent: #c2410c;
	--bos-module-tm-soft: #ffedd5;
	--bos-module-tm-border: #fdba74;
	--bos-module-tm-text: #c2410c;
	--bos-module-tm-panel: #fff7ed;
	--bos-module-ob-accent: #b45309;
	--bos-module-ob-soft: #fef3c7;
	--bos-module-ob-border: #fcd34d;
	--bos-module-ob-text: #92400e;
	--bos-module-ob-panel: #fffbeb;
	--bos-card-info-bg: #fff7ed;
	--bos-card-info-border: #fdba74;
	--bos-card-info-text: #9a3412;
	--bos-card-info-accent: #c2410c;
	--bos-card-provider-bg: #fffbeb;
	--bos-card-provider-accent: #b45309;
	--bos-card-service-group-bg: #fff7ed;
	--bos-card-service-group-accent: #c2410c;
}

html[data-bos-theme="dark"][data-bos-accent="ember"] {
	--bos-accent-soft: #431407;
	--bos-accent-border: #c2410c;
	--bos-accent-text: #fed7aa;
	--bos-badge-bg: #431407;
	--bos-badge-border: #c2410c;
	--bos-badge-text: #fed7aa;
	--bos-topbar-bg: #7c2d12;
	--bos-brandbar-bg: #3f2a18;
	--bos-brandbar-border: #c2410c;
	--bos-nav-bg: #7c2d12;
	--bos-footer-bg: #7c2d12;
	--bos-focus: #f97316;
	--bos-nav-button-hover: #3f2a18;
	--bos-link: #fdba74;
	--bos-link-hover: #fed7aa;
	--bos-link-visited: #fde68a;
	--bos-module-tm-soft: #431407;
	--bos-module-tm-border: #c2410c;
	--bos-module-tm-text: #fed7aa;
	--bos-module-tm-panel: #3f2a18;
	--bos-module-ob-soft: #451a03;
	--bos-module-ob-border: #b45309;
	--bos-module-ob-text: #fde68a;
	--bos-module-ob-panel: #3f2a0c;
	--bos-card-info-bg: #3f2a18;
	--bos-card-info-border: #c2410c;
	--bos-card-info-text: #fed7aa;
	--bos-card-info-accent: #fb923c;
	--bos-card-provider-bg: #3f2a0c;
	--bos-card-provider-accent: #f59e0b;
	--bos-card-service-group-bg: #3f2a18;
	--bos-card-service-group-accent: #fb923c;
}

html[data-bos-accent="steel"] {
	--bos-accent: #56616f;
	--bos-accent-soft: #e8edf2;
	--bos-accent-border: #a7b1be;
	--bos-accent-text: #334155;
	--bos-badge-bg: #e8edf2;
	--bos-badge-border: #a7b1be;
	--bos-badge-text: #334155;
	--bos-topbar-bg: #56616f;
	--bos-brandbar-bg: #f8fafc;
	--bos-brandbar-border: #cbd5e1;
	--bos-nav-bg: #56616f;
	--bos-footer-bg: #56616f;
	--bos-focus: #a7b1be;
	--bos-nav-button-hover: #f1f5f9;
	--bos-link: #475569;
	--bos-link-hover: #1f2937;
	--bos-link-visited: #7f1d1d;
	--bos-module-tm-accent: #475569;
	--bos-module-tm-soft: #e2e8f0;
	--bos-module-tm-border: #94a3b8;
	--bos-module-tm-text: #334155;
	--bos-module-tm-panel: #f8fafc;
	--bos-module-ob-accent: #0f766e;
	--bos-module-ob-soft: #ccfbf1;
	--bos-module-ob-border: #5eead4;
	--bos-module-ob-text: #0f766e;
	--bos-module-ob-panel: #f0fdfa;
	--bos-card-info-bg: #f8fafc;
	--bos-card-info-border: #cbd5e1;
	--bos-card-info-text: #334155;
	--bos-card-info-accent: #475569;
	--bos-card-provider-bg: #f0fdfa;
	--bos-card-provider-accent: #0f766e;
	--bos-card-service-group-bg: #eff6ff;
	--bos-card-service-group-accent: #2563eb;
}

html[data-bos-theme="dark"][data-bos-accent="steel"] {
	--bos-accent-soft: #263241;
	--bos-accent-border: #64748b;
	--bos-accent-text: #e2e8f0;
	--bos-badge-bg: #263241;
	--bos-badge-border: #64748b;
	--bos-badge-text: #e2e8f0;
	--bos-topbar-bg: #334155;
	--bos-brandbar-bg: #202936;
	--bos-brandbar-border: #475569;
	--bos-nav-bg: #334155;
	--bos-footer-bg: #334155;
	--bos-focus: #94a3b8;
	--bos-nav-button-hover: #2c3746;
	--bos-link: #cbd5e1;
	--bos-link-hover: #f8fafc;
	--bos-link-visited: #fda4af;
	--bos-module-tm-soft: #263241;
	--bos-module-tm-border: #64748b;
	--bos-module-tm-text: #e2e8f0;
	--bos-module-tm-panel: #202936;
	--bos-module-ob-soft: #134e4a;
	--bos-module-ob-border: #0d9488;
	--bos-module-ob-text: #ccfbf1;
	--bos-module-ob-panel: #0f2f2c;
	--bos-card-info-bg: #202936;
	--bos-card-info-border: #64748b;
	--bos-card-info-text: #e2e8f0;
	--bos-card-info-accent: #94a3b8;
	--bos-card-provider-bg: #0f2f2c;
	--bos-card-provider-accent: #2dd4bf;
	--bos-card-service-group-bg: #102a43;
	--bos-card-service-group-accent: #60a5fa;
}

html[data-bos-accent="ruby"] {
	--bos-accent: #a84f63;
	--bos-accent-soft: #f7e8ec;
	--bos-accent-border: #d7a1ad;
	--bos-accent-text: #874254;
	--bos-badge-bg: #f7e8ec;
	--bos-badge-border: #d7a1ad;
	--bos-badge-text: #874254;
	--bos-topbar-bg: #a84f63;
	--bos-brandbar-bg: #fbf3f5;
	--bos-brandbar-border: #d7a1ad;
	--bos-nav-bg: #a84f63;
	--bos-footer-bg: #a84f63;
	--bos-focus: #d7a1ad;
	--bos-nav-button-hover: #fbf3f5;
	--bos-link: #874254;
	--bos-link-hover: #6f3343;
	--bos-link-visited: #7c3aed;
	--bos-module-tm-accent: #be123c;
	--bos-module-tm-soft: #ffe4e6;
	--bos-module-tm-border: #fda4af;
	--bos-module-tm-text: #be123c;
	--bos-module-tm-panel: #fff1f2;
	--bos-module-ob-accent: #7c3aed;
	--bos-module-ob-soft: #ede9fe;
	--bos-module-ob-border: #c4b5fd;
	--bos-module-ob-text: #6d28d9;
	--bos-module-ob-panel: #f5f3ff;
	--bos-card-info-bg: #fff1f2;
	--bos-card-info-border: #fda4af;
	--bos-card-info-text: #9f1239;
	--bos-card-info-accent: #be123c;
	--bos-card-provider-bg: #f5f3ff;
	--bos-card-provider-accent: #7c3aed;
	--bos-card-service-group-bg: #fff1f2;
	--bos-card-service-group-accent: #be123c;
}

html[data-bos-theme="dark"][data-bos-accent="ruby"] {
	--bos-accent-soft: #4c1223;
	--bos-accent-border: #be123c;
	--bos-accent-text: #fecdd3;
	--bos-badge-bg: #4c1223;
	--bos-badge-border: #be123c;
	--bos-badge-text: #fecdd3;
	--bos-topbar-bg: #881337;
	--bos-brandbar-bg: #2f1720;
	--bos-brandbar-border: #be123c;
	--bos-nav-bg: #881337;
	--bos-footer-bg: #881337;
	--bos-focus: #fb7185;
	--bos-nav-button-hover: #3f1c27;
	--bos-link: #fda4af;
	--bos-link-hover: #fecdd3;
	--bos-link-visited: #c4b5fd;
	--bos-module-tm-soft: #4c1223;
	--bos-module-tm-border: #be123c;
	--bos-module-tm-text: #fecdd3;
	--bos-module-tm-panel: #2f1720;
	--bos-module-ob-soft: #3b236c;
	--bos-module-ob-border: #7c3aed;
	--bos-module-ob-text: #ddd6fe;
	--bos-module-ob-panel: #25164a;
	--bos-card-info-bg: #2f1720;
	--bos-card-info-border: #be123c;
	--bos-card-info-text: #fecdd3;
	--bos-card-info-accent: #fb7185;
	--bos-card-provider-bg: #25164a;
	--bos-card-provider-accent: #a78bfa;
	--bos-card-service-group-bg: #2f1720;
	--bos-card-service-group-accent: #fb7185;
}

html[data-bos-accent="gold"] {
	--bos-accent: #9d7a34;
	--bos-accent-soft: #f3ecd9;
	--bos-accent-border: #cbb47c;
	--bos-accent-text: #7d6129;
	--bos-badge-bg: #f3ecd9;
	--bos-badge-border: #cbb47c;
	--bos-badge-text: #7d6129;
	--bos-topbar-bg: #9d7a34;
	--bos-brandbar-bg: #fbf7ec;
	--bos-brandbar-border: #cbb47c;
	--bos-nav-bg: #9d7a34;
	--bos-footer-bg: #9d7a34;
	--bos-focus: #cbb47c;
	--bos-nav-button-hover: #fbf7ec;
	--bos-link: #7d6129;
	--bos-link-hover: #5f481f;
	--bos-link-visited: #0f766e;
	--bos-module-tm-accent: #ca8a04;
	--bos-module-tm-soft: #fef3c7;
	--bos-module-tm-border: #fbbf24;
	--bos-module-tm-text: #a16207;
	--bos-module-tm-panel: #fffbeb;
	--bos-module-ob-accent: #0f766e;
	--bos-module-ob-soft: #ccfbf1;
	--bos-module-ob-border: #5eead4;
	--bos-module-ob-text: #0f766e;
	--bos-module-ob-panel: #f0fdfa;
	--bos-card-info-bg: #fffbeb;
	--bos-card-info-border: #fbbf24;
	--bos-card-info-text: #713f12;
	--bos-card-info-accent: #ca8a04;
	--bos-card-provider-bg: #f0fdfa;
	--bos-card-provider-accent: #0f766e;
	--bos-card-service-group-bg: #fffbeb;
	--bos-card-service-group-accent: #ca8a04;
}

html[data-bos-theme="dark"][data-bos-accent="gold"] {
	--bos-accent-soft: #3f3108;
	--bos-accent-border: #ca8a04;
	--bos-accent-text: #fde68a;
	--bos-badge-bg: #3f3108;
	--bos-badge-border: #ca8a04;
	--bos-badge-text: #fde68a;
	--bos-topbar-bg: #713f12;
	--bos-brandbar-bg: #302711;
	--bos-brandbar-border: #ca8a04;
	--bos-nav-bg: #713f12;
	--bos-footer-bg: #713f12;
	--bos-focus: #eab308;
	--bos-nav-button-hover: #3f3108;
	--bos-link: #fde68a;
	--bos-link-hover: #fef3c7;
	--bos-link-visited: #5eead4;
	--bos-module-tm-soft: #3f3108;
	--bos-module-tm-border: #ca8a04;
	--bos-module-tm-text: #fde68a;
	--bos-module-tm-panel: #302711;
	--bos-module-ob-soft: #134e4a;
	--bos-module-ob-border: #0d9488;
	--bos-module-ob-text: #ccfbf1;
	--bos-module-ob-panel: #0f2f2c;
	--bos-card-info-bg: #302711;
	--bos-card-info-border: #ca8a04;
	--bos-card-info-text: #fde68a;
	--bos-card-info-accent: #eab308;
	--bos-card-provider-bg: #0f2f2c;
	--bos-card-provider-accent: #2dd4bf;
	--bos-card-service-group-bg: #302711;
	--bos-card-service-group-accent: #eab308;
}

body {
	background: var(--bos-page-bg);
	color: var(--bos-text);
}

.header-container,
.heading {
	background-color: var(--bos-topbar-bg);
}

.tm-brandbar {
	background: var(--bos-brandbar-bg);
	border-bottom-color: var(--bos-brandbar-border);
}

.nav-container {
	background-color: var(--bos-nav-bg);
	border-color: var(--bos-brandbar-border);
}

.menulist {
	background-color: var(--bos-panel-bg);
}

.footer {
	background-color: var(--bos-footer-bg);
	color: var(--bos-footer-text);
}

.cc-release-version {
	display: inline-block;
	font-size: 11px;
	margin-top: 4px;
	opacity: 0.82;
}

/* Framework-wide themed surfaces. Many legacy pages still emit local card CSS.
   Use longhands so meaningful gradients and left-border cues can survive. */
[class^="tm-"][class*="-card"],
[class*=" tm-"][class*="-card"],
[class^="tm-"][class*="-panel"],
[class*=" tm-"][class*="-panel"],
[class^="tm-"][class*="-tile"],
[class*=" tm-"][class*="-tile"],
[class^="tm-"][class*="-section"],
[class*=" tm-"][class*="-section"],
[class^="tm-"][class*="-summary"],
[class*=" tm-"][class*="-summary"],
[class^="tm-"][class*="-empty"],
[class*=" tm-"][class*="-empty"],
.content-card,
.inset,
.home {
	background-color: var(--bos-panel-bg) !important;
	border-color: var(--bos-border) !important;
	box-shadow: var(--bos-shadow-soft) !important;
	color: var(--bos-text) !important;
}

[class^="tm-"][class*="-card"][class*="-note"],
[class*=" tm-"][class*="-card"][class*="-note"],
[class^="tm-"][class*="-note"],
[class*=" tm-"][class*="-note"],
[class^="tm-"][class*="-alert"],
[class*=" tm-"][class*="-alert"],
[class^="tm-"][class*="-message"],
[class*=" tm-"][class*="-message"],
[class^="tm-"][class*="-output"],
[class*=" tm-"][class*="-output"] {
	background-color: var(--bos-panel-soft-bg) !important;
	border-color: var(--bos-border) !important;
	color: var(--bos-text) !important;
}

[class^="tm-"][class*="-card"] h4,
[class*=" tm-"][class*="-card"] h4,
[class^="tm-"][class*="-card"] h5,
[class*=" tm-"][class*="-card"] h5,
[class^="tm-"][class*="-panel"] h4,
[class*=" tm-"][class*="-panel"] h4,
[class^="tm-"][class*="-panel"] h5,
[class*=" tm-"][class*="-panel"] h5,
[class^="tm-"][class*="-section"] h4,
[class*=" tm-"][class*="-section"] h4,
[class^="tm-"][class*="-section"] h5,
[class*=" tm-"][class*="-section"] h5 {
	color: var(--bos-heading-text) !important;
}

[class^="tm-"][class*="-meta"],
[class*=" tm-"][class*="-meta"],
[class^="tm-"][class*="-label"],
[class*=" tm-"][class*="-label"],
[class^="tm-"][class*="-copy"],
[class*=" tm-"][class*="-copy"],
[class^="tm-"][class*="-note"],
[class*=" tm-"][class*="-note"],
[class^="tm-"][class*="-card"] p,
[class*=" tm-"][class*="-card"] p,
[class^="tm-"][class*="-card"] small,
[class*=" tm-"][class*="-card"] small {
	color: var(--bos-muted-text) !important;
}

[class^="tm-"][class*="-card"],
[class*=" tm-"][class*="-card"],
[class^="tm-"][class*="-section"],
[class*=" tm-"][class*="-section"],
.content-card {
	border-left-color: var(--bos-accent) !important;
}

[class^="tm-"][class*="-info"],
[class*=" tm-"][class*="-info"],
[class^="tm-"][class*="-note"],
[class*=" tm-"][class*="-note"],
[class^="tm-"][class*="-message"],
[class*=" tm-"][class*="-message"],
[class^="tm-"][class*="-refresh"],
[class*=" tm-"][class*="-refresh"] {
	background-color: var(--bos-card-info-bg) !important;
	border-color: var(--bos-card-info-border) !important;
	border-left-color: var(--bos-card-info-accent) !important;
	color: var(--bos-card-info-text) !important;
}

[class^="tm-"][class*="-success"],
[class*=" tm-"][class*="-success"],
[class^="tm-"][class*="-good"],
[class*=" tm-"][class*="-good"],
[class^="tm-"][class*="-ok"],
[class*=" tm-"][class*="-ok"],
[class^="tm-"][class*="-ready"],
[class*=" tm-"][class*="-ready"],
[class^="tm-"][class*="-pass"],
[class*=" tm-"][class*="-pass"] {
	background-color: var(--bos-card-success-bg) !important;
	border-color: var(--bos-card-success-border) !important;
	border-left-color: var(--bos-card-success-accent) !important;
	color: var(--bos-card-success-text) !important;
}

[class^="tm-"][class*="-warning"],
[class*=" tm-"][class*="-warning"],
[class^="tm-"][class*="-warn"],
[class*=" tm-"][class*="-warn"],
[class^="tm-"][class*="-pending"],
[class*=" tm-"][class*="-pending"],
[class^="tm-"][class*="-attention"],
[class*=" tm-"][class*="-attention"] {
	background-color: var(--bos-card-warning-bg) !important;
	border-color: var(--bos-card-warning-border) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
	color: var(--bos-card-warning-text) !important;
}

[class^="tm-"][class*="-danger"],
[class*=" tm-"][class*="-danger"],
[class^="tm-"][class*="-error"],
[class*=" tm-"][class*="-error"],
[class^="tm-"][class*="-bad"],
[class*=" tm-"][class*="-bad"],
[class^="tm-"][class*="-fail"],
[class*=" tm-"][class*="-fail"],
[class^="tm-"][class*="-prod"],
[class*=" tm-"][class*="-prod"] {
	background-color: var(--bos-card-danger-bg) !important;
	border-color: var(--bos-card-danger-border) !important;
	border-left-color: var(--bos-card-danger-accent) !important;
	color: var(--bos-card-danger-text) !important;
}

[class^="tm-"][class*="-provider"],
[class*=" tm-"][class*="-provider"] {
	border-left-color: var(--bos-card-provider-accent) !important;
}

[class^="tm-"][class*="-sg"],
[class*=" tm-"][class*="-sg"],
[class^="tm-"][class*="-service-group"],
[class*=" tm-"][class*="-service-group"] {
	border-left-color: var(--bos-card-service-group-accent) !important;
}

.tm-module-tile-17 {
	background: linear-gradient(90deg, var(--bos-module-tm-panel) 0, var(--bos-panel-bg) 46%) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-module-tile-onboarding {
	background: linear-gradient(90deg, var(--bos-module-ob-panel) 0, var(--bos-panel-bg) 46%) !important;
	border-left-color: var(--bos-module-ob-accent) !important;
}

.tm-module-tile-18 {
	background: linear-gradient(90deg, var(--bos-card-provider-bg) 0, var(--bos-panel-bg) 46%) !important;
	border-left-color: var(--bos-card-provider-accent) !important;
}

html[data-bos-theme="dark"] .tm-module-tile-18 {
	background: linear-gradient(90deg, var(--bos-card-provider-bg) 0, var(--bos-panel-bg) 48%) !important;
}

/* Page-specific card roles that use local accent classes. */
.tm-clean-hero {
	border-left-color: var(--bos-card-success-accent) !important;
}

.tm-clean-hero.tm-clean-prod {
	border-left-color: var(--bos-card-danger-accent) !important;
}

.tm-clean-lane {
	background: var(--bos-panel-soft-bg) !important;
	border-color: var(--bos-border) !important;
}

.tm-clean-lane-provider {
	border-top-color: var(--bos-card-provider-accent) !important;
}

.tm-clean-lane-cqm {
	border-top-color: var(--bos-module-tm-accent) !important;
}

.tm-clean-grid .tm-clean-lane-ddnet,
.tm-clean-lane-ddnet {
	border-top-color: var(--bos-card-warning-accent) !important;
}

.tm-clean-card-provider {
	background: linear-gradient(180deg, var(--bos-card-provider-bg), var(--bos-panel-bg)) !important;
	border-left-color: var(--bos-card-provider-accent) !important;
}

.tm-clean-card-cqm {
	background: linear-gradient(180deg, var(--bos-module-tm-panel), var(--bos-panel-bg)) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-clean-grid .tm-clean-card-ddnet,
.tm-clean-card-ddnet {
	background: linear-gradient(180deg, var(--bos-card-warning-bg), var(--bos-panel-bg)) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
}

.tm-card-cache::before {
	background: var(--bos-module-tm-accent) !important;
}

.tm-behavior-cache {
	border-left: 4px solid var(--bos-module-tm-accent) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-card-notifier::before {
	background: var(--bos-card-service-group-accent) !important;
}

.tm-behavior-notifier {
	border-left: 4px solid var(--bos-card-service-group-accent) !important;
	border-left-color: var(--bos-card-service-group-accent) !important;
}

.tm-behavior-target {
	border-left: 4px solid var(--bos-card-warning-accent) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
}

.tm-behavior-card {
	background: var(--bos-panel-bg) !important;
	border-color: var(--bos-border) !important;
}

.tm-behavior-card h5 {
	border-bottom-color: var(--bos-border) !important;
	color: var(--bos-heading-text) !important;
}

.tm-behavior-cache h5,
.tm-behavior-notifier h5,
.tm-behavior-target h5 {
	background: var(--bos-panel-soft-bg) !important;
}

.tm-tunctl-card {
	background: linear-gradient(135deg, var(--bos-module-tm-soft) 0, var(--bos-module-tm-panel) 44%, var(--bos-panel-bg) 100%) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-tunctl-backup {
	background: linear-gradient(135deg, var(--bos-card-provider-bg) 0, var(--bos-panel-bg) 58%) !important;
	border-left-color: var(--bos-card-provider-accent) !important;
}

.tm-gre-note,
.tm-map-refresh-result {
	background: var(--bos-card-info-bg) !important;
	border-color: var(--bos-card-info-border) !important;
	border-left-color: var(--bos-card-info-accent) !important;
	color: var(--bos-card-info-text) !important;
}

.tm-gre-stat {
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-gre-validation,
.tm-gre-validation-empty,
.tm-gre-validation-pass {
	border-left-color: var(--bos-card-success-accent) !important;
}

.tm-gre-validation-empty {
	background: var(--bos-card-success-bg) !important;
	border-color: var(--bos-card-success-border) !important;
	color: var(--bos-card-success-text) !important;
}

.tm-gre-validation-item-warning,
.tm-gre-validation-warning {
	border-left-color: var(--bos-card-warning-accent) !important;
}

.tm-gre-validation-item-error,
.tm-gre-validation-error {
	border-left-color: var(--bos-card-danger-accent) !important;
}

.tm-map-note {
	background: var(--bos-card-service-group-bg) !important;
	border-color: var(--bos-card-service-group-accent) !important;
	border-left-color: var(--bos-card-service-group-accent) !important;
	color: var(--bos-card-service-group-accent) !important;
}

.tm-map-alert {
	background: var(--bos-card-warning-bg) !important;
	border-color: var(--bos-card-warning-border) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
	color: var(--bos-card-warning-text) !important;
}

.tm-backup-card,
.tm-help-card,
.tm-help-detail,
.tm-maint-card,
.tm-preplan-card,
.tm-plan-card,
.tm-ddnet-summary-card,
.tm-ddnet-request-card,
.tm-ddnet-side-card {
	background: var(--bos-panel-bg) !important;
	border-color: var(--bos-border) !important;
	box-shadow: var(--bos-shadow-soft) !important;
	color: var(--bos-text) !important;
}

.tm-backup-storage,
.tm-plan-card-tunnel,
.tm-preplan-card-tunnel,
.tm-ddnet-summary-card,
.tm-ddnet-request-card,
.tm-help-blue {
	background: linear-gradient(135deg, var(--bos-module-tm-panel) 0, var(--bos-panel-bg) 58%) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

.tm-backup-files,
.tm-backup-result,
.tm-preplan-card-site,
.tm-plan-card-targets,
.tm-help-green,
.tm-help-teal {
	border-left-color: var(--bos-card-service-group-accent) !important;
}

.tm-maint-ddnet,
.tm-ddnet-side-card,
.tm-help-orange {
	background: linear-gradient(135deg, var(--bos-card-warning-bg) 0, var(--bos-panel-bg) 58%) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
}

.tm-plan-card-pools,
.tm-preplan-card-dhcp,
.tm-help-purple {
	background: linear-gradient(135deg, var(--bos-card-provider-bg) 0, var(--bos-panel-bg) 58%) !important;
	border-left-color: var(--bos-card-provider-accent) !important;
}

.tm-backup-result-error,
.tm-help-red {
	border-left-color: var(--bos-card-danger-accent) !important;
}

#admin-add-qm .tm-qm-card-location,
#admin-add-qm .tm-qm-card-cm {
	background: linear-gradient(180deg, var(--bos-module-tm-panel), var(--bos-panel-bg)) !important;
	border-color: var(--bos-module-tm-border) !important;
	border-left-color: var(--bos-module-tm-accent) !important;
}

#admin-add-qm .tm-qm-card-service,
#admin-add-qm .tm-qm-card-stb {
	background: linear-gradient(180deg, var(--bos-card-provider-bg), var(--bos-panel-bg)) !important;
	border-color: var(--bos-card-provider-accent) !important;
	border-left-color: var(--bos-card-provider-accent) !important;
}

#admin-add-qm .tm-qm-card-host,
#admin-add-qm .tm-qm-card-rpd {
	background: linear-gradient(180deg, var(--bos-card-service-group-bg), var(--bos-panel-bg)) !important;
	border-color: var(--bos-card-service-group-accent) !important;
	border-left-color: var(--bos-card-service-group-accent) !important;
}

#admin-add-qm .tm-qm-card-mta {
	background: linear-gradient(180deg, var(--bos-card-warning-bg), var(--bos-panel-bg)) !important;
	border-color: var(--bos-card-warning-border) !important;
	border-left-color: var(--bos-card-warning-accent) !important;
}

#admin-add-qm .tm-qm-card-inactive {
	background: linear-gradient(180deg, var(--bos-panel-soft-bg), var(--bos-panel-bg)) !important;
	border-color: var(--bos-border) !important;
	border-left-color: var(--bos-muted-text) !important;
}

#admin-add-qm .tm-qm-card-location th,
#admin-add-qm .tm-qm-card-cm th {
	background: var(--bos-module-tm-soft) !important;
	color: var(--bos-module-tm-text) !important;
}

#admin-add-qm .tm-qm-card-service th,
#admin-add-qm .tm-qm-card-stb th {
	background: var(--bos-card-provider-bg) !important;
	color: var(--bos-card-provider-accent) !important;
}

#admin-add-qm .tm-qm-card-host th,
#admin-add-qm .tm-qm-card-rpd th {
	background: var(--bos-card-service-group-bg) !important;
	color: var(--bos-card-service-group-accent) !important;
}

#admin-add-qm .tm-qm-card-mta th {
	background: var(--bos-card-warning-bg) !important;
	color: var(--bos-card-warning-text) !important;
}

[class^="tm-"][class*="-badge"],
[class*=" tm-"][class*="-badge"],
[class^="tm-"][class*="-pill"],
[class*=" tm-"][class*="-pill"],
[class^="tm-"][class*="-env"],
[class*=" tm-"][class*="-env"],
.tm-brand-mark {
	background: var(--bos-badge-bg) !important;
	border-color: var(--bos-badge-border) !important;
	color: var(--bos-badge-text) !important;
}

.tm-good-pill,
.tm-status-pill.tm-ok,
.tm-ok .tm-target-pill,
.tm-ddnet-tool-ok,
.tm-provider-pill.tm-ok,
.tm-gre-validation-pass {
	background: var(--bos-success-bg) !important;
	border-color: var(--bos-success-border) !important;
	color: var(--bos-success-text) !important;
}

.tm-warn-pill,
.tm-warn.tm-provider-pill,
.tm-ddnet-tool-warn,
.tm-provider-pill.tm-warn,
.tm-gre-validation-warning {
	background: var(--bos-warning-bg) !important;
	border-color: var(--bos-warning-border) !important;
	color: var(--bos-warning-text) !important;
}

.tm-bad-pill,
.tm-status-pill.tm-fail,
.tm-fail .tm-target-pill,
.tm-ddnet-tool-bad,
.tm-ddnet-tool-danger,
.tm-provider-pill.tm-fail,
.tm-gre-validation-error,
[class^="tm-"][class*="-prod"],
[class*=" tm-"][class*="-prod"] {
	background: var(--bos-danger-bg) !important;
	border-color: var(--bos-danger-border) !important;
	color: var(--bos-danger-text) !important;
}

.tm-env-mode {
	background: var(--bos-accent) !important;
	color: var(--bos-footer-text) !important;
}

.tm-module-tile-17 .tm-module-badge {
	background: var(--bos-module-tm-soft) !important;
	border-color: var(--bos-module-tm-border) !important;
	color: var(--bos-module-tm-text) !important;
}

.tm-module-tile-onboarding .tm-module-badge {
	background: var(--bos-module-ob-soft) !important;
	border-color: var(--bos-module-ob-border) !important;
	color: var(--bos-module-ob-text) !important;
}

.good {
	color: var(--bos-success-text) !important;
}

.warn {
	color: var(--bos-warning-text) !important;
}

.bad {
	color: var(--bos-danger-text) !important;
}

input,
select,
textarea {
	background: var(--bos-input-bg);
	color: var(--bos-input-text);
	border-color: var(--bos-border);
}

body :where(a) {
	color: var(--bos-link);
}

body :where(a:visited) {
	color: var(--bos-link-visited);
}

body :where(a:hover) {
	color: var(--bos-link-hover);
}

html[data-bos-theme="dark"] input,
html[data-bos-theme="dark"] select,
html[data-bos-theme="dark"] textarea {
	background: var(--bos-input-bg);
	color: var(--bos-input-text);
	border-color: var(--bos-border);
}

html[data-bos-theme="dark"] table {
	color: var(--bos-text);
}

html[data-bos-theme="dark"] th {
	background: var(--bos-topbar-bg);
	color: #ffffff;
}

html[data-bos-theme="dark"] tr:nth-child(odd),
html[data-bos-theme="dark"] .dashboardRow tr:nth-child(odd),
html[data-bos-theme="dark"] .easyChart tr:nth-child(odd) {
	background: #202b38;
}

html[data-bos-theme="dark"] tr:nth-child(even),
html[data-bos-theme="dark"] .dashboardRow tr:nth-child(even),
html[data-bos-theme="dark"] .easyChart tr:nth-child(even) {
	background: #18212c;
}

html[data-bos-theme="dark"] .tm-dashboard-card,
html[data-bos-theme="dark"] .tm-summary-card,
html[data-bos-theme="dark"] .tm-loading-message,
html[data-bos-theme="dark"] .tm-tunnel-row,
html[data-bos-theme="dark"] .tm-provider-summary-card,
html[data-bos-theme="dark"] .tm-provider-card,
html[data-bos-theme="dark"] .tm-provider-empty,
html[data-bos-theme="dark"] .tm-edit-section,
html[data-bos-theme="dark"] .tm-card {
	background-color: var(--bos-panel-bg) !important;
	border-color: var(--bos-border) !important;
	box-shadow: var(--bos-shadow-soft) !important;
	color: var(--bos-text) !important;
}

html[data-bos-theme="dark"] .tm-provider-detail,
html[data-bos-theme="dark"] .tm-ping-output,
html[data-bos-theme="dark"] .tm-message pre {
	background-color: var(--bos-panel-soft-bg) !important;
	border-color: var(--bos-border) !important;
	color: var(--bos-text) !important;
}

html[data-bos-theme="dark"] .tm-dashboard-meta,
html[data-bos-theme="dark"] .tm-dashboard-form label,
html[data-bos-theme="dark"] .tm-summary-label,
html[data-bos-theme="dark"] .tm-meta,
html[data-bos-theme="dark"] .tm-target-label,
html[data-bos-theme="dark"] .tm-provider-meta,
html[data-bos-theme="dark"] .tm-provider-summary-label,
html[data-bos-theme="dark"] .tm-provider-field-label,
html[data-bos-theme="dark"] .tm-provider-detail-label,
html[data-bos-theme="dark"] .tm-edit-meta,
html[data-bos-theme="dark"] .tm-edit-field span,
html[data-bos-theme="dark"] .tm-card-label,
html[data-bos-theme="dark"] .tm-detail-label {
	color: var(--bos-muted-text) !important;
}

html[data-bos-theme="dark"] .tm-provider-section h5,
html[data-bos-theme="dark"] .tm-provider-detail-value,
html[data-bos-theme="dark"] .tm-edit-section h5 {
	color: var(--bos-heading-text) !important;
}

html[data-bos-theme="dark"] .tm-dashboard-form select,
html[data-bos-theme="dark"] .tm-edit-field input,
html[data-bos-theme="dark"] .tm-edit-field select {
	background: var(--bos-input-bg) !important;
	color: var(--bos-input-text) !important;
	border-color: var(--bos-border) !important;
}

html[data-bos-theme="dark"] .tm-edit-actions {
	background: rgba(27,36,48,.96) !important;
	border-color: var(--bos-border) !important;
}
