/**
 * File: basic/_layout.scss
 * Type: SASS partial
 * Author: Chris Humboldt
 */

// Table of contents
// Box sizing
// Centering
// Fixes
// Floats
// Index
// Position
// Square
// Vertical align

// Box sizing
@mixin box-sizing($option: content-box) {
   -webkit-box-sizing: $option;
   -moz-box-sizing: $option;
   box-sizing: $option;
}
// Centering
@mixin center() {
   margin: 0 auto;
}
@mixin center-vertical() {
   // As per: Sebastian Ekström
   // URL: http://zerosixthree.se/vertical-align-anything-with-just-3-lines-of-css/
   position: relative;
   top: 50%;
   @include transform-translate-y(-50%);
}
// Fixes
@mixin clearfix() {
   *zoom: 1;
   &:before,
   &:after {
      content: " ";
      display: table;
   }
   &:after {
      clear: both;
   }
}
// Floats
@mixin float($float: left) {
   float: $float;
}
@mixin float-clear() {
   clear: both;
}
@mixin float-no() {
   @include float(none);
}
// Index
@mixin z-index($index: 1) {
   z-index: $index;
}
@mixin level($index: 1) {
   @include z-index($index);
}
// Position
@mixin position($position: relative, $arguments: false) {
   position: $position;
   @include position-set($arguments);
}
@mixin position-set($arguments: false) {
   @include position-arguments($arguments);
}
// Square
@mixin square($size) {
   width: $size;
   height: $size;
   line-height: $size;
   text-align: center;
}
// Vertical align
@mixin vertical-align($position) {
   vertical-align: $position;
}
