@material_dark: rgba(0, 0, 0, 0.54);
@material_gray: rgba(0, 0, 0, 0.2);
@background_color: rgba(249, 249, 249, 1);
@background_color_gray: rgba(243, 243, 243, 1);
@blue_shrine: rgba(22, 240, 240, 1);
@gray_shrine: rgba(112, 112, 112, 1);
@dark_shrine: rgba(10, 49, 66, 1);
@header_height: 64px;
@tabs_height: 49px;
@hero_height: 250px;
@items_container_diff: 0;
@margin_tile: 16px;

@keyUmbraOpacity: 0.2;
@keyPenumbraOpacity: 0.14;
@ambientShadowOpacity: 0.12;

@tile_box_shadow: 0 2px 4px -1px rgba(0, 0, 0, @keyUmbraOpacity),
              0 4px 5px 0 rgba(0, 0, 0, @keyPenumbraOpacity),
              0 1px 10px 0 rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-2dp: 0 3px 1px -2px rgba(0, 0, 0, @keyUmbraOpacity),
              0 2px 2px 0 rgba(0, 0, 0, @keyPenumbraOpacity),
              0 1px 5px 0 rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-3dp: 0 3px 3px -2px rgba(0, 0, 0, @keyUmbraOpacity),
              0 3px 4px 0 rgba(0, 0, 0, @keyPenumbraOpacity),
              0 1px 8px 0 rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-4dp: 0 2px 4px -1px rgba(0, 0, 0, @keyUmbraOpacity),
              0 4px 5px 0 rgba(0, 0, 0, @keyPenumbraOpacity),
              0 1px 10px 0 rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-6dp: 0 3px 5px -1px rgba(0, 0, 0, @keyUmbraOpacity),
              0 6px 10px 0 rgba(0, 0, 0, @keyPenumbraOpacity),
              0 1px 18px 0 rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-8dp: 0 5px 5px -3px rgba(0, 0, 0, @keyUmbraOpacity),
              0 8px 10px 1px rgba(0, 0, 0, @keyPenumbraOpacity),
              0 3px 14px 2px rgba(0, 0, 0, @ambientShadowOpacity);

@shadow-16dp: 0  8px 10px -5px rgba(0, 0, 0, @keyUmbraOpacity),
              0 16px 24px 2px rgba(0, 0, 0, @keyPenumbraOpacity),
              0  6px 30px 5px rgba(0, 0, 0, @ambientShadowOpacity);


.text-shadow (@string: 0 1px 3px rgba(0, 0, 0, 0.25)) {
  text-shadow: @string;
}
.box-shadow (@string) {
  -webkit-box-shadow: @string;
  -moz-box-shadow:    @string;
  box-shadow:         @string;
}
.drop-shadow (@x: 0, @y: 1px, @blur: 2px, @spread: 0, @alpha: 0.25) {
  -webkit-box-shadow: @x @y @blur @spread rgba(0, 0, 0, @alpha);
  -moz-box-shadow:  @x @y @blur @spread rgba(0, 0, 0, @alpha);
  box-shadow:   @x @y @blur @spread rgba(0, 0, 0, @alpha);
}
.inner-shadow (@x: 0, @y: 1px, @blur: 2px, @spread: 0, @alpha: 0.25) {
  -webkit-box-shadow: inset @x @y @blur @spread rgba(0, 0, 0, @alpha);
  -moz-box-shadow:    inset @x @y @blur @spread rgba(0, 0, 0, @alpha);
  box-shadow:         inset @x @y @blur @spread rgba(0, 0, 0, @alpha);
}

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

.border-radius (@radius: 5px) {
  -webkit-border-radius: @radius;
  -moz-border-radius:    @radius;
  border-radius:         @radius;

  -moz-background-clip:    padding;
  -webkit-background-clip: padding-box;
  background-clip:         padding-box;
}
.border-radiuses (@topright: 0, @bottomright: 0, @bottomleft: 0, @topleft: 0) {
  -webkit-border-top-right-radius:    @topright;
  -webkit-border-bottom-right-radius: @bottomright;
  -webkit-border-bottom-left-radius:  @bottomleft;
  -webkit-border-top-left-radius:     @topleft;

  -moz-border-radius-topright:        @topright;
  -moz-border-radius-bottomright:     @bottomright;
  -moz-border-radius-bottomleft:      @bottomleft;
  -moz-border-radius-topleft:         @topleft;

  border-top-right-radius:            @topright;
  border-bottom-right-radius:         @bottomright;
  border-bottom-left-radius:          @bottomleft;
  border-top-left-radius:             @topleft;

  -moz-background-clip:    padding;
  -webkit-background-clip: padding-box;
  background-clip:         padding-box;
}

.opacity (@opacity: 0.5) {
  -webkit-opacity:  @opacity;
  -moz-opacity:     @opacity;
  opacity:    @opacity;
}

.gradient (@startColor: #eee, @endColor: white) {
  background-color: @startColor;
  background: -webkit-gradient(linear, left top, left bottom, from(@startColor), to(@endColor));
  background: -webkit-linear-gradient(top, @startColor, @endColor);
  background: -moz-linear-gradient(top, @startColor, @endColor);
  background: -ms-linear-gradient(top, @startColor, @endColor);
  background: -o-linear-gradient(top, @startColor, @endColor);
}
.horizontal-gradient (@startColor: #eee, @endColor: white) {
  background-color: @startColor;
  background-image: -webkit-gradient(linear, left top, right top, from(@startColor), to(@endColor));
  background-image: -webkit-linear-gradient(left, @startColor, @endColor);
  background-image: -moz-linear-gradient(left, @startColor, @endColor);
  background-image: -ms-linear-gradient(left, @startColor, @endColor);
  background-image: -o-linear-gradient(left, @startColor, @endColor);
}

.animation (@name, @duration: 300ms, @delay: 0, @ease: ease) {
  -webkit-animation: @name @duration @delay @ease;
  -moz-animation:    @name @duration @delay @ease;
  -ms-animation:     @name @duration @delay @ease;
}

.transition ( @property, @duration, @delay: 0, @style: ease-in-out ) {
  -webkit-transition-property: @property;
  -webkit-transition-duration: @duration;
  -webkit-transition-timing-function: @style;
  -webkit-transition-delay:   @delay;

  -moz-transition-property: @property;
  -moz-transition-duration: @duration;
  -moz-transition-timing-function: @style;
  -moz-transition-delay:   @delay;

  -ms-transition-property: @property;
  -ms-transition-duration: @duration;
  -ms-transition-timing-function: @style;
  -ms-transition-delay:   @delay;

  -o-transition-property: @property;
  -o-transition-duration: @duration;
  -o-transition-timing-function: @style;
  -o-transition-delay:   @delay;

  transition-property: @property;
  transition-duration: @duration;
  transition-timing-function: @style;
  transition-delay:   @delay;
}

.transform(@string){
  -webkit-transform: @string;
  -moz-transform:    @string;
  -ms-transform:     @string;
  -o-transform:      @string;
}
.scale (@factor) {
  -webkit-transform: scale(@factor);
  -moz-transform:    scale(@factor);
  -ms-transform:     scale(@factor);
  -o-transform:      scale(@factor);
}
.rotate (@deg) {
  -webkit-transform: rotate(@deg);
  -moz-transform:    rotate(@deg);
  -ms-transform:     rotate(@deg);
  -o-transform:      rotate(@deg);
}
.skew (@deg, @deg2) {
  -webkit-transform:       skew(@deg, @deg2);
  -moz-transform:    skew(@deg, @deg2);
  -ms-transform:     skew(@deg, @deg2);
  -o-transform:      skew(@deg, @deg2);
}
.translate (@x, @y:0) {
  -webkit-transform:       translate(@x, @y);
  -moz-transform:    translate(@x, @y);
  -ms-transform:     translate(@x, @y);
  -o-transform:      translate(@x, @y);
}
.translate3d (@x, @y: 0, @z: 0) {
  -webkit-transform:       translate3d(@x, @y, @z);
  -moz-transform:    translate3d(@x, @y, @z);
  -ms-transform:     translate3d(@x, @y, @z);
  -o-transform:      translate3d(@x, @y, @z);
}
.perspective (@value: 1000) {
  -webkit-perspective:  @value;
  -moz-perspective:   @value;
  -ms-perspective:  @value;
  perspective:    @value;
}
.transform-origin (@x:center, @y:center) {
  -webkit-transform-origin: @x @y;
  -moz-transform-origin:    @x @y;
  -ms-transform-origin:     @x @y;
  -o-transform-origin:      @x @y;
}

