/* accessibility-menu.css */


/* Estilo para o botão de acessibilidade */

#accessibility-button {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: #007bff !important;
    color: #fff !important;
    width: 50px;
    height: 50px;
    cursor: pointer;
    z-index: 1000;
    border-radius: 50%;
    /* Torna o botão arredondado */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1) !important;
    /* Sombra cinza clara */
    display: flex;
    align-items: center;
    justify-content: center;
}

#accessibility-button i {
    font-size: 24px !important;
    color: #fff !important;
}


/* Estilo para o menu de acessibilidade */

#accessibility-menu {
    position: fixed;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    background-color: #fff !important;
    color: #000 !important;
    border: 1px solid #ccc !important;
    z-index: 999;
    padding: 10px !important;
    width: 250px;
    height: 250px;
    /* Altura fixa de 250px */
    overflow-y: auto;
    /* Barra de rolagem vertical */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.accessibility-exclude {
    background-color: initial !important;
    color: initial !important;
    filter: none !important;
}

.accessibility-exclude * {
    background-color: initial !important;
    color: initial !important;
    filter: none !important;
}


/* Classe para mostrar o menu com transição */

#accessibility-menu.open {
    opacity: 1;
    visibility: visible;
}

.accessibility-option {
    display: flex;
    align-items: center;
    padding: 8px;
    cursor: pointer;
}

.accessibility-option i {
    margin-right: 10px;
    font-size: 18px;
}

.accessibility-option:hover {
    background-color: #f0f0f0;
}

#accessibility-menu .accessibility-option.selected {
    background-color: #007bff !important;
    color: #fff !important;
}

#accessibility-menu .accessibility-option.selected i {
    color: #fff !important;
}


/* Estilo para modo dislexia */

.dyslexia-font {
    font-family: "Poppins", sans-serif !important;
}


/* Estilo para régua */

#ruler {
    position: fixed;
    width: 100%;
    height: 2px;
    background: red;
    z-index: 1000;
    pointer-events: none;
}


/* Estilo para marcador */

#marker {
    position: fixed;
    width: 100%;
    height: 50px;
    background: rgba(255, 255, 0, 0.5);
    z-index: 999;
    pointer-events: none;
}


/* Evita que a página se expanda horizontalmente ao aplicar zoom */


/* body {
    overflow-x: hidden;
} */


/* Estilo para Contraste Escuro */

body.dark-contrast {
    background-color: #121212 !important;
    color: #e0e0e0 !important;
}

body.dark-contrast a {
    color: #90caf9 !important;
}

body.dark-contrast img {
    opacity: 0.8 !important;
}


/* Estilo para Contraste Claro */

body.light-contrast {
    background-color: #e0e0e0 !important;
    color: #000000 !important;
}

body.light-contrast a {
    color: #0000ee !important;
}

body.light-contrast img {
    opacity: 1 !important;
}


/* Estilo para Contraste Invertido */

body.inverted-contrast {
    background-color: #000000 !important;
    color: #ffffff !important;
}

body.inverted-contrast a {
    color: #1e90ff !important;
    /* Ajuste a cor dos links, se necessário */
}

body.inverted-contrast img {
    filter: invert(1) !important;
}


/* Excluir o menu e botão de acessibilidade das classes de contraste */

body.dark-contrast .accessibility-exclude,
body.light-contrast .accessibility-exclude,
body.inverted-contrast .accessibility-exclude {
    background-color: initial !important;
    color: initial !important;
    filter: none !important;
}

body.dark-contrast .accessibility-exclude *,
body.light-contrast .accessibility-exclude *,
body.inverted-contrast .accessibility-exclude * {
    background-color: initial !important;
    color: initial !important;
    filter: none !important;
}


/* Estilos para Saturação */

.high-saturation {
    filter: saturate(2) !important;
}

.low-saturation {
    filter: saturate(0.5) !important;
}

.mono-saturation {
    filter: grayscale(1) !important;
}


/* Estilos para links destacados */

.highlighted-link,
.highlighted-link * {
    background-color: yellow !important;
}