.chat-form{position:relative;z-index:99998}

.chat-form__button{position:fixed;right:18px;bottom:18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 16px;border:0;border-radius:999px;background:#25D366;color:#fff;font:inherit;line-height:1;box-shadow:0 12px 28px rgba(0,0,0,.22);z-index:99999}
.chat-form__button:hover{filter:brightness(.98)}
.chat-form__button:active{transform:translateY(1px)}
.chat-form__button-image{display:block;max-width:220px;height:auto}

.chat-form__modal{position:fixed;inset:0;display:block;pointer-events:none;opacity:0;transition:opacity .22s ease;z-index:100000}
.chat-form__modal.is-open{pointer-events:auto;opacity:1}

.chat-form__modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.38);opacity:0;transition:opacity .22s ease}
.chat-form__modal.is-open .chat-form__modal-backdrop{opacity:1}

.chat-form__modal-panel{position:absolute;right:18px;bottom:90px;width:min(420px,calc(100vw - 36px));height:min(640px,calc(100vh - 120px));background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden;display:flex;flex-direction:column;transform:translateY(14px) scale(.98);opacity:0;transition:transform .22s ease,opacity .22s ease}
.chat-form__modal.is-open .chat-form__modal-panel{transform:translateY(0) scale(1);opacity:1}

.chat-form__header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 12px;background:#075E54;color:#fff}
.chat-form__header-left{display:flex;align-items:center;gap:10px;min-width:0}
.chat-form__avatar{width:38px;height:38px;border-radius:999px;object-fit:cover;flex:0 0 auto;background:rgba(255,255,255,.16)}
.chat-form__avatar--placeholder{display:block}
.chat-form__header-text{display:flex;flex-direction:column;min-width:0}
.chat-form__header-name{font-weight:700;font-size:14px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-form__header-status{font-size:12px;line-height:1.2;opacity:.9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.chat-form__close{border:0;background:rgba(255,255,255,.16);color:#fff;border-radius:10px;width:36px;height:36px;cursor:pointer;font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.chat-form__close:hover{background:rgba(255,255,255,.22)}

.chat-form__body{position:relative;flex:1;min-height:0;background:#ece5dd}
.chat-form__iframe{border:0;width:100%;height:100%;background:#fff}

@media (max-width: 480px){
  .chat-form__modal-panel{right:12px;left:12px;bottom:84px;width:auto;height:min(620px,calc(100vh - 120px))}
  .chat-form__button{right:14px;bottom:14px}
}

html.chat-form--lock{overflow:hidden}
