//
// Panels
// --------------------------------------------------

@mixin panel-bordered-variant($color-border, $color-border-2) {
  > div:first-child {
    &:before {
      background-color: $color-border;
    }
  }

  .panel-title {
    color: $color-border;
  }

  &-border {
    border-top-color: $color-border;
  }

  & > .panel-body,
  & > .panel-collapse > .panel-body,
  & > loader > div > .panel-body {
    & + .panel-body {
      border-top: 1px solid $color-border-2;
    }
  }
}

@mixin panel-bordered-variant-warning() {
  @each $theme, $map in $themes {
    .#{$theme} & {
      $panel-border: map-get($map, panel-border-inner);

      @include panel-bordered-variant($brand-warning, $panel-border);
    }
  }
}
@mixin panel-bordered-variant-success() {
  @each $theme, $map in $themes {
    .#{$theme} & {
      $panel-border: map-get($map, panel-border-inner);

      @include panel-bordered-variant($brand-success, $panel-border);
    }
  }
}
@mixin panel-bordered-variant-info() {
  @each $theme, $map in $themes {
    .#{$theme} & {
      $panel-border: map-get($map, panel-border-inner);

      @include panel-bordered-variant($brand-info, $panel-border);
    }
  }
}
@mixin panel-bordered-variant-danger() {
  @each $theme, $map in $themes {
    .#{$theme} & {
      $panel-border: map-get($map, panel-border-inner);

      @include panel-bordered-variant($brand-danger, $panel-border);
    }
  }
}
@mixin panel-bordered-variant-muted() {
  @each $theme, $map in $themes {
    .#{$theme} & {
      $panel-border: map-get($map, panel-border-inner);

      @include panel-bordered-variant($color-text-default, $panel-border);
    }
  }
}

@mixin panel-size($margin) {
  padding: $margin $margin;

  .panel-body {
    padding-top: $margin;
  }

  & + .panel-body {
    margin-top: $margin;
  }

  .panel-heading + .panel-table,
  .panel-heading + loader > div > .panel-table,
  .panel-body + .panel-table {
    margin-top: $margin;
  }

  .panel-collapse {
    padding-top: $margin;
  }

  &.panel-bordered {
    padding-top: 0;

    > div:first-child,
    .panel-bordered-item {
      margin-left: -$margin;
      margin-right: -$margin;
      padding-top: $margin + $panel-bordered-border-height;
      padding-left: $margin;
      padding-right: $margin;
    }
  }
}
