/* 安装到桌面 + 通知（v0.9.95）：侧边栏按钮、手机顶部横幅（顶栏下面，不挡输入框）、教程弹窗、设置里的说明 */


.pwa-banner {
  position: fixed; left: 12px; right: 12px; top: calc(62px + env(safe-area-inset-top)); z-index: 90;
  display: flex; align-items: center; gap: 10px; padding: 10px 8px 10px 12px;
  background: var(--glass, var(--panel)); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow);
  animation: pwa-up .35s ease-out;
}
.pwa-banner img { width: 40px; height: 40px; border-radius: 10px; flex: none; }
.pwa-banner .grow { flex: 1; min-width: 0; line-height: 1.35; }
.pwa-banner b { display: block; font-size: 14px; }
.pwa-banner small { display: block; font-size: 12px; color: var(--muted); }
.pwa-banner .btn { flex: none; padding: 6px 14px; border-radius: 999px; }
.pwa-banner .icon-btn { flex: none; color: var(--muted); }
@keyframes pwa-up { from { transform: translateY(-16px); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .pwa-banner { animation: none; } }

.pwa-guide .pwa-who { margin-bottom: 10px; color: var(--muted); }
.pwa-guide .pwa-who b { color: var(--text); }
.pwa-steps { margin: 0 0 12px; padding: 0; list-style: none; counter-reset: s; }
.pwa-steps li { counter-increment: s; position: relative; padding: 8px 0 8px 36px; line-height: 1.5; border-bottom: 1px dashed var(--border); }
.pwa-steps li:last-child { border-bottom: 0; }
.pwa-steps li::before {
  content: counter(s); position: absolute; left: 0; top: 8px; width: 24px; height: 24px; border-radius: 50%;
  display: grid; place-items: center; font-size: 13px; font-weight: 700; background: var(--accent); color: #fff;
}
.pwa-guide .pwa-tip { margin-bottom: 8px; padding: 8px 10px; border-radius: 10px; background: var(--hover); }

.set-line .push-why { display: block; margin-top: 4px; color: var(--danger); }
.push-help ul { margin: 8px 0 0; padding-left: 18px; line-height: 1.6; font-size: 13px; color: var(--muted); }
.push-help b { color: var(--text); }
