/**
 * Corpus pages accessibility enhancements
 * - Focus visible styles for keyboard navigation
 * - Contrast improvements for WCAG AA
 * - Skip links and region labels
 */

/* Focus visible: clear outline for keyboard users */
.corpus-page a:focus-visible,
.corpus-page button:focus-visible,
.corpus-page input:focus-visible,
.corpus-page select:focus-visible,
.corpus-page textarea:focus-visible,
.trilingual-corpus-page a:focus-visible,
.trilingual-corpus-page button:focus-visible,
.trilingual-corpus-page input:focus-visible,
.trilingual-corpus-page select:focus-visible {
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
}

/* Cards: ensure focusable children get focus ring */
.card-hover:focus-within {
  outline: 2px solid rgba(13, 110, 253, 0.5);
  outline-offset: 2px;
}

/* Contrast: darken text-muted for small text (WCAG AA) */
.text-muted.small,
.document-details.text-muted,
.sentence-context.text-muted {
  color: #495057 !important; /* Bootstrap's gray-700, ~5.7:1 on white */
}

/* Badge contrast: ensure text is readable */
.badge.bg-warning.text-dark {
  background-color: #e0a800 !important; /* Darker yellow for better contrast */
  color: #212529 !important;
}

.badge.bg-light.text-dark {
  background-color: #e9ecef !important;
  color: #212529 !important;
}

/* Link focus in cards */
.document-card a:focus-visible,
.trilingual-doc-card a:focus-visible {
  outline: 2px solid #0d6efd;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Pagination: current page indicator */
.pagination .page-item.active .page-link {
  font-weight: 600;
}

/* Form input group: ensure search icon has aria-hidden (handled in HTML) */
.input-group-text [class*="fa-"] {
  pointer-events: none;
}

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {
  .card-hover,
  .document-card,
  .trilingual-doc-card {
    transition: none;
  }
}
