/* Shared screen contrast. Clinical status colors, dark navigation and print layouts retain their own palette. */
@media screen {
  :root{
    --u360-readable-secondary:#465e73;
    --u360-readable-border:#758b9d;
    --u360-readable-focus:#145c91;
    --line:#a4b4c2;
    --u360-surface-border:#a4b4c2;
  }
  :is(.view,.v28pe-card,.v26-section,.u360-dialog,.v28pe-modal){--muted:var(--u360-readable-secondary)}
  /* Light content panels only: avoid the dark navigation and colored status badges. */
  :is(.view,.v28pe-card,.v26-section,.u360-dialog,.v28pe-modal)
  :is(.muted,.hint,.mini,[class$="-hint"],[class$="-subtitle"]):not(button):not(a):not([role="status"]):not([class*="badge"]):not([class*="triage"]):not([class*="danger"]):not([class*="warning"]){
    color:var(--u360-readable-secondary);
  }
  .v28pe-step-title small,.v28pe-french-detail-head small,
  .v28pe-french-vitals-mini span,.v28pe-vitals-head small,
  .v28pe-ioa-vital-input>span,.v28pe-ioa-at>span,
  .v28pe-retained-default :is(span,small),
  .v28pe-readonly-grid span{
    color:var(--u360-readable-secondary);
  }
  body :is(input:not([type]),input[type="text"],input[type="search"],input[type="email"],
  input[type="tel"],input[type="password"],input[type="number"],input[type="date"],
  input[type="time"],input[type="datetime-local"],textarea,select):not([aria-invalid="true"]):not(.invalid):not(.error){
    border-color:var(--u360-readable-border);
  }
  body :is(input,textarea)::placeholder{color:#566b7e;opacity:1}
  body :is(button,a,input,select,textarea,[role="button"],[tabindex]):focus-visible{
    outline:3px solid var(--u360-readable-focus)!important;outline-offset:2px;
  }
  body :is(input,textarea,select)[aria-invalid="true"]{border-color:#a1283b}
  body :is(input[type="checkbox"],input[type="radio"]){accent-color:#145c91}
  :is(.v28pe-modal,.v28pe-card,.v26-section)
  button:is(.ghost,.secondary,.btn-secondary):not(:disabled):not([aria-pressed="true"]){
    color:#244d6b;border-color:var(--u360-readable-border);
  }
  .v28pe-french-picker .v28pe-family-grid button,
  .v28pe-french-picker .v28pe-motif-row,
  .v28pe-french-detail .v28pe-criterion{border-color:var(--u360-readable-border)}
  .v28pe-french-picker button.active,.v28pe-french-detail .v28pe-criterion:has(input:checked){
    outline:2px solid var(--u360-readable-focus);outline-offset:-2px;
  }
}
