/* TLMS_PULL_TO_REFRESH_V1 */
@media (pointer: coarse) {
    html.tlms-pull-refresh-enabled,
    html.tlms-pull-refresh-enabled body {
        overscroll-behavior-y: none;
    }

    #tlms-pull-refresh {
        --tlms-pull-progress: 0;
        position: fixed;
        z-index: 2147483000;
        top: max(8px, env(safe-area-inset-top));
        left: 50%;
        display: flex;
        min-height: 48px;
        align-items: center;
        gap: 9px;
        padding: 6px 13px 6px 7px;
        border: 1px solid rgba(194, 139, 0, .45);
        border-radius: 999px;
        background: rgba(255, 253, 247, .97);
        color: #5f4300;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 12px;
        font-weight: 850;
        line-height: 1.15;
        white-space: nowrap;
        pointer-events: none;
        opacity: 0;
        transform: translate(-50%, -76px) scale(.9);
        box-shadow: 0 7px 22px rgba(67, 48, 0, .2);
        transition: opacity .16s ease, transform .16s ease;
        will-change: transform, opacity;
    }

    #tlms-pull-refresh.tlms-pull-visible {
        opacity: 1;
    }

    #tlms-pull-refresh .tlms-pull-ring {
        position: relative;
        display: grid;
        width: 35px;
        height: 35px;
        flex: 0 0 35px;
        border-radius: 50%;
        background: conic-gradient(
            #d79800 calc(var(--tlms-pull-progress) * 1turn),
            #e8dfc8 0
        );
        place-items: center;
    }

    #tlms-pull-refresh .tlms-pull-ring::before {
        content: '';
        position: absolute;
        inset: 4px;
        border-radius: 50%;
        background: #fffdf7;
    }

    #tlms-pull-refresh .tlms-pull-icon {
        position: relative;
        z-index: 1;
        color: #8b6200;
        font-size: 19px;
        font-weight: 950;
        line-height: 1;
        transform: rotate(0deg);
        transition: transform .18s ease, color .18s ease;
    }

    #tlms-pull-refresh.tlms-pull-ready .tlms-pull-ring {
        background: #169b62;
    }

    #tlms-pull-refresh.tlms-pull-ready .tlms-pull-icon {
        color: #087647;
        transform: rotate(180deg);
    }

    #tlms-pull-refresh.tlms-pull-loading .tlms-pull-ring {
        box-sizing: border-box;
        border: 4px solid #eadfbe;
        border-top-color: #d79800;
        background: #fffdf7;
        animation: tlms-pull-spin .72s linear infinite;
    }

    #tlms-pull-refresh.tlms-pull-loading .tlms-pull-ring::before,
    #tlms-pull-refresh.tlms-pull-loading .tlms-pull-icon {
        display: none;
    }

    @keyframes tlms-pull-spin {
        to { transform: rotate(360deg); }
    }

    @media (prefers-reduced-motion: reduce) {
        #tlms-pull-refresh {
            transition: none;
        }
    }
}