/* Botão "pular para conteúdo" visível no foco */
.skip-link {
  position: absolute; left: 8px; top: 8px;
  padding: .6rem 1rem; background: #000; color: #fff; 
  border-radius: .5rem; text-decoration: none; 
  transform: translateY(-150%); transition: transform .2s ease;
  z-index: 1000;
}
.skip-link:focus { transform: translateY(0); outline: 2px solid #fff; }

/* Foco visível APENAS em elementos interativos */
:focus-visible {
 a[href]:focus-visible,
 button:focus-visible,
 input:focus-visible,
 select:focus-visible,
 textarea:focus-visible,
 summary:focus-visible,
 [role="button"]:focus-visible,
 [tabindex]:not([tabindex="-1"]):focus-visible {
  outline: 2px solid #0a84ff !important;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Remover “glow” padrão de navegadores em elementos não interativos */
:focus { outline: none; }

/* Preferência por alto contraste */
@media (prefers-contrast: more) {
  a[href]:focus-visible,
  button:focus-visible,
  input:focus-visible,
  select:focus-visible,
  textarea:focus-visible,
  summary:focus-visible,
  [role="button"]:focus-visible,
  [tabindex]:not([tabindex="-1"]):focus-visible {
    outline-width: 3px;
  }
}

/* Prefere contraste para quem usa high contrast */
@media (prefers-contrast: more) {
  :focus-visible { outline-width: 3px; }
}
