/* ==========================================================================
   ZUTZ GASTRO - COMPREHENSIVE ACCESSIBILITY ENGINE (BITV / WCAG 2.1 AAA)
   ========================================================================== */

/* 1. High Contrast Mode */
html.a11y-high-contrast {
    background-color: #000000 !important;
    color: #ffff00 !important;
}
html.a11y-high-contrast * {
    background-color: #000000 !important;
    color: #ffff00 !important;
    border-color: #ffff00 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.a11y-high-contrast img,
html.a11y-high-contrast video {
    filter: contrast(150%) brightness(90%) !important;
}
html.a11y-high-contrast a,
html.a11y-high-contrast button {
    color: #00ffff !important;
    border: 2px solid #00ffff !important;
}

/* 2. Monochrome / Schwarz-Weiß */
html.a11y-grayscale {
    filter: grayscale(100%) !important;
}

/* 3. Inverted / Dark Mode */
html.a11y-dark-mode {
    filter: invert(90%) hue-rotate(180deg) !important;
    background-color: #121212 !important;
}
html.a11y-dark-mode img,
html.a11y-dark-mode video,
html.a11y-dark-mode iframe,
html.a11y-dark-mode #a11y-widget-container {
    filter: invert(100%) hue-rotate(180deg) !important;
}

/* 4. Font Size Scalers */
html.a11y-font-lg {
    font-size: 115% !important;
}
html.a11y-font-xl {
    font-size: 130% !important;
}

/* 5. Enhanced Line & Letter Spacing (Lesbarkeit) */
html.a11y-readable-spacing * {
    line-height: 1.85 !important;
    letter-spacing: 0.08em !important;
    word-spacing: 0.16em !important;
}

/* 6. Dyslexia-Friendly Font */
@font-face {
    font-family: 'OpenDyslexic';
    src: url('https://cdn.jsdelivr.net/npm/opendyslexic@0.91.4/dist/opendyslexic-regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
html.a11y-dyslexic-font,
html.a11y-dyslexic-font * {
    font-family: 'OpenDyslexic', 'Comic Sans MS', sans-serif !important;
}

/* 7. Highlight Links */
html.a11y-highlight-links a {
    text-decoration: underline 3px #e84393 !important;
    background-color: #fef08a !important;
    color: #000000 !important;
    font-weight: 800 !important;
    padding: 2px 4px !important;
    border-radius: 4px !important;
}

/* 8. Large Custom Cursor */
html.a11y-big-cursor,
html.a11y-big-cursor * {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='%23000000' stroke='%23ffffff' stroke-width='2'%3E%3Cpath d='M3 3l7.5 18 2.5-6.5 6.5-2.5z'/%3E%3C/svg%3E"), auto !important;
}

/* 9. Stop Animations (Reduced Motion) */
html.a11y-reduced-motion *,
html.a11y-reduced-motion *::before,
html.a11y-reduced-motion *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
}

/* 10. Reading Guide Ruler */
#a11y-reading-ruler {
    position: fixed;
    left: 0;
    width: 100%;
    height: 12px;
    background: rgba(232, 67, 147, 0.45);
    border-top: 2px solid #e84393;
    border-bottom: 2px solid #e84393;
    pointer-events: none;
    z-index: 999999;
    display: none;
    transform: translateY(-50%);
    box-shadow: 0 0 15px rgba(232, 67, 147, 0.5);
}
html.a11y-ruler-active #a11y-reading-ruler {
    display: block;
}
