
/* Shared bottom-centre scroll cue for every Lime page */
.lime-scroll-cue {
  position: fixed; z-index: 9998; left: 50%;
  bottom: max(22px, env(safe-area-inset-bottom));
  width: 46px; height: 46px; display: grid; place-items: center;
  padding: 0; border: 1px solid rgba(7,39,83,.24); border-radius: 50%;
  background: rgba(255,255,255,.94); color: #082b5c;
  box-shadow: 0 7px 22px rgba(7,39,83,.13), 0 0 22px rgba(160,236,0,.20), 0 0 42px rgba(160,236,0,.10); cursor: pointer;
  transform: translateX(-50%); opacity: 1; visibility: visible;
  transition: opacity .55s ease, visibility .55s ease, background .3s ease,
              color .3s ease, box-shadow .3s ease;
  animation: lime-scroll-bob 2.4s ease-in-out infinite;
  -webkit-tap-highlight-color: transparent;
}
.lime-scroll-cue:hover { background: #082b5c; color: #a0ec00; box-shadow: 0 9px 28px rgba(7,39,83,.18), 0 0 26px rgba(160,236,0,.28), 0 0 48px rgba(160,236,0,.14); }
.lime-scroll-cue:focus-visible { outline: 3px solid #a0ec00; outline-offset: 4px; }
.lime-scroll-cue svg { width: 21px; height: 21px; display: block; }
.lime-scroll-cue.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; animation: none; }
html[data-theme="dark"] .lime-scroll-cue {
  color: #a0ec00; background: rgba(7,23,44,.92);
  border-color: rgba(160,236,0,.42); box-shadow: 0 7px 26px rgba(160,236,0,.18), 0 0 24px rgba(160,236,0,.22), 0 0 46px rgba(160,236,0,.12);
}
html[data-theme="dark"] .lime-scroll-cue:hover {
  color: #07172c; background: #a0ec00; box-shadow: 0 9px 30px rgba(160,236,0,.25), 0 0 30px rgba(160,236,0,.32), 0 0 54px rgba(160,236,0,.16);
}
@keyframes lime-scroll-bob {
  0%, 100% { transform: translate(-50%, 0); }
  50% { transform: translate(-50%, 7px); }
}
@media (max-width: 600px) {
  .lime-scroll-cue { width: 42px; height: 42px; bottom: max(15px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .lime-scroll-cue { animation: none !important; transition: none !important; }
  html { scroll-behavior: auto !important; }
}
