#jdih-a11y-button {
    position: fixed;
    right: 18px;
    bottom: 85px;
    z-index: 99990;
    width: 52px;
    height: 52px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #064b8d;
    color: #fff;
    font-size: 25px;
    cursor: pointer;
    box-shadow: 0 2px 10px #0005;
}
#jdih-a11y-panel {
    position: fixed;
    right: 16px;
    bottom: 145px;
    z-index: 99991;
    width: min(320px, calc(100vw - 32px));
    max-height: 70vh;
    overflow-y: auto;
    padding: 16px;
    background: #fff;
    color: #222;
    border: 2px solid #064b8d;
    border-radius: 12px;
    box-shadow: 0 4px 18px #0004;
    font: 16px/1.5 Arial, sans-serif;
}
#jdih-a11y-panel[hidden] { display: none !important; }
#jdih-a11y-panel h2 { font-size: 20px; margin: 0 0 12px; }
#jdih-a11y-panel button {
    margin: 3px 2px;
    padding: 8px 10px;
    border: 1px solid #777;
    border-radius: 6px;
    background: #f4f4f4;
    color: #111;
    cursor: pointer;
}
#jdih-a11y-panel button:focus,
#jdih-a11y-button:focus {
    outline: 3px solid #ffbf00;
    outline-offset: 3px;
}
#jdih-a11y-panel .a11y-wide { width: 100%; }
html.a11y-contrast { filter: contrast(1.6); }
html.a11y-dark { background: #111 !important; color: #f5f5f5 !important; }
html.a11y-dark body,
html.a11y-dark main,
html.a11y-dark section,
html.a11y-dark article,
html.a11y-dark header,
html.a11y-dark footer,
html.a11y-dark .container,
html.a11y-dark .card {
    background-color: #171717 !important;
    color: #f5f5f5 !important;
}
html.a11y-dark body a { color: #8fc8ff !important; }
html.a11y-links a { text-decoration: underline !important; outline: 1px solid currentColor; }
html.a11y-big-cursor, html.a11y-big-cursor * { cursor: crosshair !important; }
html.a11y-spacing body { letter-spacing: .06em !important; word-spacing: .12em !important; line-height: 1.8 !important; }
html.a11y-no-motion *, html.a11y-no-motion *::before,
html.a11y-no-motion *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
}
