/**
 * CORRECAO — carrossel (ex.: "Receitas Mais Vistas") aparecendo por cima
 * dos anuncios AdX/Adzep.
 *
 * ─────────────────────────────────────────────────────────────────────────
 * CAUSA RAIZ (as duas coisas juntas, nao uma ou outra)
 * ─────────────────────────────────────────────────────────────────────────
 * 1) O slot de anuncio na home (<div class="ads"> em torno de
 *    dynamic_sidebar()) so tem CSS quando está dentro de `.content`
 *    (single-receita.php). Na home ele é uma div "nua": sem min-height,
 *    sem position, sem z-index. Antes do script da AdX responder ao
 *    leilão, essa div mede 0px de altura — e é exatamente nessa fresta de
 *    0px que o bloco seguinte (o carrossel) passa a ocupar visualmente o
 *    mesmo espaço.
 *
 * 2) O carrossel usa z-index (2 na seta e no degradê do card, 3 na legenda
 *    — ver .seetoo-slide-item:after, .receitas-maisvistas-slide-info em
 *    style.css) dentro de um elemento com `position:relative` mas SEM
 *    z-index próprio. position:relative sozinho não cria um novo contexto
 *    de empilhamento — então esses z-index "vazam" e disputam espaço
 *    diretamente contra a RAIZ do documento, isto é, contra qualquer outra
 *    coisa na página, incluindo o próprio slot de anúncio (que não tem
 *    z-index nenhum, logo entra nessa disputa como se fosse z-index:0).
 *    Card com z-index:3 sempre vence div de anúncio sem z-index — não
 *    importa a ordem em que cada um foi carregado.
 *
 * A correção ataca as duas causas: reserva de altura pro slot de anúncio
 * (evita a fresta de 0px) + isolamento de contexto de empilhamento nos dois
 * lados (o z-index do carrossel deixa de conseguir vazar para fora dele, e
 * o slot de anúncio passa a ter garantia própria de que nada de fora entra
 * por cima).
 *
 * Carregado depois de style.css (ver dependência no wp_enqueue_style em
 * inc/ads-stacking-fix.php) para as regras abaixo sempre vencerem em caso
 * de empate de especificidade.
 */

:root {
	/* Altura mínima do slot de anúncio antes do criativo carregar.
	   Ajuste por --cdc-ads-min-h-mobile / --cdc-ads-min-h-desktop caso um
	   slot específico use um tamanho de unidade diferente do padrão — ver
	   nota no rodapé deste arquivo sobre o que a Adzep/AdX precisa alinhar. */
	--cdc-ads-min-h-mobile: 100px;
	--cdc-ads-min-h-desktop: 250px;
}

/* 1) TODO slot de anúncio ganha contexto de empilhamento próprio + altura
   reservada — mesmo fora de .content (home, categoria, busca). */
.ads {
	position: relative;
	isolation: isolate;
	z-index: 1;
	min-height: var(--cdc-ads-min-h-mobile);
}

@media (min-width: 1025px) {
	.ads {
		min-height: var(--cdc-ads-min-h-desktop);
	}
}

/* 2) Todo carrossel/tira com card + degradê + z-index interno passa a ser
   um contexto de empilhamento fechado: o que está DENTRO nunca mais
   compete com o que está FORA — nem com o slot de anúncio vizinho, nem com
   qualquer outra coisa na página. Cobre os mesmos seletores que hoje usam
   z-index interno em style.css. */
.seetoo,
.receitas-maisvistas,
.slide,
.receita-eventos-tipo {
	isolation: isolate;
}
