.svoe-pwa-tray {
  position: fixed;
  z-index: 2147483645;
  box-sizing: border-box;
  max-width: min(520px, calc(100vw - 24px));
  padding: 12px 14px;
  border: 1px solid #c5d0c2;
  border-radius: 18px;
  color: #29342c;
  background: #f8f7f1;
  box-shadow: 0 6px 28px #29342c26;
  font: 14px/1.4 system-ui, sans-serif;
}
.svoe-pwa-tray[hidden], .svoe-pwa-tray [hidden] { display: none !important; }
.svoe-pwa-tray--update { top: max(12px, env(safe-area-inset-top)); left: 50%; transform: translateX(-50%); width: 520px; }
.svoe-pwa-tray--install { bottom: calc(84px + env(safe-area-inset-bottom)); right: 12px; }
.svoe-pwa-tray p { margin: 0 0 8px; }
.svoe-pwa-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.svoe-pwa-tray button {
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  padding: 8px 14px;
  color: #fff;
  background: #315c45;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}
.svoe-pwa-tray button.svoe-pwa-secondary { color: #315c45; background: transparent; }
.svoe-pwa-tray button:focus-visible { outline: 3px solid #1b6e8c; outline-offset: 2px; }
.svoe-pwa-tray button[aria-disabled="true"] { opacity: .6; cursor: wait; }
