.tab-bar {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;

  &__tab {
    @include Paragraph;

    color: var(--color-text-default);
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    min-width: 0;
    flex: 0 0 auto;
    box-sizing: border-box;
    opacity: 0.5;
    transition: opacity 200ms ease-in-out;
    background-color: unset;
    text-align: start;

    @include screen-sm-min {
      &:hover {
        opacity: 0.4;
      }

      &:active {
        opacity: 0.6;
      }
    }

    @include screen-sm-max {
      @include H4;

      border-bottom: 1px solid var(--color-border-muted);
      opacity: 1;
    }

    &__content {
      padding: 12px 18px;
      display: flex;
      align-items: center;
      position: relative;

      &__title {
        @include H4;

        @include screen-sm-min {
          @include H6;
        }
      }

      &__description {
        display: none;

        @include screen-sm-max {
          @include H6;

          display: block;
          font-weight: 300;
          margin-top: 8px;
          min-height: 14px;
        }
      }

      &__icon {
        display: flex;
        justify-content: center;
        margin-inline-end: 16px;
        flex: 0 0 18px;
        color: var(--color-icon-alternative);

        @include screen-sm-min {
          flex: 0 0 14px;
        }
      }
    }

    &__caret {
      display: none;

      @include screen-sm-max {
        display: block;
        margin-inline-start: auto;
        margin-inline-end: 8px;

        [dir='rtl'] & {
          transform: rotate(180deg);
        }
      }
    }

    &--active {
      opacity: 1 !important;
    }
  }

  &__grow-tab {
    flex-grow: 1;
  }
}