/* AI 助手侧边聊天面板样式 */

.ai-message {
  animation: aiFadeIn 0.25s ease;
}

@keyframes aiFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

.ai-message code {
  background: rgba(0,0,0,.08);
  padding: 1px 4px;
  border-radius: 3px;
  font-size: 0.88em;
}

.typing-indicator {
  display: flex;
  gap: 5px;
  padding: 4px 0;
}

.typing-indicator span {
  width: 7px;
  height: 7px;
  background: #888;
  border-radius: 50%;
  animation: aiTyping 1.4s infinite both;
}

.typing-indicator span:nth-child(2) { animation-delay: 0.2s; }
.typing-indicator span:nth-child(3) { animation-delay: 0.4s; }

@keyframes aiTyping {
  0%, 100% { opacity: .25; transform: scale(.8); }
  50% { opacity: 1; transform: scale(1); }
}

.ai-suggestion {
  cursor: pointer;
  transition: background-color .15s, transform .15s;
}

.ai-suggestion:hover {
  background-color: #e2e6ea !important;
  transform: scale(1.04);
}

/* 暗黑模式适配 */
[data-theme="dark"] .ai-message .bg-light {
  background-color: var(--hp-card) !important;
  color: var(--hp-ink) !important;
}

[data-theme="dark"] .ai-message code {
  background: rgba(255,255,255,.1);
}

[data-theme="dark"] .ai-suggestion {
  background-color: var(--hp-badge-bg) !important;
  color: var(--hp-ink) !important;
}

[data-theme="dark"] .ai-suggestion:hover {
  background-color: #4a443b !important;
}

[data-theme="dark"] #aiAssistantPanel .offcanvas-header {
  background-color: var(--hp-card-header);
  border-color: var(--hp-border);
}

[data-theme="dark"] #aiAssistantPanel .offcanvas-body {
  background-color: var(--hp-bg);
}

[data-theme="dark"] #aiAssistantPanel .border-top {
  border-color: var(--hp-border) !important;
}
