/*
 * Aviso em modal (CPT "aviso").
 *
 * Usa <dialog> nativo: o navegador prende o foco, fecha com ESC e desenha o fundo
 * (::backdrop). Só é carregado nas páginas que realmente exibem um aviso.
 * O aviso é só uma imagem (com link opcional): 1050 × 750 px no computador e
 * 500 × 750 px no celular. Sem caixa branca, título ou texto.
 */

.aviso-modal {
	max-width: none;
	max-height: none;
	margin: auto;
	padding: 0;
	color: #000;
	background: transparent;
	border: 0;
	overflow: visible;
}
.aviso-modal::backdrop {
	background: rgba(0, 0, 0, 0.6);
}
.aviso-modal[open] {
	animation: aviso-entrada 0.3s ease-out;
}
@keyframes aviso-entrada {
	from {
		opacity: 0;
		transform: translateY(16px);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

.aviso-modal-caixa {
	position: relative;
	box-sizing: border-box;
	display: block;
	width: fit-content;
	max-width: calc(100vw - 32px);
	background: transparent;
}
.aviso-modal-caixa:focus {
	outline: 0; /* recebe o foco só para o leitor de telas anunciar o aviso */
}
.aviso-modal-imagem {
	display: block;
	overflow: hidden;
	border-radius: 20px;
	background: #F2F2F2;
}
.aviso-modal-imagem picture {
	display: block;
}
.aviso-modal-imagem img {
	display: block;
	width: auto;
	max-width: 100%;
	/* Nunca mais alta que a tela: a imagem encolhe mantendo a proporção. */
	max-height: calc(100vh - 32px);
	max-height: calc(100dvh - 32px);
	height: auto;
	margin: 0 auto;
}
a.aviso-modal-imagem:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

.aviso-modal-fechar {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	color: #000;
	background: rgba(255, 255, 255, 0.92); /* fundo claro para continuar visível sobre qualquer imagem */
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	transition: background-color 0.2s;
}
.aviso-modal-fechar:hover {
	background: #fff;
}
.aviso-modal-fechar:focus-visible {
	outline: 2px solid #000;
	outline-offset: 2px;
}
.aviso-modal-fechar .icone {
	width: 18px;
	height: 18px;
}

/* Trava a rolagem da página enquanto o aviso está aberto. */
html.aviso-aberto {
	overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
	.aviso-modal[open] {
		animation: none;
	}
}
