.a11y-launcher{position:fixed;inset-inline-start:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:900;width:auto;min-height:48px;padding:10px 18px;border:2px solid #fff;border-radius:24px;background:#12384b;color:#fff;box-shadow:0 2px 12px #0004;font:700 16px system-ui;cursor:pointer}
#a11y-panel{position:fixed;inset:0;margin:auto;width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;padding:24px;border:2px solid #12384b;border-radius:18px;background:#fff;color:#142f40;font:16px/1.6 system-ui;text-align:start}
#a11y-panel:not([open]){display:none}#a11y-panel::backdrop{background:#102d4266}#a11y-panel h2{margin-top:0}#a11y-panel button{min-height:44px;width:auto;padding:8px 14px;border:2px solid #12384b;border-radius:8px;background:#fff;color:#12384b;font:inherit;cursor:pointer}#a11y-panel button[aria-pressed=true]{background:#12384b;color:#fff}#a11y-panel a{color:#124d80;text-decoration:underline}.a11y-options{display:grid;gap:10px;margin:16px 0}
.a11y-launcher:focus-visible,#a11y-panel :focus-visible{outline:3px solid #b64818;outline-offset:3px}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:.2em!important;text-decoration-thickness:2px!important}
html.a11y-spacing :is(p,li,label,td,th,input,textarea,button,a){line-height:1.8!important;word-spacing:.12em!important;letter-spacing:.03em!important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-contrast body,html.a11y-contrast body *{background-color:#fff!important;color:#111!important;border-color:#333!important;text-shadow:none!important;box-shadow:none!important}
html.a11y-contrast a{color:#003b80!important;text-decoration:underline!important}html.a11y-contrast button[aria-pressed=true]{background:#111!important;color:#fff!important}html.a11y-contrast :focus-visible{outline:3px solid #003b80!important;outline-offset:3px!important}
@media(max-width:600px){.a11y-launcher{inset-inline-start:8px;bottom:calc(8px + env(safe-area-inset-bottom));padding:8px 12px}body{padding-bottom:72px}}
@media(forced-colors:active){.a11y-launcher,#a11y-panel,#a11y-panel button{border:2px solid ButtonText}}
