
#pspNotifyInstallBar{
  position:fixed;
  left:50%;
  bottom:calc(92px + env(safe-area-inset-bottom, 0px));
  z-index:2147483646;
  width:min(680px,calc(100vw - 28px));
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  gap:12px;
  align-items:center;
  padding:13px 14px;
  border:1px solid rgba(245,158,11,.68);
  border-radius:18px;
  background:#fffaf1;
  color:#111827;
  box-shadow:0 22px 58px rgba(15,23,42,.34);
  transform:translate(-50%,18px);
  opacity:0;
  visibility:hidden;
  transition:transform .24s ease,opacity .24s ease,visibility .24s ease;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;
  box-sizing:border-box;
}
#pspNotifyInstallBar.show{
  transform:translate(-50%,0);
  opacity:1;
  visibility:visible;
}
.psp-notify-icon{
  width:48px;
  height:48px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#ffffff,#ffd98c);
  border:1px solid rgba(245,158,11,.38);
  flex:0 0 auto;
}
.psp-notify-icon img{
  width:37px;
  height:37px;
  object-fit:contain;
}
.psp-notify-copy{
  min-width:0;
  display:grid;
  gap:4px;
}
.psp-notify-copy strong{
  font-size:14px;
  line-height:1.2;
  white-space:normal;
}
.psp-notify-copy span{
  font-size:10px;
  color:#64748b;
  line-height:1.4;
}
.psp-notify-enable,
.psp-notify-later{
  border:0;
  border-radius:10px;
  padding:10px 14px;
  font-size:10px;
  font-weight:850;
  cursor:pointer;
  min-height:38px;
  white-space:nowrap;
}
.psp-notify-enable{
  background:linear-gradient(135deg,#f59e0b,#d97706);
  color:#111827;
  box-shadow:0 8px 20px rgba(232,135,0,.24);
}
.psp-notify-enable:disabled{
  opacity:.65;
  cursor:wait;
}
.psp-notify-later{
  background:#eef2f7;
  color:#64748b;
}
[data-theme="dark"] #pspNotifyInstallBar{
  background:#111827;
  color:#fff;
  border-color:rgba(245,158,11,.60);
}
[data-theme="dark"] .psp-notify-copy span{
  color:#cbd5e1;
}
[data-theme="dark"] .psp-notify-later{
  background:#1f2937;
  color:#cbd5e1;
}

@media(max-width:700px){
  #pspNotifyInstallBar{
    left:10px;
    right:10px;
    bottom:calc(84px + env(safe-area-inset-bottom, 0px));
    width:auto;
    max-width:none;
    transform:translateY(18px);
    grid-template-columns:44px minmax(0,1fr);
    gap:10px;
    padding:12px;
    border-radius:16px;
  }
  #pspNotifyInstallBar.show{
    transform:translateY(0);
  }
  .psp-notify-icon{
    width:44px;
    height:44px;
    border-radius:12px;
  }
  .psp-notify-icon img{
    width:34px;
    height:34px;
  }
  .psp-notify-copy strong{
    font-size:13px;
  }
  .psp-notify-copy span{
    font-size:9px;
  }
  .psp-notify-enable,
  .psp-notify-later{
    grid-column:auto;
    width:100%;
  }
  .psp-notify-enable{
    grid-column:1 / -1;
    margin-top:2px;
    font-size:11px;
    min-height:42px;
  }
  .psp-notify-later{
    grid-column:1 / -1;
    background:transparent;
    min-height:28px;
    padding:4px 8px;
  }
}

@media(max-width:380px){
  #pspNotifyInstallBar{
    left:7px;
    right:7px;
    bottom:calc(78px + env(safe-area-inset-bottom, 0px));
    padding:10px;
  }
  .psp-notify-copy strong{
    font-size:12px;
  }
}

/* FINAL overlap/mobile enforcement */
#pspNotifyInstallBar{z-index:2147483647!important}
#pwaInstallBanner{z-index:2147483000!important}
@media(min-width:701px){
  body:has(#pwaInstallBanner[style*="display: flex"]) #pspNotifyInstallBar,
  body:has(#pwaInstallBanner[style*="display:flex"]) #pspNotifyInstallBar{
    bottom:112px!important;
  }
}
@media(max-width:700px){
  #pspNotifyInstallBar{
    position:fixed!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(116px + env(safe-area-inset-bottom,0px))!important;
    width:auto!important;
    max-height:calc(100vh - 140px)!important;
    overflow:auto!important;
  }
  #pwaInstallBanner{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    width:auto!important;
    max-width:none!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}
