/*
Theme Name: Tema Osindicatao
Theme URI: https://www.osindicatao.com.br
Author: Sindicatão DF
Author URI: https://www.osindicatao.com.br
Description: Tema personalizado do Sindicato dos Vendedores Ambulantes do DF (Sindicatão/DF). Design system alinhado com app.osindicatao.com.br (DM Sans + Bricolage Grotesque, paleta azul #014488). Inclui page templates para todas as páginas institucionais, header/footer globais, componentes CSS (cards, botões, FAQ, counters) e JS (menu mobile, animação de counters).
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 8.0
License: Proprietary
Text Domain: tema-osindicatao
Tags: elementor, headless, sindicato, vendedores-ambulantes, responsive, custom-menu, custom-logo, featured-images, translation-ready
*/

/* ===== CSS principal do tema =====
   Os design tokens, tipografia, componentes e scrollbar estão em
   assets/css/ e são enfileirados via functions.php na ordem:
   1. design-tokens.css  — CSS variables (:root, .dark)
   2. typography.css      — fonts, body, headings, container
   3. components.css      — header, footer, cards, botões, seções, grid
   4. scrollbar.css       — scrollbar customizada
   5. style.css (este)    — ajustes finais e overrides
*/

/* Reset básico */
*, *::before, *::after {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

/* WordPress core alignment */
.alignleft { float: left; margin-right: 1.5rem; margin-bottom: 1rem; }
.alignright { float: right; margin-left: 1.5rem; margin-bottom: 1rem; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }

.alignwide { max-width: 100%; }
.alignfull { max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }

/* Caption */
.wp-caption {
  max-width: 100%;
}
.wp-caption-text {
  font-size: 0.8rem;
  color: var(--muted-foreground);
  text-align: center;
  margin-top: 0.5rem;
}

/* Gallery */
.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 0.5rem;
}

/* Sticky post */
.sticky {
  border-left: 4px solid var(--primary);
}

/* Screen reader text */
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
  border: 0;
}

/* Elementor compat — não sobrescrever estilos do Elementor */
.elementor-section {
  box-sizing: border-box;
}

/* WordPress admin bar fix */
@media (max-width: 600px) {
  #wpadminbar {
    position: fixed;
  }
}
