/*
 * [Summary]: Hiệu ứng chuyển trang "phóng ảnh tour" (View Transitions, cross-document) dùng chung cho trang Area,
 *   trang chủ (Tour hot sale, Tour yêu thích) và trang chi tiết tour. Trang nguồn đặt tên "tour-hero" cho ảnh vừa
 *   bấm (js/tour_zoom.js), trang tour đặt cùng tên cho ảnh lớn đầu trang → trình duyệt phóng ảnh tới đúng vị trí.
 * [Notes]: Cả trang nguồn lẫn trang đích phải nạp file này (@view-transition). Trình duyệt chưa hỗ trợ (Firefox) →
 *   chuyển trang thường. Phần riêng của trang tour (ảnh đích, đường GPU "vt-gpu", lớp phủ) nằm trong tour_detail.html.
 */
@view-transition { navigation: auto; }
::view-transition-group(tour-hero) { animation-duration: 0.5s; animation-timing-function: cubic-bezier(0.2, 0.8, 0.2, 1); }
::view-transition-image-pair(tour-hero) { isolation: auto; }
::view-transition-old(tour-hero), ::view-transition-new(tour-hero) { height: 100%; object-fit: cover; overflow: clip; }
::view-transition-old(root), ::view-transition-new(root) { animation-duration: 0.3s; }
@media (prefers-reduced-motion: reduce) {
    ::view-transition-group(*), ::view-transition-old(*), ::view-transition-new(*) { animation: none !important; }
}

/* Giữ khung "thông tin thêm" hiện khi đã bấm tour (class vt-keep do js/tour_zoom.js gắn): lúc chuyển trang trình
   duyệt bỏ trạng thái :hover trước khi chụp ảnh trang cũ → khung bị ẩn, ảnh trong khung không được chụp nên không
   có gì để phóng (chỉ còn mờ dần). Trang Area: .htour-hover-*; trang chủ: .tour-hover-*. */
.htour-hover-wrapper.vt-keep, .tour-hover-wrapper.vt-keep { z-index: 100; }
.htour-hover-wrapper.vt-keep .htour-hover-detail,
.tour-hover-wrapper.vt-keep .tour-hover-detail { display: block; animation: none; }
