@mixin animation($animation) {
  -webkit-animation: $animation;
  -moz-animation:    $animation;
  -o-animation:      $animation;
  animation:         $animation;
  -webkit-animation-fill-mode: forwards;
  -moz-animation-fill-mode: forwards;
  -o-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@mixin animation-delay($animation_delay) {
  -webkit-animation-delay: $animation_delay;
  -moz-animation-delay:    $animation_delay;
  -o-animation-delay:      $animation_delay;
  animation-delay:         $animation_delay;
}

@mixin animation-duration($animation_duration) {
  -webkit-animation-duration: $animation_duration;
  -moz-animation-duration:    $animation_duration;
  -o-animation-duration:      $animation_duration;
  animation-duration:         $animation_duration;
}

@mixin border-radius($radius: 5px) {
  -moz-border-radius:    $radius;
  -webkit-border-radius: $radius;
  border-radius:         $radius;
}

@mixin box-shadow($x: 1px, $y: 1px, $blur: 2px, $color: rgba(0,0,0,.4), $inset: "") {
  @if ($inset != "") {
    -webkit-box-shadow: $inset $x $y $blur $color;
    -moz-box-shadow:    $inset $x $y $blur $color;
    box-shadow:         $inset $x $y $blur $color;
  } @else {
    -webkit-box-shadow: $x $y $blur $color;
    -moz-box-shadow:    $x $y $blur $color;
    box-shadow:         $x $y $blur $color;
  }
}

@mixin box-sizing($type: border-box) {
    -webkit-box-sizing:   $type;
    -moz-box-sizing:      $type;
    box-sizing:           $type;
}

@mixin clearfix {
  &:before,
  &:after {
    content: " ";
    display: table;
  }
  &:after {
    clear: both;
  }
}

@mixin keyframes($name) {
  @-webkit-keyframes #{$name} {
    @content; 
  }
  @-moz-keyframes #{$name} {
    @content;
  }
  @-ms-keyframes #{$name} {
    @content;
  }
  @keyframes #{$name} {
    @content;
  } 
}

@mixin opacity($opacity: 0.5) {
  filter:         alpha(opacity=($opacity * 100));
  -ms-filter:     "progid:DXImageTransform.Microsoft.Alpha(Opacity=" + ($opacity * 100) + ")";
  -moz-opacity:   $opacity;
  -khtml-opacity: $opacity;
  opacity:        $opacity;
}

@mixin transform($params) {
  -webkit-transform: $params;
  -moz-transform:    $params;
  transform:         $params;
}
@mixin transform-origin($params) {
  -webkit-transform-origin: $params;
  -moz-transform-origin:    $params;
  transform-origin:         $params;
}

@mixin transition($params) {
  -moz-transition:    $params;
  -o-transition:      $params;
  -webkit-transition: $params;
  -ms-transition:     $params;
  transition:         $params;
}
@mixin transition-list($values...){
  -moz-transition:    $values;
  -o-transition:      $values;
  -webkit-transition: $values;
  -ms-transition:     $values;
  transition:         $values;
}
