/**
 * Note: scale lives in _utility-values.scss 
 */

/* Map
   ========================================================================== */

$z-index-values: (
  0:  $z-index--0,
  1:  $z-index--1,
  2:  $z-index--2,
  3:  $z-index--3,
  4:  $z-index--4,
  5:  $z-index--5,
  6:  $z-index--6,
  7:  $z-index--7,
  8:  $z-index--8,
  9:  $z-index--9,
  10: $z-index--10
);


/* Mixin
   ========================================================================== */

/**
 * Example usage:
 * `@include z-index(2);`
 * `@include z-index(600, !important);`
 */

/**
 * Note: `z-index` values for individual projects should be handled in a
 * separate partial, where elements/components are assigned a specific mixin 
 */

@mixin z-index($value, $important: null) {
  z-index: map-get($z-index-values, $value) $important;
}


/* Utility classes
   ========================================================================== */

@if $u-classes-z-index == true {

  @each $z-index, $z-index-value in $z-index-values {
  
    .u-z-index--#{$z-index-value} {
      z-index: $z-index-value !important;
    }
  
  }

}