/* 全局页面入场/退场动画 — 仿登录页右侧滑入效果 */
html { overflow-x: clip; }
body {
    animation: pageSlideIn .4s cubic-bezier(.22,1,.36,1) both;
}
@keyframes pageSlideIn {
    from { opacity: 0; transform: translate3d(100%, 0, 0); }
    to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
/* 退场动画 — 给 body 加 .page-leaving 后触发 */
body.page-leaving {
    animation: pageSlideOut .32s cubic-bezier(.55,.06,.68,.19) forwards !important;
    pointer-events: none !important;
}
@keyframes pageSlideOut {
    from { opacity: 1; transform: translate3d(0, 0, 0); }
    to   { opacity: 0; transform: translate3d(100%, 0, 0); }
}
