/* THRS Contrast AA V1 — 2026-11-05
 * Scope: shared controls, semantic badges, muted text and Work Schedules.
 * No layout, authorization, data or component logic changes.
 * Keep hero/brand navy-gold surfaces unchanged.
 */
html:not([data-theme]),html[data-theme="light"]{
  --text-light:#64748b;
  --gold-fg:#745018;
}
html[data-theme="dark"]{
  --text-light:#b5c3d7;
  --gold-fg:#f4d58d;
}
/* Neutral loading copy was pale blue over a nearly-white surface. */
html[data-theme="light"] .loading-state,
html:not([data-theme]) .loading-state{
  color:var(--text-secondary)!important;
  background:var(--bg-secondary);
}
html[data-theme="dark"] .loading-state{
  color:var(--text-secondary)!important;
  background:var(--bg-secondary);
}
/* Status badges: foreground is chosen for status surface rather than
 * reusing accents designed for icons. */
html[data-theme="light"] .badge-success,
html:not([data-theme]) .badge-success{color:#047857!important}
html[data-theme="light"] .badge-warning,
html:not([data-theme]) .badge-warning{color:#9a3412!important}
html[data-theme="light"] .badge-gold,
html:not([data-theme]) .badge-gold{color:var(--gold-fg)!important}
html[data-theme="dark"] .badge-gold{color:var(--gold-fg)!important}
/* Buttons with bright brand accents require a dark foreground in Dark mode. */
html[data-theme="dark"] :is(.action-btn-edit,.action-btn-exit,.action-btn-delete){
  color:#071b35!important;
}
html[data-theme="light"] .action-btn-exit,
html:not([data-theme]) .action-btn-exit{
  background-color:#b45309!important;
  color:#fff!important;
}
html[data-theme="light"] .thrs-btn-success,
html:not([data-theme]) .thrs-btn-success{
  --thrs-btn-bg:#047857;
  --thrs-btn-color:#fff;
}
html[data-theme="dark"] :is(.thrs-btn-success,.thrs-btn-danger){
  --thrs-btn-color:#071b35;
}
/* The schedule page used hardcoded light gradients on cards, tabs,
 * rows, modal editor surfaces despite inheriting pale dark-mode text. */
html[data-theme="dark"] .work-schedules-pro :is(
  .ws-tabs,.ws-tab,.ws-mini-stat,.ws-day-card,.ws-exception-item,
  .ws-request-card,.ws-chip,.ws-modal-tools,.ws-schedule-row,
  .ws-empty-state
){
  background:#15315b!important;
  color:var(--text-primary)!important;
  border-color:var(--border-color)!important;
}
html[data-theme="dark"] .work-schedules-pro :is(.ws-selected-header,.ws-schedule-row.off,.ws-day-card.off){
  background:linear-gradient(135deg,#112b49,#173657)!important;
  color:var(--text-primary)!important;
  border-color:var(--border-color)!important;
  opacity:1;
}
html[data-theme="dark"] .work-schedules-pro .ws-employee-card.active{
  background:linear-gradient(130deg,#173858,#22476c)!important;
  border-color:rgba(224,200,117,.42)!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-employee-card.active .ws-avatar{
  color:#071b35!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-field{
  background:#0f2240!important;
  color:#e6ebf2!important;
  border-color:#45668d!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-tabs .ws-tab:hover,
html[data-theme="dark"] .work-schedules-pro .ws-tab.active{
  background:linear-gradient(135deg,#1b3d62,#274767)!important;
  border-color:rgba(224,200,117,.42)!important;
}
html[data-theme="dark"] .work-schedules-pro :is(.ws-notice.error,.ws-pill.danger){
  background:#431e2a!important;
  border-color:#a94d60!important;
  color:#ffd0d8!important;
}
html[data-theme="dark"] .work-schedules-pro :is(.ws-notice.success,.ws-pill.success){
  background:#123c33!important;
  border-color:#328d70!important;
  color:#b4f2d6!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-pill.warning{
  background:#4c3519!important;
  border-color:#a78040!important;
  color:#ffe0a8!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-pill.neutral{
  background:#243d58!important;
  border-color:#4a6684!important;
  color:#dae6f3!important;
}
html[data-theme="dark"] .work-schedules-pro .ws-modal-footer{
  background:#15315b!important;
}

/* Work Schedules also had a white-on-gold active strip in Light mode. */
html[data-theme="light"] .work-schedules-pro .ws-tab.active,
html:not([data-theme]) .work-schedules-pro .ws-tab.active {
  background:linear-gradient(135deg,#0a1f3d,#15315b)!important;
  color:#fff!important;
  border-color:#8b6c24!important;
}
html[data-theme="light"] .work-schedules-pro .ws-pill.success,
html:not([data-theme]) .work-schedules-pro .ws-pill.success {
  background:#047857!important;
  color:#fff!important;
  border-color:#047857!important;
}
html[data-theme="light"] .work-schedules-pro .ws-actions button:last-child,
html:not([data-theme]) .work-schedules-pro .ws-actions button:last-child {
  background:#15315b!important;
  color:#fff!important;
  border-color:#15315b!important;
}
