/* Ad Engine — apresentação complementar das posições de anúncio.
 * Moldura do publisher apenas: nunca estiliza, corta, escala ou sobrepõe o
 * criativo do provedor.
 * 8.3.5: rótulos, Top Scroll (faixa e ×), Top Display, Hero, divisores e todas as
 * reservas moram no CSS crítico inline (assets/css/ad-engine/ae-critical.css),
 * aplicado antes da primeira pintura. Esta folha entra no pacote do tema, que o
 * CSS crítico move para o fim do body; aqui ficam só regras de fora da primeira
 * tela, para nada mudar de aparência quando o pacote chega. */

/* Identificação dos Auto Ads in-page, fora da árvore do anúncio. Não reserva
 * espaço nem altera a geometria do provedor. JS só usa uma faixa já vazia. */
.ae-auto-label-layer { position: absolute; left: 0; top: 0; width: 0; height: 0; pointer-events: none; z-index: 1; }
.ae-auto-label { position: absolute; display: block; width: 116px; height: 16px; margin: 0; padding: 0; border: 0; text-align: center; color: var(--text-muted, #8a8494); font: 600 10px/16px "Source Sans 3", Arial, sans-serif; letter-spacing: .07em; text-transform: uppercase; white-space: nowrap; pointer-events: none; }
.ae-auto-label[hidden] { display: none; }
html[data-theme="light-mode"] .ae-auto-label { color: #6a6372; }
@media print { .ae-auto-label-layer { display: none; } }
@media (forced-colors: active) { .ae-auto-label { color: CanvasText; } }

/* Anúncio simulado (ambiente local ou ?ae_sim=1): mostra a geometria sem pedir anúncio real. */
.ae-sim {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	inline-size: min(100%, var(--ae-sim-w, 336px));
	margin-inline: auto;
	border: 1px dashed currentColor;
	color: var(--text-muted, #8a8494);
	font: 600 12px/1.4 "Source Sans 3", Arial, sans-serif;
	opacity: .7;
}

/*
 * Lateral das listagens no desktop. O cartão da editoria tem 24 px de respiro
 * e o anúncio tem 300 px: dentro do cartão ele empurrava a coluna para 300 px e
 * os títulos saíam 24 px para fora. Com o anúncio presente, o cartão passa para
 * o painel dos módulos e o anúncio fica abaixo dele, na largura inteira da
 * coluna; a coluna ocupa a altura da listagem, então o anúncio sticky acompanha
 * a leitura. A especificidade supera as regras de editorial-index.css.
 */
.go-archive-aside > :is(.ae-slot--lst-rail, .ae-cascade) { flex: 0 0 auto; }
@media (min-width: 1101px) {
	html[data-theme].ae-on body.go-verge.od-listing-page #primary .go-archive-aside:is(:has(> .ae-slot--lst-rail), :has(> .ae-cascade)) {
		display: flex !important;
		flex-direction: column !important;
		align-self: stretch !important;
		height: auto !important;
		padding: 0 !important;
		border-radius: 0 !important;
		background: none !important;
	}
	html[data-theme].ae-on body.go-verge.od-listing-page #primary .go-archive-aside:is(:has(> .ae-slot--lst-rail), :has(> .ae-cascade)) > .go-archive-aside__panel {
		display: block !important;
		/* O tema alinha os itens da lateral pelo início: sem isto o painel encolhe. */
		align-self: stretch !important;
		inline-size: auto !important;
		min-inline-size: 0;
		box-sizing: border-box;
		padding: 24px;
		border-radius: 12px;
		background: var(--od-index-panel, #f0ecf5);
	}
}
