/* Last-loaded dark theme contract. Do not apply to login or printed documents. */
@media screen {
  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out) {
    --modal-header-bg: #1b2738;
    --modal-footer-bg: #1b2738;
    --modal-overlay: rgba(3, 7, 18, .62);
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):not([type="range"]), select, textarea, .native-searchable-input, .load-inline-combobox-input) {
    background: var(--input-bg, #101a29) !important;
    color: var(--text, #e6edf5) !important;
    -webkit-text-fill-color: var(--text, #e6edf5) !important;
    border-color: var(--input-border, #3a4a62) !important;
    caret-color: var(--text) !important;
    color-scheme: dark !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(input, textarea)::placeholder {
    color: #a7b4c3 !important;
    -webkit-text-fill-color: #a7b4c3 !important;
    opacity: 1 !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(input, select, textarea):disabled {
    background: var(--disabled-bg) !important;
    color: var(--disabled-text) !important;
    -webkit-text-fill-color: var(--disabled-text) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) input:autofill {
    -webkit-text-fill-color: var(--text) !important;
    box-shadow: inset 0 0 0 1000px var(--input-bg) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(.native-searchable-menu, .load-inline-combobox-menu, select option, .native-searchable-toggle, .load-inline-combobox-toggle, .user-avatar) {
    background: var(--surface-raised) !important;
    color: var(--text) !important;
    border-color: var(--line-strong) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(.native-searchable-menu, .load-inline-combobox-menu) button {
    background: var(--surface-raised) !important;
    color: var(--text) !important;
    border-color: var(--line) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(.app-shell, #modal, #drawer) :is(.native-searchable-menu, .load-inline-combobox-menu) button:is(:hover, :focus-visible, .selected) {
    background: var(--accent) !important;
    color: var(--accent-contrast) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(#modal, #drawer) :is(header, footer) {
    background: var(--panel-2) !important;
    color: var(--text) !important;
    border-color: var(--line) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]):not(.logged-out)
  :is(#modal, #drawer) :is(h2, h3, h4) { color: var(--text) !important; }

  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .loads-table tbody
  tr:is(.load-row-delivered, .load-row-bol-received):not(.load-row-selected),
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .loads-table tbody
  tr:is(.load-row-delivered, .load-row-bol-received):not(.load-row-selected) > td {
    background: #332b1b !important;
    color: var(--text) !important;
  }

  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  :is(.dispatch-calendar-grid, .dispatch-cell, .dispatch-driver-card) {
    background: var(--panel) !important;
    color: var(--text) !important;
    border-color: var(--line-strong) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  :is(.dispatch-day-head, .dispatch-corner) {
    background: var(--panel-2) !important;
    color: var(--text) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  :is(.dispatch-note-head, .dispatch-note-cell) {
    background: var(--panel-2) !important;
    color: var(--text) !important;
    border-color: var(--line-strong) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board
  :is(.data-library-summary, .partner-directory-tabs button) {
    background: var(--panel-2) !important;
    color: var(--text) !important;
    border-color: var(--line) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .data-library-summary strong {
    color: var(--text) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .data-library-summary span {
    color: var(--muted) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .partner-directory-tabs button:is(.active, :hover, :focus-visible) {
    background: var(--accent-soft) !important;
    color: var(--text) !important;
    border-color: var(--accent) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-note-cell {
    padding: 10px 12px;
    gap: 8px;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-note-list p {
    color: var(--text) !important;
    line-height: 1.5;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-note-list strong {
    background: var(--panel-3) !important;
    color: var(--text) !important;
    border: 1px solid var(--line-strong);
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-note-actions button {
    color: #8fc9ff !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-note-head b {
    color: var(--muted) !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  .dispatch-cell:is(:hover, .selected) { background: var(--accent-soft) !important; }

  /* Calendar load cards retain their date spans while matching the dark grid. */
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-load-block {
    --dispatch-card-edge: #91a4be;
    background: #223148 !important;
    color: var(--text) !important;
    border: 1px solid #41546e !important;
    border-left: 3px solid var(--dispatch-card-edge) !important;
    border-radius: 6px;
    margin: 8px 3px;
    padding: 7px 9px;
    min-width: 0;
    box-shadow: 0 2px 5px rgb(0 0 0 / 18%);
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  .dispatch-load-block:is(.delivered, .pod-received, .invoiced) {
    --dispatch-card-edge: #f4bc56;
    background: #302c24 !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board
  .dispatch-load-block:is(.in-transit, .picked-up) {
    --dispatch-card-edge: #70b5ff;
    background: #1b304b !important;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-load-block b {
    color: #f1f5f9 !important;
    font-weight: 600;
    line-height: 1.5;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-load-block :is(small, span) {
    color: #b9c7d8 !important;
    line-height: 1.4;
  }
  body:is([data-theme="dark"], [data-theme="dark-auto"]) #board .ez-dispatch-board .dispatch-load-block:is(:hover, :focus-visible) {
    border-color: var(--dispatch-card-edge) !important;
    outline: 2px solid var(--dispatch-card-edge);
    outline-offset: 1px;
  }
}
