/* Esporte MG — Programas: estilo mínimo dos shortcodes. O tema pode sobrepor
   ou dispensar (wp_dequeue_style('emg-programas')). Cores pelas variáveis do tema, com padrão. */
.emg-programas__filtros { display: flex; flex-wrap: wrap; gap: .75rem; align-items: flex-end; margin: 0 0 1.25rem; }
.emg-programas__filtros .emg-campo { display: flex; flex-direction: column; gap: .25rem; font-size: .9rem; }
.emg-programas__filtros select { min-height: 2.5rem; padding: .25rem .5rem; }
.emg-programas__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.emg-programa-card__corpo { height: 100%; display: flex; flex-direction: column; border: 1px solid var(--emg-borda, #d9e1dc); border-radius: .5rem; overflow: hidden; background: var(--emg-fundo, #fff); }
.emg-programa-card__foto img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; height: auto; }
.emg-programa-card__texto { padding: .9rem 1rem 1rem; }
.emg-programa-card__titulo { font-size: 1.15rem; margin: .4rem 0 .5rem; line-height: 1.3; }
.emg-programa-card__dados, .emg-programa__ficha { display: grid; grid-template-columns: auto 1fr; gap: .2rem .75rem; margin: 0; font-size: .92rem; }
.emg-programa-card__dados dt, .emg-programa__ficha dt { font-weight: 600; }
.emg-programa-card__dados dd, .emg-programa__ficha dd { margin: 0; }
.emg-selo { display: inline-block; font-size: .75rem; font-weight: 600; padding: .1rem .6rem; border-radius: 1rem; background: #eef2ef; color: #333; }
.emg-selo--andamento { background: #d7f0e0; color: #0b5d3b; }
.emg-selo--planejado { background: #e5effa; color: #1d4f91; }
.emg-selo--concluido { background: #ececec; color: #333; }
.emg-selo--suspenso { background: #fbe7d3; color: #8a3b00; }
.emg-programa__capa img { width: 100%; height: auto; border-radius: .5rem; }
.emg-programa__subtitulo { margin: 1.5rem 0 .5rem; }
.emg-programa__numeros { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 1rem; }
.emg-programa__numeros li { flex: 1 1 140px; padding: .75rem 1rem; border-radius: .5rem; background: var(--emg-destaque-fundo, #f1f6f3); }
.emg-programa__numeros strong { display: block; font-size: 1.6rem; color: var(--emg-destaque, #0b5d3b); }
.emg-programa__cronograma { padding-left: 1.25rem; }
.emg-programa__cronograma li { margin-bottom: .35rem; }
.emg-acao__situacao { font-size: .8rem; color: #555; }
.emg-acao--realizada .emg-acao__situacao { color: #0b5d3b; font-weight: 600; }
.emg-programa__fotos { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
.emg-programa__fotos figure { margin: 0; }
.emg-programa__fotos img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; height: auto; border-radius: .35rem; display: block; }
.emg-programa__fotos figcaption { font-size: .8rem; color: #555; margin-top: .25rem; }
.emg-paginacao { margin-top: 1.25rem; }
