/* A quiet, indeterminate thinking state in the conversation column. */
#chat-container .typing-indicator.is-omni-thinking {
  max-width: var(--conversation-width, 800px);
  align-items: center;
  gap: 12px;
  margin: 8px auto 28px;
}
#chat-container .typing-indicator.is-omni-thinking > .message-avatar { display: none; }
#chat-container .omni-thinking {
  width: auto;
  max-width: 100%;
  min-height: 48px;
  gap: 14px;
  padding: 4px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
#chat-container .omni-thinking::after { display: none; }
#chat-container .omni-thinking-visual {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.omni-thinking-orb {
  display: block;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: var(--conversation-ink);
  animation: omni-soft-pulse 2s ease-in-out infinite;
}
#chat-container .omni-thinking-copy { flex: 0 1 auto; }
#chat-container .omni-thinking-topline { justify-content: flex-start; gap: 12px; margin-bottom: 5px; }
#chat-container .omni-thinking-label {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.015em;
  color: var(--conversation-muted);
  background: linear-gradient(100deg, var(--conversation-muted) 30%, var(--conversation-ink) 48%, var(--conversation-muted) 66%);
  background-size: 250% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: omni-text-shimmer 2.8s ease-in-out infinite;
}
#chat-container .omni-thinking-elapsed {
  font-size: 11px;
  color: var(--conversation-muted);
  font-weight: 400;
  font-variant-numeric: tabular-nums;
}
#chat-container .omni-thinking-status {
  color: var(--conversation-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  white-space: normal;
}
@keyframes omni-soft-pulse {
  0%, 100% { transform: scale(.8); opacity: .45; }
  50% { transform: scale(1); opacity: .9; }
}
@keyframes omni-text-shimmer {
  from { background-position: 150% 0; }
  to { background-position: -100% 0; }
}
@media (prefers-reduced-motion: reduce) {
  #chat-container .omni-thinking-label { animation: none; background: none; -webkit-text-fill-color: currentColor; }
  .omni-thinking-orb { animation: none; opacity: .8; }
}
