/* diva-widget.css — floating chat widget */
#diva-launch {
  position: fixed; right: 20px; bottom: 20px; z-index: 9999;
  background: #4f46e5; color: #fff; border-radius: 999px;
  width: 54px; height: 54px; display: grid; place-items: center;
  box-shadow: 0 8px 22px rgba(0,0,0,.18); cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
  font-weight: 700; user-select: none;
}
#diva-launch:hover{ transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.2); background:#4338ca; }

#diva-panel {
  position: fixed; right: 20px; bottom: 84px; z-index: 9999; width: 340px; max-width: calc(100vw - 40px);
  background: #fff; border: 1px solid #e5e7eb; border-radius: 16px; overflow: hidden;
  box-shadow: 0 16px 40px rgba(0,0,0,.18); display: none;
}
#diva-header {
  background: linear-gradient(135deg,#4f46e5,#7c3aed); color:#fff; padding: 12px 14px;
  display:flex; align-items:center; justify-content:space-between;
}
#diva-header .title{ font-weight:700; }
#diva-close{ background: rgba(255,255,255,.2); border:0; color:#fff; width:28px; height:28px; border-radius:8px; cursor:pointer; }
#diva-body{ padding: 12px; height: 360px; max-height: 60vh; overflow:auto; background: #fafafa; }
#diva-body .msg{ margin-bottom:10px; display:flex; }
#diva-body .msg.ai{ justify-content:flex-start; }
#diva-body .msg.user{ justify-content:flex-end; }
#diva-body .bubble{
  max-width: 78%; padding: 10px 12px; border-radius: 14px; line-height: 1.35; font-size: 14px;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}
#diva-body .ai .bubble{ background:#ffffff; border:1px solid #e5e7eb; }
#diva-body .user .bubble{ background:#4f46e5; color:#fff; }
#diva-typing{ font-size:12px; color:#666; padding: 0 2px 8px 2px; display:none; }
#diva-input{ display:flex; gap:8px; padding: 10px; border-top:1px solid #e5e7eb; background:#fff; }
#diva-input input{ flex:1; padding:10px 12px; border:1px solid #e5e7eb; border-radius:12px; font-size:14px; }
#diva-input button{ padding:10px 14px; background:#4f46e5; color:#fff; border:0; border-radius:12px; cursor:pointer; font-weight:600; }
#diva-input button:disabled{ opacity:.6; cursor:not-allowed; }
@media (max-width:420px){
  #diva-panel { right: 10px; left: 10px; width: auto; }
  #diva-launch { right: 10px; bottom: 10px; }
}
