:root {
  --md-primary-fg-color: #e6372b;
  --md-primary-fg-color--light: #e6372b;
  --md-primary-fg-color--dark: #b9271d;
}
.demo-container {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.demo-input {
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  min-height: 16rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.25rem;
  padding: 0.75rem;
  background-color: #fff;
}

.demo-output {
  background-color: #f6f8fa;
  padding: 1rem;
  border-radius: 0.25rem;
  min-height: 10rem;
  overflow: auto;
  white-space: pre;
  border: 1px solid var(--md-default-fg-color--lightest);
  font-size: 0.75rem;
  line-height: 1.3;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
}

.demo-html {
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 0.25rem;
  padding: 1rem;
  background-color: #fff;
  min-height: 10rem;
  overflow-x: auto;
}

.demo-status {
  font-size: 0.9rem;
  color: #555;
  margin: 0;
}

.demo-status[data-tone="error"] {
  color: #b00020;
}

.demo-status[data-tone="success"] {
  color: #1b5e20;
}

.demo-download {
  align-self: flex-start;
}

.demo-download-bar {
  display: flex;
  justify-content: flex-end;
}

.demo-tab-bar {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  align-items: center;
  flex-wrap: wrap;
}

.demo-tab-buttons {
  display: flex;
  gap: 0.5rem;
}

.demo-tab-button.is-active {
  background-color: var(--md-primary-fg-color);
  color: #fff;
}

.demo-tab-panel {
  display: none;
}

.demo-tab-panel.is-active {
  display: block;
}
