.el-carousel {
  --el-carousel-arrow-font-size: 12px;
  --el-carousel-arrow-size: 36px;
  --el-carousel-arrow-background: rgba(31, 45, 61, .11);
  --el-carousel-arrow-hover-background: rgba(31, 45, 61, .23);
  --el-carousel-indicator-width: 30px;
  --el-carousel-indicator-height: 2px;
  --el-carousel-indicator-padding-horizontal: 4px;
  --el-carousel-indicator-padding-vertical: 12px;
  --el-carousel-indicator-out-color: var(--el-border-color-hover);
  position: relative
}

.el-carousel--horizontal, .el-carousel--vertical {
  overflow: hidden
}

.el-carousel__container {
  height: 300px;
  position: relative
}

.el-carousel__arrow {
  align-items: center;
  background-color: var(--el-carousel-arrow-background);
  border: none;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  font-size: var(--el-carousel-arrow-font-size);
  height: var(--el-carousel-arrow-size);
  justify-content: center;
  margin: 0;
  outline: none;
  padding: 0;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  transition: var(--el-transition-duration);
  width: var(--el-carousel-arrow-size);
  z-index: 10
}

.el-carousel__arrow--left {
  display: none;
  left: 16px
}

.el-carousel__arrow--right {
  display: none;
  right: 16px
}

.el-carousel__arrow:hover {
  background-color: var(--el-carousel-arrow-hover-background)
}

.el-carousel__arrow i {
  cursor: pointer
}

.el-carousel__indicators {
  list-style: none;
  margin: 0;
  padding: 0;
  position: absolute;
  z-index: calc(var(--el-index-normal) + 1)
}

.el-carousel__indicators--horizontal {
  bottom: 0;
  left: 50%;
  transform: translate(-50%)
}

.el-carousel__indicators--vertical {
  right: 0;
  top: 50%;
  transform: translateY(-50%)
}

.el-carousel__indicators--outside {
  bottom: calc(var(--el-carousel-indicator-height) + var(--el-carousel-indicator-padding-vertical)*2);
  position: static;
  text-align: center;
  transform: none
}

.el-carousel__indicators--outside .el-carousel__indicator:hover button {
  opacity: .64
}

.el-carousel__indicators--outside button {
  background-color: var(--el-carousel-indicator-out-color);
  opacity: .24
}

.el-carousel__indicators--right {
  right: 0
}

.el-carousel__indicators--labels {
  left: 0;
  right: 0;
  text-align: center;
  transform: none
}

.el-carousel__indicators--labels .el-carousel__button {
  color: #000;
  font-size: 12px;
  height: auto;
  padding: 2px 18px;
  width: auto
}

.el-carousel__indicators--labels .el-carousel__indicator {
  padding: 6px 4px
}

.el-carousel__indicator {
  background-color: transparent;
  cursor: pointer
}

.el-carousel__indicator:hover button {
  opacity: .72
}

.el-carousel__indicator--horizontal {
  /* display: inline-block; */
  display: none;
  padding: var(--el-carousel-indicator-padding-vertical) var(--el-carousel-indicator-padding-horizontal)
}

.el-carousel__indicator--vertical {
  padding: var(--el-carousel-indicator-padding-horizontal) var(--el-carousel-indicator-padding-vertical)
}

.el-carousel__indicator--vertical .el-carousel__button {
  height: calc(var(--el-carousel-indicator-width)/2);
  width: var(--el-carousel-indicator-height)
}

.el-carousel__indicator.is-active button {
  opacity: 1
}

.el-carousel__button {
  background-color: #fff;
  border: none;
  cursor: pointer;
  display: block;
  height: var(--el-carousel-indicator-height);
  margin: 0;
  opacity: .48;
  outline: none;
  padding: 0;
  transition: var(--el-transition-duration);
  width: var(--el-carousel-indicator-width)
}

.carousel-arrow-left-enter-from, .carousel-arrow-left-leave-active {
  opacity: 0;
  transform: translateY(-50%) translate(-10px)
}

.carousel-arrow-right-enter-from, .carousel-arrow-right-leave-active {
  opacity: 0;
  transform: translateY(-50%) translate(10px)
}

.el-transitioning {
  filter: url(#elCarouselHorizontal)
}

.el-transitioning-vertical {
  filter: url(#elCarouselVertical)
}

.el-carousel__item {
  display: inline-block;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  width: 100%
}

.el-carousel__item, .el-carousel__item.is-active {
  z-index: calc(var(--el-index-normal) - 1)
}

.el-carousel__item--card, .el-carousel__item.is-animating {
  transition: transform .4s ease-in-out
}

.el-carousel__item--card {
  width: 50%
}

.el-carousel__item--card.is-in-stage {
  cursor: pointer;
  z-index: var(--el-index-normal)
}

.el-carousel__item--card.is-in-stage.is-hover .el-carousel__mask, .el-carousel__item--card.is-in-stage:hover .el-carousel__mask {
  opacity: .12
}

.el-carousel__item--card.is-active {
  z-index: calc(var(--el-index-normal) + 1)
}

.el-carousel__item--card-vertical {
  height: 50%;
  width: 100%
}

.el-carousel__mask {
  background-color: var(--el-color-white);
  height: 100%;
  left: 0;
  opacity: .24;
  position: absolute;
  top: 0;
  transition: var(--el-transition-duration-fast);
  width: 100%
}