/**
 * Generic mixins
 */
 @mixin box-shadow($shadow) {
  -webkit-box-shadow: $shadow;
  -moz-box-shadow: $shadow;
  -ms-box-shadow: $shadow;
  -o-box-shadow: $shadow;
  box-shadow: $shadow;
}

@mixin border-radius($radius) {
  -webkit-border-radius: $radius;
  -moz-border-radius: $radius;
  -ms-border-radius: $radius;
  -o-border-radius: $radius;
  border-radius: $radius;
}

@mixin border-radius-left($radius) {
  @include border-radius($radius 0 0 $radius)
}

@mixin linear-gradient($from, $to) {
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from($from), to($to));
  background-image: -webkit-linear-gradient($from, $to);
  background-image: -moz-linear-gradient($from, $to);
  background-image: -ms-linear-gradient($from, $to);
  background-image: -o-linear-gradient($from, $to);
}

@mixin transition($transition) {
  -webkit-transition: $transition;
  -moz-transition: $transition;
  -ms-transition: $transition;
  -o-transition: $transition;
  transition: $transition;
}

/**
 * Prefilled mixins
 * Mixins with fixed values
 */

@mixin shade {
  @include box-shadow(0 0 3px #ddd);
}

@mixin solid-shade {
  @include box-shadow(0 0 0 3px #f1f1f1);
}

@mixin header-font {
  color: $style_color;
  font-size: 16px;
  line-height: 44px;
  font-weight: normal;
}

@mixin md-typography {
  font-size: 15px;
  line-height: 1.5;

  img {
    max-width: 100%;
  }

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

  code {
    font-family: $monospace_font;
    white-space: pre;
    word-wrap: normal;
    padding: 0;
  }

  h1 {
    margin-top: 45px;
    font-size: 2.5em;
  }

  h2 {
    margin-top: 40px;
    font-size: 2em;
  }

  h3 {
    margin-top: 35px;
    font-size: 1.5em;
  }

  h4 {
    margin-top: 30px;
    font-size: 1.2em;
  }

  blockquote p {
    color: #888;
    font-size: 15px;
    line-height: 1.5;
  }

  table {
    @extend .table;
    @extend .table-bordered;
    th {
      background: #EEE;
    }
  }

  p > code {
    font-size: inherit;
    font-weight: inherit;
    color: #555;
  }

  li {
    line-height: 1.5;
  }
}

@mixin page-title {
  color: #333;
  line-height: 1.5;
  font-weight: normal;
  margin-top: 0px;
  margin-bottom: 10px;
}

@mixin str-truncated($max_width: 82%) {
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: $max_width;
}

@mixin panel-colored {
  border: none;
  background: $box_bg;
  @include box-shadow(0 1px 1px rgba(0, 0, 0, 0.09));

  .panel-heading {
    font-weight: bold;
    background-color: $box_bg;
  }
}
