/* Components :: Accordion :: Styles */

@import '../../styles/settings/index';
@import '../../styles/tools/index';

$itemLighten: fabric-color('secondary3');

.c-accordion {
  font-family: 'FS-Emeric-Regular', sans-serif;
  width: 100%;

  &__item {
    border-top: 1px solid fabric-color('medium-grey');
    overflow: hidden;
    transition: all 250ms cubic-bezier(0.5, 0, 0.1, 1);

    .c-accordion--noborders & {
      border-color: transparent;
    }

    &--active {
      overflow: visible;
    }

    &:focus {
      outline: none;
    }

    &:last-child {
      border-bottom: 1px solid fabric-color('medium-grey');
      .c-accordion--noborders & {
        border-color: transparent;
      }
    }
  }

  &__heading {
    @include flex($justify-content: flex-start);

    background: none;
    border: 0;
    color: inherit;
    cursor: pointer;
    padding: $fabric-global-spacing-unit-small;
    width: 100%;

    &:focus {
      outline: none;
    }
  }

  &__title {
    @include fabric-font-size(16px);

    font-family: 'FS-Emeric-Core', sans-serif;
    margin: 0 0 0 $fabric-global-spacing-unit-small;
  }

  &__arrow {
    @include fabric-font-size(24px);
    @include fabric-size($fabric-global-spacing-unit);

    transition: all 250ms cubic-bezier(0.5, 0, 0.1, 1);
    transform: rotate(0);
    .c-accordion__item--active & {
      transform: rotate(90deg);
    }
  }

  &__content {
    font-family: 'FS-Emeric-Regular', sans-serif;
    color: inherit;
    padding: 0 $fabric-global-spacing-unit;
    height: 0;
    visibility: hidden;
    opacity: 0;
    transition: all 300ms cubic-bezier(0, 0, 0.25, 1);

    .c-accordion__item--active & {
      height: auto;
      opacity: 1;
      transition: all 300ms cubic-bezier(0.25, 0, 1, 1);
      visibility: visible;
    }
  }
}
