/* HALLEL: contextual floating back-to-top control */
.hallel-back-to-top{
  appearance:none;
  position:fixed;
  right:calc(22px + env(safe-area-inset-right, 0px));
  bottom:calc(22px + env(safe-area-inset-bottom, 0px));
  z-index:90;
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  padding:0;
  border:1px solid rgba(200,243,107,.32);
  border-radius:50%;
  background:#151B1C;
  color:#C8F36B;
  box-shadow:0 6px 22px rgba(0,0,0,.18);
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(10px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background-color .2s ease;
}
.hallel-back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
.hallel-back-to-top svg{width:22px;height:22px;display:block}
.hallel-back-to-top:hover{background:#31584D;transform:translateY(-2px)}
.hallel-back-to-top:focus-visible{outline:3px solid #C8F36B;outline-offset:4px}
@media(max-width:600px){
  .hallel-back-to-top{
    right:calc(16px + env(safe-area-inset-right, 0px));
    bottom:calc(16px + env(safe-area-inset-bottom, 0px));
    width:44px;height:44px;
  }
}
@media(prefers-reduced-motion:reduce){
  .hallel-back-to-top{transition:none}
  .hallel-back-to-top:hover{transform:none}
}
