/* Overrides actifs uniquement quand un reglage d'accessibilite est active (classes html.a11y-*) */

html.a11y-font-small {
  font-size: 15.2px !important;
}

html.a11y-font-large {
  font-size: 18px !important;
}

html.a11y-font-xlarge {
  font-size: 20px !important;
}

html.a11y-comfortable-spacing,
html.a11y-comfortable-spacing body {
  line-height: 1.75 !important;
  letter-spacing: 0.01em !important;
  word-spacing: 0.04em !important;
}

html.a11y-high-contrast,
html.a11y-high-contrast body {
  background: #000 !important;
  color: #fff !important;
}

html.a11y-high-contrast #app,
html.a11y-high-contrast .card,
html.a11y-high-contrast .card-body,
html.a11y-high-contrast .modal-content,
html.a11y-high-contrast .dropdown-menu,
html.a11y-high-contrast .table,
html.a11y-high-contrast .table td,
html.a11y-high-contrast .table th,
html.a11y-high-contrast .navbar,
html.a11y-high-contrast .navbar-light,
html.a11y-high-contrast .list-group-item,
html.a11y-high-contrast .accessibility-panel,
html.a11y-high-contrast .shadow-soft,
html.a11y-high-contrast .alert {
  background: #000 !important;
  color: #fff !important;
  border-color: #fff !important;
  box-shadow: none !important;
}

html.a11y-high-contrast .btn,
html.a11y-high-contrast .btn-primary,
html.a11y-high-contrast .btn-outline-primary,
html.a11y-high-contrast .btn-outline-secondary,
html.a11y-high-contrast .btn-secondary,
html.a11y-high-contrast .btn-outline-danger,
html.a11y-high-contrast .btn-outline-info,
html.a11y-high-contrast .btn-outline-warning,
html.a11y-high-contrast .btn-info {
  background: #000 !important;
  color: #fff !important;
  border: 2px solid #fff !important;
}

html.a11y-high-contrast .text-muted,
html.a11y-high-contrast .form-text,
html.a11y-high-contrast .small {
  color: #f8f9fa !important;
}

html.a11y-high-contrast a,
html.a11y-high-contrast .nav-link,
html.a11y-high-contrast .dropdown-item {
  color: #ffd54f !important;
}

html.a11y-high-contrast .badge {
  background: #fff !important;
  color: #000 !important;
}

html.a11y-grayscale #app {
  filter: grayscale(1) !important;
}

html.a11y-reduced-motion *,
html.a11y-reduced-motion *::before,
html.a11y-reduced-motion *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}

html.a11y-focus-boost a:focus-visible,
html.a11y-focus-boost button:focus-visible,
html.a11y-focus-boost input:focus-visible,
html.a11y-focus-boost select:focus-visible,
html.a11y-focus-boost textarea:focus-visible,
html.a11y-focus-boost [tabindex]:focus-visible,
html.a11y-focus-boost .btn:focus-visible,
html.a11y-focus-boost .dropdown-item:focus-visible,
html.a11y-focus-boost .form-check-input:focus-visible,
html.a11y-focus-boost .form-control:focus-visible {
  outline: 4px solid #ffbf47 !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.35) !important;
}
