/* Estilos accesibles para el skip link */
.easl-skip-link {
  position: absolute;
  left: 0;
  top: -40px;
  padding: 8px 12px;
  z-index: 100000;
  background: #000;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
}

.easl-skip-link:focus {
  top: 0;
  outline: 2px solid #fff;
  outline-offset: 2px;
}

@media (prefers-reduced-motion: no-preference) {
  .easl-skip-link { transition: top 0.15s ease-out; }
}


/* Defensive rules to avoid theme overrides hiding the focused link */
.easl-skip-link:focus, .easl-skip-link:active {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}


/* Touch target sizing and spacing (aim for >=44x44 CSS px, AA min 24x24) */
.easl-skip-link {
  display: inline-block;
  min-width: 44px;
  min-height: 44px;
  line-height: 1.2;
  padding: 10px 14px;
  margin: 8px 8px 0 0; /* add some spacing from other controls */
}

@media (pointer: coarse) {
  .easl-skip-link {
    min-width: 48px;
    min-height: 48px;
    padding: 12px 16px;
  }
}

/* Optional larger invisible hit area without changing visual size */
.easl-skip-link::after {
  content: "";
  position: absolute;
  top: -6px;
  right: -6px;
  bottom: -6px;
  left: -6px;
}



/* === Auto-fix de skip links externos (p.ej. .skip-link.fnf-skip-link) === */
.skip-link.fnf-skip-link {
  position: absolute;
  left: 0;
  top: -40px;
  display: inline-block;
  min-width: 44px;
  min-height: 44px;
  padding: 10px 14px;
  z-index: 100000;
  background: #000;
  color: #fff;
  border-radius: 6px;
  text-decoration: none;
}

.skip-link.fnf-skip-link:focus {
  top: 0;
  outline: 2px solid #fff;
  outline-offset: 2px;
}

/* Defensivo contra overrides del tema */
.skip-link.fnf-skip-link:focus, .skip-link.fnf-skip-link:active {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}

@media (pointer: coarse) {
  .skip-link.fnf-skip-link {
    min-width: 48px;
    min-height: 48px;
    padding: 12px 16px;
  }
}

/* Hitbox invisible mayor sin cambiar la apariencia */
.skip-link.fnf-skip-link::after {
  content: "";
  position: absolute;
  top: -6px; right: -6px; bottom: -6px; left: -6px;
}
