/* PdfDocShift — global accessibility layer (WCAG 2.1 AA)
   Linked at the end of <head> on every page, so its :root override
   wins the cascade over each page's inline <style>. */

/* 1.4.3 Contrast (Minimum) — darken muted body text.
   Was #9c8878 (~3.4:1 on white, fails). Now #6b5d4f (~6.3:1, passes). */
:root { --muted: #6b5d4f; }

/* 2.4.7 Focus Visible — strong keyboard focus ring everywhere.
   :focus-visible keeps it off mouse clicks; !important overrides any
   page-level `outline: none`. */
:focus-visible {
  outline: 3px solid #1f5fae !important;
  outline-offset: 2px;
  border-radius: 2px;
}

/* Screen-reader-only utility (used by the skip link + live region). */
.sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}

/* 2.4.1 Bypass Blocks — skip link, off-screen until focused. */
.skip-link {
  position: absolute; left: -9999px; top: 0;
  z-index: 100000;
}
.skip-link:focus {
  left: 12px; top: 12px;
  padding: 10px 18px;
  background: #ffffff; color: #2a2118;
  font-family: 'Cabinet Grotesk', system-ui, sans-serif;
  font-weight: 700; font-size: 14px;
  text-decoration: none; border-radius: 8px;
  outline: 3px solid #1f5fae; outline-offset: 2px;
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
}

/* Keyboard-enabled dropzone affordance (set focusable by a11y.js). */
.upload-zone[tabindex] { cursor: pointer; }

/* 1.3.1 — footer column headings are promoted from <h4> to <h3> to keep a
   gap-free heading outline; preserve their original appearance. */
footer h3, .footer-col h3 {
  font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase;
  color: #a89d90; margin-bottom: 16px; font-weight: 700;
}

/* 2.2.2 / reduced motion — honor the OS "reduce motion" preference. */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
