.pwa-update {
 position: fixed;
 z-index: 100;
 right: 20px;
 bottom: calc(20px + var(--bottom-nav-space, 0px) + env(safe-area-inset-bottom, 0px));
 box-sizing: border-box;
 display: flex;
 align-items: center;
 gap: 16px;
 width: min(460px, calc(100% - 40px));
 padding: 16px;
 border: 1px solid #d5dfed;
 border-radius: 16px;
 background: #fff;
 color: #14263a;
 box-shadow: 0 8px 32px #14263a24;
 font: 500 14px/1.5 "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;
}
.pwa-update p { margin: 0; color: inherit; font: inherit; }
.pwa-update button {
 flex-shrink: 0;
 min-height: 44px;
 padding: 10px 16px;
 border: 0;
 border-radius: 10px;
 background: #2463d6;
 color: #fff;
 font-family: inherit;
 font-size: 14px;
 font-weight: 600;
 line-height: 1.4;
 cursor: pointer;
}
.pwa-update button:focus-visible { outline: 3px solid #14263a; outline-offset: 3px; }
.pwa-update button:disabled { opacity: .65; cursor: wait; }
@media (max-width: 760px) {
 .pwa-update { right: 12px; width: calc(100% - 24px); flex-wrap: wrap; gap: 12px; }
 .pwa-update button { width: 100%; }
}
