/* assets/css/a11y.css */
:root { --a11y-zoom: 1; }

body.a11y-readable-font,
body.a11y-readable-font * { font-family: Arial, Helvetica, sans-serif !important; }

body.a11y-dyslexia-font,
body.a11y-dyslexia-font * { font-family: 'Comic Sans MS', 'OpenDyslexic', cursive !important; }

body.a11y-bold-text,
body.a11y-bold-text * { font-weight: 700 !important; }

body.a11y-line-height,
body.a11y-line-height p,
body.a11y-line-height li,
body.a11y-line-height span { line-height: 2 !important; }

body.a11y-letter-spacing,
body.a11y-letter-spacing p,
body.a11y-letter-spacing li,
body.a11y-letter-spacing span { word-spacing: 0.25em !important; letter-spacing: 0.05em !important; }

body.a11y-high-contrast { background-color: #000 !important; color: #fff !important; }
body.a11y-high-contrast * { color: #fff !important; border-color: #fff !important; text-shadow: none !important; background-color: #000 !important; }
body.a11y-high-contrast a { text-decoration: underline !important; color: #fbbf24 !important; }

body.a11y-monochrome { filter: grayscale(100%); }

body.a11y-no-animations *,
body.a11y-no-animations *::before,
body.a11y-no-animations *::after {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
}

body.a11y-highlight-links a {
    outline: 2px solid #0369A1 !important;
    outline-offset: 2px !important;
    background: rgba(3,105,161,0.1) !important;
}

body.a11y-large-cursor,
body.a11y-large-cursor * {
    cursor: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40"><path d="M0 0 L20 20 L10 20 L15 32 L10 34 L5 22 L0 28 Z" fill="white" stroke="%23075985" stroke-width="1.5"/></svg>') 0 0, auto !important;
}

/* Leselinie */
body.a11y-reading-line::after {
    content: '';
    position: fixed;
    left: 0; right: 0;
    height: 2px;
    background: rgba(3,105,161,0.6);
    pointer-events: none;
    z-index: 9999999;
    top: var(--reading-line-y, 50vh);
    transition: top 0.05s linear;
}
