/* PWA install guide — soft, SFW; hide when already standalone */
.pwa-banner{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:80;
  display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:16px;
  background:linear-gradient(135deg,#3b1a3f,#24163a);color:#fff;box-shadow:0 10px 28px #0006;
  font:13px/1.45 -apple-system,"PingFang TC","Noto Sans TC",sans-serif}
.pwa-banner.hidden,.pwa-sheet.hidden{display:none!important}
.pwa-banner .pwa-ico{width:40px;height:40px;border-radius:10px;flex:none;background:#fff3 url("/static/brand/icon-192.png") center/cover}
.pwa-banner .pwa-txt{flex:1;min-width:0}.pwa-banner .pwa-txt b{display:block;font-size:14px}
.pwa-banner .pwa-txt span{color:#e8c9dc;font-size:12px}
.pwa-banner .pwa-act{flex:none;border:0;border-radius:12px;padding:8px 12px;font-weight:700;background:#ff8fb8;color:#2a0f20;cursor:pointer}
.pwa-banner .pwa-x{flex:none;border:0;background:transparent;color:#e8c9dc;font-size:18px;line-height:1;padding:4px 6px;cursor:pointer}
.pwa-sheet{position:fixed;inset:0;z-index:90;background:#0008;display:flex;align-items:flex-end;justify-content:center}
.pwa-sheet .pwa-panel{width:min(480px,100%);background:#1a1020;color:#fff;border-radius:20px 20px 0 0;padding:18px 18px calc(18px + env(safe-area-inset-bottom,0px));
  font:14px/1.55 -apple-system,"PingFang TC","Noto Sans TC",sans-serif}
.pwa-sheet h3{margin:0 0 8px;font-size:17px}.pwa-sheet ol{margin:0 0 14px;padding-left:1.2em;color:#e8c9dc}
.pwa-sheet .pwa-row{display:flex;gap:8px;flex-wrap:wrap}
.pwa-sheet .btn{border:0;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}
.pwa-sheet .btn.primary{background:#ff8fb8;color:#2a0f20}.pwa-sheet .btn.ghost{background:#2a1c33;color:#e8c9dc}
.pwa-settings-card .pwa-status{color:#8d7f8b;font-size:13px;margin:6px 0 0}
html.pwa-standalone .pwa-banner{display:none!important}
