/* PWA refresh and update UI */
.app-maintenance{margin-top:30px;padding-bottom:8px}.app-maintenance .settings-row{align-items:center}.hard-refresh-button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.hard-refresh-button svg{width:16px;height:16px}.hard-refresh-button:disabled{opacity:.58;cursor:wait}
.update-popup-backdrop[hidden]{display:none}.update-popup-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:22px;background:rgba(8,8,12,.48);backdrop-filter:blur(12px);animation:updateFadeIn .2s ease both}.update-popup{width:min(100%,430px);padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:var(--card);box-shadow:0 26px 80px rgba(0,0,0,.28);transform-origin:center;animation:updatePopIn .32s var(--ease) both}.update-popup-icon{width:52px;height:52px;display:grid;place-items:center;margin-bottom:15px;border-radius:17px;background:var(--soft);color:var(--accent)}.update-popup-icon svg{width:25px;height:25px}.update-popup .eyebrow{margin-bottom:7px}.update-popup h3{font-size:24px;letter-spacing:-.035em}.update-popup-copy{margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.45}.update-popup-meta{display:block;margin-top:8px;color:var(--muted);font-size:12px}.update-popup-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;margin-top:20px}.update-popup-actions button{min-height:48px;margin:0;border:0;border-radius:15px;font-weight:760;cursor:pointer}.update-later{background:rgba(120,120,128,.13);color:var(--text)}.update-now{background:var(--accent);color:#fff}.update-popup.is-closing{animation:updateFadeOut .18s ease both}.update-popup-backdrop.is-closing{animation:updateFadeOut .18s ease both}@keyframes updateFadeIn{from{opacity:0}to{opacity:1}}@keyframes updateFadeOut{from{opacity:1}to{opacity:0}}@keyframes updatePopIn{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:520px){.app-maintenance .settings-row{align-items:flex-start;flex-direction:column}.hard-refresh-button{width:100%;margin-top:4px}.update-popup-actions{grid-template-columns:1fr}}
@media(prefers-color-scheme:dark){.update-popup{border-color:rgba(255,255,255,.09)}}