/* ══════════════════════════════════════════
   WIDGET ACCESIBILIDAD (panel flotante)
══════════════════════════════════════════ */
#accesibilidad {
    position: fixed;
    left: 20px;
    bottom: 30px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

#btnAccesibilidad {
    width: 52px;
    height: 52px;
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.3);
    flex-shrink: 0;
}

#panelAccesibilidad {
    display: none;
    width: 280px;
    padding: 16px;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(0,0,0,0.4);
}

#panelAccesibilidad .icon-acc {
    font-size: 1.1rem;
    display: block;
    margin-bottom: 4px;
}

#panelAccesibilidad .btn-sm {
    font-size: 0.75rem;
    padding: 8px 4px;
    line-height: 1.3;
    height: auto;
}

/* Clases de accesibilidad aplicadas al body */
body.alto-contraste   header,
body.alto-contraste   main,
body.alto-contraste   section,
body.alto-contraste   footer { filter: contrast(2); }

body.contraste-oscuro header,
body.contraste-oscuro main,
body.contraste-oscuro section,
body.contraste-oscuro footer { filter: invert(1) hue-rotate(180deg); }

body.desaturado       header,
body.desaturado       main,
body.desaturado       section,
body.desaturado       footer { filter: saturate(0); }

body.poca-saturacion  header,
body.poca-saturacion  main,
body.poca-saturacion  section,
body.poca-saturacion  footer { filter: saturate(0.5); }

body.mucha-saturacion header,
body.mucha-saturacion main,
body.mucha-saturacion section,
body.mucha-saturacion footer { filter: saturate(2); }body.subrayado-links a { text-decoration: underline !important; }
body.espaciado-1 * { letter-spacing: 0.05em !important; }
body.espaciado-2 * { letter-spacing: 0.1em !important; }
body.espaciado-3 * { letter-spacing: 0.16em !important; }
body.espaciado-h-1 * { line-height: 1.8 !important; }
body.espaciado-h-2 * { line-height: 2.2 !important; }
body.espaciado-h-3 * { line-height: 2.8 !important; }
body.cursor-1, body.cursor-1 * { cursor: url('/goreayp/imag/cursor-grande.png'), auto !important; }
body.dislexia-1 { font-family: 'Arial', sans-serif !important; }
body.dislexia-2 { font-family: 'Verdana', sans-serif !important; letter-spacing: 0.05em !important; }
body.hiddenImg img { visibility: hidden !important; }

@media (max-width: 576px) {
    #panelAccesibilidad { width: 240px; }
    #accesibilidad { left: 10px; bottom: 20px; }
}