.pwa-install-button {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  padding: 6px 10px;
  border: 1px solid #ffdb3566;
  border-radius: 9px;
  color: #ffdb35;
  background: #ffdb350d;
  font-size: .68rem;
  font-weight: 700;
}
.pwa-install-button:hover { background: #ffdb351d; }
.push-button { min-height: 40px; display: inline-flex; align-items: center; gap: 7px; padding: 0 11px; border: 1px solid transparent; border-radius: 11px; color: #d8cce4; background: transparent; font-size: .75rem; font-weight: 650; }
.push-button:hover { background: #ffffff0a; }.push-button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.pwa-install-button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.pwa-install-dialog {
  width: min(calc(100vw - 32px), 390px);
  max-height: min(610px, calc(100dvh - 32px));
  overflow: auto;
  padding: 29px 24px 24px;
  border: 1px solid #72528d;
  border-radius: 23px;
  color: #f5edf9;
  background: radial-gradient(circle at 84% 10%, #8153a644, transparent 37%), #241137;
  box-shadow: 0 22px 70px #08000fcc;
}
.pwa-install-dialog::backdrop { background: #10061cb8; backdrop-filter: blur(3px); }
.pwa-dialog-close {
  position: absolute;
  top: 11px;
  right: 12px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 50%;
  color: #e6d7ee;
  background: transparent;
  font-size: 1.8rem;
  line-height: 1;
}
.pwa-dialog-close:hover { background: #ffffff12; }
.pwa-dialog-icon { display: block; width: 72px; height: 72px; margin: 0 auto 17px; border-radius: 17px; box-shadow: 0 8px 26px #10041d80; }
.pwa-install-dialog h2 { margin: 0; color: #ffdb35; text-align: center; font-size: 1.35rem; line-height: 1.16; letter-spacing: -.03em; }
.pwa-install-dialog > p { margin: 11px auto 20px; color: #d9c8e5; text-align: center; font-size: .87rem; line-height: 1.5; }
.pwa-primary-button { width: 100%; min-height: 45px; border: 0; border-radius: 12px; color: #352019; background: #ffdb35; font-weight: 750; }
.pwa-primary-button:hover { background: #ffe16c; }
.pwa-secondary-button { width: 100%; min-height: 42px; margin-top: 12px; border: 1px solid #ffffff36; border-radius: 12px; color: #f5edf9; background: transparent; font-weight: 650; }
.pwa-secondary-button:hover { background: #ffffff12; }
.pwa-install-help { margin-top: 18px; }
.pwa-steps { margin: 0; padding: 15px 15px 15px 35px; border: 1px solid #ffffff20; border-radius: 14px; color: #f1e7f6; background: #ffffff0b; font-size: .82rem; line-height: 1.5; }
.pwa-steps li + li { margin-top: 9px; }
.pwa-steps strong { color: #ffdf61; }
.pwa-in-app-note { margin: 13px 0 0; color: #d9c8e5; font-size: .78rem; line-height: 1.45; text-align: center; }
body.pwa-standalone .pwa-install-button { display: none; }
@media (display-mode: standalone) { .pwa-install-button { display: none; } }
@media (max-width: 520px) {
  .push-button { width: 38px; min-height: 40px; justify-content: center; padding: 8px; }.push-button span { display: none; }
  .pwa-install-button { min-height: 31px; padding-inline: 8px; font-size: .62rem; }
  .pwa-install-button svg { width: 14px; height: 14px; }
  .pwa-install-dialog { width: min(calc(100vw - 20px), 390px); padding: 27px 18px 20px; border-radius: 20px; }
  .pwa-install-dialog h2 { font-size: 1.22rem; }
}
@media (max-width: 350px) { .pwa-install-button span { display: none; }.pwa-install-button { width: 31px; justify-content: center; padding: 0; } }
@media (display-mode: standalone) { .chat-shell { padding-top: env(safe-area-inset-top); } }
.push-dialog { width: min(calc(100vw - 32px), 390px); padding: 30px 24px 24px; border: 1px solid #72528d; border-radius: 23px; color: #f5edf9; background: radial-gradient(circle at 84% 10%, #8153a644, transparent 37%), #241137; box-shadow: 0 22px 70px #08000fcc; }
.push-dialog::backdrop { background: #10061cb8; backdrop-filter: blur(3px); }
.push-dialog__close { position: absolute; top: 11px; right: 12px; width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 0; border-radius: 50%; color: #e6d7ee; background: transparent; font-size: 1.8rem; line-height: 1; }
.push-dialog__close:hover { background: #ffffff12; }
.push-dialog h2 { margin: 0; color: #ffdb35; text-align: center; font-size: 1.3rem; line-height: 1.2; letter-spacing: -.025em; }.push-dialog > p { margin: 11px auto 0; color: #d9c8e5; text-align: center; font-size: .86rem; line-height: 1.5; }
.push-status { min-height: 22px; margin-top: 15px !important; color: #ffdf61 !important; font-size: .77rem !important; }.push-ios-note { padding: 10px 12px; border-radius: 11px; background: #ffffff0d; }
.push-dialog__actions { display: grid; gap: 10px; margin-top: 17px; }.push-primary, .push-secondary { width: 100%; min-height: 44px; border-radius: 12px; font-weight: 750; }.push-primary { border: 0; color: #352019; background: #ffdb35; }.push-primary:hover { background: #ffe16c; }.push-secondary { border: 1px solid #ffffff36; color: #f5edf9; background: transparent; }.push-secondary:hover { background: #ffffff12; }
@media (max-width: 520px) { .push-dialog { width: min(calc(100vw - 20px), 390px); padding: 27px 18px 20px; border-radius: 20px; }.push-dialog h2 { font-size: 1.18rem; } }
