/* =========================================================================
   accessibility.css — A11y global (pai-review-full-v1 §5.3)
   Importado em todas as páginas. Adiciona:
    - :focus-visible em elementos interativos (outline teal)
    - Touch targets mínimos 44x44 em botões ícone-only (WCAG 2.1 AA)
    - @media (prefers-reduced-motion: reduce) zera animações

   Design system: ver css/design-system.md
   ========================================================================= */

/* Foco visível para navegação por teclado */
button:focus-visible,
a:focus-visible,
[role="button"]:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--dash-accent, var(--accent, #00D4A0));
  outline-offset: 2px;
  border-radius: 4px;
}

/* Touch targets WCAG AA 2.5.5 (mínimo 44×44 CSS px) em botões ícone-only */
.opp-btn-like,
.opp-btn-remove,
.opp-btn-add,
.cc-fab,
.dash-fab-chat,
.admin-tab,
.tf-bottom-nav button,
.tf-top-action {
  min-width: 44px;
  min-height: 44px;
}

/* .btn-sm NÃO recebe min 44px automaticamente — alguns são chips compactos.
   Caso específico onde é ícone-only puro pode ser tratado com classe dedicada. */

/* Preferência de reduced-motion — respeita usuário com sensibilidade */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
