@charset "utf-8";
/* CSS Document */
/* 角标样式 */
        .cart-badge {
            position: absolute;
            top: 0.6rem;
            right: 0.5rem;
            background-color: #e74c3c;
            color: white;
            border-radius: 50%;
            width: 1.6rem;
            height: 1.6rem;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            font-weight: bold;
        }
/* 购物车面板样式 */
.cart-panel {
  position: fixed;
  top: 0;
  right: -100rem;
  width: 50rem;
  height: 100vh;
  transition: right 0.4s ease-in-out;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  background: #303147;
}
.cart-panel.active {
  right: 0;
  opacity: 1;
}
.cart-panel iframe {
  width: 100%;
  height: 100%;
  border: none;
}
.close-btn {
  width: auto;
  display: grid;
  justify-content: flex-end;
  padding: 2rem;
  background: url("../images/web_bj.png");
}
.close-btn button {
  background: none;
  border: none;
  font-size: 5rem;
  cursor: pointer;
  color: #fff;
  transition: color 0.3s;
}
/*标题*/
.cart-title {
  margin-top: 4rem;
  padding: 1rem 0 0 3rem;
  border-bottom: 0.1rem solid #ffc107;
  display: flex;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2rem 2rem 0 0;
}
.cart-title h1 {
  font-size: 2.4rem;
  font-weight: 600;
  color: #fff;
}
.cart-title h1 span {
  font-size: 1.8rem;
  font-weight: 400;
  color: #999999;
}
.select-all {
  margin: 0 1rem;
}
.custom-checkbox {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  border: 0.2rem solid #cbd5e0;
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  transition: all 0.2s;
}
.custom-checkbox.checked {
  background-color: #3182ce;
  border-color: #3182ce;
}
.custom-checkbox.checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 1rem;
  background-color: white;
  border-radius: 50%;
}
/*产品列表*/
.cart-items {
  padding: 0;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 0 0 2rem 2rem;
  margin-bottom: 4rem;
}
.cart-item {
  display: flex;
  flex-wrap: wrap;
  padding: 2.5rem 3rem;
  border-bottom: 0.1rem solid #838383;
  transition: background-color 0.2s;
  align-items: center;
}
.cart-item:hover {
  background-color: rgba(47, 69, 92, 0.6);
}
.item-select {
  margin: 1rem;
}
.product-image {
  width: 12rem;
  height: 12rem;
  border-radius: 0.8rem;
  overflow: hidden;
  margin: 1rem;
  flex-shrink: 0;
}
.product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-details {
  flex-grow: 1;
}
.product-details h3 {
  color: #fff;
  padding: 0.5rem;
  margin: 0.5rem;
  font-size: 1.6rem;
}
.product-specs {
  list-style-type: none;
  margin: 0.5rem;
  padding: 0.5rem;
  display: flex;
}
.product-specs li {
  margin-bottom: 0.6rem;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
}
.wrist-size {
  color: white;
  background-color: #4a5568;
  padding: 0.2rem 0.8rem;
  border-radius: 0.4rem;
  display: inline-block;
  position: relative;
  margin-left: 0.8rem;
}
.light-blue {
  color: #63b3ed;
}
.quantity-controls {
  display: flex;
  align-items: center;
  margin: 0;
  border-radius: 1rem;
  border: 0.2rem solid #fff;
}
.quantity-btn-left {
  width: 4rem;
  height: 3rem;
  border-radius: 1rem 0 0 1rem;
  border: none;
  border-right: 0.2rem solid #ddd;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 1.8rem;
  color: #fff;
}
.quantity-btn-right {
  width: 4rem;
  height: 3rem;
  border-radius: 0 1rem 1rem 0;
  border: none;
  border-left: 0.2rem solid #ddd;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 1.8rem;
  color: #fff;
}
.quantity-btn:hover {
  background-color: #f1f1f1;
  border-color: #bbb;
}
.quantity {
  color: #fff;
  margin: 0 1.5rem;
  font-size: 1.6rem;
  font-weight: 600;
  min-width: 3rem;
  text-align: center;
}
.delete-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 2rem;
  color: #a0aec0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  margin: 0 1rem;
  transition: all 0.4s ease;
}
.delete-btn:hover {
  transform: scale(1.2);
  transition: all 0.4s ease;
}
.price-section {
  text-align: right;
}
.price {
  font-size: 2rem;
  font-weight: 700;
  color: white;
  background-color: #2d3748;
  padding: 0.6rem 1.2rem;
  border-radius: 0.6rem;
  margin-bottom: 0.8rem;
  display: inline-block;
}
.savings {
  font-size: 1.80rem;
  color: #5eea60;
  font-weight: 500;
}
/* 结算区域样式 */
.cart-summary {
  padding: 2.5rem 3rem;
  border-top: 0.1rem solid #999999;
}
.summary-top {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 2rem;
}
.summary-left {
  display: flex;
  flex-direction: column;
}
.subtotal {
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0.8rem;
  text-align: end;
}
.total-savings {
  font-size: 2rem;
  color: #5eea60;
  font-weight: 500;
  text-align: end;
}
.checkout-btn {
  width: 100%;
  display: grid;
  justify-content: center;
}
.checkout-btn button {
  background-color: #375d9f;
  color: #ecbe67;
  border: none;
  padding: 1.2rem 3rem;
  border-radius: 0.8rem;
  font-size: 1.6rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
  width: 46rem;
  margin-bottom: 2rem;
}
.checkout-btn button:hover {
  background-color: #4c7aca;
}
/* 促销代码区域 */
.promo-section {
  display: flex;
  margin-bottom: 2rem;
  justify-content: center;
}
.promo-input {
  width: 2rem;
  flex-grow: 0.3;
  padding: 1.2rem 1.5rem;
  border: 0.1rem solid #ddd;
  border-radius: 0.8rem 0 0 0.8rem;
  font-size: 1.6rem;
  outline: none;
}
.promo-input:focus {
  border-color: #3182ce;
}
.apply-btn {
  background-color: #38a169;
  color: white;
  border: none;
  padding: 1.2rem 2rem;
  border-radius: 0 0.8rem 0.8rem 0;
  font-size: 1.6rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
}
.apply-btn:hover {
  background-color: #2f855a;
}
/* 保证区域 */
.guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  border-radius: 0.8rem;
}
.bag-icon {
  font-size: 2.4rem;
  margin-right: 1rem;
}
.guarantee-text {
  font-size: 1.6rem;
  color: #cccccc;
  font-weight: 500;
}
/* Mobile */
@media (max-width: 320px) {
  html {
    font-size: 60%;
  }
  .cart-item {
    flex-direction: column;
    padding: 2rem 1.6rem;
    position: relative;
  }
  .item-select {
    position: absolute;
    top: 2rem;
    left: 1.6rem;
  }
  .product-image {
    width: 100%;
    height: 20rem;
    margin-right: 0;
    margin-bottom: 1.6rem;
  }
  .quantity-controls {
    margin: 1.6rem 0;
    justify-content: center;
    width: 100%;
  }
  .delete-btn {
    position: absolute;
    top: 2rem;
    right: 1.6rem;
    margin-right: 0;
  }
  .price-section {
    text-align: right;
	width: 2rem;
  }
  .cart-summary {
    padding: 2rem 1.6rem;
  }
  .summary-top {
    flex-direction: column;
    align-items: flex-start;
  }
  .summary-left {
    margin-bottom: 1.6rem;
  }
  .promo-section {
    flex-direction: column;
  }
  .promo-input {
    border-radius: 0.8rem 0.8rem 0 0; /* 8px */
    margin-bottom: 0.8rem; /* 8px */
  }
  .apply-btn {
    border-radius: 0 0 0.8rem 0.8rem; /* 8px */
  }
}
/* Small Tablets */
@media (min-width: 321px)and (max-width: 767px) {
  html {
    font-size: 58.75%;
  }

  .cart-item {
    flex-wrap: wrap;
    padding: 1rem;
    position: relative;
  }

  .delete-btn {
    position: absolute;
    top: 1rem;
    right: 2rem;
    margin-right: 0;
  }

  .quantity-controls {
    width: 12rem;
    margin: 1.6rem 3rem;
    justify-content: center;
  }

  .item-select {
    margin-right: 1.2rem;
  }

  .product-image {
    width: 10rem;
    height: 10rem;
    margin: 0;
  }

  .product-details {
    flex-basis: calc(100% - 16rem);
  }

  .price-section {
    width: 26.5rem;
  }

  .price {
    margin-bottom: 0;
  }

  .cart-summary {
    padding: 2rem 2rem;
  }

  .summary-top {
    flex-direction: column;
    align-items: flex-start;
  }

  .summary-left {
    margin-bottom: 1.6rem;
  }

  .promo-input {
    width: 100%;

  }

  .checkout-btn button {

    width: 44rem;

  }

  /* Small Desktops */
  @media (min-width: 768px) and (max-width: 1096px) {
    html {
      font-size: 58.75%;
    }

    .cart-item {
      padding: 2rem 2.4rem; /* 20px 24px */
    }

    .product-image {
      width: 9.6rem; /* 96px */
      height: 9.6rem; /* 96px */
      margin-right: 2rem; /* 20px */
    }

    .quantity-controls {
      margin-right: 2.4rem; /* 24px */
    }

    .delete-btn {
      margin-right: 2.4rem; /* 24px */
    }

    .cart-summary {
      padding: 2rem 2.4rem; /* 20px 24px */
    }
  }
}
@charset "utf-8";
/* CSS Document */
/* 角标样式 */
.cart-badge {
  position: absolute;
  top: 0.6rem;
  right: 0.5rem;
  background-color: #e74c3c;
  color: white;
  border-radius: 50%;
  width: 1.6rem;
  height: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  font-weight: bold;
}
/* 购物车面板样式 */
.cart-panel {
  position: fixed;
  top: 0;
  right: -100rem;
  width: 50rem;
  height: 100vh;
  transition: right 0.4s ease-in-out;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  background: #303147;
}
.cart-panel.active {
  right: 0;
  opacity: 1;
}
.cart-panel iframe {
  width: 100%;
  height: 100%;
  border: none;
}
.close-btn {
  width: auto;
  display: grid;
  justify-content: flex-end;
  padding: 2rem;
  background: url("../images/web_bj.png");
}
.close-btn button {
  background: none;
  border: none;
  font-size: 5rem;
  cursor: pointer;
  color: #fff;
  transition: color 0.3s;
}
/*标题*/
.cart-title {
  margin-top: 4rem;
  padding: 1rem 0 0 3rem;
  border-bottom: 0.1rem solid #ffc107;
  display: flex;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 2rem 2rem 0 0;
}
.cart-title h1 {
  font-size: 2.4rem;
  font-weight: 600;
  color: #fff;
}
.cart-title h1 span {
  font-size: 1.8rem;
  font-weight: 400;
  color: #999999;
}
.select-all {
  margin: 0 1rem;
}
.custom-checkbox {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  border: 0.2rem solid #cbd5e0;
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  transition: all 0.2s;
}
.custom-checkbox.checked {
  background-color: #3182ce;
  border-color: #3182ce;
}
.custom-checkbox.checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 1rem;
  background-color: white;
  border-radius: 50%;
}
/*产品列表*/
.cart-items {
  padding: 0;
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 0 0 2rem 2rem;
  margin-bottom: 4rem;
}
.cart-item {
  display: flex;
  flex-wrap: wrap;
  padding: 2.5rem 3rem;
  border-bottom: 0.1rem solid #838383;
  transition: background-color 0.2s;
  align-items: center;
}
.cart-item:hover {
  background-color: rgba(47, 69, 92, 0.6);
}
.item-select {
  margin: 1rem;
}
.product-image {
  width: 12rem;
  height: 12rem;
  border-radius: 0.8rem;
  overflow: hidden;
  margin: 1rem;
  flex-shrink: 0;
}
.product-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product-details {
  flex-grow: 1;
}
.product-details h3 {
  color: #fff;
  padding: 0.5rem;
  margin: 0.5rem;
  font-size: 1.6rem;
}
.product-specs {
  list-style-type: none;
  margin: 0.5rem;
  padding: 0.5rem;
}
.product-specs li {
  margin-bottom: 0.6rem;
  font-size: 1.4rem;
  display: flex;
  align-items: center;
}
.wrist-size {
  color: white;
  background-color: #4a5568;
  padding: 0.2rem 0.8rem;
  border-radius: 0.4rem;
  display: inline-block;
  position: relative;
  margin-left: 0.8rem;
}
.light-blue {
  color: #63b3ed;
}
.quantity-controls {
  display: flex;
  align-items: center;
  margin: 0;
  border-radius: 1rem;
  border: 0.2rem solid #fff;
}
.quantity-btn-left {
  width: 4rem;
  height: 3rem;
  border-radius: 1rem 0 0 1rem;
  border: none;
  border-right: 0.2rem solid #ddd;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 1.8rem;
  color: #fff;
}
.quantity-btn-right {
  width: 4rem;
  height: 3rem;
  border-radius: 0 1rem 1rem 0;
  border: none;
  border-left: 0.2rem solid #ddd;
  background-color: rgba(0, 0, 0, 0);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 1.8rem;
  color: #fff;
}
.quantity-btn:hover {
  background-color: #f1f1f1;
  border-color: #bbb;
}
.quantity {
  color: #fff;
  margin: 0 1.5rem;
  font-size: 1.6rem;
  font-weight: 600;
  min-width: 3rem;
  text-align: center;
}
.delete-btn {
  background: none;
  border: none;
  cursor: pointer;
  font-size: 2rem;
  color: #a0aec0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  margin: 0 1rem;
  transition: all 0.4s ease;
}
.delete-btn:hover {
  transform: scale(1.2);
  transition: all 0.4s ease;
}
.price-section {
  text-align: right;
}
.price {
  font-size: 2rem;
  font-weight: 700;
  color: white;
  background-color: #2d3748;
  padding: 0.6rem 1.2rem;
  border-radius: 0.6rem;
  margin-bottom: 0.8rem;
  display: inline-block;
}
.savings {
  font-size: 1.80rem;
  color: #5eea60;
  font-weight: 500;
}
/* 结算区域样式 */
.cart-summary {
  padding: 2.5rem 3rem;
  border-top: 0.1rem solid #999999;
}
.summary-top {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 2rem;
}
.summary-left {
  display: flex;
  flex-direction: column;
}
.subtotal {
  font-size: 2rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0.8rem;
  text-align: end;
}
.total-savings {
  font-size: 2rem;
  color: #5eea60;
  font-weight: 500;
  text-align: end;
}
.checkout-btn {
  width: 100%;
  display: grid;
  justify-content: center;
}
.checkout-btn button {
  background-color: #375d9f;
  color: #ecbe67;
  border: none;
  padding: 1.2rem 3rem;
  border-radius: 0.8rem;
  font-size: 1.6rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
  width: 46rem;
  margin-bottom: 2rem;
}
.checkout-btn button:hover {
  background-color: #4c7aca;
}
/* 促销代码区域 */
.promo-section {
  display: flex;
  margin-bottom: 2rem;
  justify-content: center;
}
.promo-input {
  width: 2rem;
  flex-grow: 0.3;
  padding: 1.2rem 1.5rem;
  border: 0.1rem solid #ddd;
  border-radius: 0.8rem 0 0 0.8rem;
  font-size: 1.6rem;
  outline: none;
}
.promo-input:focus {
  border-color: #3182ce;
}
.apply-btn {
  background-color: #38a169;
  color: white;
  border: none;
  padding: 1.2rem 2rem;
  border-radius: 0 0.8rem 0.8rem 0;
  font-size: 1.6rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
}
.apply-btn:hover {
  background-color: #2f855a;
}
/* 保证区域 */
.guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  border-radius: 0.8rem;
}
.bag-icon {
  font-size: 2.4rem;
  margin-right: 1rem;
}
.guarantee-text {
  font-size: 1.6rem;
  color: #cccccc;
  font-weight: 500;
}
/* Mobile */
@media (max-width: 320px) {
  html {
    font-size: 60%;
  }
  .cart-item {
    flex-direction: column;
    padding: 2rem 1.6rem;
    position: relative;
  }
  .item-select {
    position: absolute;
    top: 2rem;
    left: 1.6rem;
  }
  .product-image {
    width: 100%;
    height: 20rem;
    margin-right: 0;
    margin-bottom: 1.6rem;
  }
  .quantity-controls {
    margin: 1.6rem 0;
    justify-content: center;
    width: 100%;
  }
  .delete-btn {
    position: absolute;
    top: 2rem;
    right: 1.6rem;
    margin-right: 0;
  }
  .price-section {
    text-align: right;
    width: 2rem;
  }
  .cart-summary {
    padding: 2rem 1.6rem;
  }
  .summary-top {
    flex-direction: column;
    align-items: flex-start;
  }
  .summary-left {
    margin-bottom: 1.6rem;
  }
  .promo-section {
    flex-direction: column;
  }
  .promo-input {
    border-radius: 0.8rem 0.8rem 0 0; /* 8px */
    margin-bottom: 0.8rem; /* 8px */
  }
  .apply-btn {
    border-radius: 0 0 0.8rem 0.8rem; /* 8px */
  }
}
/* Small Tablets */
@media (min-width: 321px)and (max-width: 767px) {
  html {
    font-size: 58.75%;
  }

  .cart-item {
    flex-wrap: wrap;
    padding: 1rem;
    position: relative;
  }

  .delete-btn {
    position: absolute;
    top: 1rem;
    right: 2rem;
    margin-right: 0;
  }

  .quantity-controls {
    width: 12rem;
    margin: 1.6rem 3rem;
    justify-content: center;
  }

  .item-select {
    margin-right: 1.2rem;
  }

  .product-image {
    width: 10rem;
    height: 10rem;
    margin: 0;
  }

  .product-details {
    flex-basis: calc(100% - 16rem);
  }

  .price-section {
    width: 26.5rem;
  }

  .price {
    margin-bottom: 0;
  }

  .cart-summary {
    padding: 2rem 2rem;
  }

  .summary-top {
    flex-direction: column;
    align-items: flex-start;
  }

  .summary-left {
    margin-bottom: 1.6rem;
  }

  .promo-input {
    width: 100%;

  }

  .checkout-btn button {

    width: 44rem;

  }

  /* Small Desktops */
  @media (min-width: 768px) and (max-width: 1096px) {
    html {
      font-size: 58.75%;
    }

    .cart-item {
      padding: 2rem 2.4rem; /* 20px 24px */
    }

    .product-image {
      width: 9.6rem; /* 96px */
      height: 9.6rem; /* 96px */
      margin-right: 2rem; /* 20px */
    }

    .quantity-controls {
      margin-right: 2.4rem; /* 24px */
    }

    .delete-btn {
      margin-right: 2.4rem; /* 24px */
    }

    .cart-summary {
      padding: 2rem 2.4rem; /* 20px 24px */
    }
  }
}
