body {
  margin-bottom:20px;
}

pre {
  font-family:'Menlo', 'Liberation Mono', 'Consolas', 'Courier New', 'andale mono','lucida console',monospace;

  &.dark {
    background: #333;
    color:#f5f5f5;
  }
}

a {
  outline: none;
  color: $link_color;
  &:hover {
    text-decoration:none;
    color: $blue_link;
  }

  &.btn {
    color: $style_color;
  }

  &.dark {
    color: $style_color;
  }

  &.lined {
    text-decoration:underline;
    &:hover { text-decoration:underline; }
  }

  &.gray {
    color:gray;
  }

  &.supp_diff_link {
    text-align:center;
    padding:20px 0;
    background:#f1f1f1;
    width:100%;
    float:left;
  }

  &.neib  {
    margin-right:15px;
  }
}

.neib {
  margin-right:10px;
}

.alert-message {
  @extend .alert;

  &.success {
    @extend .alert-success;
  }

  &.error {
    @extend .alert-error;
  }
}

.alert {
  &.alert-well {
    background:#ddd;
    border:1px solid #ccc;
    background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #ddd), to(#dfdfdf));
    background-image: -webkit-linear-gradient(#ddd 6.6%, #dfdfdf);
    background-image: -moz-linear-gradient(#ddd 6.6%, #dfdfdf);
    background-image: -o-linear-gradient(#ddd 6.6%, #dfdfdf);
    color:#111;
  }
}

h3, h4, h5, h6 {
  line-height: 36px;
}

h5 {
  font-size:14px;
}


table {
  width:100%;
  th {
    padding-top: 9px;
    font-weight: bold;
    vertical-align: middle;
  }
  th, td {
    padding: 10px 10px 9px;
    line-height: 18px;
    text-align: left;
  }

  &.bordered-table {
    border: 1px solid #DDD;
    border-collapse: separate;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
  }

  &.zebra-striped {
    @extend .table-striped;
  }
}

.btn {
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f1f1f1), color-stop(25%, #f1f1f1), to(#e6e6e6));
  background-image: -webkit-linear-gradient(#f1f1f1, #f1f1f1 25%, #e6e6e6);
  background-image: -moz-linear-gradient(top, #f1f1f1, #f1f1f1 25%, #e6e6e6);
  background-image: -ms-linear-gradient(#f1f1f1, #f1f1f1 25%, #e6e6e6);
  background-image: -o-linear-gradient(#f1f1f1, #f1f1f1 25%, #e6e6e6);
  background-image: linear-gradient(#f1f1f1, #f1f1f1 25%, #e6e6e6);

  &:hover {
  }

  &.btn-primary {
    background:$link_color;
    border-color: #2A79A3;
    &:hover {
      background:$blue_link;
    }
  }
  &.primary {
    @extend .btn-primary;
  }

  &.success {
    color: #fff;
    text-shadow: 0 0 1px #111;
    background: #5bb75b;;
    font-weight: bold;

    &:hover {
      background-color: #51a351;
      color: #fff;
    }
  }

  &.danger,
  &.btn-danger {
    color:#fff;
    background: #DA4E49;
    border-color: #BD362F;

    &:hover {
      color:#fff;
      background: #EE4E49;
    }
  }

  &.danger {
    @extend .btn-danger;
  }

  &.small {
    @extend .btn-small;
  }

  &.active {
    border-color:#aaa;
    background-color:#ccc;
  }
}

a:focus {
  outline: none;
}

.nav-pills a:hover {
  background-color:#888;
}

.nav-pills .active a {
  background-color: $style_color;
}

.label {
  background-color: #474D57;
  &.label-important {
    background-color: #B94A48;
  }

  &.label-issue {
    background-color: #eee;
    border: 1px solid #ccc;
    padding:4px 6px;
    color:#444;
    text-shadow:0 0 1px #fff;

    &.grouped {
      float: left;
      margin-right: 6px;
      padding: 6px;
    }
  }
}

.nav-tabs > li > a, .nav-pills > li > a {
  color:$style_color;
}

.nav-tabs > .active > a {
  font-weight:bold;
}

/** COLORS **/
.cgray { color:gray; }
.cred { color:#D12F19; }
.cgreen { color:#44aa22; }
.cblack { color:#111; }
.cdark { color:#444 }
.cwhite { color:#fff !important }
.bgred { background: #F2DEDE !important}

/** COMMON STYLES **/
.left {
  float:left;
}
.right {
  float:right !important;
}
.width-50p{
  width:50%;
}
.width-49p{
  width:49%;
}
.width-30p{
  width:30%;
}
.width-65p{
  width:65%;
}
.width-100p{
  width:100%;
}
.append-bottom-10 {
  margin-bottom:10px;
}
.append-bottom-20 {
  margin-bottom:20px;
}
.prepend-top-10 {
  margin-top:10px;
}

.prepend-top-20 {
  margin-top:20px;
}

.padded {
  padding:20px;
}

.ipadded {
  padding:20px !important;
}
.lborder {
  border-left:1px solid #eee;
}

.borders {
  border: 1px solid #ccc;
  @include shade;
}
.no-borders {
  border:none;
}
table.no-borders {
  border:none;
  tr, td { border:none }
}
.no-padding {
  padding:0 !important;
}
.underlined {
  border-bottom: 1px solid $border_color;
}
.vlink {
  color: $link_color !important;
}

.pretty_label {
  @include round-borders-all(4px);
  padding:2px 4px;
  background-image: -webkit-gradient(linear, 0 0, 0 26, color-stop(0.076, #fefefe), to(#F6F7F8));
  background-image: -webkit-linear-gradient(#fefefe 7.6%, #F6F7F8);
  background-image: -moz-linear-gradient(#fefefe 7.6%, #F6F7F8);
  background-image: -o-linear-gradient(#fefefe 7.6%, #F6F7F8);
  color: #777;
  border: 1px solid #DEDFE1;

  &.branch {
    border:none;
    font-size:13px;
    background: #474D57;
    color:#fff;
    font-weight:bold;
    font-family: monospace;
  }
}

.event_label {
  @extend .label;
  background-color: #999;

  &.pushed {
    background-color: #3A87AD;
  }

  &.opened {
    background-color: #468847;
  }

  &.closed {
    background-color: #B94A48;
  }

  &.merged {
    background-color: #2A2;
  }
}

img.avatar {
  float:left;
  margin-right:15px;
  width:40px;
  border:1px solid #ddd;
  padding:1px;

  &.s16 {
    width:16px;
    height:16px;
  }
  &.s24 {
    width:24px;
    height:24px;
  }
  &.s32 {
    width:32px;
    height:32px;
  }
}

img.lil_av {
  padding-left: 4px;
  padding-right:3px;
}

form {
  @extend .form-horizontal;

  .actions {
    @extend .form-actions;
  }

  .clearfix {
    @extend .control-group;
  }

  .input {
    @extend .controls;
  }

  label {
    @extend .control-label;
  }
  .xlarge {
    @extend .input-xlarge;
  }
  .xxlarge {
    @extend .input-xxlarge;
  }
}

/**
 * List li block element #1
 *
 */
.wll {
  background-color: #FFF;
  padding: 10px 5px;
  min-height: 20px;
  border-bottom: 1px solid #eee;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  &.smoke {
    background-color:#f5f5f5;
  }
  &:hover {
    background:$hover;
  }
  &:last-child { border:none }
  p { padding-top:5px; margin:0; color:$style_color;}
  .author { color: #999; }
  p {
    color:#222;
    margin-bottom: 0;
    img {
      position:relative;
      top:3px;
    }
  }
}


/**
 * Block element #2
 *
 */
.entry {
  position: relative;
  padding: 7px 15px;
  margin-bottom: 18px;
  color: #404040;
  filter:none;

  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);

  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;

  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);

  background:#F1F1F1;
  border: 1px solid #ccc;


  p {
    color:$style_color;
    margin-bottom: 0;
    img {
      position:relative;
      top:3px;
    }
  }
}


/**
 * Big UI Block for show page content
 *
 */
.ui-box {
  background:#F9F9F9;
  margin-bottom: 25px;
  @include round-borders-all(4px);
  border-color: #CCC;
  @include solid_shade;

  ul {
    margin:0;
  }

  h5, .title {
    padding: 0 10px;
    @include round-borders-top(4px);
    border-bottom: 1px solid #bbb;
    background:#eee;
    background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #eee), to(#dfdfdf));
    background-image: -webkit-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -moz-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -o-linear-gradient(#eee 6.6%, #dfdfdf);

    &.small {
      line-height: 28px;
      font-size: 14px;
      line-height:28px;
      text-shadow: 0 1px 1px white;
    }

    form {
      padding:9px 0;
      margin:0px;
    }

    .nav-pills {
      li {
        padding:3px 0;
        &.active a { background-color:$style_color; }
        a {
          border-radius:7px;
        }
      }
    }
  }

  .bottom {
    background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #eee), to(#dfdfdf));
    background-image: -webkit-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -moz-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -o-linear-gradient(#eee 6.6%, #dfdfdf);
    @include round-borders-bottom(4px);
    border-bottom:none;
    border-top: 1px solid #bbb;
  }

  &.padded {
    h5, .title {
      margin: -20px;
      margin-bottom: 0;
      padding: 5px 20px;
    }
    .middle_title {
      background:#f5f5f5;
      margin:20px -20px;
      padding: 0 20px;
      border-top:1px solid #eee;
      border-bottom:1px solid #eee;
      font-size:14px;
      color:#777;
    }
  }
  .row_title {
    font-weight:bold;
    color:#444;
    &:hover {
      color:#444;
      text-decoration:underline;
    }
  }

  li, .wll {
    padding:10px;
    &:first-child {
      @include round-borders-top(4px);
      border-top:none;
    }

    &:last-child {
      @include round-borders-bottom(4px);
      border:none;
    }
  }

}

table.admin-table {
  @extend .table-bordered;
  @extend .zebra-striped;
  @include solid_shade;
  th {
    border-color: #CCC;
    border-bottom: 1px solid #bbb;
    background:#eee;
    background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #eee), to(#dfdfdf));
    background-image: -webkit-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -moz-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -o-linear-gradient(#eee 6.6%, #dfdfdf);
  }
}

.field_with_errors {
  display:inline;
}

ul.breadcrumb {
  background:white;
  border:none;
  li {
    display: inline;
    text-shadow: 0 1px 0 white
  }

  a {
    color:#474D57;
    font-weight:bold;
    font-size:14px;
  }

  .arrow {
    background: url("images.png") no-repeat -85px -77px;
    width: 19px;
    height: 16px;
    float: left;
    position: relative;
    left: -10px;
    padding:0;
    margin:0;
  }
}

.nothing_here_message {
  text-align:center;
  padding:20px;
  color:#777;
}

/**
 *  UI box element
 *  contains top, middle, bottom blocks
 *
 */
.main_box {
  @extend .borders;
  @extend .prepend-top-20;
  @extend .append-bottom-20;
  border-width:1px;
  @include solid_shade;


  img { max-width: 100%; }

  pre {
    code {
      background: none !important;
    }
  }

  .top_box_content,
  .middle_box_content,
  .bottom_box_content {
    padding:15px;

    pre {
      background: none !important;
      margin:0;
      border:none;
      padding:0;
    }
  }

  .middle_box_content {
    border-radius:0;
    border:none;
    font-size:12px;
    background-color:#f5f5f5;
    border:none;
    border-top:1px solid #eee;
  }

  .bottom_box_content {
    border-top:1px solid #eee;
  }
}

input[type=text] {
  &.large_text {
    padding:6px;
    font-size:16px;
  }
}

p {
  &.slead {
    color:#456;
    font-size:16px;
    margin-bottom: 12px;
    font-weight: 200;
    line-height: 24px;
  }
}

h3.page_title {
  color:#456;
  font-size:20px;
  font-weight: normal;
  line-height: 28px;
}

/**
 * File content holder
 *
 */
.file_holder {
  border:1px solid #CCC;
  margin-bottom:1em;
  @include solid_shade;

  .file_title {
    border-bottom: 1px solid #bbb;
    background:#eee;
    background-image: -webkit-gradient(linear, 0 0, 0 30, color-stop(0.066, #eee), to(#dfdfdf));
    background-image: -webkit-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -moz-linear-gradient(#eee 6.6%, #dfdfdf);
    background-image: -o-linear-gradient(#eee 6.6%, #dfdfdf);
    margin: 0;
    font-weight: normal;
    font-weight: bold;
    text-align: left;
    color: #666;
    padding: 9px 10px;
    height:18px;

    .options {
      float:right;
      margin-top: -5px;
    }

    .file_name {
      color:$style_color;
      font-size:14px;
      text-shadow: 0 1px 1px #fff;
      small {
        color:#999;
        font-size:13px;
      }
    }
  }
  .file_content {
    background:#fff;
    font-size: 11px;

    &.wiki {
      font-size: 13px;
      code {
        padding:0 4px;
      }
      padding:20px;
      h1, h2 {
        line-height: 46px;
      }
      h3, h4 {
        line-height: 40px;
      }
    }

    &.image_file {
      background:#eee;
      text-align:center;
      img {
        padding:100px;
        max-width:300px;
      }
    }

    &.blob_file {

    }

    /**
     *  Blame file
     */
    &.blame {
      tr {
        border-bottom: 1px solid #eee;
      }
      td {
        padding:5px;
      }
      .author,
      .blame_commit {
        background:#f5f5f5;
        vertical-align:top;
      }
      .lines {
        pre {
          padding:0;
          margin:0;
          background:none;
          border:none;
        }
      }
    }

    &.logs {
      background:#eee;
      max-height: 700px;
      overflow-y: auto;

      ol {
        margin-left:40px;
        padding: 10px 0;
        border-left: 1px solid #CCC;
        margin-bottom:0;
        background: white;
        li {
          color:#888;
          p {
            margin:0;
            color:#333;
            line-height:24px;
            padding-left: 10px;
          }

          &:hover {
            background:$hover;
          }
        }
      }
    }

    /**
     *  Code file
     */
    &.code {
      padding:0;
      td.code {
        width: 100%;
        .highlight {
          margin-left: 55px;
          overflow:auto;
          overflow-y:hidden;
        }
      }
      .highlight pre {
        white-space: pre;
        word-wrap:normal;
      }

      table.highlighttable {
        border: none;
      }
      body.project-page table.highlighttable td { border: none }
      table.highlighttable tr:hover { background:none;}

      table.highlighttable pre{
        line-height:16px !important;
        font-size:12px !important;
      }

      table.highlighttable .linenodiv pre {
        text-align: right;
        padding-right: 4px;
        color:#666;
      }
    }
  }
}
