/* Shared access improvements; do not use colour alone for state. */
:root { --access-focus:#164c79; }
body { --role-focus:var(--role, #245b48); }
:is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline:3px solid var(--access-focus); outline-offset:3px;
  scroll-margin-block:6rem;
}
#main-content:focus { outline:0; }
.skip-to-content:focus { z-index:10000; }
:is(button,[role=button],summary) { min-height:44px; }
input[type=checkbox], input[type=radio] { min-width:24px; min-height:24px; }
.accessible-table { max-width:100%; overflow-x:auto; margin-block:1rem; }
.accessible-table table { margin-bottom:0; }
.accessible-table caption { text-align:left; font-weight:600; margin-bottom:.75rem; color:inherit; }
.accessible-table th[scope=row] { font-weight:600; }
.chart-data-table { margin-top:1.5rem; }
.chart-data-table summary { font-weight:600; }
details.help-section {
  --pico-accordion-open-summary-color:#243d38;
  --pico-accordion-close-summary-color:#243d38;
  --pico-accordion-active-summary-color:#243d38;
}
details.help-section > summary { color:#243d38; }
details.help-section > summary::after { color:inherit; }
.flash-error:focus { outline:3px solid var(--access-focus); outline-offset:-3px; }
@media (forced-colors:active) {
  :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline:3px solid Highlight; }
  .status-pill { border:1px solid CanvasText; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
@media print { .accessible-table { overflow:visible; } }
