// ========================================================
// Border Classes
// ========================================================

@mixin border-extended-variant($position, $px, $border-color) {
  @if $position == 'all' {
    border: $px solid $border-color;
  } @else {
    border-#{$position}: $px solid $border-color;
  }
}

@mixin border-extended-color($name, $color) {
  .b-#{$name}-1 { @include border-extended-variant(all, 1px, $color); }
  .b-#{$name}-2 { @include border-extended-variant(all, 2px, $color); }
  .b-#{$name}-3 { @include border-extended-variant(all, 3px, $color); }
  .b-#{$name}-4 { @include border-extended-variant(all, 4px, $color); }
  .b-#{$name}-5 { @include border-extended-variant(all, 5px, $color); }

  .bt-#{$name}-1 { @include border-extended-variant(top, 1px, $color); }
  .bt-#{$name}-2 { @include border-extended-variant(top, 2px, $color); }
  .bt-#{$name}-3 { @include border-extended-variant(top, 3px, $color); }
  .bt-#{$name}-4 { @include border-extended-variant(top, 4px, $color); }
  .bt-#{$name}-5 { @include border-extended-variant(top, 5px, $color); }

  .bb-#{$name}-1 { @include border-extended-variant(bottom, 1px, $color); }
  .bb-#{$name}-2 { @include border-extended-variant(bottom, 2px, $color); }
  .bb-#{$name}-3 { @include border-extended-variant(bottom, 3px, $color); }
  .bb-#{$name}-4 { @include border-extended-variant(bottom, 4px, $color); }
  .bb-#{$name}-5 { @include border-extended-variant(bottom, 5px, $color); }

  .bl-#{$name}-1 { @include border-extended-variant(left, 1px, $color); }
  .bl-#{$name}-2 { @include border-extended-variant(left, 2px, $color); }
  .bl-#{$name}-3 { @include border-extended-variant(left, 3px, $color); }
  .bl-#{$name}-4 { @include border-extended-variant(left, 4px, $color); }
  .bl-#{$name}-5 { @include border-extended-variant(left, 5px, $color); }

  .br-#{$name}-1 { @include border-extended-variant(right, 1px, $color); }
  .br-#{$name}-2 { @include border-extended-variant(right, 2px, $color); }
  .br-#{$name}-3 { @include border-extended-variant(right, 3px, $color); }
  .br-#{$name}-4 { @include border-extended-variant(right, 4px, $color); }
  .br-#{$name}-5 { @include border-extended-variant(right, 5px, $color); }
}

@include border-extended-color('primary', map-get($theme-colors, primary));
@include border-extended-color('secondary', map-get($theme-colors, secondary));
@include border-extended-color('success', map-get($theme-colors, success));
@include border-extended-color('info', map-get($theme-colors, info));
@include border-extended-color('warning', map-get($theme-colors, warning));
@include border-extended-color('danger', map-get($theme-colors, danger));
@include border-extended-color('inverse', map-get($theme-colors, inverse));
@include border-extended-color('black', $black);
@include border-extended-color('gray-100', map-get($grays, 100));
@include border-extended-color('gray-200', map-get($grays, 200));
@include border-extended-color('gray-300', map-get($grays, 300));
@include border-extended-color('gray-400', map-get($grays, 400));
@include border-extended-color('gray-500', map-get($grays, 500));
@include border-extended-color('gray-600', map-get($grays, 600));
@include border-extended-color('gray-700', map-get($grays, 700));
@include border-extended-color('gray-800', map-get($grays, 800));
@include border-extended-color('gray-900', map-get($grays, 900));
@include border-extended-color('white', $white);
