:root {
  --pwa-safe-top: env(safe-area-inset-top, 0px);
  --pwa-safe-right: env(safe-area-inset-right, 0px);
  --pwa-safe-bottom: env(safe-area-inset-bottom, 0px);
  --pwa-safe-left: env(safe-area-inset-left, 0px);
}

@media (display-mode: standalone) {
  body { min-height: 100dvh; padding-top: var(--pwa-safe-top); }
  .crm-shell { min-height: calc(100dvh - var(--pwa-safe-top)); }
  .sidebar { padding-bottom: calc(1rem + var(--pwa-safe-bottom)); padding-left: var(--pwa-safe-left); }
  .workspace { padding-right: var(--pwa-safe-right); }
}

#installPwaBtn {
  align-items: center;
  border: 1px solid rgba(199, 242, 90, .38);
  color: #dfffa0;
  display: flex;
  justify-content: center;
  min-height: 42px;
}

#installPwaBtn.hide { display: none !important; }

.pwa-install-dialog {
  background: #fffefa;
  border: 0;
  border-radius: 22px;
  box-shadow: 0 28px 90px rgba(2, 29, 22, .34);
  color: #082b20;
  max-width: min(92vw, 460px);
  padding: 1.35rem;
}

.pwa-install-dialog::backdrop { background: rgba(2, 29, 22, .64); backdrop-filter: blur(5px); }
.pwa-install-head { align-items: flex-start; display: flex; gap: 1rem; justify-content: space-between; }
.pwa-install-head span { color: #357452; font-size: .7rem; font-weight: 800; letter-spacing: .13em; }
.pwa-install-head h2 { margin: .25rem 0 .5rem; }
.pwa-install-head button { background: #edf4ef; border: 0; border-radius: 999px; color: #082b20; font-size: 1.35rem; height: 38px; padding: 0; width: 38px; }
.pwa-install-dialog ol { background: #edf7f0; border-radius: 14px; line-height: 1.55; padding: 1rem 1rem 1rem 2.25rem; }
.pwa-install-dialog small { color: #527064; display: block; margin-top: .85rem; }

@media (max-width: 640px) {
  .pwa-install-dialog { border-radius: 20px 20px 0 0; margin: auto 0 0; max-width: none; width: calc(100% - 2.7rem); }
}
