.rpwa-button {
  position: fixed;
  bottom: var(--rpwa-desktop-bottom, 24px);
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--rpwa-size, 58px);
  height: var(--rpwa-size, 58px);
  color: #fff;
  background: #25d366;
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.24);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.rpwa-button:hover,
.rpwa-button:focus {
  color: #fff;
  background: #1ebe5d;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.3);
  text-decoration: none;
  transform: translateY(-2px);
}

.rpwa-desktop-left {
  left: 24px;
}

.rpwa-desktop-right {
  right: 24px;
}

.rpwa-button__icon {
  width: 62%;
  height: 62%;
  fill: currentColor;
}

.rpwa-button__text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 767px) {
  .rpwa-button {
    bottom: var(--rpwa-mobile-bottom, 18px);
    width: calc(var(--rpwa-size, 58px) * 0.9);
    height: calc(var(--rpwa-size, 58px) * 0.9);
  }

  .rpwa-mobile-left {
    right: auto;
    left: 16px;
  }

  .rpwa-mobile-right {
    right: 16px;
    left: auto;
  }
}
