// Lightning Design System 2.3.1
// Copyright (c) 2015-present, salesforce.com, inc. All rights reserved
// Licensed under BSD 3-Clause - see LICENSE.txt or git.io/sfdc-license

/**
 * @summary Initializes an accordion list with more than one section that will have its display toggled by invoking an interaction on the summary title
 *
 * @name base
 * @selector .slds-accordion
 * @restrict ul
 * @variant
 * @required
 * @support dev-ready
 */
.slds-accordion {
  position: relative;
}

/**
 * List item for each accordion section
 *
 * @selector .slds-accordion__list-item
 * @restrict .slds-accordion li
 * @required
 */
.slds-accordion__list-item {
  border-top: $border-width-thin solid $color-border;

  &:first-child {
    border-top: 0;
  }
}

/**
 * Summary title for each expandable panel inside of an accordion
 *
 * @selector .slds-accordion__summary
 * @restrict .slds-accordion__section div
 * @required
 */
.slds-accordion__summary {
  display: flex;
}

/**
 * Summary title for each expandable panel inside of an accordion
 *
 * @selector .slds-accordion__summary-heading
 * @restrict .slds-accordion__section h3
 * @required
 */
.slds-accordion__summary-heading {
  display: flex;
  flex-grow: 1;
}

/**
 * Actionable button inside of accordion summary that would toggle the visibility of each section
 *
 * @selector .slds-accordion__summary-action
 * @restrict .slds-accordion__summary button
 * @required
 */
.slds-accordion__summary-action {
  display: inline-flex;
  flex-grow: 1;
  align-items: center;
  min-width: 0;
}

/**
 * Icon inside of actionable button within an accordion section
 *
 * @selector .slds-accordion__summary-action-icon
 * @restrict .slds-accordion__summary-action svg
 * @required
 */
.slds-accordion__summary-action-icon {
  flex-shrink: 0;
  transform: rotate(-90deg);
}

/**
 * Each expandable panel inside of an accordion
 *
 * @selector .slds-accordion__section
 * @restrict .slds-accordion section
 * @required
 */
.slds-accordion__section {
  padding: $spacing-small;
}

/**
 * Each expandable panel inside of an accordion
 *
 * @selector .slds-accordion__content
 * @restrict .slds-accordion__section div
 * @required
 */
.slds-accordion__content {
  visibility: hidden;
  opacity: 0;
  height: 0;
}

/**
 * Toggle visibility of accordion section + rotate icon
 *
 * @selector .slds-is-open
 * @restrict .slds-accordion__section
 * @modifier
 */
.slds-is-open {

  .slds-accordion__summary {
    margin-bottom: $spacing-small;
  }

  .slds-accordion__summary-action-icon {
    transform: rotate(0deg);
  }

  .slds-accordion__content {
    visibility: visible;
    opacity: 1;
    height: auto;
  }
}
