/**
 * Transizioni tra pagine: caricamento iniziale, navigazione client-side, uscita click.
 */

/* Solo opacity: niente transform su .page (evita stacking/containing block che interferiscono con overlay tipo Complianz). */
@keyframes annalisa-page-enter {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

html.annalisa-page-transitions .page {
	animation: annalisa-page-enter 0.42s ease-out forwards;
}

body.annalisa-page-leaving .page {
	animation: none;
	opacity: 0;
	transition: opacity 0.28s ease;
}

body.annalisa-page-leaving .page[aria-busy="true"] {
	/* mantiene coerenza stato durante uscita */
	pointer-events: none;
}

.page.annalisa-swap-enter {
	animation: annalisa-page-enter 0.42s ease-out forwards;
}

@media (prefers-reduced-motion: reduce) {
	html.annalisa-page-transitions .page {
		animation: none;
	}

	body.annalisa-page-leaving .page {
		transition: opacity 0.12s ease;
		transform: none;
	}

	.page.annalisa-swap-enter {
		animation: none;
	}
}
