/* Alto Contraste - Câmara Municipal de Sete Lagoas */
body.contraste, .contraste body {
    background: #000 !important;
    color: #fff !important;
}

body.contraste a, .contraste a {
    color: #ffff00 !important;
    text-decoration: underline !important;
}

body.contraste a:hover, .contraste a:hover {
    color: #00ffff !important;
    background: #222 !important;
}

body.contraste .btn, .contraste .btn {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .btn:hover, .contraste .btn:focus, .contraste .btn:active {
    background: #fff !important;
    color: #000 !important;
    border-color: #ffff00 !important;
}

body.contraste .navbar, .contraste .navbar, body.contraste #navbar, .contraste #navbar {
    background: #000 !important;
    border-bottom: 2px solid #fff !important;
}

body.contraste .navbar-nav .nav-link, .contraste .navbar-nav .nav-link {
    color: #fff !important;
}

body.contraste .navbar-nav .nav-link:hover, .contraste .navbar-nav .nav-link:focus {
    color: #ffff00 !important;
    background: #222 !important;
}

body.contraste .dropdown-menu, .contraste .dropdown-menu {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .dropdown-item, .contraste .dropdown-item {
    color: #fff !important;
}

body.contraste .dropdown-item:hover, .contraste .dropdown-item:focus {
    color: #000 !important;
    background: #ffff00 !important;
}

body.contraste .footer, .contraste .footer {
    background: #000 !important;
    color: #fff !important;
    border-top: 2px solid #fff !important;
}

body.contraste .footer-menu a, .contraste .footer-menu a {
    color: #ffff00 !important;
}

body.contraste .footer-menu a:hover, .contraste .footer-menu a:focus {
    color: #00ffff !important;
    background: #222 !important;
}

body.contraste .card, .contraste .card, body.contraste .tr-card, .contraste .tr-card {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .table, .contraste .table, body.contraste table, .contraste table {
    background: #000 !important;
    color: #fff !important;
    border-color: #fff !important;
}

body.contraste th, .contraste th, body.contraste td, .contraste td {
    background: #000 !important;
    color: #fff !important;
    border-color: #fff !important;
}

body.contraste input, .contraste input, body.contraste select, .contraste select, body.contraste textarea, .contraste textarea {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste input:focus, .contraste input:focus, body.contraste select:focus, .contraste select:focus, body.contraste textarea:focus, .contraste textarea:focus {
    outline: 2px solid #ffff00 !important;
    background: #222 !important;
    color: #ffff00 !important;
}

body.contraste .alert, .contraste .alert {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .modal-content, .contraste .modal-content {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .form-control, .contraste .form-control {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .form-control:focus, .contraste .form-control:focus {
    outline: 2px solid #ffff00 !important;
    background: #222 !important;
    color: #ffff00 !important;
}

body.contraste ::selection, .contraste ::selection {
    background: #ffff00 !important;
    color: #000 !important;
}

body.contraste .swiper-button-next, body.contraste .swiper-button-prev, .contraste .swiper-button-next, .contraste .swiper-button-prev {
    background: #000 !important;
    color: #fff !important;
    border: 2px solid #fff !important;
}

body.contraste .swiper-button-next:hover, body.contraste .swiper-button-prev:hover, .contraste .swiper-button-next:hover, .contraste .swiper-button-prev:hover {
    background: #ffff00 !important;
    color: #000 !important;
}

body.contraste .badge, .contraste .badge {
    background: #000 !important;
    color: #ffff00 !important;
    border: 2px solid #fff !important;
}

body.contraste .text-muted, .contraste .text-muted {
    color: #ffff00 !important;
}

body.contraste .border, .contraste .border {
    border-color: #fff !important;
}

body.contraste hr, .contraste hr {
    border-color: #fff !important;
}

body.contraste .form-label, .contraste .form-label {
    color: #ffff00 !important;
}

body.contraste .close, .contraste .btn-close {
    filter: invert(1) grayscale(1) !important;
}

/* Responsividade: garantir contraste em todos tamanhos */
@media (max-width: 768px) {
    body.contraste #acessibilidade-bar, .contraste #acessibilidade-bar {
        padding: 0.5em 0.5em !important;
    }
    body.contraste .btn, .contraste .btn {
        font-size: 1em !important;
    }
    body.contraste .agenda-container,
    .contraste .agenda-container,
    body.contraste .ouvidoria-container,
    .contraste .ouvidoria-container,
    body.contraste .ultimas-noticias,
    .contraste .ultimas-noticias,
    body.contraste .navbar-toggler,
    .contraste .navbar-toggler,
    body.contraste .nt-container,
    .contraste .nt-container {
        background: #000 !important;
        color: #ffff00 !important;
    }
    body.contraste .nt-conteudo,
    body.contraste .nt-title {
        color: #ffff00 !important;
    }
    body.contraste .navbar-toggler-icon {
        background-color: #fff !important;
    }
}

/* Garante contraste forte para fundos originalmente azul-terciário */
body.contraste [style*="background-color: var(--azul-terciary-color)"],
.contraste [style*="background-color: var(--azul-terciary-color)"],
body.contraste .bg-azul-terciary,
.contraste .bg-azul-terciary {
    background-color: #000 !important;
    color: #ffff00 !important;
}

body.contraste .full-width-bg-bar,
.contraste .full-width-bg-bar {
    background-color: #000 !important;
    color: #ffff00 !important;
}

body.contraste .cards-1,
.contraste .cards-1 {
    background-color: #000 !important;
    color: #ffff00 !important;
}

body.contraste .list-group,
.contraste .list-group,
body.contraste .list-group-item,
.contraste .list-group-item {
    background-color: #000 !important;
    color: #ffff00 !important;
    border-color: #fff !important;
}

body.contraste .vereadores,
.contraste .vereadores {
    background-color: #000 !important;
    color: #ffff00 !important;
}

body.contraste .secao-tv-camara,
.contraste .secao-tv-camara,
body.contraste .secao-radio-camara,
.contraste .secao-radio-camara,
body.contraste .color-gray,
.contraste .color-gray {
    background-color: #000 !important;
    color: #ffff00 !important;
}

body.contraste .accordion,
.contraste .accordion,
body.contraste .accordion-item,
.contraste .accordion-item,
body.contraste .accordion-body,
.contraste .accordion-body {
    background-color: #000 !important;
    color: #ffff00 !important;
    border-color: #fff !important;
    --bs-accordion-bg: #000 !important;
    --bs-accordion-color: #ffff00 !important;
}

body.contraste .accordion-button,
.contraste .accordion-button,
body.contraste .accordion-button:not(.collapsed),
.contraste .accordion-button:not(.collapsed) {
    background-color: #000 !important;
    color: #ffff00 !important;
    border-color: #fff !important;
}
body.contraste .accordion-button:hover,
.contraste .accordion-button:hover {
    background-color: #222 !important;
    color: #ffff00 !important;
    border-color: #ffff00 !important;
}

body.contraste .breadcrumb-bar,
.contraste .breadcrumb-bar,
body.contraste .breadcrumb-white-bg,
.contraste .breadcrumb-white-bg {
    background: #111 !important;
    color: #fff !important;
}
body.contraste .breadcrumb a,
.contraste .breadcrumb a {
    color: #fff !important;
    text-decoration: underline;
}

body.contraste #acessibilidade-bar,
.contraste #acessibilidade-bar {
    background: #000 !important;
    color: #ffff00 !important;
    border-bottom: 2px solid #fff !important;
    height: auto !important;
}

body.contraste #acessibilidade-bar .acess-btn-muted,
.contraste #acessibilidade-bar .acess-btn-muted {
    background: #000 !important;
    color: #ffff00 !important;
    border: 1.5px solid #fff !important;
}

body.contraste #acessibilidade-bar .acess-btn-muted:hover,
.contraste #acessibilidade-bar .acess-btn-muted:focus {
    background: #ffff00 !important;
    color: #000 !important;
    border-color: #ffff00 !important;
} 

body.contraste .nt-title,
body.contraste .nt-conteudo {
    color: #ffff00 !important;
}

body.contraste .nt-container {
    background: #000 !important;
}

