/* Shared update prompt: no framework dependency, no focus stealing or page reload. */
.canto-app-update{position:fixed;z-index:1000;right:16px;bottom:16px;max-width:420px;width:calc(100% - 32px);padding:19px 20px;background:#fff;color:#183a56;border:1px solid #b8cbdc;border-radius:13px;box-shadow:0 8px 28px rgba(5,22,38,.2);font:14px/1.55 Arial,Helvetica,sans-serif;text-align:left;box-sizing:border-box}
.canto-app-update[hidden],.canto-app-update [hidden]{display:none!important}
.canto-update-heading{display:flex;align-items:center;font-size:17px;line-height:1.4}.canto-update-heading svg{flex-shrink:0;margin-right:10px;color:#a77624}.canto-app-update>p{margin:12px 0;color:#4f677e;font-size:13px}.canto-update-actions{display:flex;flex-wrap:wrap;margin:0 -5px}.canto-update-actions button{min-height:44px;border:1px solid #acbbca;border-radius:8px;padding:10px 15px;margin:4px 5px;background:transparent;color:#244765;font:700 14px/1.4 Arial,Helvetica,sans-serif;cursor:pointer}.canto-update-actions button:first-child{background:#e7bf72;border-color:#e7bf72;color:#14263a}.canto-update-actions button:disabled{opacity:.65;cursor:wait}.canto-update-actions button:focus{outline:2px solid #a77624;outline-offset:3px}.canto-app-update .canto-update-message{border-top:1px solid #ccdae6;padding-top:10px;margin-bottom:0;font-size:12px}.dark .canto-app-update{background:#172e45;color:#eef4fb;border-color:#527592}.dark .canto-app-update>p{color:#bdd0e1}.dark .canto-update-heading svg{color:#e7bf72}.dark .canto-update-actions button{color:#edf4fb;border-color:#64829b}.dark .canto-update-actions button:first-child{color:#14263a;border-color:#e7bf72}.dark .canto-update-actions button:focus{outline-color:#e7bf72}.dark .canto-app-update .canto-update-message{border-color:#42617c}@media(max-width:480px){.canto-app-update{right:12px;bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100% - 24px);padding:16px}.canto-update-actions button{flex:1;white-space:nowrap}}
