.subcal-scroll-top{box-sizing:border-box;position:fixed;right:24px;bottom:24px;z-index:55;display:grid;place-items:center;width:42px;height:42px;padding:9px;border:1px solid var(--line);border-radius:13px;background:var(--panel, var(--bg));color:var(--text);box-shadow:0 5px 18px #0003;cursor:pointer;-webkit-tap-highlight-color:transparent}
.subcal-scroll-top[hidden]{display:none!important}
.subcal-scroll-top:hover{border-color:var(--accent);color:var(--accent)}
.subcal-scroll-top:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.subcal-scroll-top svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
body:has(dialog[open]) .subcal-scroll-top-global{display:none}
dialog .subcal-scroll-top-dialog{position:absolute;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:60}
@media(max-width:700px){.subcal-scroll-top-global{right:12px;bottom:calc(16px + env(safe-area-inset-bottom))}body:has(.mobile-bottom-nav) .subcal-scroll-top-global{bottom:calc(90px + env(safe-area-inset-bottom))}}
/* The first-visit statistics notice occupies the same space as the floating
   control on phones. Keep the control above the notice while it is visible. */
@media(max-width:700px){body:has(.traffic-notice:not([hidden])) .subcal-scroll-top-global{bottom:calc(164px + env(safe-area-inset-bottom))}}
