#aec-invite-binding {
  position: fixed; inset: 0; box-sizing: border-box; margin: auto; width: min(380px, calc(100% - 32px));
  max-height: calc(100% - 32px); overflow: auto; border: 1px solid #eadce3; border-radius: 22px;
  padding: 24px; color: #331228; background: #fff; box-shadow: 0 18px 56px #310d2840;
  font: 15px/1.5 system-ui, sans-serif; z-index: 9999;
}
#aec-invite-binding::backdrop { background: #26122075; }
#aec-invite-binding h2 { font-size: 22px; line-height: 1.25; margin: 0 0 10px; }
#aec-invite-binding p { color: #644855; margin: 0 0 18px; }
#aec-invite-binding label { display: block; margin-bottom: 6px; font-weight: 600; }
#aec-invite-binding input, #aec-invite-binding button { box-sizing: border-box; width: 100%; min-height: 44px; font: inherit; border-radius: 10px; }
#aec-invite-binding input { padding: 10px 12px; font-size: 16px; border: 1px solid #d2bdc8; background: #fff; color: #331228; }
#aec-invite-binding button { border: 0; background: #4c1233; color: #fff; font-weight: 600; cursor: pointer; }
#aec-invite-binding button:disabled { opacity: .65; cursor: default; }
#aec-invite-binding button.aec-invite-later { margin-top: 8px; background: transparent; color: #5f4251; }
#aec-invite-binding :focus-visible { outline: 2px solid #942f65; outline-offset: 2px; }
#aec-invite-binding .aec-invite-error { min-height: 1.5em; margin: 5px 0 8px; color: #a51d43; }
.aec-invite-toast { position: fixed; z-index: 9999; bottom: max(72px, env(safe-area-inset-bottom)); left: 50%; transform: translateX(-50%);
  background: #4c1233; color: #fff; border-radius: 12px; padding: 10px 16px; font: 14px system-ui, sans-serif; }
