:root {
  --transcript-width: var(--size-1060);
  --transcript-gap: var(--space-6);
  --transcript-content-gap: var(--space-3);
  --transcript-attachment-gap: var(--space-2);
  --transcript-font: var(--font-type-body);
  --transcript-note-font: var(--font-type-caption);
  --transcript-code-font: var(--font-type-code);
  --transcript-code-border: var(--control-border-width) solid var(--color-border);
  --transcript-code-padding: var(--space-3);
  --transcript-code-radius: var(--radius-8);
  --transcript-commentary-padding: var(--space-3) var(--space-5);
  --transcript-clear-background: var(--color-clear);
}

.session-transcript {
  display: grid;
  gap: var(--transcript-gap);
  min-inline-size: 0;
  color: var(--color-surface-foreground);
  background: var(--color-surface);
  font: var(--transcript-font);
}
.session-transcript .transcript-event { min-inline-size: 0; margin: 0; }
.session-transcript .transcript-event:has(.chat-message--user):not(:first-child) { margin-block-start: var(--transcript-content-gap); }
.session-transcript .response-message { padding: 0; font: inherit; }
.session-transcript .assistant-working { margin: 0; color: var(--color-muted-foreground); }
.session-transcript__attachments { display: flex; flex-wrap: wrap; gap: var(--transcript-attachment-gap); margin: 0; padding: 0; list-style: none; }
.session-transcript__attachments > li { min-inline-size: 0; max-inline-size: 100%; }
.chat-transcript__commentary { padding: var(--transcript-commentary-padding); }
.chat-tool-output { display: grid; gap: var(--transcript-content-gap); }
.chat-tool-output p { margin: 0; }
.chat-tool-output__label { color: var(--color-muted-foreground); font: var(--transcript-note-font); }
.chat-tool-output pre {
  min-inline-size: 0;
  margin: 0;
  padding: var(--transcript-code-padding);
  border: var(--transcript-code-border);
  border-radius: var(--transcript-code-radius);
  background: var(--color-muted);
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font: var(--transcript-code-font);
}
.chat-tool-output code { padding: 0; background: var(--transcript-clear-background); font: inherit; }
.chat-tool-call[data-result="error"] .chat-tool-output__status { color: var(--color-error-text); }
.chat-tool-output__image { max-inline-size: 100%; block-size: auto; }
.chat-follow-up-queue {
  display: grid;
  gap: var(--transcript-content-gap);
  inline-size: 100%;
  max-inline-size: 100%;
  justify-self: end;
  margin: 0;
  padding: 0;
  border: 0;
}
