@keyframes ring {
  0% {
    transform: rotate(0);
  }
  5% {
    transform: rotate(18deg);
  }
  10% {
    transform: rotate(-15deg);
  }
  15% {
    transform: rotate(12deg);
  }
  20% {
    transform: rotate(-10deg);
  }
  25% {
    transform: rotate(6deg);
  }
  30% {
    transform: rotate(-4deg);
  }
  35% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(0);
  }
}
.pwa-popup-wrap {
  position: fixed;
  right: 15px;
  bottom: 10px;
  width: calc(100% - 30px);
  max-width: 360px;
  z-index: 100;
  font-size: 0.875rem;
}
.pwa-popup-wrap .pwa-popup {
  display: none;
  flex-wrap: unset;
  flex-direction: unset;
  row-gap: unset;
  position: relative;
  background: #fafafa;
  border-radius: 16px;
  padding: 30px 20px 20px;
  box-shadow: 0 5px 8px -2px rgba(0, 0, 0, 0.2);
}
.pwa-popup-wrap .pwa-popup-icon {
  margin-bottom: 15px;
}
.pwa-popup-wrap .pwa-popup-icon i {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 26px;
  line-height: 1;
  width: 100%;
  text-align: center;
  transform-origin: 50% 0%;
  animation: ring 3s ease-in-out infinite;
}
.pwa-popup-wrap .pwa-popup-title {
  font-size: 1rem;
  font-weight: bold;
  margin: 0px 0px 5px;
  text-align: center;
}
.pwa-popup-wrap .pwa-popup-description {
  font-size: 1rem;
  margin: 0px 0px 5px;
  text-align: center;
}
.pwa-popup-wrap .pwa-popup-actions {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 15px;
}
.pwa-popup-wrap .pwa-popup-actions .form-group {
  width: 100%;
}
.pwa-popup-wrap .pwa-popup-actions .form-group .btn {
  width: 100%;
  border-radius: 0px;
  border: none;
  text-transform: unset;
  font-weight: 400;
}
.pwa-popup-wrap .pwa-popup-actions .form-group .btn[name=register] {
  border-radius: 10px 10px 0px 0px;
}
.pwa-popup-wrap .pwa-popup-actions .form-group .btn[name=unregister], .pwa-popup-wrap .pwa-popup-actions .form-group .btn[name=close] {
  border-radius: 0px 0px 10px 10px;
}

@media (max-width: 1024px) {
  .pwa-popup-wrap {
    display: flex;
    width: 100%;
    height: 100dvh;
    overflow-y: auto;
    max-width: 100%;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    padding: 15px;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }
  .pwa-popup-wrap .pwa-popup {
    width: 100%;
    max-width: 330px;
    margin: auto;
  }
}