/* App-like scroll and page motion (paired with js/app-feel.js). */
@media (prefers-reduced-motion: no-preference) {
    html.app-feel-js {
        scroll-behavior: auto;
    }
}

html.app-feel-js body,
body.app-feel-scroll {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
}

@media (prefers-reduced-motion: no-preference) {
    ::view-transition-old(root),
    ::view-transition-new(root) {
        animation-duration: 0.02s;
    }
}

@media (prefers-reduced-motion: reduce) {
    html.app-feel-js {
        scroll-behavior: auto;
    }

    ::view-transition-old(root),
    ::view-transition-new(root) {
        animation-duration: 0.01ms !important;
    }
}

/* PWA install: mobile only. Hide on desktop. */
@media (min-width: 992px) {
    #fin-pwa-install-btn,
    #admin-pwa-install-btn,
    #auth-pwa-install-btn {
        display: none !important;
    }
}

/* Snappier loading indicators where Bootstrap / Dashlite spinners are used (~10× faster). */
@media (prefers-reduced-motion: no-preference) {
    .spinner-border {
        animation-duration: 0.075s;
    }

    .spinner-grow {
        animation-duration: 0.2s;
    }
}

