﻿/* =============================================================================
   WebPetDoctor theme tokens
   - Chrome (header, footer, left nav, page wallpaper, Login) stays dark.
   - html[data-theme="light"] only restyles .form-viewport-shell surfaces/text.
   ============================================================================= */

html {
  color-scheme: dark;
  --wpd-text: #e8eef4;
  --wpd-text-muted: rgba(232, 238, 244, 0.72);
  --wpd-border: rgba(255, 255, 255, 0.14);
  --wpd-form-card-bg: #0a0e1a;
  --wpd-form-panel-bg: #0a1628;
  --wpd-form-control-bg: #0a1628;
  --wpd-form-control-border: rgba(255, 255, 255, 0.25);
  --wpd-form-muted-surface: #121a2c;
  --wpd-form-table-header-bg: #080c16;
  --wpd-form-table-stripe-bg: #101a2c;
  --wpd-surface-deep: #0a1020;
  --wpd-page-bg-color: #070027;
  --wpd-page-bg-image: url("/images/WPD4.webp");
}

html[data-theme="dark"],
html[data-theme="light"] {
  /* Root / chrome tokens stay dark in both modes. */
  color-scheme: dark;
  --wpd-text: #e8eef4;
  --wpd-text-muted: rgba(232, 238, 244, 0.72);
  --wpd-border: rgba(255, 255, 255, 0.14);
  --wpd-form-card-bg: #0a0e1a;
  --wpd-form-panel-bg: #0a1628;
  --wpd-form-control-bg: #0a1628;
  --wpd-form-control-border: rgba(255, 255, 255, 0.25);
  --wpd-form-muted-surface: #121a2c;
  --wpd-form-table-header-bg: #080c16;
  --wpd-form-table-stripe-bg: #101a2c;
  --wpd-surface-deep: #0a1020;
  --wpd-page-bg-color: #070027;
  --wpd-page-bg-image: url("/images/WPD4.webp");
}

/* Client portal: force dark form paint for now (ignore staff light preference). */
html[data-wpd-client-portal="1"],
html[data-wpd-client-portal="1"][data-theme="light"],
body.public-portal-body {
  color-scheme: dark !important;
  --wpd-text: #e8eef4 !important;
  --wpd-text-muted: rgba(232, 238, 244, 0.72) !important;
  --wpd-border: rgba(255, 255, 255, 0.14) !important;
  --wpd-form-card-bg: #0a0e1a !important;
  --wpd-form-panel-bg: #0a1628 !important;
  --wpd-form-control-bg: #0a1628 !important;
  --wpd-form-control-border: rgba(255, 255, 255, 0.25) !important;
  --wpd-form-muted-surface: #121a2c !important;
  --wpd-form-table-header-bg: #080c16 !important;
  --wpd-form-table-stripe-bg: #101a2c !important;
  --wpd-surface-deep: #0a1020 !important;
}

html[data-wpd-client-portal="1"] .form-viewport-shell,
html[data-wpd-client-portal="1"][data-theme="light"] .form-viewport-shell {
  color-scheme: dark !important;
  --wpd-form-card-bg: #0a0e1a !important;
  --wpd-form-panel-bg: #0a1628 !important;
  --wpd-form-control-bg: #0a1628 !important;
  --wpd-text: #e8eef4 !important;
  --wpd-text-muted: rgba(232, 238, 244, 0.72) !important;
}
/* Auth pages (Login/Register): force dark paint regardless of stored preference. */
html[data-wpd-auth-chrome="1"],
html[data-wpd-auth-chrome="1"][data-theme="light"],
body.wpd-auth-chrome {
  color-scheme: dark !important;
  --wpd-text: #e8eef4 !important;
  --wpd-text-muted: rgba(232, 238, 244, 0.72) !important;
  --wpd-border: rgba(255, 255, 255, 0.14) !important;
  --wpd-form-card-bg: #0a0e1a !important;
  --wpd-form-panel-bg: #0a1628 !important;
  --wpd-form-control-bg: #0a1628 !important;
  --wpd-form-control-border: rgba(255, 255, 255, 0.25) !important;
  --wpd-form-muted-surface: #121a2c !important;
  --wpd-form-table-header-bg: #080c16 !important;
  --wpd-form-table-stripe-bg: #101a2c !important;
  --wpd-surface-deep: #0a1020 !important;
  --wpd-page-bg-color: #070027 !important;
  --wpd-page-bg-image: url("/images/WPD4.webp") !important;
}

/* Login always uses dark form chrome â€” ignore stored light preference. */
html[data-wpd-auth-chrome="1"] .wpd-login-card,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card,
body.wpd-auth-chrome .wpd-login-card {
  color-scheme: dark !important;
  color: #e8eef4 !important;
  background: #0a0e1a !important;
  background-color: #0a0e1a !important;
  border: 2px solid rgb(255, 250, 140) !important;
  box-shadow:
    0 0 0 1px color-mix(in srgb, rgb(255, 250, 140) 35%, transparent),
    0 12px 40px rgba(0, 0, 0, 0.45);
}
html[data-wpd-auth-chrome="1"] .wpd-login-card .form-label,
html[data-wpd-auth-chrome="1"] .wpd-login-card .form-check-label,
html[data-wpd-auth-chrome="1"] .wpd-login-card .form-text,
html[data-wpd-auth-chrome="1"] .wpd-login-card .text-muted,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card .form-label,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card .form-check-label,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card .text-muted,
body.wpd-auth-chrome .wpd-login-card .form-label,
body.wpd-auth-chrome .wpd-login-card .form-check-label,
body.wpd-auth-chrome .wpd-login-card .text-muted {
  color: #e8eef4 !important;
}
html[data-wpd-auth-chrome="1"] .wpd-login-card h2,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card h2,
body.wpd-auth-chrome .wpd-login-card h2 {
  color: var(--wpd-form-accent, rgb(255, 250, 140)) !important;
}
html[data-wpd-auth-chrome="1"] .wpd-login-card .form-control,
html[data-wpd-auth-chrome="1"] .wpd-login-card .form-select,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card .form-control,
html[data-theme="light"][data-wpd-auth-chrome="1"] .wpd-login-card .form-select,
body.wpd-auth-chrome .wpd-login-card .form-control,
body.wpd-auth-chrome .wpd-login-card .form-select {
  background-color: #0a1628 !important;
  color: #e8eef4 !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
  color-scheme: dark !important;
}
html[data-wpd-auth-chrome="1"] #site-content,
body.wpd-auth-chrome #site-content {
  background-color: #070027 !important;
  background-image: none !important; /* login wallpaper lives on .bg-image-bright */
}

/* Phase 2: optional page-bg override â€” never on auth pages */
html.wpd-has-bg-override:not([data-wpd-auth-chrome="1"]) #site-content {
  background-image: var(--wpd-page-bg-image-override) !important;
}

/* Theme toggle (lives on dark header) */
.site-header-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  padding: 0;
  margin: 0 0.15rem 0 0;
  border-radius: 0.45rem;
  border: 1px solid var(--sh-border, rgba(255, 255, 255, 0.22));
  background: color-mix(in srgb, var(--sh-accent, rgb(255, 250, 140)) 12%, transparent);
  color: var(--sh-accent, rgb(255, 250, 140));
  line-height: 1;
  cursor: pointer;
}
.site-header-theme-toggle:hover,
.site-header-theme-toggle:focus {
  color: #fff;
  border-color: var(--sh-accent, rgb(255, 250, 140));
  background: color-mix(in srgb, var(--sh-accent, rgb(255, 250, 140)) 22%, rgba(0, 0, 0, 0.25));
}
.site-header-theme-toggle[hidden] {
  display: none !important;
}
.site-header-theme-toggle .wpd-theme-icon-sun,
.site-header-theme-toggle .wpd-theme-icon-moon {
  display: none;
  width: 1.05rem;
  height: 1.05rem;
}
html[data-theme="dark"] .site-header-theme-toggle .wpd-theme-icon-sun,
html[data-wpd-auth-chrome="1"] .site-header-theme-toggle .wpd-theme-icon-sun {
  display: block;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .site-header-theme-toggle .wpd-theme-icon-moon {
  display: block;
}

/* =============================================================================
   Light theme â€” forms only (.form-viewport-shell)
   ============================================================================= */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell {
  color-scheme: light;
  --wpd-text: #142033;
  --wpd-text-muted: rgba(20, 32, 51, 0.78);
  --wpd-border: rgba(20, 32, 51, 0.18);
  --wpd-form-card-bg: #ffffff;
  --wpd-form-panel-bg: #f0f3f8;
  --wpd-form-control-bg: #ffffff;
  --wpd-form-control-border: rgba(20, 32, 51, 0.22);
  --wpd-form-muted-surface: #e6ebf3;
  --wpd-form-table-header-bg: #e2e8f2;
  --wpd-form-table-stripe-bg: #eaf0f8;
  --wpd-surface-deep: #eef2f8;
  --wpd-form-hover-bg: #d9e2ef;
  --wpd-cal-line: rgba(20, 32, 51, 0.22);
  --wpd-cal-line-soft: rgba(20, 32, 51, 0.14);
  --wpd-cal-today-bg: #d8e4f5;
  --wpd-cal-today-tint: rgba(13, 110, 253, 0.10);
  /* Invoice/grid tokens â€” !important beats per-view dark redefinitions */
  --fci-grid-header-bg: #e2e8f2 !important;
  --fci-grid-header-fg: #142033 !important;
  --fci-grid-cell-bg: #ffffff !important;
  --fci-grid-cell-bg-alt: #f0f3f8 !important;
  --fci-grid-cell-fg: #142033 !important;
  --fci-grid-border: rgba(20, 32, 51, 0.16) !important;
  --fci-grid-hover-bg: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 22%, #ffffff) !important;
  --fci-grid-muted: rgba(20, 32, 51, 0.68) !important;
  color: var(--wpd-text);
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-field-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-check-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-check-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fw-semibold,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fw-bold,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fw-medium,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h1,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h2,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h3,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h4,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h5,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell h6,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .card,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .card-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell p,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell span:not(.badge):not(.btn):not(.site-header-ai-chip),
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell textarea,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .maint-fields-inner,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .input-group-text {
  color: var(--wpd-text) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .text-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-text,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .small.text-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ::placeholder {
  color: var(--wpd-text-muted) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell textarea.form-control {
  background-color: var(--wpd-form-control-bg) !important;
  border-color: var(--wpd-form-control-border) !important;
  color-scheme: light;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .table {
  --bs-table-color: var(--wpd-text);
  --bs-table-bg: transparent;
  --bs-table-striped-color: var(--wpd-text);
  --bs-table-hover-color: var(--wpd-text);
  --bs-table-border-color: var(--wpd-border);
}

/* Form help/tutorial modals â€” light surfaces, dark readable text (no pale yellow on white) */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal {
  --wpd-help-fg: #142033;
  --wpd-help-muted: rgba(20, 32, 51, 0.72);
  --wpd-help-heading: #0b3d91; /* strong blue replaces washed yellow accents */
  --wpd-help-border: rgba(20, 32, 51, 0.16);
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-content,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-content {
  background: #ffffff !important;
  color: var(--wpd-help-fg) !important;
  border-color: var(--wpd-help-border) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-footer {
  border-color: var(--wpd-help-border) !important;
  background: #f4f6fb !important;
  color: var(--wpd-help-fg) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-body {
  background: #ffffff !important;
  color: var(--wpd-help-fg) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody .wpd-help-section-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody .wpd-tutorial-step-title {
  color: var(--wpd-help-heading) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody .wpd-help-purpose,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody .wpd-help-actions,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody .wpd-help-fields,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody .wpd-help-fields li,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody p,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody li,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpBody strong,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody .wpd-tutorial-step-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody .wpd-tutorial-step-body p,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody .wpd-tutorial-step-body li,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBody .wpd-tutorial-step-body ul {
  color: var(--wpd-help-fg) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialStepMeta {
  color: var(--wpd-help-muted) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .btn-close,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .btn-close {
  filter: none !important;
  opacity: 0.7 !important;
}
/* Tutorial nav: outline-light is invisible on white â€” remap */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBack.btn-outline-light {
  color: #142033 !important;
  background: #ffffff !important;
  border-color: rgba(20, 32, 51, 0.28) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBack.btn-outline-light:hover,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialBack.btn-outline-light:focus {
  color: #ffffff !important;
  background: #0b3d91 !important;
  border-color: #0b3d91 !important;
}

/* Appointments / FullCalendar â€” light contrast (dates, times, grid) */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-calendar-frame,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-calendar-host,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-scrollgrid,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-scrollgrid-section > *,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc-theme-standard td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc-theme-standard th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-daygrid-day,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-daygrid-day-frame,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-timegrid-slot.fc-timegrid-slot-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-timegrid-slot-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-list {
  background: var(--wpd-surface-deep) !important;
  background-color: var(--wpd-surface-deep) !important;
  border-color: var(--wpd-cal-line) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-col-header-cell {
  background: var(--wpd-form-table-header-bg) !important;
  border-color: var(--wpd-cal-line) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-col-header-cell-cushion,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-daygrid-day-number,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-timegrid-slot-label-cushion,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-list-day-text,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-list-day-side-text,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-list-event-time,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-list-event-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc a {
  color: var(--wpd-text) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-toolbar-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .form-label {
  color: var(--wpd-text) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-status,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-muted {
  color: var(--wpd-text-muted) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-daygrid-day.fc-day-today,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-timegrid-col.fc-day-today,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-daygrid-day.fc-day-today .fc-daygrid-day-frame {
  background: var(--wpd-cal-today-bg) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-timegrid-slot {
  border-color: var(--wpd-cal-line-soft) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-button-primary {
  background: var(--wpd-form-muted-surface) !important;
  border-color: var(--wpd-form-control-border) !important;
  color: var(--wpd-text) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-button-primary:not(:disabled).fc-button-active,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .fc .fc-button-primary:not(:disabled):active {
  color: #0a1020 !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-calendar-host .fc-scrollgrid-section-body .fc-scroller {
  scrollbar-color: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 80%, #142033) #d8dee8;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-calendar-host .fc-scrollgrid-section-body .fc-scroller::-webkit-scrollbar-track {
  background: #d8dee8;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell.schedule-page .schedule-calendar-host .fc-scrollgrid-section-body .fc-scroller::-webkit-scrollbar-thumb {
  border-color: #d8dee8;
}

/* Cross-form: beat leftover dark-theme muted / label hex that wash out on light cards */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .text-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-text {
  color: var(--wpd-text-muted) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell label.form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-field-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-check-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fw-semibold,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fw-bold {
  color: var(--wpd-text) !important;
}

/* Keep title accent readable on light forms */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-title {
  text-shadow: none;
}

/* Common dark translucent panels inside forms â†’ solid light panels */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .maint-fields-inner,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table-wrap,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .msg-list-panel,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .msg-compose-stack,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .so-orders-panel,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .so-detail-panel,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fci-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .msg-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .so-client-results {
  background: var(--wpd-form-panel-bg) !important;
  background-color: var(--wpd-form-panel-bg) !important;
  border-color: var(--wpd-border) !important;
  color: var(--wpd-text) !important;
}

/* Form modals (Appointments + shared pattern): light surfaces, readable text, no clip */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .modal-dialog,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-dialog,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchApptLookupModal .modal-dialog,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-dialog.modal-dialog-scrollable {
  height: auto !important;
  max-height: calc(100dvh - 2.5rem) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .schedule-modal-content,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .schedule-modal-content,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-content,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchApptLookupModal .modal-content {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.16) !important;
  max-height: calc(100dvh - 2.5rem) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .modal-footer,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-footer {
  background: #f4f6fb !important;
  border-color: rgba(20, 32, 51, 0.14) !important;
  color: #142033 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .modal-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-body {
  background: #ffffff !important;
  color: #142033 !important;
  scrollbar-color: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 80%, #142033) #e6ebf3;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .modal-body::-webkit-scrollbar-track,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .modal-body::-webkit-scrollbar-track {
  background: #e6ebf3;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .schedule-modal-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .schedule-modal-title {
  color: #0b3d91 !important; /* readable vs pale yellow on white */
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .schedule-muted strong,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-empty {
  color: #142033 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .schedule-muted,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-empty {
  color: rgba(20, 32, 51, 0.72) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-select {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.22) !important;
  color-scheme: light !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-control:focus,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-select:focus,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-control:focus,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-select:focus {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: #0b3d91 !important;
  box-shadow: 0 0 0 0.15rem rgba(11, 61, 145, 0.2) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .form-control::placeholder,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .form-control::placeholder {
  color: rgba(20, 32, 51, 0.45) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .btn-close,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .btn-close {
  filter: none !important;
  opacity: 0.7 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .btn-outline-secondary,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .btn-outline-secondary {
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.28) !important;
  background: #ffffff !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .btn-outline-secondary:hover,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .btn-outline-secondary:hover {
  color: #ffffff !important;
  background: #0b3d91 !important;
  border-color: #0b3d91 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchBlockModal .fci-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .sch-lookup-results {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.16) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .sch-lookup-results .list-group-item {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.12) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table thead th {
  background: #e2e8f2 !important;
  color: #142033 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table tbody tr:nth-child(even) td {
  background: #f0f3f8 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table tbody tr:hover td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .fci-client-suggest-table tbody tr.fci-client-row-active td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #SchModal .sch-lookup-results .list-group-item:hover {
  background: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 28%, #ffffff) !important;
  color: #142033 !important;
}

/* Generic form-page modals: readable light theme + capped scroll height */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-dialog,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-dialog {
  height: auto;
  max-height: min(85vh, 40rem);
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-content,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-content {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.16) !important;
  max-height: min(85vh, 40rem);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-footer,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-header,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-footer {
  background: #f4f6fb !important;
  border-color: rgba(20, 32, 51, 0.14) !important;
  color: #142033 !important;
  flex: 0 0 auto;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-title,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-title {
  color: #0b3d91 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .modal-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .modal-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  color: #142033 !important;
  background: #ffffff !important;
  scrollbar-width: thin;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .form-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .form-check-label,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .form-check-label {
  color: #142033 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .form-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .form-select {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.22) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .btn-close,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .btn-close {
  filter: none !important;
  opacity: 0.7 !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .btn-outline-secondary,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell ~ .modal .btn-outline-light,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .btn-outline-secondary,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .modal .btn-outline-light {
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.28) !important;
  background: #ffffff !important;
}

/* Help / Tutorial corner icons â€” light surface in light forms */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-help-btn,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-tutorial-btn {
  background: #ffffff !important;
  border-color: rgba(20, 32, 51, 0.22) !important;
  color: #142033 !important;
  box-shadow: 0 1px 4px rgba(20, 32, 51, 0.14) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-help-btn:hover,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-help-btn:focus,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-tutorial-btn:hover,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .wpd-form-tutorial-btn:focus {
  background: #f4f6fb !important;
  color: #0a1020 !important;
  border-color: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 55%, rgba(20, 32, 51, 0.35)) !important;
  box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 35%, transparent) !important;
}

/* Line-item / client-invoice grids â€” light cells + dark text everywhere this pattern is used */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table thead th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-table thead th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fci-client-suggest-table thead th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .msg-client-suggest-table thead th {
  background: var(--fci-grid-header-bg, #e2e8f2) !important;
  background-color: var(--fci-grid-header-bg, #e2e8f2) !important;
  color: var(--fci-grid-header-fg, #142033) !important;
  border-color: var(--fci-grid-border, rgba(20, 32, 51, 0.16)) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table tbody td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-table tbody td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fci-client-suggest-table tbody td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .msg-client-suggest-table tbody td {
  background: var(--fci-grid-cell-bg, #ffffff) !important;
  background-color: var(--fci-grid-cell-bg, #ffffff) !important;
  color: var(--fci-grid-cell-fg, #142033) !important;
  border-color: var(--fci-grid-border, rgba(20, 32, 51, 0.16)) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table tbody tr:nth-child(even) td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-table tbody tr:nth-child(even) td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fci-client-suggest-table tbody tr:nth-child(even) td {
  background: var(--fci-grid-cell-bg-alt, #f0f3f8) !important;
  background-color: var(--fci-grid-cell-bg-alt, #f0f3f8) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table tbody tr:hover td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-table tbody tr:hover td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .fci-client-suggest-table tbody tr:hover td {
  background: var(--fci-grid-hover-bg) !important;
  background-color: var(--fci-grid-hover-bg) !important;
  color: var(--fci-grid-cell-fg, #142033) !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-table {
  --bs-table-color: #142033;
  --bs-table-bg: #ffffff;
  --bs-table-striped-color: #142033;
  --bs-table-striped-bg: #f0f3f8;
  --bs-table-hover-color: #142033;
  --bs-table-hover-bg: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 22%, #ffffff);
  --bs-table-border-color: rgba(20, 32, 51, 0.16);
  color: #142033 !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-region,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .client-invoice-table-wrap {
  background: #f0f3f8 !important;
  border-color: rgba(20, 32, 51, 0.16) !important;
  color: #142033 !important;
}

html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-doc-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-pat-select,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-qty,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-region .form-control,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .form-viewport-shell .inv-line-items-region .form-select {
  background-color: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.22) !important;
}

/* Suggest lists moved to document.body still need light paint when theme is light */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .fci-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .msg-client-list,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .so-client-results,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #invItemSuggestList,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) [id$="SuggestList"],
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .inv-item-suggest-list {
  background: #ffffff !important;
  color: #142033 !important;
  border-color: rgba(20, 32, 51, 0.16) !important;
  --fci-grid-header-bg: #e2e8f2;
  --fci-grid-header-fg: #142033;
  --fci-grid-cell-bg: #ffffff;
  --fci-grid-cell-bg-alt: #f0f3f8;
  --fci-grid-cell-fg: #142033;
  --fci-grid-border: rgba(20, 32, 51, 0.16);
  --fci-grid-hover-bg: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 22%, #ffffff);
  --fci-grid-muted: rgba(20, 32, 51, 0.68);
  --wpd-text: #142033;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .fci-client-list .table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .fci-client-list th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .fci-client-list td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .inv-item-suggest-list .table,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .inv-item-suggest-list th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .inv-item-suggest-list td,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #invItemSuggestList th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #invItemSuggestList td {
  background-color: var(--fci-grid-cell-bg, #ffffff) !important;
  color: var(--fci-grid-cell-fg, #142033) !important;
  border-color: var(--fci-grid-border) !important;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .fci-client-list thead th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) .inv-item-suggest-list thead th,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #invItemSuggestList thead th {
  background-color: var(--fci-grid-header-bg, #e2e8f2) !important;
  color: var(--fci-grid-header-fg, #142033) !important;
}

/* Help/Tutorial modal thin scrollbar on light surfaces */
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-body,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-body {
  scrollbar-color: color-mix(in srgb, var(--wpd-form-accent, rgb(255, 250, 140)) 80%, #142033) #e6ebf3;
}
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormHelpModal .modal-body::-webkit-scrollbar-track,
html[data-theme="light"]:not([data-wpd-auth-chrome="1"]):not([data-wpd-client-portal="1"]) #wpdFormTutorialModal .modal-body::-webkit-scrollbar-track {
  background: #e6ebf3;
}