.navds-tabs__tablist-wrapper {
  box-shadow: inset 0 -1px var(--ax-border-neutral-subtle);
  width: 100%;
  display: flex;
}

.navds-tabs__tablist {
  display: flex;
  max-width: 100%;
  width: 100%;
  scroll-behavior: smooth;
  -ms-overflow-style: none; /* Internet Explorer, Edge */
  scrollbar-width: none; /*  Firefox */
  overflow-x: scroll;

  &::-webkit-scrollbar {
    display: none; /* Chrome, Safari, and Opera */
  }
}

.navds-tabs__scroll-button {
  padding: var(--ax-spacing-3) var(--ax-spacing-4);
  width: 2.75rem;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;

  & svg {
    font-size: 1.25rem;
    flex-shrink: 0;
  }

  .navds-tabs--small & {
    padding: var(--ax-spacing-1-alt) var(--ax-spacing-4);
    width: 2rem;
  }
}

.navds-tabs__scroll-button--hidden {
  visibility: hidden;
}

.navds-tabs__tab {
  min-height: 3rem;
  padding: var(--ax-spacing-3) var(--ax-spacing-4);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background: none;
  border: none;
  color: var(--ax-text-default);
  cursor: pointer;

  --__axc-tabs-line-width: 0;
  --__axc-tabs-line-color: var(--ax-border-neutral-subtle);

  box-shadow: inset 0 var(--__axc-tabs-line-width) var(--__axc-tabs-line-color);
  transition: box-shadow 200ms cubic-bezier(0.2, 0, 0, 1);

  &:hover {
    --__axc-tabs-line-width: -4px;
  }

  &[data-state="active"] {
    --__axc-tabs-line-width: -4px;
    --__axc-tabs-line-color: var(--ax-border-accent-strong);
  }

  &:focus-visible {
    outline: 2px solid var(--ax-border-focus);
    outline-offset: -2px;
  }
}

.navds-tabs__tab-inner {
  display: flex;
  align-items: center;
  gap: var(--ax-spacing-1);

  & > * {
    display: inline-flex;
  }

  & svg {
    flex-shrink: 0;
  }

  .navds-tabs__tab-icon--top > & {
    flex-direction: column;
    gap: 0;
  }
}

.navds-tabs__tab--small {
  min-height: 2rem;
  padding: var(--ax-spacing-1-alt) var(--ax-spacing-4);
}

.navds-tabs__tab-icon--top,
.navds-tabs__tab--small.navds-tabs__tab-icon--top {
  padding: var(--ax-spacing-1) var(--ax-spacing-4);
}

.navds-tabs__tab,
.navds-tabs__tab--small.navds-tabs__tab--icon-only,
.navds-tabs__tab--small.navds-tabs__tab-icon--top {
  & svg {
    font-size: 1.25rem;
  }
}

.navds-tabs__tab--small svg {
  font-size: 1rem;
}

.navds-tabs__tab--icon-only,
.navds-tabs__tab-icon--top {
  & svg {
    font-size: 1.5rem;
  }
}

.navds-tabs__tab--fill {
  flex: 1 1 100%;
}

.navds-tabs__tabpanel:focus-visible {
  outline: 2px solid var(--ax-border-focus);
  outline-offset: -2px;
}

@media (forced-colors: active) {
  .navds-tabs__tab[data-state="active"] {
    border-bottom: 3px solid canvastext;
    padding-block-end: calc(var(--ax-spacing-3) - 3px);
  }

  .navds-tabs__tab--small[data-state="active"] {
    padding-block-end: calc(var(--ax-spacing-1-alt) - 3px);
  }

  .navds-tabs__tab-icon--top[data-state="active"],
  .navds-tabs__tab--small.navds-tabs__tab-icon--top[data-state="active"] {
    padding-block-end: calc(var(--ax-spacing-1) - 3px);
  }
}
