.mt-pwa-hint,
.mt-pwa-update {
  position: fixed;
  z-index: 10000;
  right: clamp(12px, 3vw, 32px);
  bottom: clamp(12px, 3vw, 32px);
  max-width: min(24rem, calc(100vw - 24px));
  padding: 16px 18px;
  border: 1px solid #d4ddd9;
  border-radius: 18px;
  background: #fff;
  color: #034239;
  box-shadow: 0 16px 44px rgba(3, 66, 57, .2);
  font: 400 1rem/1.4 system-ui, sans-serif;
}

.mt-pwa-hint p { margin: 0 0 12px; }

.mt-pwa-hint div,
.mt-pwa-update { display: flex; align-items: center; gap: 10px; }

.mt-pwa-hint button,
.mt-pwa-update button {
  min-height: 44px;
  padding: 8px 16px;
  border: 1px solid #034239;
  border-radius: 999px;
  background: #034239;
  color: #fff;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
}

.mt-pwa-hint [data-mt-pwa-dismiss] { background: #fff; color: #034239; }

.mt-pwa-update {
  left: 50%;
  right: auto;
  bottom: 16px;
  transform: translateX(-50%);
  justify-content: space-between;
  width: min(34rem, calc(100vw - 24px));
}

@media (max-width: 991.98px) {
  .mt-pwa-hint,
  .mt-pwa-update {
    bottom: calc(var(--mtn-mobile-nav-height, 49px) + env(safe-area-inset-bottom) + 12px);
  }
}
