body {
  font-family: sans-serif;
}

h1 {
  font-weight: normal;
  font-size: 150%;
  width: 100%;
  overflow: hidden;

}
h1 img {
  vertical-align: middle;
  margin-right: 0.3em;
}

.controls-container {
  max-width: 350px;
  margin-bottom: 1em;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: stretch;
}
.controls-container button,
.controls-container select {
  height: 35px;
  flex: 1 0 auto;
  margin: 0.2em;
  margin-bottom: 0;
}

#text-form {
  max-width: 800px;
  display: flex;
  flex-direction: row;
  justify-content: stretch;
}

#text-input {
  flex: 1 1 auto;
  margin-right: 0.5em;
}

#transcript {
  white-space: pre-wrap;
}

.interim {
  color: rgba(0, 0, 0, 0.5);
}

#history {
  display: flex;
  flex-direction: column-reverse;
}

.response {
  max-width: 800px;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 0.5em;
  margin-bottom: 0.5em;
  display: flex;
  flex-direction: row;
  white-space: pre-wrap;
  line-height: 120%;
  transition: all 200ms ease;
}
.response.playing {
  background: #eef;
  outline: 1px solid #99c;
}
.response.tool-call {
  font-family: monospace;
  color: rgba(0, 0, 0, 0.7);
}

.response .logo {
  flex: 0 0 auto;
  margin-right: 1em;
}