/* ================================================================
   assistant.css — Management assistant chat widget
   ================================================================ */

.assistant-wrap { max-width: 760px; }
.assistant-chat {
  min-height: 360px;
  max-height: 55vh;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 20px;
  background: var(--card, #fff);
  border-radius: 16px;
  border: 1px solid var(--border, #e2e8f0);
  margin-bottom: 12px;
}
.asst-empty {
  margin: auto;
  color: #94a3b8;
  font-size: 14px;
  text-align: center;
  padding: 40px 20px;
}
.asst-msg {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  max-width: 85%;
}
.asst-msg-user { align-self: flex-end; flex-direction: row-reverse; }
.asst-avatar {
  width: 34px; height: 34px; border-radius: 10px;
  background: linear-gradient(135deg, var(--primary, #0d7c8c), #1aa4b8);
  display: flex; align-items: center; justify-content: center;
  color: #fff; font-size: 16px; flex-shrink: 0;
}
.asst-bubble {
  padding: 12px 16px; border-radius: 14px; font-size: 14px; line-height: 1.55;
  white-space: pre-wrap; word-break: break-word;
}
.asst-bubble-user { background: var(--primary, #0d7c8c); color: #fff; border-bottom-right-radius: 4px; }
.asst-bubble-bot { background: #f1f5f9; color: #1e293b; border-bottom-left-radius: 4px; }
.asst-typing { display: flex; gap: 4px; align-items: center; padding: 14px 16px; }
.asst-typing span {
  width: 7px; height: 7px; border-radius: 50%; background: #94a3b8;
  animation: asst-bounce 1.2s infinite ease-in-out;
}
.asst-typing span:nth-child(2) { animation-delay: .15s; }
.asst-typing span:nth-child(3) { animation-delay: .3s; }
@keyframes asst-bounce {
  0%, 60%, 100% { transform: translateY(0); opacity: .5; }
  30% { transform: translateY(-6px); opacity: 1; }
}
.assistant-suggestions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.asst-suggestion {
  padding: 8px 14px; border: 1px solid var(--border, #e2e8f0); border-radius: 20px;
  background: var(--card, #fff); color: var(--text, #1e293b); font-size: 13px;
  cursor: pointer; transition: border-color .15s, background .15s;
}
.asst-suggestion:hover { border-color: var(--primary, #0d7c8c); background: rgba(13, 124, 140, .08); }
.assistant-composer {
  display: flex; gap: 10px; padding: 12px;
  background: var(--card, #fff); border-radius: 14px; border: 1px solid var(--border, #e2e8f0);
}
.assistant-composer input {
  flex: 1; padding: 12px 16px; border: 1px solid #e2e8f0; border-radius: 10px;
  font-size: 14px; outline: none; font-family: inherit;
}
.assistant-composer input:focus { border-color: var(--primary, #0d7c8c); }
.assistant-composer button { white-space: nowrap; padding: 12px 20px; border: none; border-radius: 10px; background: var(--primary, #0d7c8c); color: #fff; font-size: 14px; cursor: pointer; font-family: inherit; }
.assistant-composer button:disabled { opacity: .6; cursor: default; }
