/* Nebula NBL — PWA install banner + toast (chargé par pwa.js) */

/* ---------- Toast mise à jour ---------- */
.nbl-pwa-toast{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:calc(20px + env(safe-area-inset-bottom));
  z-index:9999;
  padding:12px 18px;
  border:1px solid rgba(255,216,138,.5);
  border-radius:999px;
  background:rgba(2,4,12,.92);
  color:#ffd88a;
  font-family:InterNebula,system-ui,sans-serif;
  font-size:.86rem;letter-spacing:.04em;
  cursor:pointer;
  backdrop-filter:blur(10px);
  box-shadow:0 12px 30px rgba(0,0,0,.5),0 0 24px rgba(255,216,138,.18);
  animation:nbl-slide-up .55s cubic-bezier(.2,.7,.2,1) both;
}

/* ---------- Bannière Installer ---------- */
.nbl-install{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:calc(18px + env(safe-area-inset-bottom));
  z-index:9998;
  display:flex;align-items:center;gap:12px;
  padding:12px 14px 12px 16px;
  max-width:min(520px,calc(100vw - 24px));
  border:1px solid rgba(124,245,255,.30);
  border-radius:999px;
  background:rgba(2,4,12,.92);
  color:#e8fbff;
  font-family:InterNebula,system-ui,sans-serif;
  font-size:.82rem;letter-spacing:.03em;
  backdrop-filter:blur(14px);
  box-shadow:0 18px 44px rgba(0,0,0,.55),0 0 28px rgba(124,245,255,.18);
  animation:nbl-slide-up .55s cubic-bezier(.2,.7,.2,1) both;
}
.nbl-install-star{
  width:22px;height:22px;flex-shrink:0;
  display:grid;place-items:center;
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,245,255,.9),rgba(124,245,255,.1));
  color:#02030a;font-size:.9rem;
}
.nbl-install-text{flex:1;min-width:0;line-height:1.35}
.nbl-install-text b{color:#ffd88a;font-weight:600}
.nbl-install button{
  appearance:none;border:0;cursor:pointer;
  padding:8px 14px;border-radius:999px;
  font:600 .82rem/1 InterNebula,system-ui,sans-serif;letter-spacing:.06em;
  transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s;
}
.nbl-install-cta{
  background:linear-gradient(135deg,#7cf5ff,#e8feff);color:#071019;
  box-shadow:0 8px 22px rgba(124,245,255,.35);
}
.nbl-install-cta:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(124,245,255,.45)}
.nbl-install-close{background:transparent;color:#a9b8c6;padding:8px 10px}
.nbl-install-close:hover{color:#fff}

/* ---------- Sheet iOS (instructions) ---------- */
.nbl-install-sheet{
  position:fixed;inset:0;z-index:9997;
  background:rgba(2,4,12,.75);backdrop-filter:blur(6px);
  display:flex;align-items:flex-end;justify-content:center;
  animation:nbl-fade-in .3s ease both;
}
.nbl-install-sheet-card{
  width:min(460px,calc(100vw - 24px));
  margin-bottom:calc(18px + env(safe-area-inset-bottom));
  padding:22px 22px 24px;
  border:1px solid rgba(124,245,255,.30);
  border-radius:22px;
  background:linear-gradient(160deg,rgba(11,20,46,.94),rgba(2,4,12,.94));
  color:#e8fbff;font-family:InterNebula,system-ui,sans-serif;
  box-shadow:0 30px 80px rgba(0,0,0,.7),0 0 40px rgba(124,245,255,.15);
  animation:nbl-slide-up .5s cubic-bezier(.2,.7,.2,1) both;
}
.nbl-install-sheet-card h3{margin:0 0 6px;font:600 1.05rem/1.3 "CormorantNebula",serif;letter-spacing:.02em;color:#fff}
.nbl-install-sheet-card p{margin:0 0 14px;font-size:.86rem;line-height:1.55;color:#c8d4e2}
.nbl-install-sheet-card ol{margin:0 0 16px;padding-left:20px;font-size:.85rem;line-height:1.7}
.nbl-install-sheet-card ol b{color:#ffd88a}
.nbl-install-sheet-card .nbl-icon{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin:0 3px}
.nbl-install-sheet-card .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}

@keyframes nbl-slide-up{from{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes nbl-fade-in{from{opacity:0}to{opacity:1}}
@media (max-width:420px){
  .nbl-install{font-size:.78rem;padding:10px 12px}
  .nbl-install-cta{padding:8px 12px;font-size:.78rem}
}
