:root {
  --background: #121212;
  --link-color: yellow;
  --text-color: #fff;
}

html.contraste,
html.contraste body,
html.contraste .header,
html.contraste .header_bg {
    background: var(--background) !important;
    color: var(--text-color);
}


/* Header */
html.contraste header a {
    color: var(--link-color) !important;
    text-decoration: underline;
}

html.contraste header .logo,
html.contraste .link_nmp {
    color: var(--text-color) !important;
    text-decoration: none;
}

html.contraste header .focus {
    border: 2px solid #f4ff9d;
}

html.contraste .topo_cinza,
html.contraste .topo_branco,
html.contraste .topo_linha {
    filter: brightness(0.1);
}

html.contraste .topo_form {
    background: var(--background);
    color: var(--text-color);
}
 
html.contraste .topo_text > * {
    background: var(--background) !important;
    color: var(--text-color);
}

html.contraste .topo_form .button-form {
    background: var(--background);
    border: 1px solid #fff;
    color: var(--text-color);
}

html.contraste .alerta {
    background-color: rgb(52 52 52 / 96%);
    border: 1px solid var(--text-color);
}

html.contraste .alerta > p {
    color: var(--text-color) !important;
}

/* Menu Mobile */
html.contraste header .nav_menu_mobile_content {
    background-color: var(--background);
}

 
/* Icons */
html.contraste .nome_usuario,
html.contraste .last_login,
html.contraste .info_prazo,
html.contraste .info_prazo strong {
     color: var(--text-color) !important;
}

html.contraste .dots {
    background: none !important;
}

html.contraste .dot.active {
    background: var(--link-color)  !important;
}


html.contraste .header_acessibilidade .icon-contrast,
html.contraste .header_acessibilidade .icon-libras {
    filter:invert(1) !important;
}


html.contraste .header_acessibilidade button {
    color: #fff !important;
}


html.contraste img.circle,
html.contraste .icon-tel,
html.contraste .icon-banco,
html.contraste .icon-header,
html.contraste .icon-close,
html.contraste .logo-black:before {
    filter: invert(1);
}

html.contraste .icon-alerta {
    filter: grayscale(1);
}

html.contraste #empresas,
html.contraste #sobre,
html.contraste #assuntos,
html.contraste #assuntos_bg,
html.contraste .assuntos_left {
    background: var(--background);
}

/* Empresas */
html.contraste .empresas_categoria p {
    color: #fff;
}

html.contraste .btn_slide {
    border: 2px solid var(--link-color);
    background-color: var(--background);
    margin: 0 !important;
}


html.contraste .btn_slide div > * {
    color: var(--text-color) !important;
}

html.contraste .btn_slide.active {
    background: #363636 !important; 
}

html.contraste .slide_prestadora div,
html.contraste .slide_banco div {
    background: #fff;
    border-radius: 8px;
}

@media all and (max-width: 900px) { 
    html.contraste .slide_prestadora div,
    html.contraste .slide_banco div {
        border-radius: 0px;
    }
}


/* Title & Text */
html.contraste .h1,
html.contraste .form-title {
    color: #fff !important;
}


html.contraste .sobre_content .sobre_text_fade {
    display: none;
}
/*
html.contraste .sobre_content img {
    background: #fff;
    border-radius: 20px;
}
*/
html.contraste .section_title,
html.contraste .lermais,
html.contraste .sobre_text > p {
    color: var(--text-color);
}

html.contraste .sobre_content .lermais:hover {
    color: var(--link-color);
}

/* Dúvidas assuntos */
html.contraste .assuntos_mais,
html.contraste .assuntos_mais > h2,
html.contraste .assuntos_button,
html.contraste .assuntos_right_text,
html.contraste .assuntos_duvidas,
html.contraste .assuntos_accordion,
html.contraste .assuntos_accordion .accordion_content {
     color: var(--text-color);
     background: var(--background);
}

html.contraste .assuntos_button:hover {
    background: #333;
}

html.contraste .assuntos_title img {
    filter: invert(1) !important;
}

html.contraste .assuntos_title,
html.contraste .assuntos_accordion .collapsible-header,
html.contraste .assuntos_accordion .accordion_content > p {
    color: var(--text-color);
}

html.contraste .assuntos_button {
    border: 1px solid var(--link-color);
    color: var(--link-color);
}

html.contraste .assuntos_button > img {
    filter: invert(100%);
}

html.contraste .assuntos_right_text a,
html.contraste .footer_links a {
    color: var(--link-color) !important;
    text-decoration: underline;
}

html.contraste .footer {
    border: none;
    background: var(--background);
}

html.contraste .footer_logo a.logo::before {
    filter: invert(1) !important;
}

html.contraste .footer_logo .logo,
html.contraste .footer_logo .logo > * {
    color: var(--text-color) !important;
}

html.contraste .footer_links h2 {
    color: var(--text-color);
}

/* Tables */
html.contraste .table-termo a,
html.contraste .termo-link,
html.contraste .table-termo a > .vw-text {
    color: var(--link-color) !important;
    text-decoration: underline;
}

html.contraste .termo *{
    color: var(--text-color);
}


html.contraste .table-termo .tds {
    background: #333;
    color: var(--text-color);
}

/* Bloqueios */
html.contraste .bloqueio_card {
    border: 1px solid var(--link-color);
    color: var(--text-color);
}

html.contraste .bloqueio_action {
    border-left: 1px solid var(--link-color);
    
}

html.contraste .bloqueio_telefone > * {
    color: var(--text-color);
}

html.contraste .bloqueio_action .button-icon:before {
    filter: invert(1);
}

html.contraste .bloqueio_action .button-icon {
    color: var(--text-color);
}

html.contraste .button-form {
    background-color: var(--background);
    border: 1px solid var(--link-color);
    color: var(--link-color) !important;
}

html.contraste .bloq_container label span {
    color: var(--link-color) !important;
}

/* Minhas Reclamações (contato) */
html.contraste .tb_reclamacoes th,
html.contraste .tb_reclamacoes td {
    border: 1px solid var(--link-color);
    color: var(--text-color) !important;
}

html.contraste .tb_reclamacoes img {
    filter: invert(1);
}

html.contraste .input-form input[type="radio"]:checked + span:after {
    background-color: #fff;
    border-color: #fff;
}
 
/* Indicadores */
html.contraste .table_tmk,
html.contraste .table_tmk thead th {
    border: 1px solid var(--link-color);
    background: var(--background) !important;
}

html.contraste .table_tmk td {
    border-right: 1px solid var(--link-color);
} 

html.contraste .tmk_container tr:nth-child(even) > td { 
    background: #333 !important;
}
html.contraste .tmk_container tr:nth-child(odd) > td {
    background: var(--background) !important;
}

/* Modals */
html.contraste .modal-content,
html.contraste .modal-white {
    background-color: var(--background) !important;
    color: var(--text-color);
}

html.contraste .modal-step_content .title {
    color: var(--text-color);
}

/* Modal Buttons */
html.contraste .modal .button-black,
html.contraste .modal .button-cyan,
html.contraste .modal .button-semicyan{
    background-color: var(--background);
    border: 1px solid var(--link-color);
    color: var(--link-color) !important;
    text-decoration: underline;
}

html.contraste .modal-global h1,
html.contraste .modal-content h2,
html.contraste .modal-content h3, 
html.contraste .modal-content p,
html.contraste .modal-content label,
html.contraste .modal-content b,
html.contraste .modal-content small,
html.contraste .modal-content span,
html.contraste .modal-content strong {
    color: var(--text-color);
}

html.contraste #modal-criarconta .form-info p,
html.contraste #modal-criarconta b,
html.contraste .modal-passo .modal-white_content > .info {
    color: var(--text-color);
}

/* Modal Passo a Passo */
html.contraste .bloco-passo,
html.contraste .bloco-passo-num,
html.contraste .bloco-passo-red {
    background-color: var(--background);
    border: 1px solid var(--link-color);
}

/* Modal Recibo */
html.contraste .modal-recibo .modal-content,
html.contraste .modal-recibo .modal-white {
    background-color: #ffffff !important;
    color: var(--text-color);
}

/* Modal Contato (Reclamação) */
html.contraste #modal-contato .info-contato {
    color: var(--text-color) !important;
}


/* Links Clique Aqui */ 
html.contraste .link,
html.contraste .link-text,
html.contraste .link-blue,
html.contraste a.hoverble  {
    color: var(--link-color) !important;
    text-decoration: underline; 
}

/* Vlibras */
html.contraste .vw-links .vw-tooltip.active > .vw-tooltip__item {
    background: #000;
}

html.contraste vlibraswidget.vw-text:hover,
html.contraste vlibraswidget.vw-text:active,
html.contraste vlibraswidget.vw-text-active {
    background: #404040;
    color: #fff;
}

@media screen and (max-width: 768px) {
    html.contraste .tb_reclamacoes th, 
    html.contraste .tb_reclamacoes td,
    html.contraste .tb_reclamacoes td.noborder {
        border: 1px solid var(--link-color);
        background: #000 !important;
    }
    
    html.contraste .tb_reclamacoes td:before {
        color: var(--text-color) !important;
    }   
}

/* Modal Cadastro Step */
html.contraste .step.active {
  background: var(--background);
}

html.contraste .button-icon-step {
    background: transparent;
}

html.contraste .button-icon-step:hover,
html.contraste .button-icon-step:active {
    border: 1px solid var(--link-color) !important; 
}

html.contraste .button-icon-step > img {
   filter: invert(1);
}

html.contraste .step .info,
html.contraste .button-icon-step > span {
   color: var(--text-color) !important;
}

html.contraste .link-step,
html.contraste .link-step strong  {
    color: var(--link-color) !important;
}

/* Logo qualempresa */
html.contraste .link-qualempresa,
html.contraste .link-qualempresa strong {
    color: white !important;
}

html.contraste .logo-qualempresa {
    filter: invert(1);
}
