/* APS Accessibility 0.3.4 - conservative WCAG-oriented enhancements */

:focus-visible {
  outline: 3px solid currentColor !important;
  outline-offset: 3px !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  box-shadow: 0 0 0 2px Canvas, 0 0 0 5px currentColor !important;
}

#aps-skip-link,
.aps-skip-link {
  position: fixed;
  top: 0.5rem;
  left: 0.5rem;
  z-index: 2147483647;
  padding: 0.75rem 1rem;
  background: Canvas;
  color: CanvasText;
  border: 2px solid currentColor;
  border-radius: 0.25rem;
  text-decoration: underline;
  transform: translateY(-250%);
}

#aps-skip-link:focus,
#aps-skip-link:focus-visible,
.aps-skip-link:focus,
.aps-skip-link:focus-visible {
  transform: translateY(0);
}

#aps-main-content[tabindex="-1"]:focus,
[role="main"][tabindex="-1"]:focus {
  outline: none;
}

.aps-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

main a:not(.btn):not(.nav-link):not(.dropdown-item),
#content a:not(.btn):not(.nav-link):not(.dropdown-item) {
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.15em;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}


/* Darkroom album metadata can be too dim against dark cards. */
.card .text-muted,
.card-body .text-muted,
.card .card-text,
.card-body .card-text,
.card .small,
.card-body .small,
.thumbnail .text-muted,
.thumbnail .description,
.album .text-muted,
.album .description {
  color: #c9cdd1 !important;
}

/* Ensure visually hidden labels never alter icon/button layout. */
a > .aps-sr-only,
button > .aps-sr-only {
  pointer-events: none;
}


/* Bootstrap Darkroom footer text is too dim for WCAG AA on the dark footer. */
.copyright,
.copyright .text-center,
.copyright a,
.copyright a:visited {
  color: #e1e4e8 !important;
}

.copyright a:hover,
.copyright a:focus-visible {
  color: #ffffff !important;
}


/* 0.3.3: Darkroom applies dimming to the footer. Force full opacity and
   a high-contrast foreground so WAVE evaluates the actual footer text at AA. */
.copyright,
.copyright .text-center,
.copyright .text-center > *,
.copyright a,
.copyright a:link,
.copyright a:visited,
footer .copyright,
footer .copyright * {
  opacity: 1 !important;
  color: #ffffff !important;
  text-shadow: none !important;
}

.copyright a,
.copyright a:link,
.copyright a:visited {
  text-decoration: underline !important;
  text-underline-offset: 0.15em;
}

/* 0.3.4: Contrast pass for Bootstrap Darkroom.
   Keep the dark visual design, but raise foreground contrast to WCAG AA levels. */

/* Album/category titles are intentionally dim in Darkroom; make them readable. */
.card h1, .card h2, .card h3, .card h4, .card h5, .card h6,
.card .card-title, .card .card-title a,
.thumbnail h1, .thumbnail h2, .thumbnail h3, .thumbnail h4, .thumbnail h5, .thumbnail h6,
.thumbnail .title, .thumbnail .title a,
.album h1, .album h2, .album h3, .album h4, .album h5, .album h6,
.album .title, .album .title a {
  color: #f5f5f5 !important;
  opacity: 1 !important;
}

/* Counts/descriptions beneath albums. */
.card .text-muted,
.card-body .text-muted,
.card .card-text,
.card-body .card-text,
.card .small,
.card-body .small,
.thumbnail .text-muted,
.thumbnail .description,
.album .text-muted,
.album .description,
.card small,
.thumbnail small,
.album small {
  color: #e2e6ea !important;
  opacity: 1 !important;
}

/* Pagination: Darkroom uses muted greys for controls. Keep every textual/icon
   control distinguishable against the dark background. */
.pagination,
.pagination a,
.pagination .page-link,
.pagination .page-item,
.pagination .page-item > a,
.pagination .page-item > span,
.navbar-contextual .pagination,
.navbar-contextual .pagination a,
.navbar-contextual .pagination span {
  color: #f5f5f5 !important;
  opacity: 1 !important;
}

.pagination .disabled,
.pagination .disabled .page-link,
.pagination .page-item.disabled > a,
.pagination .page-item.disabled > span,
.navbar-contextual .disabled {
  color: #d7d7d7 !important;
  opacity: 1 !important;
}

/* Footer: cover Darkroom variants where the copyright element itself is not
   wrapped in a semantic footer. */
.copyright,
.copyright *,
div.copyright,
div.copyright *,
body > .copyright,
body > .copyright * {
  color: #ffffff !important;
  opacity: 1 !important;
}
