
/* ── PWA BANNER ── */
#pwa-banner{
  position:fixed;bottom:0;left:50%;transform:translateX(-50%) translateY(100%);
  width:100%;max-width:430px;z-index:999;
  background:#fff;border-radius:28px 28px 0 0;
  box-shadow:0 -8px 40px rgba(0,0,0,.18);
  padding:20px 20px 36px;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1);
}
#pwa-banner.pwa-visible{transform:translateX(-50%) translateY(0)}

.pwa-header{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.pwa-app-icon{width:56px;height:56px;border-radius:14px;object-fit:cover;flex-shrink:0;box-shadow:0 4px 12px rgba(0,0,0,.15)}
.pwa-app-info{flex:1}
.pwa-app-info b{display:block;font-size:17px;font-weight:900;color:#111}
.pwa-app-info span{font-size:13px;color:#6b7280}
#pwa-dismiss{width:32px;height:32px;border-radius:50%;border:0;background:#f3f4f6;color:#6b7280;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}

.pwa-stores{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.store-badge{display:flex;align-items:center;gap:8px;background:#000;border-radius:10px;padding:8px 12px;color:#fff;text-decoration:none}
.store-badge svg{width:20px;height:20px;flex-shrink:0}
.store-badge-text small{display:block;font-size:9px;opacity:.8;letter-spacing:.02em}
.store-badge-text b{display:block;font-size:14px;font-weight:800;line-height:1.1}

#pwa-install-btn{
  width:100%;border:0;border-radius:14px;padding:14px;
  background:linear-gradient(135deg,#0b5f3a,#0f7a4a);
  color:#fff;font-size:15px;font-weight:800;cursor:pointer;
  box-shadow:0 8px 20px rgba(11,95,58,.3);font-family:inherit;
}

#pwa-ios-hint{
  display:none;align-items:center;justify-content:center;gap:8px;
  background:#f0fdf4;border:1px solid #a7f3d0;border-radius:12px;
  padding:12px;font-size:13px;color:#065f46;font-weight:600;margin-bottom:0;
}
