/* ==========================================================================
   PM TEMA - FOLHA DE ACESSIBILIDADE (e-MAG / WCAG 2.1 AA)
   Autor: Leandro Kywdery (https://conectsistemas.com.br) - 17/09/2026 13:35:19
   ========================================================================== */

/* --- FOCO VISÍVEL REFORÇADO PARA TECLADO --- */
:focus-visible {
  outline: 3px solid #ffcc00 !important;
  outline-offset: 3px !important;
}

/* --- MODO ALTO CONTRASTE --- */
body.alto-contraste {
  background-color: #000000 !important;
  color: #ffffff !important;
}

body.alto-contraste * {
  background-color: transparent;
  color: #ffffff;
  border-color: #ffffff !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

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

body.alto-contraste a:hover,
body.alto-contraste a:focus {
  color: #00ffff !important;
  background-color: #1a1a1a !important;
}

body.alto-contraste h1,
body.alto-contraste h2,
body.alto-contraste h3,
body.alto-contraste h4,
body.alto-contraste h5,
body.alto-contraste h6 {
  color: #ffff00 !important;
}

body.alto-contraste .pm-topbar,
body.alto-contraste .pm-header-branding,
body.alto-contraste .pm-navbar-container,
body.alto-contraste .pm-site-footer,
body.alto-contraste .pm-news-card,
body.alto-contraste .pm-service-card,
body.alto-contraste .pm-widget,
body.alto-contraste .pm-single-article,
body.alto-contraste .pm-single-page,
body.alto-contraste .pm-404-card,
body.alto-contraste .pm-mobile-bottom-bar {
  background-color: #000000 !important;
  border: 2px solid #ffffff !important;
}

body.alto-contraste .pm-hero-section {
  background: #000000 !important;
  border-bottom: 2px solid #ffffff !important;
}

body.alto-contraste .pm-badge-category,
body.alto-contraste .pm-single-badge,
body.alto-contraste .pm-badge-verified,
body.alto-contraste .shortcut-key {
  background-color: #ffff00 !important;
  color: #000000 !important;
  border: 1px solid #ffffff !important;
}

body.alto-contraste input,
body.alto-contraste textarea,
body.alto-contraste select {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 2px solid #ffff00 !important;
}

body.alto-contraste button,
body.alto-contraste .pm-btn {
  background-color: #000000 !important;
  color: #ffff00 !important;
  border: 2px solid #ffff00 !important;
}

body.alto-contraste button:hover,
body.alto-contraste .pm-btn:hover {
  background-color: #ffff00 !important;
  color: #000000 !important;
}

/* --- TAMANHOS DE FONTE DINÂMICOS (A+ / A-) --- */
body.font-size-sm {
  font-size: 14px;
}

body.font-size-md {
  font-size: 16px;
}

body.font-size-lg {
  font-size: 18px;
}

body.font-size-xl {
  font-size: 20px;
}

body.font-size-lg .pm-brand-title {
  font-size: 1.85rem;
}

body.font-size-xl .pm-brand-title {
  font-size: 2.1rem;
}
