#pwaUpdateBanner[hidden]{display:none!important}
#pwaUpdateBanner{
  position:fixed;
  left:50%;
  bottom:18px;
  z-index:9999;
  width:min(680px,calc(100vw - 28px));
  transform:translate(-50%,18px);
  opacity:0;
  transition:opacity .18s ease,transform .18s ease;
}
#pwaUpdateBanner.is-visible{
  opacity:1;
  transform:translate(-50%,0);
}
.pwa-update-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px 18px;
  border-radius:18px;
  background:#173b31;
  color:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.24);
}
.pwa-update-copy strong{display:block;margin-bottom:3px}
.pwa-update-copy span{font-size:.9rem;opacity:.88}
.pwa-update-actions{display:flex;gap:8px;flex-wrap:wrap}
.pwa-update-actions button{
  border-radius:12px;
  padding:9px 12px;
  cursor:pointer;
}
#pwaUpdateNow{
  border:0;
  background:#f7ecd9;
  color:#173b31;
  font-weight:800;
}
#pwaUpdateDismiss{
  border:1px solid rgba(255,255,255,.35);
  background:transparent;
  color:#fff;
}
.pwa-version-panel{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:14px 0 0;
  font-size:.9rem;
}
#pwaUpdateStatus{color:#66736e}
@media(max-width:600px){
  .pwa-update-card{align-items:stretch;flex-direction:column}
  .pwa-update-actions{width:100%}
  .pwa-update-actions button{flex:1}
}
