/* « Tirer pour actualiser » (js/pull-refresh.js) — toutes les pages, sur téléphone.
   Le bouton rond « Actualiser » (#fab-refresh) qu'il remplace est masqué partout ; le
   geste natif du navigateur (Chrome Android) est neutralisé pour ne pas actualiser deux
   fois. */
.sf-ptr { display: none; }
#fab-refresh { display: none !important; }

@media (max-width: 991.98px) {
    html, body { overscroll-behavior-y: contain; }
    .sf-ptr {
        display: grid;
        position: fixed;
        top: 0;
        left: 50%;
        z-index: 1095;
        width: 42px;
        height: 42px;
        border-radius: 50%;
        place-items: center;
        color: var(--sf-brand-800, #1B6535);
        background: #fff;
        box-shadow: 0 8px 22px -6px rgba(var(--sf-brand-900-rgb, 15, 61, 32), .45);
        transform: translate(-50%, -56px);
        opacity: 0;
        pointer-events: none;
    }
    .sf-ptr.is-settling { transition: transform .3s ease, opacity .25s ease; }
    .sf-ptr.is-ready { color: #fff; background: var(--sf-brand-800, #1B6535); }
    .sf-ptr.is-refreshing { opacity: 1; transition: transform .25s ease; }
    .sf-ptr.is-refreshing i { animation: sf-ptr-spin .7s linear infinite; }
}
@keyframes sf-ptr-spin { to { transform: rotate(360deg); } }
