.tabs {
  width: 100%;
  background-color: $white;
}

.tabs--full-height {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.tabs__header {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  padding: 0 15px;
  margin: 0;
  gap: 24px;
  border-bottom: solid 1px $palette-neutral-200;

  .tabs--no-separation & {
    border-bottom: unset;
    padding: 0;
  }

  .tabs--large & {
    padding: 0 0 0 40px;
  }

  &.tabs__header--full-width {
    gap: 0;
    padding: 0;
  }
}

.tabs__item {
  position: relative;

  &.tabs__item--disabled {
    user-select: none;
    color: $color-neutral-900;
    opacity: 0.6;
    text-decoration: none;

    a {
      cursor: not-allowed;
    }
  }

  &.tabs__item--active::after {
    content: '';
    height: 2px;
    background-color: $palette-blue-500;

    @include absolute(auto, 0, -1px, 0);
  }

  &.tabs__item--full-width {
    width: 100%;
    text-align: center;
  }
}

.tabs__link {
  color: $palette-neutral-900;
  display: block;
  padding: 12px 0;
  font-weight: 500;

  .tabs--large & {
    font-size: 14px;
    padding: 18px 0;
  }

  .tabs__item--active & {
    color: $palette-neutral-1200;
  }

  &:hover {
    text-decoration: none;
    color: $palette-neutral-1200;

    .tabs__item--active & {
      color: $palette-blue-500;
    }
  }
}

.tab {
  padding: 14px 15px;
  position: relative;

  .tabs--full-height & {
    overflow: auto;
    height: 100%;
  }

  .tabs--no-separation & {
    padding-left: 0;
    padding-right: 0;
  }
}
