/* Centered, responsive, dismissible visitor subscription dialog */
#tjt-push-popup[hidden] { display: none !important; }
#tjt-push-popup {
  position: fixed !important;
  z-index: 2147483000 !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  box-sizing: border-box;
  width: min(430px, calc(100vw - 32px)) !important;
  max-width: 430px !important;
  max-height: calc(100dvh - 32px);
  overflow-y: auto;
  padding: 22px;
  border: 1px solid #e4e4e4;
  border-radius: 14px;
  background: #fff;
  color: #222;
  box-shadow: 0 24px 80px rgba(0,0,0,.28);
  font: 15px/1.5 system-ui, -apple-system, sans-serif;
}
body.tjt-push-open::before {
  content: '';
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.42);
  z-index: 2147482999;
}
#tjt-push-popup h2 { font-size: 20px; line-height: 1.3; margin: 0 0 10px; }
#tjt-push-popup p { margin: 9px 0 14px; }
#tjt-push-popup strong { display: block; margin-top: 12px; }
#tjt-push-popup label { display: block; margin: 7px 0; cursor: pointer; }
#tjt-push-popup input[type=radio] { accent-color: #b71c1c; }
#tjt-push-popup .tjt-actions { display: flex; gap: 10px; flex-wrap: wrap; margin: 16px 0 8px; }
#tjt-push-popup button { border: 0; border-radius: 8px; padding: 10px 14px; font: inherit; cursor: pointer; }
#tjt-push-popup [data-join] { background: #b71c1c; color: #fff; }
#tjt-push-popup [data-join]:disabled { opacity: .65; cursor: wait; }
#tjt-push-popup [data-dismiss] { background: #eee; color: #222; }
#tjt-push-popup [data-message] { color: #a00; font-size: 13px; overflow-wrap: anywhere; }
#tjt-push-popup small { display: block; color: #666; font-size: 12px; }
@media (max-width: 480px) {
  #tjt-push-popup { padding: 16px; width: calc(100vw - 24px) !important; max-height: calc(100dvh - 24px); }
  #tjt-push-popup h2 { font-size: 18px; }
}
/* Keep the popup truly centered regardless of site container styling. */
body > #tjt-push-popup { margin: 0 !important; }
