/* Flash Surfing · Accesibilidad — barra ligera. Rojo #D50304 · oscuro #222222
   Todo va prefijado con .fs-a11y para que el CSS de JNews/Elementor no lo pise. */
.fs-a11y{position:fixed;left:18px;bottom:18px;z-index:99990;
  font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.4}
.fs-a11y *{box-sizing:border-box;font-family:inherit}
.fs-a11y .fs-a11y-fab{width:52px;height:52px;min-width:0;border-radius:50%;border:0;background:#D50304;color:#fff;
  display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;margin:0;
  box-shadow:0 4px 18px rgba(0,0,0,.30);transition:transform .15s ease,background .15s ease}
.fs-a11y .fs-a11y-fab:hover{background:#222222;color:#fff;transform:scale(1.06)}
.fs-a11y .fs-a11y-fab:focus-visible{outline:3px solid #222222;outline-offset:3px}
.fs-a11y .fs-a11y-fab svg{display:block}
.fs-a11y .fs-a11y-panel{position:absolute;left:0;bottom:62px;width:290px;max-width:calc(100vw - 36px);
  background:#fff;border:1px solid #e2e2e2;border-radius:14px;
  box-shadow:0 10px 40px rgba(0,0,0,.22);padding:16px;text-align:left}
.fs-a11y .fs-a11y-panel[hidden]{display:none}
.fs-a11y .fs-a11y-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 4px}
.fs-a11y .fs-a11y-ttl{margin:0;font-size:16px;line-height:1.2;font-weight:700;color:#222222;letter-spacing:0;text-transform:none}
.fs-a11y .fs-a11y-x{border:0;background:none;font-size:24px;line-height:1;color:#666;cursor:pointer;padding:0 2px;margin:0;width:auto;height:auto;min-width:0;box-shadow:none}
.fs-a11y .fs-a11y-x:hover{color:#D50304;background:none}
.fs-a11y .fs-a11y-intro{margin:0 0 12px;padding:0;font-size:12px;line-height:1.45;color:#666}
.fs-a11y .fs-a11y-grp{border:0;margin:0 0 12px;padding:0;min-inline-size:0}
.fs-a11y .fs-a11y-grp legend{padding:0;margin:0 0 6px;border:0;font-size:11px;line-height:1.3;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;color:#222222;float:none;width:auto}
.fs-a11y .fs-a11y-seg{display:flex;gap:6px}
.fs-a11y .fs-a11y-seg button{flex:1;padding:8px 4px;margin:0;font-size:12px;line-height:1.2;font-weight:600;
  color:#222222;background:#f4f4f4;border:1px solid #e2e2e2;border-radius:8px;cursor:pointer;
  letter-spacing:0;text-transform:none;width:auto;height:auto;min-width:0;box-shadow:none}
.fs-a11y .fs-a11y-seg button:hover{border-color:#D50304}
.fs-a11y .fs-a11y-seg button[aria-pressed="true"]{background:#222222;border-color:#222222;color:#fff}
.fs-a11y .fs-a11y-opts{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:6px}
.fs-a11y .fs-a11y-opts li{margin:0;padding:0;list-style:none;border:0}
.fs-a11y .fs-a11y-opts li::before{display:none}
.fs-a11y .fs-a11y-opts button{width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:10px;padding:10px 12px;margin:0;font-size:13.5px;line-height:1.3;font-weight:600;color:#222222;background:#f4f4f4;
  border:1px solid #e2e2e2;border-radius:8px;cursor:pointer;text-align:left;letter-spacing:0;text-transform:none;height:auto;box-shadow:none}
.fs-a11y .fs-a11y-opts button:hover{border-color:#D50304}
.fs-a11y .fs-a11y-opts button i{width:34px;height:19px;border-radius:19px;background:#cfcfcf;position:relative;
  flex:none;transition:background .15s ease;font-style:normal}
.fs-a11y .fs-a11y-opts button i::after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;
  border-radius:50%;background:#fff;transition:transform .15s ease}
.fs-a11y .fs-a11y-opts button[aria-pressed="true"] i{background:#D50304}
.fs-a11y .fs-a11y-opts button[aria-pressed="true"] i::after{transform:translateX(15px)}
.fs-a11y .fs-a11y-reset{width:100%;padding:9px;margin:0;font-size:12.5px;line-height:1.2;font-weight:700;color:#666;
  background:none;border:1px solid #e2e2e2;border-radius:8px;cursor:pointer;letter-spacing:0;text-transform:none;height:auto;box-shadow:none}
.fs-a11y .fs-a11y-reset:hover{color:#D50304;border-color:#D50304;background:none}
.fs-a11y .fs-a11y-x:focus-visible,.fs-a11y .fs-a11y-reset:focus-visible,
.fs-a11y .fs-a11y-seg button:focus-visible,.fs-a11y .fs-a11y-opts button:focus-visible{
  outline:3px solid #D50304;outline-offset:2px}
@media(max-width:480px){.fs-a11y{left:12px;bottom:12px}}

/* Botón de preferencias de cookies (CookieYes) abajo a la izquierda:
   se sube encima del botón de accesibilidad para que no se solapen. */
.cky-btn-revisit-wrapper.cky-revisit-bottom-left{bottom:82px !important;left:21px !important}
@media(max-width:480px){.cky-btn-revisit-wrapper.cky-revisit-bottom-left{bottom:76px !important;left:15px !important}}

/* ---------- ajustes que aplica el usuario ---------- */
/* El tamaño de texto lo escala el JS midiendo cada elemento (la tipografía
   de JNews está en px y no hereda de :root). Estas clases solo marcan el estado. */
html.fs-a11y-size-1,html.fs-a11y-size-2{}

html.fs-a11y-links a:not(.fs-a11y-fab){text-decoration:underline !important;text-underline-offset:2px}
html.fs-a11y-links a:focus-visible{outline:3px solid #D50304 !important;outline-offset:2px}

html.fs-a11y-motion *,html.fs-a11y-motion *::before,html.fs-a11y-motion *::after{
  animation-duration:.001ms !important;animation-iteration-count:1 !important;
  transition-duration:.001ms !important;scroll-behavior:auto !important}
/* Los vídeos NO se ocultan (es una revista de vídeo): el JS pausa solo
   los que se reproducen solos (autoplay / bucle / sin sonido). */

html.fs-a11y-contrast{background:#000}
html.fs-a11y-contrast body,html.fs-a11y-contrast body *:not(.fs-a11y):not(.fs-a11y *){
  background-color:#000 !important;color:#fff !important;border-color:#fff !important;text-shadow:none !important;box-shadow:none !important}
html.fs-a11y-contrast a:not(.fs-a11y-fab){color:#ffe14d !important;text-decoration:underline !important}
html.fs-a11y-contrast img,html.fs-a11y-contrast video{filter:grayscale(.35) contrast(1.15)}
html.fs-a11y-contrast svg{fill:currentColor}
html.fs-a11y-contrast .fs-a11y .fs-a11y-fab{background:#ffe14d !important;color:#000 !important}

/* ---------- foco visible en todo el sitio ---------- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #D50304;outline-offset:2px}

/* ---------- enlace de salto ---------- */
.fs-a11y-skip{position:absolute;left:-9999px;top:0;z-index:100000;padding:12px 18px;background:#D50304;color:#fff;
  font-weight:700;border-radius:0 0 8px 0;text-decoration:none}
.fs-a11y-skip:focus{left:0;color:#fff}
