/**
 * [CEGOVBR] Funções de Acessibilidade - CSS
 * - Define variável de escala de fonte na raiz.
 * - Fornece modo de alto contraste.
 * - Ajustes não intrusivos para manter compatibilidade com temas.
 */

/* Escala de fonte na raiz. A ideia é que elementos em rem escalem juntos. */
:root {
    --cegovbr-font-scale: 1;
}

/* Aplica a escala na raiz do documento. 
     Isso é mais seguro do que tentar multiplicar cada seletor individual. */
html {
    font-size: calc(100% * var(--cegovbr-font-scale));
}

/* Alto Contraste: aplicado quando a classe .cegovbr-contrast está no <html>. */
html.cegovbr-contrast,
html.cegovbr-contrast body {
    background: #000 !important;
    color: #fff !important;
}

/* Links em alto contraste */
html.cegovbr-contrast a,
html.cegovbr-contrast a:visited {
    color: #ffeb3b !important;
    /* amarelo para boa visibilidade */
    text-decoration: underline;
}

/* Bordas e divisores em alto contraste */
html.cegovbr-contrast hr,
html.cegovbr-contrast .border,
html.cegovbr-contrast .card,
html.cegovbr-contrast .list-group,
html.cegovbr-contrast .table {
    border-color: #fff !important;
}

/* Botões genéricos em alto contraste (fallback para temas) */
html.cegovbr-contrast button,
html.cegovbr-contrast .btn {
    background: #111 !important;
    color: #fff !important;
    border: 1px solid #fff !important;
}

/* Inputs em alto contraste */
html.cegovbr-contrast input,
html.cegovbr-contrast select,
html.cegovbr-contrast textarea {
    background: #000 !important;
    color: #fff !important;
    border: 1px solid #fff !important;
}

/* Foco visível reforçado em alto contraste */
html.cegovbr-contrast :focus {
    outline: 2px solid #ffeb3b !important;
    outline-offset: 2px;
}

/* Evita transições "piscando" quando o contraste alterna */
html.cegovbr-contrast * {
    transition: none !important;
}