.back-to-top {
  position: fixed;
  right: var(--back-to-top-right, 50px);
  bottom: var(--back-to-top-bottom, calc(150px + env(safe-area-inset-bottom, 0px)));
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #d7dce2;
  border-radius: 50%;
  background: #fff;
  color: #1e293b;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
  cursor: pointer;
}

.back-to-top:hover {
  background: #f1f5f9;
}

.back-to-top:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

.back-to-top[hidden],
body.overflow-hidden .back-to-top,
body.cart-drawer-open .back-to-top {
  display: none;
}

@media screen and (max-width: 749px) {
  .back-to-top {
    right: var(--back-to-top-right, 20px);
    bottom: var(--back-to-top-bottom, calc(150px + env(safe-area-inset-bottom, 0px)));
  }
}
