/* Accesibilidad · botón lateral discreto + ajustes del usuario (se guardan en su navegador) */
.a11y{position:fixed;left:0;top:58%;z-index:250}
.a11y[hidden]{display:none}
.a11y-btn{display:grid;place-items:center;width:30px;height:42px;padding:0;border:2px solid var(--ink);border-left:0;border-radius:0 14px 14px 0;background:#fff;color:var(--ink);cursor:pointer;opacity:.62;transition:opacity .2s,width .2s,background .2s}
.a11y-btn svg{width:18px;height:18px}
.a11y-btn:hover,.a11y-btn:focus-visible,.a11y-btn[aria-expanded="true"]{opacity:1;width:36px;background:var(--cream)}
.a11y-btn:focus-visible{outline:3px solid var(--blue-d);outline-offset:2px}
.a11y-panel{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:min(318px,calc(100vw - 24px));max-height:min(78vh,620px);overflow:auto;background:#fff;color:var(--ink);border:2px solid var(--ink);border-radius:20px;box-shadow:var(--hard);padding:16px 16px 14px;font-family:var(--f-body)}
.a11y-panel[hidden]{display:none}
.a11y-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}
.a11y-h h2{font:600 1.02rem/1.2 var(--f-sec);margin:0}
.a11y-x{border:0;background:none;font-size:1.5rem;line-height:1;cursor:pointer;color:inherit;padding:2px 8px;border-radius:8px}
.a11y-fs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:0 0 8px}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.a11y-panel button.o{display:flex;align-items:center;justify-content:center;text-align:center;min-height:44px;padding:6px 8px;border:2px solid var(--line);border-radius:12px;background:var(--cream);color:inherit;font:500 .82rem/1.2 var(--f-body);cursor:pointer}
.a11y-panel button.o:hover{border-color:var(--ink)}
.a11y-panel button.o[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.a11y-panel button.o:focus-visible{outline:3px solid var(--blue-d);outline-offset:2px}
.a11y-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;font-size:.8rem}
.a11y-foot a{text-decoration:underline}
.a11y-reset{border:0;background:none;color:var(--blue-d);text-decoration:underline;cursor:pointer;font:inherit;padding:6px 2px}
.a11y-guide{position:fixed;left:0;right:0;height:34px;margin-top:-17px;z-index:240;pointer-events:none;background:rgba(255,214,0,.16);border-top:2px solid rgba(11,13,16,.55);border-bottom:2px solid rgba(11,13,16,.55)}
@media(max-width:760px){.a11y{top:46%}.a11y-btn{width:26px;height:38px;opacity:.55}.a11y-btn svg{width:16px;height:16px}}
@media print{.a11y,.a11y-guide{display:none}}

/* ---- ajustes ---- */
html.a11y-fs1{font-size:112.5%}html.a11y-fs2{font-size:125%}html.a11y-fs3{font-size:137.5%}html.a11y-fs4{font-size:150%}
html.a11y-gray{filter:grayscale(1)}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px;text-decoration-thickness:2px}
html.a11y-font,html.a11y-font body,html.a11y-font *{font-family:Verdana,Tahoma,"Segoe UI",Arial,sans-serif!important}
html.a11y-space body{letter-spacing:.04em;word-spacing:.12em}
html.a11y-space p,html.a11y-space li,html.a11y-space dd{line-height:1.85!important}
html.a11y-space p{margin-bottom:1.3em}
html.a11y-focus :focus,html.a11y-focus :focus-visible{outline:4px solid #ffb400!important;outline-offset:3px!important}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-still .reveal{opacity:1!important;transform:none!important}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'%3E%3Cpath d='M3 2l7.5 19 2.6-7.9L21 10.5z' fill='%23000' stroke='%23fff' stroke-width='1.6' stroke-linejoin='round'/%3E%3C/svg%3E") 4 2,auto!important}
html.a11y-contrast{--ink:#000;--ink-2:#000;--muted:#000;--line:#000;--cream:#fff;--cream-2:#fff;--blue-d:#003f8f;--red-d:#8a1c00;--orange-d:#7a2e00;--green-d:#1f4a00}
html.a11y-contrast body{background:#fff;color:#000}
html.a11y-contrast a:not(.btn):not(.skip){text-decoration:underline}
html.a11y-contrast .btn,html.a11y-contrast input,html.a11y-contrast select,html.a11y-contrast textarea{border-width:3px}
html.a11y-contrast .footer,html.a11y-contrast .topbar{background:#000;color:#fff}
html.a11y-contrast .footer *{color:#fff}
html.a11y-contrast p,html.a11y-contrast li,html.a11y-contrast .lead{color:#000}
html.a11y-contrast .footer p,html.a11y-contrast .footer li,html.a11y-contrast .topbar *{color:#fff}
.a11y-now{margin:0 0 10px;font-size:.78rem;text-align:center}
.has-ck-banner .a11y-panel{top:calc(50% - 90px);max-height:min(64vh,560px)}
@media(max-width:760px){.has-ck-banner .a11y{display:none}}
