/* Estilos base do portal público */
.portal-content {
  min-height: 60vh;
}

.acessibilidade-bar {
  font-size: 0.9rem;
}

.navbar-brand img {
  width: auto;
  max-height: 40px;
}

.social-links a {
  opacity: 0.9;
}

.social-links a:hover {
  opacity: 1;
}

/* Alto contraste (acionado por assets/js/acessibilidade.js) */
html.alto-contraste,
body.alto-contraste {
  background: #000 !important;
  color: #fff !important;
}

body.alto-contraste *,
html.alto-contraste * {
  background: #000 !important;
  color: #fff !important;
  border-color: #fff !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

body.alto-contraste a,
body.alto-contraste a *,
html.alto-contraste a,
html.alto-contraste a * {
  color: #ffeb3b !important;
  text-decoration: underline !important;
}

body.alto-contraste .btn:hover,
body.alto-contraste .btn:focus,
body.alto-contraste .btn:active,
html.alto-contraste .btn:hover,
html.alto-contraste .btn:focus,
html.alto-contraste .btn:active {
  background: #111 !important;
  color: #fff !important;
  border-color: #ffeb3b !important;
}

body.alto-contraste input::placeholder,
body.alto-contraste textarea::placeholder,
html.alto-contraste input::placeholder,
html.alto-contraste textarea::placeholder {
  color: #ddd !important;
}

body.alto-contraste img,
html.alto-contraste img {
  filter: grayscale(100%) contrast(120%);
  background: transparent !important;
}

