.raw-content {
  word-break: break-word;

  p {
    margin: 0;

    + p {
      margin-top: 8px;
    }

    /* imported comments have br instead of p */
    br {
      content: '';
      display: block;
      margin-top: 8px;
    }
  }

  a {
    color: #0aa;

    &:hover {
      color: #06c5c5;
      text-decoration: none;
    }
  }

  img {
    max-width: 100%;
    max-height: 300px;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    &:first-child {
      margin-top: 0;
    }
  }

  blockquote {
    margin: 0;
    padding: 8px 8px 8px 24px;
    border-radius: 2px;

    + p {
      margin-top: 8px;
    }
  }

  table {
    display: block;
    overflow: auto;
    border-spacing: 0;
    border-collapse: collapse;

    th {
      text-align: left;
      font-weight: 600;
    }

    th,
    td {
      padding: 6px 13px;
    }

    tr {
      border-top: 1px solid #b7dddd;
    }
  }

  code {
    padding: 0.2em 0.4em;
    margin: 0;
    font-size: 85%;
    background-color: rgba(#1b1f23, 0.05);
    border-radius: 3px;
  }

  pre {
    padding: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    tab-size: 2;
    word-wrap: normal;
    font-size: 85%;
    line-height: 1.45;
    border-radius: 3px;

    &:first-child {
      margin-top: 0;
    }

    &:last-child {
      margin-bottom: 0;
    }

    > code {
      display: inline;
      padding: 0;
      margin: 0;
      overflow: visible;
      word-break: normal;
      white-space: pre;
      word-wrap: normal;
      font-size: 100%;
      line-height: inherit;
      background: transparent;
      border-radius: 0;
    }
  }

  sup,
  sub {
    sup,
    sub {
      vertical-align: middle; /* to prevent some visual cheats */
    }
  }
}
