.breadcrumb {
  // scss-docs-start breadcrumb-css-vars
  --#{$prefix}breadcrumb-padding-x: #{$breadcrumb-padding-x};
  --#{$prefix}breadcrumb-padding-y: #{$breadcrumb-padding-y};
  --#{$prefix}breadcrumb-margin-bottom: #{$breadcrumb-margin-bottom};
  @include rfs($breadcrumb-font-size, --#{$prefix}breadcrumb-font-size);
  --#{$prefix}breadcrumb-bg: #{$breadcrumb-bg};
  --#{$prefix}breadcrumb-border-radius: #{$breadcrumb-border-radius};
  --#{$prefix}breadcrumb-divider-color: #{$breadcrumb-divider-color};
  --#{$prefix}breadcrumb-item-padding-x: #{$breadcrumb-item-padding-x};
  --#{$prefix}breadcrumb-item-active-color: #{$breadcrumb-active-color};
  // scss-docs-end breadcrumb-css-vars

  display: flex;
  flex-wrap: wrap;
  padding: var(--#{$prefix}breadcrumb-padding-y) var(--#{$prefix}breadcrumb-padding-x);
  margin-bottom: var(--#{$prefix}breadcrumb-margin-bottom);
  @include font-size(var(--#{$prefix}breadcrumb-font-size));
  list-style: none;
  background-color: var(--#{$prefix}breadcrumb-bg);
  @include border-radius(var(--#{$prefix}breadcrumb-border-radius));
}

.breadcrumb-item {
  // The separator between breadcrumbs (by default, a forward-slash: "/")
  + .breadcrumb-item {
    padding-left: var(--#{$prefix}breadcrumb-item-padding-x);

    &::before {
      float: left; // Suppress inline spacings and underlining of the separator
      padding-right: var(--#{$prefix}breadcrumb-item-padding-x);
      color: var(--#{$prefix}breadcrumb-divider-color);
      content: var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider)) #{'/* rtl:'}
        var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider-flipped)) #{'*/'};
    }
  }

  &.active {
    color: var(--#{$prefix}breadcrumb-item-active-color);
  }
}

.breadcrumb-container {
  --bs-breadcrumb-font-size: 1rem;
  .breadcrumb {
    padding: $breadcrumb-padding 0;
    border-radius: $breadcrumb-border-radius;
    .breadcrumb-item {
      padding-left: 0;
      & + .breadcrumb-item:before {
        display: none;
      }
      i {
        padding-right: $breadcrumb-link-x-padding;
      }
      a {
        color: $breadcrumb-link-color;
        font-weight: $breadcrumb-link-font-weight;
      }
      &.active {
        a {
          font-weight: 400;
          pointer-events: none;
        }
      }
      span.separator {
        color: $secondary;
        display: inline-block;
        font-weight: $breadcrumb-link-font-weight;
        padding: 0 $breadcrumb-link-x-padding;
      }
    }
    // dark version
    &.dark {
      background: $breadcrumb-bg-dark;
      color: $breadcrumb-link-color-dark;
      .breadcrumb-item {
        a {
          color: $breadcrumb-link-color-dark;
        }
        span.separator {
          color: $breadcrumb-link-color-dark;
        }
        i {
          color: $breadcrumb-icon-color-dark;
        }
        &.active {
          color: $breadcrumb-link-color-dark;
        }
      }
    }
  }
}
