/* A stable response surface: incoming words never replace the composer or player. */
.uni-chat-live {
  min-width: 0;
}
/* The chat follows new content explicitly; native anchoring must not compete. */
.uni-chat-thread {
  overflow-anchor: none;
}
/* Reserve two text lines while the current status and elapsed time update in place. */
.uni-chat-live-progress {
  height: 48px;
  margin: 0 0 20px;
  color: var(--ink, #344330);
  font-size: 16px;
  line-height: 1.5;
}
.uni-chat-progress-row {
  display: grid;
  grid-template-columns: 6px minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  min-height: 48px;
}
.uni-chat-progress-row::before {
  content: "";
  width: 6px;
  height: 6px;
  margin-top: 9px;
  border-radius: 50%;
  background: var(--uni-accent, #43835a);
  box-shadow: 0 0 0 3px
    color-mix(in srgb, var(--uni-accent, #43835a) 12%, transparent);
}
.uni-chat-progress-label {
  min-width: 0;
  color: var(--ink, #344330);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.uni-chat-progress-timer {
  min-width: 5ch;
  color: var(--mut, #65776b);
  font-size: 14px;
  font-variant-numeric: tabular-nums;
  line-height: 24px;
  text-align: right;
  white-space: nowrap;
}
.uni-chat-live-copy {
  min-width: 0;
  overflow-wrap: anywhere;
}
/* Incremental blocks stay still: no trailing caret changes the final line width. */
.uni-chat-live-copy::after {
  content: none;
}
.uni-chat-live-artifacts {
  display: grid;
  gap: 16px;
  margin-top: 22px;
}
.uni-chat-live-artifacts:empty,
.uni-chat-live-artifacts:has(> .uni-chat-live-skeleton:only-child:empty) {
  display: none;
}
.uni-chat-reveal {
  animation: uni-response-enter 0.32s cubic-bezier(0.22, 0.8, 0.2, 1) both;
}
.uni-chat-live-skeleton {
  margin: 0;
}
.uni-chat-live-skeleton:empty {
  display: none;
}
.uni-chat-live-intro {
  margin-bottom: 18px;
}
.uni-chat-live-intro[hidden] {
  display: none;
}
.uni-chat-text p,
.uni-chat-text li {
  overflow-wrap: anywhere;
}
.uni-chat-presentation-note {
  font-size: 11px;
  color: var(--mut, #65776b);
}
@keyframes uni-response-enter {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .uni-chat-reveal {
    animation: none;
  }
}
html[data-uni-motion="reduced"] .uni-chat-reveal {
  animation: none;
}
@media (max-width: 860px) {
  .uni-chat-live-progress {
    margin-bottom: 16px;
  }
  .uni-chat-live-artifacts {
    gap: 14px;
    margin-top: 18px;
  }
}

.uni-chat-intro[hidden] {
  display: none;
}

.uni-chat-live-artifacts .uni-chat-cards,
.uni-chat-live-artifacts .uni-chat-cards-videos {
  margin: 0;
}

.uni-chat-cards-steps li[hidden] {
  display: none;
}

.uni-chat-live-copy [hidden] {
  display: none;
}
.uni-chat-live-progress.is-complete .uni-chat-progress-label {
  color: var(--mut, #65776b);
}
