/* 弹窗背景 */
.popup {
  position: fixed;
  top: 100%;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 750rpx;
  margin: auto;
  z-index: 210;
}

.popup.show {
  top: 0;
}

.popup .popup-mask {
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.5);
}

/* 底部弹窗样式 */
.popup .popup-con-bottom {
  position: absolute;
  bottom: 0;
  width: 100%;
  transform: translateY(100%);
  transition: all .3s;
  background: #fff;
  border-radius: 20rpx 20rpx 0 0;
  max-height: 80%;
  min-height: 40%;
}

.popup.show .popup-con-bottom {
  transform: translateY(0);
}

.popup .popup-tit {
  position: relative;
  padding: 30rpx;
  text-align: center;
  height: 38rpx;
  line-height: 38rpx;
  z-index: 1;
}

.popup .popup-tit .tit-text {
  font-size: 28rpx;
  font-weight: 600;
}

.popup .popup-tit .close {
  width: 34rpx;
  height: 34rpx;
  position: absolute;
  top: 32rpx;
  right: 30rpx;
  border-radius: 50%;
  background: #f5f5f5;
  font-size: 0;
}

.popup .popup-tit .close image {
  width: 14rpx;
  height: 14rpx;
  margin: 10rpx auto;
}

.popup .con-box,
.popup .con-box-min {
  position: absolute;
  top: 98rpx;
  bottom: env(safe-area-inset-bottom);
  left: 30rpx;
  right: 30rpx;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.popup .con-box-min {
  bottom: calc(110rpx + env(safe-area-inset-bottom));
}

.popup .con-box::after,
.popup .con-box-min::after {
  min-height: calc(100% + 2rpx);
}

.popup .btn-box {
  position: absolute;
  bottom: env(safe-area-inset-bottom);
  left: 0;
  right: 0;
  height: 110rpx;
  box-sizing: border-box;
  padding: 20rpx 30rpx;
  justify-content: space-between;
  display: none;
}

.popup.show .btn-box {
  display: flex;  
}

/* #ifdef MP-WEIXIN */

.popup.show .btn-box {
  z-index: 999;
  bottom: 0;
  background-color: #fff;
}
/* #endif */

.popup .btn-box .btn {
  flex: 1;
  height: 70rpx;
  line-height: 70rpx;
  background: #fc1b35;
  color: #fff;
  text-align: center;
  border-radius: 70rpx;
  font-size: 26rpx;
  font-weight: 600;
}

.popup .btn-box .gray {
  background: #dddddd;
}

/* 中间弹窗样式 */
.popup-min {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 100%;
  right: 0;
  max-width: 750rpx;
  margin: auto;
  z-index: 210;
}

.popup-min.show {
  left: 0;
}

.popup-min .popup-mask {
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.5);
}

.popup-min .popup-con-middle {
  position: absolute;
  top: 50%;
  left: 50rpx;
  right: 50rpx;
  transform: translateY(-50%) scale(0);
  transition: all .3s;
  background: #fff;
  border-radius: 20rpx;
  padding: 30rpx;
  text-align: center;
}

.popup-min.show .popup-con-middle {
  transform: translateY(-50%) scale(1);
}

.popup-min .popup-con-middle .big-text {
  font-size: 28rpx;
  font-weight: 600;
  margin-top: 20rpx;
}

.popup-min .popup-con-middle .small-text {
  margin-top: 30rpx;
}

.popup-min .popup-con-middle .btns {
  margin-top: 50rpx;
  margin-bottom: 10rpx;
  display: flex;
  justify-content: center;
  align-items: center;
}

.popup-min .popup-con-middle .btns .btn {
  padding: 0 70rpx;
  height: 56rpx;
  line-height: 56rpx;
  text-align: center;
  color: #fc1b35;
  border-radius: 56rpx;
  border: 2rpx solid #fc1b35;
  box-sizing: border-box;
}

.popup-min .popup-con-middle .btns .btn.btn-r {
  background: #fc1b35;
  color: #fff;
  margin-left: 30rpx;
}

/* 优惠券弹窗 */
.popup .check-coupon {
  height: 80%;
}

.popup .check-coupon .con-box {
  left: 0;
  right: 0;
  background: #f2f3f7;
  width: 100%;
  box-sizing: border-box;
  padding: 0 30rpx;
}

/* #ifdef MP-WEIXIN */
.popup .check-coupon .con-box {
  height: 100%;
  padding-bottom: 200rpx;
}
/* #endif */
.popup .check-coupon .con-box .coupon-tit {
  margin-top: 40rpx;
}

.popup .check-coupon .con-box .coupon-tit .tit-text {
  font-weight: 600;
}

.popup .check-coupon .con-box .coupon-tit .tit-des {
  color: #999;
  font-size: 20rpx;
  margin-left: -6rpx;
}

.popup .check-coupon .coupon-item {
  margin: 30rpx 0;
  display: flex;
  position: relative;
}

.popup .check-coupon .coupon-item::before,
.popup .check-coupon .coupon-item::after {
  position: absolute;
  left: 191rpx;
  display: block;
  width: 20rpx;
  height: 20rpx;
  border-radius: 50%;
  background: #f2f3f7;
  content: " ";
  font-size: 0;
  z-index: 5;
}

.popup .check-coupon .coupon-item::before {
  top: -10rpx;
  box-shadow: 0 -2rpx 2rpx rgba(0,0,0,.06) inset;
}

.popup .check-coupon .coupon-item::after {
  bottom: -10rpx;
  box-shadow: 0 2rpx 2rpx rgba(0,0,0,.06) inset;
}

.popup .check-coupon .coupon-item .c-price {
  padding: 20rpx;
  color: #fff;
  width: 160rpx;
  border-radius: 10rpx 0 0 10rpx;
  box-shadow: 0 0 6rpx rgba(0,0,0,.05);
  background: linear-gradient(to right, #5695d6, #6779da);
  display: flex;
  align-items: center;
  justify-content: center;
}

.popup .check-coupon .coupon-item.general .c-price {
  background: linear-gradient(to right, #f45c43, #fc1b35); 
}

.popup .check-coupon .coupon-item.unavailable .c-price {
  background: #ccc; 
}

.popup .check-coupon .coupon-item .c-price .price {
  justify-content: center;
  font-weight: 600;
  color: #fff;
}

.popup .check-coupon .coupon-item .c-price .price .big {
  font-size: 48rpx;
  margin-right: 6rpx;
}

.popup .check-coupon .coupon-item .c-price .c-condition {
  margin-top: 4rpx;
  text-align: center;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.popup .check-coupon .coupon-item .text-box {
  flex: 1;
  padding: 20rpx;
  background: #fff;
  box-shadow: 0 0 6rpx rgba(0,0,0,.05);
  border-left: 2rpx dashed #6779da;
  border-radius: 0 10rpx 10rpx 0;
}

.popup .check-coupon .coupon-item.general .text-box {
  border-left: 2rpx dashed #fc1b35;
}

.popup .check-coupon .coupon-item.unavailable .text-box {
  border-left: 2rpx dashed #ccc;
}

.popup .check-coupon .coupon-item .text-box .c-des {
  height: 72rpx;
  line-height: 36rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.popup .check-coupon .coupon-item .text-box .c-des .c-style {
  display: inline-block;
  vertical-align: top;
  margin-top: 4rpx;
  background: #6779da;
  color: #fff;
  height: 28rpx;
  line-height: 28rpx;
  padding: 0 10rpx;
  font-size: 18rpx;
  border-radius: 28rpx;
}

.popup .check-coupon .coupon-item.general .text-box .c-des .c-style {
  background: #fc1b35;
}

.popup .check-coupon .coupon-item.unavailable .text-box .c-des .c-style {
  background: #ccc;
}

.popup .check-coupon .coupon-item .text-box .c-des .text {
  margin-left: 10rpx;
  font-weight: 600;
}

.popup .check-coupon .coupon-item .text-box .c-time {
  display: flex;
  align-items: center;
  margin-top: 16rpx;
  margin-bottom: 4rpx;
}

.popup .check-coupon .coupon-item .text-box .c-time .time {
  flex: 1;
  font-size: 20rpx;
  color: #999;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

.popup .check-coupon .coupon-item .text-box .c-time .btn {
  padding: 4rpx 14rpx;
  font-size: 20rpx;
  border: 2rpx solid #6779da;
  background: #6779da;
  color: #fff;
  border-radius: 40rpx;
  box-sizing: border-box;
}

.popup .check-coupon .coupon-item .text-box .c-time .btn.get {
  background: #fff;
  color: #6779da;
}

.popup .check-coupon .coupon-item.general .text-box .c-time .btn {
  border: 2rpx solid #fc1b35;
  background: #fc1b35;
}

.popup .check-coupon .coupon-item.general .text-box .c-time .btn.get {
  background: #fff;
  color: #fc1b35;
}

/* 优惠活动弹窗 */
.popup .check-discount {
  height: 50%;
}

.popup .check-discount .discount-item {
  display: flex;
  align-self: center;
  padding-bottom: 30rpx;
}

.popup .check-discount .discount-item:first-child {
  padding-top: 20rpx;
}

.popup .check-discount .discount-item .discount-icon {
  padding: 0 6rpx;
  background: #fc1b35;
  border-radius: 4rpx;
  color: #fff;
  font-size: 18rpx;
  margin-right: -10rpx;
  display: inline-block;
  height: 24rpx;
  line-height: 24rpx;
  vertical-align: top;
  margin-top: 6rpx;
}

.popup .check-discount .discount-item .text {
  flex: 1;
  margin-left: 20rpx;
  line-height: 36rpx;
}

/* 选择sku弹窗 */
.popup .check-sku {
  height: 80%;
}

.popup .check-sku .goods-box {
  padding: 30rpx;
  display: flex;
}

.popup .check-sku .goods-box .img {
  width: 160rpx;
  height: 160rpx;
  font-size: 0;
}

.popup .check-sku .goods-box .info {
  flex: 1;
  margin: 0 30rpx 0 20rpx;
}

.popup .check-sku .goods-box .info .name {
  height: 80rpx;
  line-height: 40rpx;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}

.popup .check-sku .goods-box .info .price {
  margin-top: 20rpx;
}

.popup .check-sku .goods-box .close {
  width: 34rpx;
  height: 34rpx;
  border-radius: 50%;
  background: #f5f5f5;
  font-size: 0;
}

.popup .check-sku .goods-box .close image {
  display: block;
  width: 14rpx;
  height: 14rpx;
  margin: 10rpx auto;
}

.popup .check-sku .con-box {
  top: 220rpx;
  bottom: calc(110rpx + env(safe-area-inset-bottom));
}

.popup .check-sku .sku-item {
  margin-top: 30rpx;
}

.popup .check-sku .sku-item:first-child {
  margin-top: 20rpx;
}

.popup .check-sku .sku-item .item-tit {
  font-weight: 600;
  padding-bottom: 30rpx;
}

.popup .check-sku .sku-item .item-box {
  display: flex;
  flex-wrap: wrap;
}

.popup .check-sku .sku-item .item-box .item-item {
  padding: 8rpx 30rpx;
  line-height: 32rpx;
  background: #f3f3f3;
  margin-bottom: 20rpx;
  margin-right: 20rpx;
  box-sizing: border-box;
  border-radius: 60rpx;
}

.popup .check-sku .sku-item .item-box .item-item.active {
  border: 2rpx solid #fc1b35;
  color: #fc1b35;
  background: #fff;
}

.popup .check-sku .sku-item .item-box .item-item.cannot {
  border: 2rpx dashed #ddd;
  background: #fff;
}

.popup .check-sku .sku-item .item-box .item-item:last-child {
  margin-right: 0;
}

/* sku弹窗商品数量 */
.popup .check-sku .con-box .prod-number {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.popup .check-sku .con-box .item-tit {
  margin-top: 10px;
  font-weight: 600;
}
.popup .check-sku .con-box .prod-number .number-box {
  display: flex;
  align-items: center;
  font-family: PingFangSC-Medium, tahoma;
  font-weight: 600;
  text-align: center;
}

.popup .check-sku .con-box .number-box .minus,
.popup .check-sku .con-box .number-box .plus {
  background: #f2f2f2;
  width: 40rpx;
  height: 40rpx;
  line-height: 40rpx;
  border-radius: 50%;
  position: relative;
}

.popup .check-sku .con-box .number-box .minus::after,
.popup .check-sku .con-box .number-box .plus::after {
  position: absolute;
  left: 50%;
  top: 45%;
  display: block;
  transform: translate(-50%,-50%);
}

.popup .check-sku .con-box .number-box .minus::after {
  font-size: 26rpx;
  content: "-";
}

.popup .check-sku .con-box .number-box .plus::after {
  font-size: 28rpx;
  content: "+";
}

.popup .check-sku .con-box .number-box .limit {
  opacity: 0.7;
}

.popup .check-sku .con-box .number-box .limit::after {
  color: #ccc;
}

.popup .check-sku .con-box .number-box .number {
  width: 70rpx;
  padding: 0 10rpx;
}