.aim-pwa-install {
  position: fixed;
  z-index: 10080;
  right: 18px;
  bottom: max(18px, env(safe-area-inset-bottom));
  width: min(390px, calc(100vw - 36px));
  color: #f8f4ff;
  border: 1px solid rgba(192, 164, 255, .32);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(36, 24, 63, .98), rgba(13, 10, 23, .98));
  box-shadow: 0 24px 70px rgba(0,0,0,.4), 0 0 45px rgba(130, 91, 255, .18);
  padding: 18px;
  font: 14px/1.45 Instrument Sans, Segoe UI, sans-serif;
  transform: translateY(24px);
  opacity: 0;
  pointer-events: none;
  transition: opacity .24s ease, transform .24s ease;
}
.aim-pwa-install-launcher {
  position: fixed;
  z-index: 10070;
  right: 18px;
  bottom: max(18px, env(safe-area-inset-bottom));
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid rgba(202, 180, 255, .36);
  border-radius: 12px;
  color: #fff;
  background: rgba(24, 16, 43, .92);
  box-shadow: 0 12px 38px rgba(0,0,0,.3);
  font: 600 13px/1 Instrument Sans, Segoe UI, sans-serif;
  cursor: pointer;
}
.aim-pwa-install-launcher[hidden] { display: none; }
.aim-pwa-install[hidden], .aim-pwa-install [hidden] { display: none !important; }
.aim-pwa-install.is-open { transform: none; opacity: 1; pointer-events: auto; }
.aim-pwa-install__head { display: flex; align-items: flex-start; gap: 12px; }
.aim-pwa-install__mark {
  display: grid;
  flex: 0 0 40px;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(145deg, #a980ff, #5b48d6);
  box-shadow: 0 8px 24px rgba(113, 83, 255, .35);
}
.aim-pwa-install__mark img { width: 26px; height: 26px; object-fit: contain; }
.aim-pwa-install__head > div { flex: 1; min-width: 0; }
.aim-pwa-install__head strong { display: block; font-size: 16px; }
.aim-pwa-install__head p { margin: 3px 0 0; color: #bdb1cf; font-size: 12px; }
.aim-pwa-install__close {
  margin-left: auto;
  color: #aaa0bb;
  border: 0;
  background: transparent;
  font-size: 20px;
  cursor: pointer;
}
.aim-pwa-install__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.aim-pwa-install__button {
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid rgba(202, 180, 255, .28);
  border-radius: 10px;
  color: #fff;
  background: linear-gradient(135deg, #8d65ed, #5a47cc);
  font: 600 13px/1 Instrument Sans, Segoe UI, sans-serif;
  cursor: pointer;
}
.aim-pwa-install__button.secondary { color: #d6cae4; background: rgba(255,255,255,.06); }
.aim-pwa-install__steps { margin: 12px 0 0; padding-left: 18px; color: #d8cce3; font-size: 12px; }
.aim-pwa-install__phone-transfer { display:grid;grid-template-columns:128px minmax(0,1fr);gap:14px;align-items:center;margin-top:16px; }
.aim-pwa-install__qr { display:block;width:128px;height:128px;border-radius:12px;background:white; }
.aim-pwa-install__phone-transfer p { margin:0 0 8px;font-size:12px;line-height:1.5;color:#cbc0db; }
.aim-pwa-install__phone-link { display:grid;gap:10px; }
.aim-pwa-install__phone-link code { min-width:0;color:#d9cfff;overflow-wrap:anywhere;font-size:10px;line-height:1.5;user-select:text; }
.aim-pwa-install__copy { min-height:38px;padding:6px 10px;border:1px solid rgba(202,180,255,.25);border-radius:8px;color:#eee7ff;background:rgba(255,255,255,.07);font-size:11px;cursor:pointer; }
@media (max-width: 600px) {
  .aim-pwa-install { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); width: calc(100vw - 24px); }
  .aim-pwa-install-launcher { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) { .aim-pwa-install { transition: none; } }
