.scroll-nav{position:fixed;right:max(14px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);z-index:110;display:flex;flex-direction:column;gap:8px;filter:drop-shadow(0 4px 10px #163f6824)}
.scroll-nav[hidden]{display:none}
.scroll-nav button{width:44px;height:44px;display:grid;place-items:center;padding:0;border:1px solid var(--line-strong);border-radius:10px;background:var(--panel-strong);color:var(--text);cursor:pointer;transition:background .18s,color .18s,opacity .18s}
.scroll-nav svg{width:22px;height:22px;fill:currentColor;pointer-events:none}
.scroll-nav button:hover:not([aria-disabled="true"]){background:var(--accent);color:#fff}
.scroll-nav button[aria-disabled="true"]{opacity:.35;cursor:default}
.scroll-nav button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
body[data-theme="pixel"] .scroll-nav button{background:#eef9ff;color:#0879ed;border:0;border-radius:0;clip-path:polygon(8px 0,calc(100% - 8px) 0,calc(100% - 8px) 4px,calc(100% - 4px) 4px,calc(100% - 4px) 8px,100% 8px,100% calc(100% - 8px),calc(100% - 4px) calc(100% - 8px),calc(100% - 4px) calc(100% - 4px),calc(100% - 8px) calc(100% - 4px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 4px),4px calc(100% - 4px),4px calc(100% - 8px),0 calc(100% - 8px),0 8px,4px 8px,4px 4px,8px 4px);box-shadow:inset 0 0 0 2px #b7e2ff}
body[data-theme="pixel"] .scroll-nav button:hover:not([aria-disabled="true"]){background:#0879ed;color:white}
body[data-theme="pixel"] .scroll-nav button:focus-visible{background:#d0eeff;box-shadow:inset 0 0 0 3px #0879ed}
@media(max-width:820px){.scroll-nav{top:auto;bottom:max(18px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));transform:none;gap:6px}}
@media(prefers-reduced-motion:reduce){.scroll-nav button{transition:none}}
