.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: fixed; inset-inline-start: 16px; top: 10px; z-index: 1000; padding: 12px 18px; background: #16392e; color: #fff; border: 2px solid #fff; border-radius: 6px; transform: translateY(-180%); }
.skip-link:focus { transform: translateY(0); }
:is(a, button, input, select, textarea, summary, [tabindex], [contenteditable="true"]):focus-visible { outline: 3px solid #1859a9; outline-offset: 3px; box-shadow: 0 0 0 6px #fff; }
:is(input, select, textarea)::placeholder { color: #5a6258; opacity: 1; }
.form-group :is(input, select, textarea), .search-field, .filter-pill, .menu-toggle,
.admin-shell label :is(input, select, textarea), .writing-modes button { border-color: #777d70; }
.form-group :is(input, select, textarea), .search-field input, .admin-shell :is(input, select, textarea) { font-size: max(1rem, 16px); }
:is(input, select, textarea)[aria-invalid="true"] { border: 2px solid #952f28; }
.field-error { display: block; color: #952f28; font-size: 14px; font-weight: 500; margin: 6px 0; }
.nav-link, .filter-pill, .back-articles, .article-card > a, .to-top { min-height: 44px; }
.nav-link, .back-articles { display: inline-flex; align-items: center; }
.menu-toggle { min-width: 44px; min-height: 44px; }
.footer-nav-col > a { display: flex; align-items: center; min-height: 44px; }
.admin-shell .toolbar > a, .admin-shell .actions > a, .filter-settings-link { display: inline-flex; align-items: center; min-height: 44px; }
.admin-shell summary { min-height: 44px; }
.admin-shell :is(h2, h3), .article-view h1 { scroll-margin-top: 110px; }
.visual-editor, .table-controls { scroll-margin-top: 120px; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
@media (forced-colors: active) {
  :focus-visible { outline: 3px solid Highlight !important; box-shadow: none !important; }
  button, .button, .home-card, .settings-card, .status-badge, .filter-pill { border: 1px solid ButtonText; }
  [aria-pressed="true"], [aria-current] { outline: 2px solid Highlight; outline-offset: -3px; }
}
/* Native scrolling keeps keyboard, touch, and system preferences intact. */
html { scrollbar-color: #72846b #eceee4; }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: #eceee4; }
::-webkit-scrollbar-thumb { background: #72846b; border: 3px solid #eceee4; border-radius: 12px; }
::-webkit-scrollbar-thumb:hover { background: #4c6548; }
::-webkit-scrollbar-corner { background: #eceee4; }
@media (forced-colors: active) { html { scrollbar-color: auto; } }
@media (max-width: 640px) { .admin-shell .field-row { grid-template-columns: 1fr; } }
