.agent-working {
  display: flex;
  align-self: flex-start;
  align-items: center;
  gap: 11px;
  flex: 0 0 auto;
  margin: 3px 0 8px;
  padding: 12px 17px 12px 12px;
  border: 1px solid var(--line);
  border-radius: 18px 18px 18px 5px;
  background: var(--panel);
  box-shadow: 0 3px 16px rgba(129, 34, 176, .07);
  color: var(--blue);
}
.agent-working-spark {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--blue-soft);
  animation: agent-spark-glow 2.4s ease-in-out infinite;
}
.agent-working-spark svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
  animation: agent-spark-turn 4s ease-in-out infinite;
}
.agent-working-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  background: linear-gradient(100deg, var(--blue) 30%, #d293f4 48%, var(--blue) 66%);
  background-size: 250% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  animation: agent-text-shimmer 3s linear infinite;
}
.agent-working-dots { display: flex; gap: 3px; align-items: center; height: 16px; }
.agent-working-dots i {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--blue);
  animation: agent-dot-wave 1.4s ease-in-out infinite;
}
.agent-working-dots i:nth-child(2) { animation-delay: .16s; }
.agent-working-dots i:nth-child(3) { animation-delay: .32s; }
@keyframes agent-spark-turn { 0%, 15% { transform: rotate(0); } 65%, 100% { transform: rotate(180deg); } }
@keyframes agent-spark-glow { 0%, 100% { box-shadow: 0 0 0 0 rgba(185, 49, 252, 0); } 50% { box-shadow: 0 0 16px 2px rgba(185, 49, 252, .18); } }
@keyframes agent-text-shimmer { from { background-position: 150% 0; } to { background-position: -100% 0; } }
@keyframes agent-dot-wave { 0%, 60%, 100% { transform: translateY(0); opacity: .35; } 30% { transform: translateY(-3px); opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  .agent-working *, .agent-working { animation: none !important; }
  .agent-working-label { background: none; color: var(--blue); }
  .agent-working-dots i { opacity: .65; }
}
