/* MUST ABET Chatbot (floating widget) */
.mab-chatbot-btn{
  position:fixed; right:22px; bottom:22px; z-index:9999;
  width:56px; height:56px; border-radius:999px;
  display:flex; align-items:center; justify-content:center;
  background: var(--primary, #7a1e2c);
  color:#fff; box-shadow:0 12px 30px rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.18);
  cursor:pointer; user-select:none;
}
.mab-chatbot-btn:focus{ outline:3px solid rgba(122,30,44,.35); outline-offset:2px; }
.mab-chatbot-panel{
  position:fixed; right:22px; bottom:92px; z-index:9999;
  width:min(420px, calc(100vw - 44px));
  height:min(560px, calc(100vh - 150px));
  background:#fff; border-radius:18px;
  box-shadow:0 18px 60px rgba(0,0,0,.22);
  border:1px solid rgba(0,0,0,.08);
  display:none; overflow:hidden;
}
.mab-chatbot-panel.open{ display:flex; flex-direction:column; }
.mab-chatbot-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 14px;
  background: linear-gradient(135deg, var(--primary, #7a1e2c), #5b1621);
  color:#fff;
}
.mab-chatbot-title{ font-weight:700; font-size:14px; letter-spacing:.2px; }
.mab-chatbot-sub{ font-size:12px; opacity:.9; margin-top:2px; }
.mab-chatbot-close{
  width:34px; height:34px; border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.12); color:#fff; cursor:pointer;
}
.mab-chatbot-body{ padding:12px; background:#f7f7f9; flex:1; overflow:auto; }
.mab-msg{ display:flex; gap:10px; margin:10px 0; align-items:flex-start; }
.mab-avatar{
  width:28px; height:28px; border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  background:#fff; border:1px solid rgba(0,0,0,.08);
  flex:0 0 auto;
}
.mab-bubble{
  max-width: 85%;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.08);
  background:#fff;
  font-size:13px; line-height:1.45;
  white-space:pre-wrap;
}
.mab-msg.user{ justify-content:flex-end; }
.mab-msg.user .mab-bubble{
  background: rgba(122,30,44,.08);
  border-color: rgba(122,30,44,.18);
}
.mab-msg.user .mab-avatar{ display:none; }
.mab-chatbot-footer{
  padding:10px;
  border-top:1px solid rgba(0,0,0,.08);
  background:#fff;
}
.mab-row{ display:flex; gap:8px; }
.mab-input{
  flex:1;
  border:1px solid rgba(0,0,0,.16);
  border-radius:12px;
  padding:10px 12px;
  font-size:13px;
}
.mab-send{
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background: var(--primary, #7a1e2c);
  color:#fff; cursor:pointer;
}
.mab-send:disabled{ opacity:.55; cursor:not-allowed; }
.mab-hint{ margin-top:8px; font-size:11px; color: rgba(0,0,0,.6); }
