html.wps-pwa-webview #wps-pwa-install-banner,
html.wps-pwa-webview #wps-pwa-push-prompt {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.wps-pwa-banner,
.wps-pwa-push-prompt,
.wps-pwa-confetti {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  box-sizing: border-box !important;
}

.wps-pwa-banner *,
.wps-pwa-push-prompt * {
  box-sizing: border-box !important;
}

.wps-pwa-banner,
.wps-pwa-push-prompt {
  position: fixed !important;
  left: 10px !important;
  right: 10px !important;
  bottom: calc(10px + env(safe-area-inset-bottom)) !important;
  z-index: 2147483000 !important;
  opacity: 0 !important;
  transform: translateY(14px) scale(.985) !important;
  transition: opacity .18s ease, transform .18s ease !important;
  pointer-events: none !important;
}

.wps-pwa-banner--visible,
.wps-pwa-push-prompt--visible {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
  pointer-events: auto !important;
}

.wps-pwa-banner[hidden],
.wps-pwa-push-prompt[hidden] {
  display: none !important;
}

.wps-pwa-card {
  position: relative !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 9px !important;
  width: min(390px, 100%) !important;
  margin: 0 auto !important;
  padding: 10px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, #fff 0%, #f5fff8 100%) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .16), 0 0 0 1px rgba(0, 168, 67, .10) !important;
  color: #1f2328 !important;
}

.wps-pwa-card:before {
  content: "" !important;
  position: absolute !important;
  right: -35px !important;
  top: -45px !important;
  width: 110px !important;
  height: 110px !important;
  border-radius: 999px !important;
  background: rgba(0, 168, 67, .09) !important;
  pointer-events: none !important;
}

.wps-pwa-close {
  position: absolute !important;
  top: 7px !important;
  right: 7px !important;
  z-index: 3 !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, .06) !important;
  color: #313438 !important;
  font-size: 17px !important;
  line-height: 22px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  touch-action: manipulation !important;
  -webkit-tap-highlight-color: transparent !important;
  user-select: none !important;
}

.wps-pwa-icon-wrap {
  position: relative !important;
  z-index: 1 !important;
  flex: 0 0 38px !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 13px !important;
  padding: 3px !important;
  background: linear-gradient(135deg, #00a843, #14c45d) !important;
  box-shadow: 0 7px 15px rgba(0, 168, 67, .22) !important;
}

.wps-pwa-logo {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  background: #fff !important;
}

.wps-pwa-banner__content,
.wps-pwa-push-prompt__content {
  position: relative !important;
  z-index: 1 !important;
  flex: 1 !important;
  min-width: 0 !important;
  padding-right: 22px !important;
  display: block !important;
  line-height: 1.25 !important;
}

.wps-pwa-banner__content strong,
.wps-pwa-push-prompt__content strong {
  display: block !important;
  font-size: 14px !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  letter-spacing: -.01em !important;
  margin: 0 0 3px !important;
  color: #1f2328 !important;
}

.wps-pwa-banner__content span,
.wps-pwa-push-prompt__content span {
  display: block !important;
  font-size: 11.8px !important;
  line-height: 1.25 !important;
  color: #565d63 !important;
  margin: 0 0 8px !important;
  opacity: 1 !important;
}

.wps-pwa-banner__hint {
  display: block !important;
  padding: 7px 8px !important;
  margin: 0 0 8px !important;
  border-radius: 11px !important;
  background: #fff6df !important;
  color: #594100 !important;
  font-size: 11.5px !important;
  line-height: 1.25 !important;
  font-weight: 500 !important;
}

.wps-pwa-banner__hint[hidden] {
  display: none !important;
}

.wps-pwa-banner__actions,
.wps-pwa-push-prompt__actions {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  gap: 7px !important;
  align-items: center !important;
  width: 100% !important;
}

.wps-pwa-button,
.wps-pwa-later {
  border: 0 !important;
  border-radius: 999px !important;
  padding: 0 12px !important;
  font-size: 12.5px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  -webkit-tap-highlight-color: transparent !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  touch-action: manipulation !important;
  text-align: center !important;
  min-height: 35px !important;
}

.wps-pwa-button {
  flex: 1 !important;
  background: linear-gradient(135deg, #00a843, #11bd57) !important;
  color: #fff !important;
  box-shadow: 0 7px 14px rgba(0, 168, 67, .22) !important;
}

.wps-pwa-button--secondary,
.wps-pwa-later {
  flex: 0 0 auto !important;
  background: #eef1f0 !important;
  color: #25282b !important;
  box-shadow: none !important;
}

.wps-pwa-button:disabled {
  cursor: wait !important;
  opacity: .72 !important;
}

.wps-pwa-button:active,
.wps-pwa-later:active,
.wps-pwa-close:active {
  transform: translateY(1px) !important;
}

.wps-pwa-push-prompt .wps-pwa-card {
  background: linear-gradient(135deg, #fff 0%, #f3fbff 100%) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .18), 0 0 0 1px rgba(0, 168, 67, .10) !important;
}

.wps-pwa-push-prompt .wps-pwa-icon-wrap {
  background: linear-gradient(135deg, #00a843, #14c45d) !important;
}

.wps-pwa-confetti {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483002 !important;
  width: 100vw !important;
  height: 100vh !important;
  pointer-events: none !important;
}

.wps-pwa-qr {
  display: inline-flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  padding: 16px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  background: #fff;
}

@media (max-width: 360px) {
  .wps-pwa-banner,
  .wps-pwa-push-prompt {
    left: 8px !important;
    right: 8px !important;
  }

  .wps-pwa-card {
    padding: 9px !important;
    gap: 8px !important;
  }

  .wps-pwa-icon-wrap {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 36px !important;
  }

  .wps-pwa-banner__content strong,
  .wps-pwa-push-prompt__content strong {
    font-size: 13.5px !important;
  }

  .wps-pwa-banner__content span,
  .wps-pwa-push-prompt__content span {
    font-size: 11.4px !important;
  }

  .wps-pwa-button,
  .wps-pwa-later {
    min-height: 34px !important;
    font-size: 12px !important;
    padding: 0 10px !important;
  }
}

html.wps-pwa-webview #wps-pwa-install-success {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.wps-pwa-install-success,
.wps-pwa-install-success * {
  box-sizing: border-box !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
}

.wps-pwa-install-success {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483001 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .22s ease !important;
}

.wps-pwa-install-success[hidden] {
  display: none !important;
}

.wps-pwa-install-success--visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.wps-pwa-install-success__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(9, 13, 18, .48) !important;
  backdrop-filter: blur(7px) !important;
  -webkit-backdrop-filter: blur(7px) !important;
}

.wps-pwa-install-success__modal {
  position: relative !important;
  z-index: 1 !important;
  width: min(360px, 100%) !important;
  padding: 22px 18px 18px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  background: linear-gradient(145deg, #ffffff 0%, #f4fff7 100%) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .28), 0 0 0 1px rgba(0, 168, 67, .12) !important;
  text-align: center !important;
  color: #111827 !important;
  transform: translateY(18px) scale(.96) !important;
  transition: transform .26s cubic-bezier(.2,.9,.2,1) !important;
}

.wps-pwa-install-success--visible .wps-pwa-install-success__modal {
  transform: translateY(0) scale(1) !important;
}

.wps-pwa-install-success__shine {
  position: absolute !important;
  right: -72px !important;
  top: -88px !important;
  width: 210px !important;
  height: 210px !important;
  border-radius: 999px !important;
  background: radial-gradient(circle, rgba(34,197,94,.22) 0%, rgba(34,197,94,0) 70%) !important;
  pointer-events: none !important;
}

.wps-pwa-install-success__close {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 3 !important;
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(17, 24, 39, .08) !important;
  color: #111827 !important;
  font-size: 20px !important;
  line-height: 28px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.wps-pwa-install-success__icon {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  width: 124px !important;
  height: 124px !important;
  margin: 0 auto 14px !important;
  object-fit: cover !important;
  border-radius: 28px !important;
  background: #fff !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .14), 0 0 0 1px rgba(0, 0, 0, .06) !important;
}

.wps-pwa-install-success__modal strong {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  margin: 0 0 8px !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
  font-weight: 950 !important;
  letter-spacing: -.03em !important;
  color: #111827 !important;
}

.wps-pwa-install-success__modal span {
  position: relative !important;
  z-index: 1 !important;
  display: block !important;
  margin: 0 auto 16px !important;
  max-width: 285px !important;
  font-size: 14.5px !important;
  line-height: 1.35 !important;
  color: #4b5563 !important;
}

.wps-pwa-install-success__button {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  min-height: 48px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #00a843, #16c65d) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 24px rgba(0, 168, 67, .26) !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.wps-pwa-install-success__button:active,
.wps-pwa-install-success__close:active {
  transform: translateY(1px) !important;
}



/* PWA launch loader */
html.wps-pwa-is-loading,
html.wps-pwa-is-loading body {
  overflow: hidden !important;
}

#wps-pwa-launch-loader.wps-pwa-launch-loader {
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background:
    radial-gradient(circle at 20% 20%, rgba(187, 247, 208, .75), transparent 28%),
    radial-gradient(circle at 80% 0%, rgba(255, 255, 255, .5), transparent 25%),
    linear-gradient(135deg, #058b38 0%, #16a34a 52%, #50e08a 100%);
  opacity: 1;
  visibility: visible;
  transition: opacity .42s ease, visibility .42s ease;
}

#wps-pwa-launch-loader.wps-pwa-launch-loader::before,
#wps-pwa-launch-loader.wps-pwa-launch-loader::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
}

#wps-pwa-launch-loader.wps-pwa-launch-loader::before {
  width: 320px;
  height: 320px;
  right: -110px;
  bottom: -130px;
  background: rgba(255, 255, 255, .18);
}

#wps-pwa-launch-loader.wps-pwa-launch-loader::after {
  width: 220px;
  height: 220px;
  left: -80px;
  top: -70px;
  border: 1px solid rgba(255, 255, 255, .22);
}

.wps-pwa-launch-loader__card {
  position: relative;
  width: min(360px, 92vw);
  padding: 30px 24px 26px;
  border-radius: 30px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 28px 80px rgba(0, 70, 24, .28);
  text-align: center;
  transform: translateY(0) scale(1);
  animation: wpsPwaLoaderCard .55s cubic-bezier(.2,.8,.2,1) both;
}

.wps-pwa-launch-loader__logo {
  width: 86px;
  height: 86px;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  background: linear-gradient(135deg, #16a34a, #08752d);
  color: #fff;
  font-size: 32px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.08em;
  box-shadow: 0 16px 32px rgba(22, 163, 74, .28);
}

.wps-pwa-launch-loader__title {
  color: #0f172a;
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -.03em;
  margin-bottom: 6px;
}

.wps-pwa-launch-loader__text {
  color: #64748b;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 22px;
}

.wps-pwa-launch-loader__bar {
  width: 100%;
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, .08);
}

.wps-pwa-launch-loader__bar span {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #08752d, #16a34a, #86efac);
  transform-origin: left center;
  animation: wpsPwaLoaderProgress 5s linear forwards;
  position: relative;
}

.wps-pwa-launch-loader__bar span::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  transform: translateX(-100%);
  animation: wpsPwaLoaderShine 1.2s ease-in-out infinite;
}

.wps-pwa-launch-loader__percent {
  margin-top: 12px;
  color: #16a34a;
  font-weight: 900;
  font-size: 13px;
}

#wps-pwa-launch-loader.wps-pwa-launch-loader--hide {
  opacity: 0;
  visibility: hidden;
}

#wps-pwa-launch-loader.wps-pwa-launch-loader--hide .wps-pwa-launch-loader__card {
  transform: translateY(10px) scale(.98);
}

@keyframes wpsPwaLoaderProgress {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

@keyframes wpsPwaLoaderShine {
  from { transform: translateX(-100%); }
  to { transform: translateX(100%); }
}

@keyframes wpsPwaLoaderCard {
  from { opacity: 0; transform: translateY(18px) scale(.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
  .wps-pwa-launch-loader__card,
  .wps-pwa-launch-loader__bar span,
  .wps-pwa-launch-loader__bar span::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

