@import '../../_variables.scss';

.tab-switcher {
  display: flex;
  flex-direction: column;

  .contents {
    flex: 1 0 auto;
    min-height: 0px;

    .hidden {
      display: none;
    }

    &.scrollable-tabs {
      flex-basis: 0;
      overflow-y: auto;
    }
  }
  .tabs {
    display: flex;
    position: relative;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    padding-top: 5px;
    box-sizing: border-box;

    &::after, &::before {
      display: block;
      content: '';
      flex: 1 1 auto;
      border-bottom: 1px solid;
      border-bottom-color: $fallback--border;
      border-bottom-color: var(--border, $fallback--border);
    }

    .tab-wrapper {
      height: 28px;
      position: relative;
      display: flex;
      flex: 0 0 auto;

      .tab {
        width: 100%;
        min-width: 1px;
        position: relative;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        padding: 6px 1em;
        padding-bottom: 99px;
        margin-bottom: 6px - 99px;
        white-space: nowrap;

        color: $fallback--text;
        color: var(--tabText, $fallback--text);
        background-color: $fallback--fg;
        background-color: var(--tab, $fallback--fg);

        &:not(.active) {
          z-index: 4;

          &:hover {
            z-index: 6;
          }
        }

        &.active {
          background: transparent;
          z-index: 5;
          color: $fallback--text;
          color: var(--tabActiveText, $fallback--text);
        }

        img {
          max-height: 26px;
          vertical-align: top;
          margin-top: -5px;
        }
      }

      &:not(.active) {
        &::after {
          content: '';
          position: absolute;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 7;
          border-bottom: 1px solid;
          border-bottom-color: $fallback--border;
          border-bottom-color: var(--border, $fallback--border);
        }
      }
    }

  }
}
