.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active, .x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active + .x-collapse-panel {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active .x-collapse-panel-shadow,
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active .x-collapse-panel-header, .x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active + .x-collapse-panel .x-collapse-panel-shadow,
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active + .x-collapse-panel .x-collapse-panel-header {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active, .x-collapse:not(.x-collapse-accordion) .x-collapse-panel:has(+ .x-collapse-panel-active) {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active .x-collapse-panel-shadow,
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active .x-collapse-panel-header, .x-collapse:not(.x-collapse-accordion) .x-collapse-panel:has(+ .x-collapse-panel-active) .x-collapse-panel-shadow,
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel:has(+ .x-collapse-panel-active) .x-collapse-panel-header {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active:not(:first-child),
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active + .x-collapse-panel {
  margin-top: 16px;
}
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active:not(:first-child)::after,
.x-collapse:not(.x-collapse-accordion) .x-collapse-panel-active + .x-collapse-panel::after {
  opacity: 0;
}

.x-collapse-panel {
  position: relative;
  background-color: #FFF;
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.x-collapse-panel:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.x-collapse-panel:first-child .x-collapse-panel-shadow,
.x-collapse-panel:first-child .x-collapse-panel-header {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.x-collapse-panel:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.x-collapse-panel:last-child .x-collapse-panel-shadow,
.x-collapse-panel:last-child .x-collapse-panel-header {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}
.x-collapse-panel:not(:first-child)::after {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  content: "";
  border-top-width: thin;
  border-top-style: solid;
  border-color: rgba(0, 0, 0, 0.12);
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.x-collapse-panel-active .x-icon {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.x-collapse-panel-disabled .x-collapse-panel-header {
  pointer-events: none;
}
.x-collapse-panel-disabled .x-collapse-panel-header::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: currentColor;
  opacity: 0.1;
}
.x-collapse-panel-shadow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.2), 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.2), 0px 1px 5px 0px rgba(0, 0, 0, 0.2);
  z-index: -1;
  border-radius: inherit;
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.x-collapse-panel-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  padding: 16px 24px;
  cursor: pointer;
}
.x-collapse-panel-header:hover {
  background-color: #f5f5f5;
}
.x-collapse-panel-header .x-icon {
  -ms-flex-item-align: center;
      align-self: center;
}
.x-collapse-panel-content {
  -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.x-collapse-panel-content-box {
  padding: 8px 24px 16px;
}