<commit_before>@import '../mixins';

/** The container for the CodeMirror element. */
.diff-code-mirror {
  flex-grow: 1;
  min-width: 0;
}

.diff-code-mirror .CodeMirror {
  height: 100%;
  color: var(--diff-text-color);
  background: var(--background-color);
  font-size: var(--font-size-sm);
  font-family: var(--font-family-monospace);

  span {
    // Force word breaks. This only matters when soft wrapping is on.
    word-break: break-all;
  }

  pre {
    border: none;
    padding: 0;
  }

  // Remove blank space at the top of the diff
  &-lines {
    padding: 0;
  }

  &-line {
    display: flex;
    padding: 0;

    // The last immediate `span` is the actual content class.
    > span:last-child {
      // Add a little bit of space to the left of code diff
      // `padding-left` here means mouse move events are not raised
      padding-left: var(--spacing-half);
      padding-top: var(--diff-line-padding-y);
      padding-bottom: var(--diff-line-padding-y);
      display: inline-block;
    }

    svg.no-newline {
      height: 8px;
      fill: var(--error-color);
      display: inline-block;
      margin-left: 3px;
      margin-bottom: -1px;
    }
  }

  &-code > div:last-of-type {
    // Add a border to the end of the diff
    border-bottom: var(--base-border);
  }
}

// The container element which holds the before and after
// diff-line-number spans.
.diff-line-gutter {
  display: flex;
  height: 100%;

  &.diff-add {
    background: var(--diff-add-gutter-background-color);
  }

  &.diff-delete {
    background: var(--diff-delete-gutter-background-color);
  }

  &.diff-hunk {
    background: var(--diff-hunk-gutter-background-color);
  }

  .before {
    border-right: 1px solid var(--diff-border-color);
  }

  .after {
    border-right: 4px solid var(--diff-border-color);
  }

  &.read-only .after {
    border-right-width: 1px;
  }
}

.diff-line-number {
  display: inline-block;
  color: var(--diff-line-number-color);
  width: var(--diff-line-number-column-width);
  padding: var(--diff-line-padding-y) var(--spacing-half);
  text-align: right;
}

.diff-add {
  background: var(--diff-add-background-color);
  color: var(--diff-add-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-add-border-color);

    &:last-child {
      border-color: var(--diff-add-gutter-color);
    }
  }
}

.diff-delete {
  background: var(--diff-delete-background-color);
  color: var(--diff-delete-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-delete-border-color);

    &:last-child {
      border-color: var(--diff-delete-gutter-color);
    }
  }
}

.diff-context {
  background: var(--background-color);
  color: var(--diff-context-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-border-color);

    &:last-child {
      border-color: var(--diff-gutter-color);
    }
  }
}

// The cm- prefix means it's styling the line content.
.cm-diff-hunk {
  color: var(--diff-hunk-text-color);
}

.cm-diff-delete {
  color: var(--diff-delete-text-color);
}

.cm-diff-delete-inner {
  background: var(--diff-delete-inner-background-color);
}

.cm-diff-add {
  color: var(--diff-add-text-color);
}

.cm-diff-add-inner {
  background: var(--diff-add-inner-background-color);
}

.cm-diff-context {
  color: var(--diff-context-text-color);
}

.diff-hunk {
  background: var(--diff-hunk-background-color);
  color: var(--diff-hunk-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-hunk-border-color);

    &:last-child {<commit_msg>Increase specificity for line type selectors<commit_after>@import '../mixins';

/** The container for the CodeMirror element. */
.diff-code-mirror {
  flex-grow: 1;
  min-width: 0;
}

.diff-code-mirror .CodeMirror {
  height: 100%;
  color: var(--diff-text-color);
  background: var(--background-color);
  font-size: var(--font-size-sm);
  font-family: var(--font-family-monospace);

  span {
    // Force word breaks. This only matters when soft wrapping is on.
    word-break: break-all;
  }

  pre {
    border: none;
    padding: 0;
  }

  // Remove blank space at the top of the diff
  &-lines {
    padding: 0;
  }

  &-line {
    display: flex;
    padding: 0;

    // The last immediate `span` is the actual content class.
    > span:last-child {
      // Add a little bit of space to the left of code diff
      // `padding-left` here means mouse move events are not raised
      padding-left: var(--spacing-half);
      padding-top: var(--diff-line-padding-y);
      padding-bottom: var(--diff-line-padding-y);
      display: inline-block;
    }

    svg.no-newline {
      height: 8px;
      fill: var(--error-color);
      display: inline-block;
      margin-left: 3px;
      margin-bottom: -1px;
    }
  }

  &-code > div:last-of-type {
    // Add a border to the end of the diff
    border-bottom: var(--base-border);
  }
}

// The container element which holds the before and after
// diff-line-number spans.
.diff-line-gutter {
  display: flex;
  height: 100%;

  &.diff-add {
    background: var(--diff-add-gutter-background-color);
  }

  &.diff-delete {
    background: var(--diff-delete-gutter-background-color);
  }

  &.diff-hunk {
    background: var(--diff-hunk-gutter-background-color);
  }

  .before {
    border-right: 1px solid var(--diff-border-color);
  }

  .after {
    border-right: 4px solid var(--diff-border-color);
  }

  &.read-only .after {
    border-right-width: 1px;
  }
}

.diff-line-number {
  display: inline-block;
  color: var(--diff-line-number-color);
  width: var(--diff-line-number-column-width);
  padding: var(--diff-line-padding-y) var(--spacing-half);
  text-align: right;
}

.CodeMirror pre.diff-add {
  background: var(--diff-add-background-color);
  color: var(--diff-add-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-add-border-color);

    &:last-child {
      border-color: var(--diff-add-gutter-color);
    }
  }
}

.CodeMirror pre.diff-delete {
  background: var(--diff-delete-background-color);
  color: var(--diff-delete-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-delete-border-color);

    &:last-child {
      border-color: var(--diff-delete-gutter-color);
    }
  }
}

.CodeMirror pre.diff-context {
  background: var(--background-color);
  color: var(--diff-context-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-border-color);

    &:last-child {
      border-color: var(--diff-gutter-color);
    }
  }
}

// The cm- prefix means it's styling the line content.
.cm-diff-hunk {
  color: var(--diff-hunk-text-color);
}

.cm-diff-delete {
  color: var(--diff-delete-text-color);
}

.cm-diff-delete-inner {
  background: var(--diff-delete-inner-background-color);
}

.cm-diff-add {
  color: var(--diff-add-text-color);
}

.cm-diff-add-inner {
  background: var(--diff-add-inner-background-color);
}

.cm-diff-context {
  color: var(--diff-context-text-color);
}

.CodeMirror pre.diff-hunk {
  background: var(--diff-hunk-background-color);
  color: var(--diff-hunk-text-color);
  padding: 0;

  .diff-line-number {
    border-color: var(--diff-hunk-border-color);

    &:last-child {
{'fraction_non_alphanumeric': 0.17306892247954514, 'fraction_numerical': 0.005824434891138539, 'mean_word_length': 2.521484375, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6852974', 'n_tokens_mistral': 2716, 'n_tokens_neox': 2603, 'n_words': 513}