.site-back-top{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:25;width:48px;min-height:84px;padding:14px 8px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;border:1px solid #becbe0;border-top:4px solid #1761ff;border-radius:17px;background:#182d50;color:#fff;box-shadow:0 4px 12px #08172e18;font:600 13px/1.3 var(--font-body,sans-serif);cursor:pointer;transition:transform 180ms ease,background 180ms ease,box-shadow 180ms ease}
.site-back-top[hidden]{display:none}
.site-back-top img{width:26px;height:26px;filter:brightness(0) invert(1);transform:rotate(-90deg);transition:transform 180ms ease}
.site-back-top:hover{background:#243b68;transform:translateY(-3px);box-shadow:0 6px 18px #08172e30}
.site-back-top:hover img{transform:translateY(-2px) rotate(-90deg)}
.site-back-top:active{transform:translateY(0) scale(.97)}
.site-back-top:focus-visible{outline:3px solid #397aff;outline-offset:4px}
body:has(dialog[open]) .site-back-top{visibility:hidden}
/* Narrow screens use a dedicated reading-end control, never an overlay. */
@media(max-width:640px){.site-back-top{position:relative;inset:auto;z-index:auto;width:max-content;min-height:44px;margin:20px auto 28px;padding:10px 16px;flex-direction:row;border-radius:12px;gap:8px;font-size:13px}.site-back-top img{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.site-back-top,.site-back-top img{transition:none}.site-back-top:hover,.site-back-top:active{transform:none}.site-back-top:hover img{transform:rotate(-90deg)}}
