html.pullRefreshEnabled,html.pullRefreshEnabled body{overscroll-behavior-y:none}
.pullRefresh{position:fixed;z-index:50;left:50%;top:calc(env(safe-area-inset-top,0px) + 6px);transform:translate3d(-50%,var(--pull-distance,-56px),0);opacity:var(--pull-opacity,0);will-change:transform,opacity;display:flex;align-items:center;justify-content:center;gap:8px;width:180px;max-width:calc(100% - 32px);padding:10px 12px;border:1px solid var(--line,#e5dce3);border-radius:24px;background:#fff;color:var(--accent,#765968);box-shadow:0 3px 14px #58404f20;font:500 13px/1.3 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;pointer-events:none}
.pullRefresh.settling{transition:transform .18s cubic-bezier(.22,.61,.36,1),opacity .18s ease}
.pullRefresh[hidden]{display:none!important}.pullRefreshIcon{font-size:23px;line-height:1;transition:transform .15s}.pullRefresh.ready{background:var(--soft,#f3edf1);border-color:var(--accent,#765968)}.pullRefresh.ready .pullRefreshIcon{transform:rotate(180deg)}.pullRefresh.refreshing .pullRefreshIcon{animation:pullRefreshSpin .8s linear infinite}
@keyframes pullRefreshSpin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.pullRefreshIcon,.pullRefresh.settling{transition:none}.pullRefresh.refreshing .pullRefreshIcon{animation:none}}
@media print{.pullRefresh{display:none!important}}
