/*
|--------------------------------------------------------------------------
| Acessibilidade global — tamanho de fonte e alto contraste
|--------------------------------------------------------------------------
|
| Mesmo mecanismo do site atual (amb.org.br): classes font-90..font-130
| no <body> controlam a escala de texto, e a classe alto-contraste
| inverte para fundo preto / texto branco / links amarelos.
|
*/

body.font-90 {
    font-size: 90%;
}

body.font-100 {
    font-size: 100%;
}

body.font-110 {
    font-size: 110%;
}

body.font-120 {
    font-size: 120%;
}

body.font-130 {
    font-size: 130%;
}

body.font-90 h1,
body.font-90 h2,
body.font-90 h3,
body.font-90 h4,
body.font-90 h5,
body.font-90 h6,
body.font-90 p,
body.font-90 a,
body.font-90 li,
body.font-90 span {
    font-size: 0.9em !important;
}

body.font-110 h1,
body.font-110 h2,
body.font-110 h3,
body.font-110 h4,
body.font-110 h5,
body.font-110 h6,
body.font-110 p,
body.font-110 a,
body.font-110 li,
body.font-110 span {
    font-size: 1.1em !important;
}

body.font-120 h1,
body.font-120 h2,
body.font-120 h3,
body.font-120 h4,
body.font-120 h5,
body.font-120 h6,
body.font-120 p,
body.font-120 a,
body.font-120 li,
body.font-120 span {
    font-size: 1.2em !important;
}

body.font-130 h1,
body.font-130 h2,
body.font-130 h3,
body.font-130 h4,
body.font-130 h5,
body.font-130 h6,
body.font-130 p,
body.font-130 a,
body.font-130 li,
body.font-130 span {
    font-size: 1.3em !important;
}

/* Alto contraste — igual ao site atual, mais cobertura para os
   componentes coloridos deste projeto não ficarem ilegíveis. */

body.alto-contraste {
    background-color: #000 !important;
    color: #fff !important;
}

body.alto-contraste a {
    color: #ff0 !important;
}

body.alto-contraste img {
    filter: grayscale(1) contrast(1.15);
}

body.alto-contraste .amb-agenda-event-card,
body.alto-contraste .amb-noticias-card,
body.alto-contraste .amb-publication-card,
body.alto-contraste .amb-beneficios-card,
body.alto-contraste [class*="-panel"],
body.alto-contraste [class*="-surface"] {
    background-color: #111 !important;
    color: #fff !important;
    border-color: #fff !important;
}

body.alto-contraste .amb-agenda-event-card__content h2,
body.alto-contraste .amb-noticias-card__body h2 {
    color: #fff !important;
}

/* Indicador visual de estado ativo nos controles */

.amb-access-btn[aria-pressed="true"],
.amb-font-btn.is-active {
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Tamanho gradual e intencional dos rótulos A-/A/A+: o próprio botão já
   sugere visualmente o que ele faz (A- menor, A+ maior). Travado com
   !important para não depender de herança do <button> do navegador nem
   da escala de fonte que eles mesmos controlam. */

.amb-font-btn {
    font-family: inherit !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

.amb-font-btn[data-role="decrease"] {
    font-size: 11px !important;
}

.amb-font-btn[data-role="reset"] {
    font-size: 13px !important;
}

.amb-font-btn[data-role="increase"] {
    font-size: 16px !important;
}
