.pwa-install{display:block;width:100%;padding:10px 14px;margin-top:8px;border:1px solid #d8e4f5;border-radius:10px;background:#f3f7fc;color:#2563d9;font:inherit;font-size:13px;cursor:pointer;text-align:center}
.pwa-install[hidden],.pwa-status[hidden]{display:none!important}
.pwa-dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:28px;border:1px solid #dfe8f3;border-radius:20px;color:#20324b;background:#fff;box-shadow:0 20px 80px #14284333;font:15px/1.8 "Segoe UI","Microsoft YaHei",sans-serif}
.pwa-dialog::backdrop{background:#14284366}.pwa-dialog h2{margin:0 0 16px;font-size:21px}.pwa-dialog p{margin:12px 0}.pwa-dialog form{text-align:right}
.pwa-action{display:inline-block;padding:12px 20px;background:#2563d9;color:white;border:0;border-radius:12px;text-decoration:none;font:inherit;cursor:pointer}
.pwa-install:focus-visible,.pwa-action:focus-visible{outline:3px solid #94baf6;outline-offset:3px}
.pwa-status{position:fixed;z-index:150;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);box-sizing:border-box;width:max-content;max-width:calc(100% - 32px);padding:10px 16px;border:1px solid #dfc486;border-radius:12px;background:#fff8e7;color:#77551c;box-shadow:0 4px 20px #14284314;font:13px/1.6 "Segoe UI","Microsoft YaHei",sans-serif;pointer-events:none}
.pwa-offline{box-sizing:border-box;margin:0;min-height:100dvh;display:grid;place-items:center;padding:24px;background:#f3f7fc;color:#20324b;font:16px/1.8 "Segoe UI","Microsoft YaHei",sans-serif}
.pwa-offline-card{box-sizing:border-box;width:min(440px,100%);padding:36px;border-radius:24px;background:#fff;border:1px solid #dfe8f3}.pwa-offline-card img{border-radius:16px}.pwa-offline-card h1{font-size:25px;line-height:1.5}.pwa-offline-card p{color:#64758b}.pwa-offline-card .pwa-action{margin-top:12px}
@media(display-mode:standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}.sidebar{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}}
