/* https://github.com/aahan/pygments-github-style */

@mixin matchLine {
  color: $black-transparent;
  background-color: $match-line;
}

.code.white {
  // Line numbers
  .line-numbers,
  .diff-line-num {
    background-color: $background-color;
  }

  .diff-line-num,
  .diff-line-num a {
    color: $black-transparent;
  }

  // Code itself
  pre.code,
  .diff-line-num {
    border-color: $table-border-gray;
  }

  &,
  pre.code,
  .line_holder .line_content {
    background-color: #fff;
    color: #333;
  }

  // Diff line
  .line_holder {

    &.match .line_content {
      @include matchLine;
    }

    .diff-line-num {
      &.old {
        background-color: $line-number-old;
        border-color: $line-removed-dark;
      }

      &.new {
        background-color: $line-number-new;
        border-color: $line-added-dark;
      }

      &.hll:not(.empty-cell) {
        background-color: $line-number-select;
        border-color: $line-select-yellow-dark;
      }
    }

    .line_content {
      &.old {
        background-color: $line-removed;

        span.idiff {
          background-color: $line-removed-dark;
        }
      }

      &.new {
        background-color: $line-added;

        span.idiff {
          background-color: $line-added-dark;
        }
      }

      &.match {
        @include matchLine;
      }

      &.hll:not(.empty-cell) {
        background-color: $line-select-yellow;
      }
    }
  }

  // highlight line via anchor
  pre .hll {
    background-color: #f8eec7 !important;
  }

  // Search result highlight
  span.highlight_word {
    background-color: #fafe3d !important;
  }

  .hll { background-color: #f8f8f8; }
  .c { color: #998; font-style: italic; }
  .err { color: #a61717; background-color: #e3d2d2; }
  .k { font-weight: bold; }
  .o { font-weight: bold; }
  .cm { color: #998; font-style: italic; }
  .cp { color: #999; font-weight: bold; }
  .c1 { color: #998; font-style: italic; }
  .cs { color: #999; font-weight: bold; font-style: italic; }
  .gd { color: #000; background-color: #fdd; }
  .gd .x { color: #000; background-color: #faa; }
  .ge { font-style: italic; }
  .gr { color: #a00; }
  .gh { color: #999; }
  .gi { color: #000; background-color: #dfd; }
  .gi .x { color: #000; background-color: #afa; }
  .go { color: #888; }
  .gp { color: #555; }
  .gs { font-weight: bold; }
  .gu { color: #800080; font-weight: bold; }
  .gt { color: #a00; }
  .kc { font-weight: bold; }
  .kd { font-weight: bold; }
  .kn { font-weight: bold; }
  .kp { font-weight: bold; }
  .kr { font-weight: bold; }
  .kt { color: #458; font-weight: bold; }
  .m { color: #099; }
  .s { color: #d14; }
  .n { color: #333; }
  .na { color: teal; }
  .nb { color: #0086b3; }
  .nc { color: #458; font-weight: bold; }
  .no { color: teal; }
  .ni { color: purple; }
  .ne { color: #900; font-weight: bold; }
  .nf { color: #900; font-weight: bold; }
  .nn { color: #555; }
  .nt { color: navy; }
  .nv { color: teal; }
  .ow { font-weight: bold; }
  .w { color: #bbb; }
  .mf { color: #099; }
  .mh { color: #099; }
  .mi { color: #099; }
  .mo { color: #099; }
  .sb { color: #d14; }
  .sc { color: #d14; }
  .sd { color: #d14; }
  .s2 { color: #d14; }
  .se { color: #d14; }
  .sh { color: #d14; }
  .si { color: #d14; }
  .sx { color: #d14; }
  .sr { color: #009926; }
  .s1 { color: #d14; }
  .ss { color: #990073; }
  .bp { color: #999; }
  .vc { color: teal; }
  .vg { color: teal; }
  .vi { color: teal; }
  .il { color: #099; }
  .gc { color: #999; background-color: #eaf2f5; }
}
