.fp-totop{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px) + var(--fp-totop-lift,0px));z-index:8500;
  width:48px;height:48px;padding:0;margin:0;border:0;border-radius:50%;cursor:pointer;display:block;
  background:var(--card,var(--bg-card));color:var(--ink,var(--text));
  box-shadow:0 2px 10px rgba(0,0,0,.22);-webkit-tap-highlight-color:transparent;
  opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;
  transition:opacity .2s,transform .2s,visibility 0s .2s,bottom .15s}
.fp-totop.on{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:opacity .2s,transform .2s,visibility 0s,bottom .15s}
.fp-totop svg{position:absolute;inset:0;width:48px;height:48px;display:block}
.fp-totop .r0{fill:none;stroke:var(--line2,var(--border-strong));stroke-width:2.5}
.fp-totop .r1{fill:none;stroke:var(--acc,var(--cyan));stroke-width:2.5;stroke-linecap:round;stroke-dasharray:125.66;stroke-dashoffset:125.66;
  transform:rotate(-90deg);transform-origin:50% 50%}
.fp-totop .ar{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.fp-totop:hover .ar{stroke:var(--acc,var(--cyan))}
.fp-totop:focus-visible{outline:2px solid var(--acc,var(--cyan));outline-offset:3px}
.fp-totop.on.gh{opacity:.55}
.fp-totop.on.gh:hover,.fp-totop.on.gh:focus-visible{opacity:1}
@media (min-width:1100px){html.tt-in .rcol,html.tt-in [data-totop-col]{max-height:calc(100vh - var(--hdr,64px) - 40px - 56px)!important}}
@media (prefers-reduced-motion:reduce){.fp-totop,.fp-totop.on{transition:none;transform:none}}
@media print{.fp-totop{display:none}}
