.speech {
   font-size: 1.1em;
  color: {{ theme.css_default_fg }};
  background: {{ theme.css_default_bg }};
  border-color: {{ theme.css_primary_fg }};
  position: relative;
  padding: 20px;
  border-radius: 10px;
  border-style: solid;
  margin: 50px auto;
}

.speech::after {
  content: "";
  border: 20px solid transparent;
  position: absolute;
}

.bottom.speech::after {
  border-top-color: {{ theme.css_primary_fg }};
  border-bottom: 0;
  bottom: -20px; left: 50%;
  margin-left: -20px;
}

.top.speech::after {
  border-bottom-color: {{ theme.css_primary_fg }};
  border-top: 0;
  top: -20px; left: 50%;
  margin-left: -20px;
}

.left.speech::after {
  border-right-color: {{ theme.css_primary_fg }};
  border-left: 0;
  left: -20px; top: 50%;
  margin-top: -20px;
}

.right.speech::after {
  border-left-color: {{ theme.css_primary_fg }};
  border-right: 0;
  right: -20px; top: 50%;
  margin-top: -20px;
}
