@import '../../../mixins/focus-state';
@import '../../../mixins/box-sizing';

:host {
  @include tds-box-sizing;

  display: flex;
  background-color: var(--tds-inline-tabs-background);
  position: relative;

  &::after {
    content: ' ';
    display: block;
    border-bottom: 1px solid var(--tds-inline-tabs-horizontal-divider-background);
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
  }

  .wrapper {
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    width: 100%;
    overflow-x: scroll;
    scrollbar-width: none;
    gap: 16px; // Adds a consistent gap between the tab items

    &::-webkit-scrollbar {
      display: none;
    }
  }

  .scroll-right-button {
    right: 0;
    z-index: 1;
  }

  .scroll-left-button {
    left: 0;
    z-index: 1;
  }

  .scroll-right-button,
  .scroll-left-button {
    color: var(--tds-folder-tabs-scroll-btn-color);
    cursor: pointer;
    border: 0;
    width: 0;
    background-color: var(--tds-inline-tabs-scroll-btn-background);
    display: none;
    justify-content: center;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    position: sticky;

    &.show {
      min-width: 48px;
      display: block;
      opacity: 1;
      pointer-events: all;
    }

    &:hover {
      background-color: var(--tds-folder-tabs-scroll-btn-background-hover);
    }

    &:active {
      background-color: var(--tds-folder-tabs-scroll-btn-background-active);
    }

    &:focus {
      @include tds-focus-state;
    }

    svg {
      fill: var(--tds-folder-tabs-scroll-btn-color);
    }
  }
}
