/**
 * Page transitions: vertical slide
 * Exit: overlay slides in from the top, covering the page.
 * Enter: overlay slides out to the bottom, revealing the new page.
 * No transition on refresh — enter animation only fires on navigation.
 */

#pt-overlay {
    position: fixed;
    inset: 0;
    background: #000;
    z-index: 99999;
    pointer-events: none;
    /* default: translateY(0) = covering the page */
}

#pt-overlay.pt-slide {
    transition: transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Off-screen bottom (after enter animation completes) */
#pt-overlay.pt-bottom {
    transform: translateY(100%);
}

/* Off-screen top (start position before exit animation) */
#pt-overlay.pt-top {
    transform: translateY(-100%);
}
