/* Hiệu ứng chuyển trang – New Theme TT */

/* Trình duyệt hỗ trợ View Transitions liên trang (Chrome/Edge 126+, Safari 18.2+) */
@view-transition {
	navigation: auto;
}
::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: .55s;
	animation-timing-function: cubic-bezier(.22, .61, .36, 1);
}
::view-transition-old(root) { animation-name: ntt-vt-out; }
::view-transition-new(root) { animation-name: ntt-vt-in; }
@keyframes ntt-vt-out {
	to { opacity: 0; transform: translateY(-14px) scale(.985); }
}
@keyframes ntt-vt-in {
	from { opacity: 0; transform: translateY(22px); }
}

/* Dự phòng cho trình duyệt chưa hỗ trợ: lớp màu thương hiệu trượt lên rồi mở ra */
.ntt-curtain {
	position: fixed; inset: 0; z-index: 2147483000;
	background: var(--wp--preset--color--contrast, #2d2424);
	transform: translateY(101%);
	transition: transform .5s cubic-bezier(.7, 0, .2, 1);
	pointer-events: none;
}
.ntt-curtain.is-in { transform: translateY(0); pointer-events: all; }
.ntt-curtain.is-out { transform: translateY(-101%); transition: transform .65s cubic-bezier(.7, 0, .2, 1) .05s; }

@media (prefers-reduced-motion: reduce) {
	::view-transition-old(root),
	::view-transition-new(root) { animation: none !important; }
	.ntt-curtain,
	.ntt-curtain.is-out { transition: none !important; }
}
