/* Accessibility (audit 1/11 #9): visible focus, skip link, large text, high contrast. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #2563eb !important;outline-offset:3px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:8px;top:-60px;z-index:99;background:#14213d;color:#fff;padding:10px 14px;border-radius:8px;text-decoration:none}.skip:focus{top:8px}
.a11y-bar{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:10px 0 0}
.a11y-bar button{border:1px solid #94a3b8;background:#fff;color:#14213d;border-radius:8px;padding:6px 10px;font:inherit;font-size:13px;cursor:pointer;min-height:36px}
.a11y-bar button[aria-pressed="true"]{background:#14213d;color:#fff;border-color:#14213d}
html.a11y-big{font-size:118%}html.a11y-big body{font-size:1.12rem}
html.a11y-big :where(p,li,label,input,button,select,textarea,a,td,th,small,.muted,.sub){font-size:max(1em,17px)}
html.a11y-hc body{background:#fff!important;color:#000!important}
html.a11y-hc :where(p,li,label,small,span,td,th,h1,h2,h3,h4,.muted,.sub,.card p,footer){color:#000!important}
html.a11y-hc .hero :where(h1,p,span,i){color:#fff!important}
html.a11y-hc a{color:#0000cc!important;text-decoration:underline!important}
html.a11y-hc .btn,html.a11y-hc .hero a.btn{text-decoration:none!important;outline:2px solid #000}
html.a11y-hc :where(input,select,textarea,.card,.box,.nb){border:2px solid #000!important}
html.a11y-hc :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:4px solid #000!important;box-shadow:0 0 0 7px #ffdd00!important}
