/* ============ BUNDLE STYLES ============ */
.ba-bundle-wrapper {
  margin: 20px 0;
}

.ba-product-bundle {
  clear: both;
  margin: 0 0 20px;
}

.ba-product-bundle .bundle-title {
  font-size: 20px;
  margin-bottom: 15px;
  font-weight: 500;
}

.ba-product-bundle .ba-product-wrapper,
.ba-product-bundle .bundle-plus,
.ba-product-bundle .bundle-total {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}

.ba-product-bundle .ba-product-wrapper {
  vertical-align: top;
  line-height: 15px;
}

.ba-product-bundle .ba-product-wrapper img {
  width: 80%;
  max-height: 130px;
}

.ba-product-bundle .ba-image {
  min-height: 130px;
  max-height: 130px;
  line-height: 125px;
  border: 1px solid #d9d9d9;
  background: #fff;
  text-align: center;
}

.ba-product-bundle .ba-image img {
  max-height: 115px;
  max-width: 100%;
  vertical-align: middle;
  height: auto;
  width: auto;
}

.ba-product-bundle .bundle-name {
  margin: 10px 0 5px 0;
}

.ba-product-bundle .ba-price {
  margin-bottom: 5px;
  color: #8C0000;
}

.ba-product-bundle .bundle-plus {
  line-height: 125px;
  max-width: 22px;
  font-size: 30px;
  color: #999;
}

.ba-product-bundle .bundle-total button {
  background-color: #a1c65b;
  color: #fff;
  border: none;
  padding: 10px 20px;
  font-size: 14px;
  cursor: pointer;
  border-radius: 4px;
}

.ba-product-bundle .bundle-total button:hover {
  opacity: 0.9;
}

.ba-product-bundle .bundle-total button .top-button,
.ba-product-bundle .bundle-total button .bottom-button {
  display: block;
}

/* Bundle sizes */
#two-product.ba-product-bundle .ba-product-wrapper { width: 30%; }
#two-product.ba-product-bundle .bundle-plus { width: 5%; }
#two-product.ba-product-bundle .bundle-total { width: 30%; }

#three-product.ba-product-bundle .ba-product-wrapper { width: 21%; }
#three-product.ba-product-bundle .bundle-plus { width: 3%; }
#three-product.ba-product-bundle .bundle-total { width: 25%; }

#four-product.ba-product-bundle .ba-product-wrapper { width: 18%; }
#four-product.ba-product-bundle .bundle-plus { width: 3%; }
#four-product.ba-product-bundle .bundle-total { width: 20%; }

/* Variant select */
.booster-variants-container select,
.ba-product-bundle select.ba-variants {
  width: 100%;
  margin-bottom: 5px;
  padding: 5px;
  font-size: 12px;
}

/* ============ POPUP STYLES ============ */
.dp-popup.blocker {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  z-index: 99999999;
  padding: 20px;
  box-sizing: border-box;
  background-color: rgba(0, 0, 0, 0.75);
  text-align: center;
}

.dp-popup.blocker:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -0.05em;
}

.dp-popup-dpModal {
  display: inline-block;
  min-width: 300px;
  max-width: 600px;
  vertical-align: middle;
  position: relative;
  background: #fff;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 0 10px #000;
  text-align: center;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
  color: #333;
}

.dp-popup-dpModal .close-dpModal {
  position: absolute;
  top: -12px;
  right: -12px;
  width: 30px;
  height: 30px;
  text-indent: -9999px;
  background: url('data:image/png;base64,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') no-repeat 0 0;
}

.dp-popup-dpModal .upsell-title {
  font-size: 18px;
  margin: 10px 0 20px;
  font-weight: 500;
}

.dp-popup .product-container {
  padding: 15px 0;
  border-top: 1px solid #eee;
}

.dp-popup .product-container:first-child {
  border-top: none;
}

.dp-popup .image {
  display: inline-block;
  vertical-align: middle;
}

.dp-popup .image img {
  max-width: 150px;
  max-height: 150px;
}

.dp-popup .details {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
  padding: 0 15px;
}

.dp-popup .product-title {
  font-weight: 400;
  margin-bottom: 10px;
}

.dp-popup .product-title a {
  color: inherit;
  text-decoration: none;
}

.dp-popup .product-price {
  font-weight: bold;
  font-size: 18px;
  margin: 10px 0;
}

.dp-popup .product-price s {
  font-weight: normal;
  color: #888;
  font-size: 14px;
  margin-left: 5px;
}

.dp-popup .discount-applies-true .product-price .ba-sale {
  color: #8C0000;
}

.dp-popup .actions {
  display: inline-block;
  vertical-align: middle;
}

.dp-popup button.add-upsells {
  background-color: #a1c65b !important;
  color: #fff !important;
  border: none !important;
  padding: 12px 24px !important;
  font-size: 14px !important;
  cursor: pointer !important;
  border-radius: 4px !important;
  width: 100%;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  min-height: 44px !important;
  display: inline-block !important;
  text-align: center !important;
  text-indent: 0 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
}

.dp-popup button.add-upsells:hover {
  opacity: 0.9;
}

.dp-popup .no-thanks {
  padding-top: 20px;
  text-align: center;
}

.dp-popup .no-thanks a {
  color: #888;
  text-decoration: none;
  font-size: 14px;
}

.dp-popup .no-thanks a:hover {
  text-decoration: underline;
}

.dp-popup .ba-variant-select {
  width: 100%;
  padding: 8px;
  margin-bottom: 10px;
  font-size: 14px;
}

/* Multiple products layout */
.dp-popup .multiple-products-true .product-container {
  display: block;
  overflow: hidden;
}

.dp-popup .multiple-products-true .image {
  width: 100px;
  float: left;
}

.dp-popup .multiple-products-true .details {
  width: calc(100% - 230px);
  float: left;
}

.dp-popup .multiple-products-true .actions {
  width: 100px;
  float: right;
}

/* Single product layout */
.dp-popup .multiple-products-false .image {
  display: block;
  text-align: center;
  margin-bottom: 15px;
}

.dp-popup .multiple-products-false .details {
  display: block;
  text-align: center;
  padding: 0;
}

.dp-popup .multiple-products-false .actions {
  display: block;
  text-align: center;
  margin-top: 15px;
}

/* ============ VOLUME DISCOUNT TABLE ============ */
.ba-vol-wrapper {
  margin: 20px 0;
  display: none;
}

.ba-discount-tiers h4 {
  margin-bottom: 10px;
  font-size: 16px;
}

.ba-discount-table {
  width: 100%;
  max-width: 400px;
  border-collapse: collapse;
}

.ba-discount-table th,
.ba-discount-table td {
  padding: 10px;
  border: 1px solid #ddd;
  text-align: center;
}

.ba-discount-table th {
  background-color: #f5f5f5;
  font-weight: 600;
}

.ba-discount-table td:last-child {
  color: #8C0000;
  font-weight: 500;
}

/* ============ CART TOTAL STYLES ============ */
.booster-original-price {
  text-decoration: line-through;
  color: #888;
  margin-right: 8px;
}

.booster-discounted-price {
  color: #8C0000;
  font-weight: bold;
}

/* ============ RESPONSIVE ============ */
@media screen and (max-width: 650px) {
  .ba-product-bundle .ba-product-wrapper {
    width: 100% !important;
    margin-bottom: 15px;
  }

  .ba-product-bundle .bundle-plus {
    width: 100% !important;
    line-height: 1;
    margin: 10px 0;
  }

  .ba-product-bundle .bundle-total {
    width: 100% !important;
    margin-top: 15px;
  }

  .dp-popup-dpModal {
    min-width: 0;
    width: 95%;
    padding: 20px;
  }

  .dp-popup .multiple-products-true .image,
  .dp-popup .multiple-products-true .details,
  .dp-popup .multiple-products-true .actions {
    float: none;
    width: 100%;
    text-align: center;
    display: block;
  }

  .dp-popup .multiple-products-true .details {
    padding: 10px 0;
  }
}
