.#{$picker-prefix-cls} {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: $picker-zindex + 1;
  width: 100%;
  background: $white;
  touch-action: none;

  &-wrap {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: $picker-zindex;
    overflow: auto;
  }
  &-mask {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: $picker-zindex;
    height: 100%;
    background-color: $picker-mask-bg-color;

    &-hidden {
      display: none;
    }
  }

  &-header {
    position: relative;
    display: flex;
    align-items: center;
    height: $picker-header-height;
    border-bottom: $border-width-sm solid $gray-light-15;

    &__item {
      padding: 0 $picker-header-item-padding-x;
      font-size: $picker-header-item-font-size;
      color: $gray-light-45;

      &--right {
        color: $brand-primary;
        text-align: right;
        font-weight: 600;
      }
    }

    &__title {
      flex: 1;
      font-size: $picker-header-title-font-size;
      font-weight: 600;
      color: $gray-light-85;
      text-align: center;
    }
  }

  &-body{
    display: flex;
    align-items: center;
    padding: 30px 0;

    .#{$picker-prefix-cls}-col {
      position: relative;
      display: block;
      width: 100%;
      height: ($picker-col-item-height + .2rem) * 5;
      overflow: hidden;

      &__content {
        margin: 2 * ($picker-col-item-height + .2rem) auto;
      }

      &__wheelWrapper {
        display: flex;
      }

      &__wheel {
        flex: 1;
        height: ($picker-col-item-height + .2rem) * 5;
      }

      &__item {
        height: $picker-col-item-height + .2rem;
        font-size: $picker-col-item-font-size;
        line-height: $picker-col-item-height;
        padding: 5px 0;
        color: $gray-light-45;
        text-align: center;
        text-overflow: ellipsis;
        white-space: nowrap;
        touch-action: manipulation;
        transition: all $transition-time;

        &--selected {
          font-size: $picker-col-item-selected-font-size;
          color: $brand-primary;
        }
      }

      &__mask {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 3;
        width: 100%;
        height: 100%;
        margin: 0 auto;
        pointer-events: none;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, .95), rgba(255, 255, 255, 0)),linear-gradient(to top, rgba(255, 255, 255, .95), rgba(255, 255, 255, 0));
        background-repeat: no-repeat;
        background-position: top, bottom;
        background-size: 100% 2 * ($picker-col-item-height + .2rem);
      }
    }
  }
}
