#viewer-pwa-tools{margin:24px auto 0;text-align:center}.pwa-install{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 17px;border:1px solid #9d82cc55;border-radius:8px;background:#a978ff12;color:#d2bbff;font:600 12px system-ui;cursor:pointer}.pwa-install svg{width:18px;height:18px}.pwa-install[hidden]{display:none}#pwa-offline-status{font-size:11px;line-height:1.5;color:#8ca4bb;margin:12px 0 0}.pwa-notice{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:29000;display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100vw - 24px);box-sizing:border-box;padding:12px 12px 12px 16px;border-radius:12px;border:1px solid #7f9ab744;background:#172536f5;color:#dce8f6;font:12px/1.5 system-ui;box-shadow:0 6px 24px #0005}.pwa-notice[hidden]{display:none}.pwa-notice button,.pwa-help-tools button,.pwa-check-update{min-height:40px;padding:8px 12px;background:#a17aff1a;border:1px solid #b79cff44;border-radius:7px;color:#dacbff;white-space:nowrap;font:600 12px system-ui}.pwa-notice .pwa-notice-close{display:grid;place-items:center;padding:8px;border:0;background:transparent;min-width:36px}.pwa-notice-close svg{width:18px;height:18px}.pwa-dialog{position:fixed;width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;padding:0;border:1px solid #839fbe44;border-radius:16px;background:#111d2a;color:#e8f1fc;font:13px/1.6 system-ui;color-scheme:dark;overflow:auto}.pwa-dialog::backdrop{background:#030812bf;backdrop-filter:blur(5px)}.pwa-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid #839fbe22;background:#111d2a;position:sticky;top:0}.pwa-dialog h2{margin:3px 0 0;font-size:19px;line-height:1.3}.pwa-dialog header small{font-size:9px;letter-spacing:.15em;color:#bd9cff}.pwa-dialog-close{width:44px;min-height:44px;height:44px;flex:none;display:grid;place-items:center;padding:0;border:1px solid #839fbe33;border-radius:50%;background:#1b2b3e;color:#d8e7f6}.pwa-dialog-close svg{width:20px;height:20px}.pwa-dialog-content{padding:20px}.pwa-dialog-content p{color:#acbfd2;margin:6px 0 18px}.pwa-dialog h3{font-size:13px;margin:22px 0 6px}.pwa-app-identity{display:flex;gap:14px;align-items:center}.pwa-app-identity img{border-radius:12px}.pwa-app-identity p{font-size:11px;margin:2px 0}.pwa-app-identity strong{font-size:15px}.pwa-update-actions{display:flex;gap:12px;justify-content:flex-end}.pwa-update-actions button{min-height:44px;padding:10px 16px;border:1px solid #a99bd344;border-radius:8px;background:transparent;color:#c7d5e5}.pwa-update-actions .pwa-update-now{background:#824deb;color:white}.pwa-help-tools button{margin-top:10px}body.viewer-mobile-layout .pwa-notice{bottom:calc(188px + env(safe-area-inset-bottom))}body.viewer-landscape .pwa-notice{bottom:calc(84px + env(safe-area-inset-bottom))}
@media(max-width:600px){.pwa-dialog{inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.pwa-dialog header{padding-top:calc(16px + env(safe-area-inset-top))}.pwa-dialog-content{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.pwa-notice{gap:8px;font-size:11px}}
@media(display-mode:standalone){body{overscroll-behavior-y:none}.viewer-open .viewer-welcome-content{padding-top:max(40px,env(safe-area-inset-top))}}
.pwa-version-settings{display:block;margin:8px auto 0;min-height:40px;padding:8px 12px;border:0;background:transparent;color:#9cb1c9;text-decoration:underline;text-underline-offset:3px;font:11px system-ui;cursor:pointer}
.pwa-auto-update{text-align:center}.pwa-auto-update img{border-radius:12px;margin:10px auto 16px}.pwa-auto-update progress{display:block;width:180px;height:5px;margin:24px auto 10px;accent-color:#a679f4}
