#tw-bot-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.75);
  backdrop-filter: blur(4px);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 999999;
}

#tw-bot{
  width: 100%;
  max-width: 680px;
  height: 85vh;
  background: #0f0f10;
  border-radius: 18px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(0,0,0,.5);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;
  color: #fff;
}

#tw-bot header{
  padding: 20px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  display:flex;
  justify-content: space-between;
  align-items:center;
}

#tw-bot header .title{
  font-size: 16px;
  font-weight: 600;
}

#tw-bot header button{
  background: transparent;
  border:none;
  color:#fff;
  font-size: 26px;
  cursor:pointer;
}

#tw-bot .msgs{
  flex:1;
  overflow:auto;
  padding: 20px;
}

.tw-msg{
  margin: 14px 0;
  display:flex;
}

.tw-msg.user{ justify-content:flex-end; }

.tw-bubble{
  max-width: 80%;
  padding: 14px 16px;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.5;
  white-space: pre-wrap;
}

.tw-msg.user .tw-bubble{
  background:#fff;
  color:#000;
  border-bottom-right-radius: 6px;
}

.tw-msg.bot .tw-bubble{
  background:#1a1a1c;
  border:1px solid rgba(255,255,255,.08);
  border-bottom-left-radius: 6px;
}

#tw-bot form{
  display:flex;
  padding: 16px;
  gap:10px;
  border-top:1px solid rgba(255,255,255,.08);
}

#tw-bot input{
  flex:1;
  padding: 14px;
  border-radius: 12px;
  border:none;
  background:#1a1a1c;
  color:#fff;
  font-size: 14px;
  outline:none;
}

#tw-bot form button{
  padding: 14px 18px;
  border-radius: 12px;
  border:none;
  background:#fff;
  color:#000;
  cursor:pointer;
  font-weight:600;
}
#tw-bot a { color:#fff; }
#tw-bot a:visited { color:#fff; }
#tw-bot .msgs { pointer-events:auto; }