/* Accesibilidad: lo activa Preferencias (atributos data-* en <html>) */

/* Tamaño del texto */
html[data-fsz="s"]{font-size:92%}
html[data-fsz="l"]{font-size:112%}
html[data-fsz="xl"]{font-size:128%}

/* Fuente fácil de leer (Atkinson Hyperlegible) y sin cursivas decorativas */
html[data-font="read"]{--sans:"Atkinson Hyperlegible","Verdana",sans-serif;--display:"Atkinson Hyperlegible","Verdana",sans-serif;--tag:"Atkinson Hyperlegible","Verdana",sans-serif}
html[data-font="read"] h1,html[data-font="read"] h2,html[data-font="read"] h3,html[data-font="read"] h4,html[data-font="read"] .brand,html[data-font="read"] .stats b,html[data-font="read"] .manifesto p{font-style:normal;letter-spacing:0}
html[data-font="read"] button,html[data-font="read"] a.l,html[data-font="read"] .cta{font-style:normal;text-transform:none;letter-spacing:0}

/* Enlaces siempre subrayados */
html[data-links="ul"] a:not(.px):not(.cta):not(.l):not(.vcard):not(.stcard):not(.filechip):not(.brand){text-decoration:underline;text-underline-offset:.2em}

/* Alto contraste */
html[data-contrast="high"]{--text:#fff;--muted:#f2f2f2;--edge:#fff;--line:#a0a0a0;--panel:#000;--black:#000;--red:#ff4d5a;--red-l:#ff8a93;--latte:#ffe08a;--body-text:#fff}
html[data-contrast="high"][data-theme="light"]{--text:#000;--muted:#161616;--edge:#000;--line:#555;--panel:#fff;--black:#fff;--red:#a00010;--red-l:#8a000e;--latte:#4a2a10;--body-text:#000}
html[data-contrast="high"] a:not(.px):not(.cta){text-decoration:underline}
html[data-contrast="high"] :focus-visible{outline:4px solid #ffd34d;outline-offset:3px}
html[data-contrast="high"] button,html[data-contrast="high"] input,html[data-contrast="high"] select,html[data-contrast="high"] textarea{border:2px solid var(--text)}
html[data-contrast="high"] .bg,html[data-contrast="high"] body::after{display:none}

/* Efectos opcionales */
html[data-fx="off"] .bg{display:none}
html[data-grain="off"] body::after{display:none}

/* Zonas táctiles cómodas y foco siempre visible */
button,.px,select,input[type="checkbox"]{min-height:2rem}
:focus-visible{outline:3px solid var(--red-l);outline-offset:3px}

/* Modo de colores forzados de Windows */
@media (forced-colors:active){
  .bg,body::after{display:none}
  button,a.l,.cta{border:1px solid ButtonText}
}
