/* =============================================================================
   CART & WOOCOMMERCE — mini-cart, cart page, cross-sell, WC buttons
   Applied: header mini-cart (all pages) + woocommerce/cart/
   Key selectors: .cart-wrapper | .mini-cart-container | .cart-items
                  #cs-cart-toggle-wrapper | .cross-sell-product
                  .woocommerce-cart | .woocommerce-mini-cart__buttons
   ============================================================================= */

/* ---- Mini cart dropdown ---- */
.items span,
bdi {
  color: #2e4450;
}
.items-price p {
  margin-bottom: 0rem !important;
}
.cart-wrapper {
  border-radius: 16px;
  background-color: #f6f6fa;
}
.mini-cart-container {
  flex-direction: column;
  width: 34.125rem !important;
  margin-right: 14rem;
  padding: 1rem;
}
@media only screen and (max-width: 768px) {
  .mini-cart-container {
    display: none;
  }
}
ul.woocommerce-mini-cart {
  margin: 0px !important;
}
li.woocommerce-mini-cart-item.mini_cart_item {
  padding-bottom: 1rem;
}
.cart-items img {
  border-top-left-radius: 16px !important;
  border-bottom-left-radius: 16px !important;
  width: 200px !important;
  height: 140px !important;
}
.overlay-content {
  border-bottom-left-radius: 16px;
  border-top-left-radius: 16px;
  background-color: #000;
  opacity: 0;
  width: 200px;
  height: 140px;
}
.overlay-content:hover {
  opacity: 0.7;
  transition: all 0.5s ease;
}
& .overlay-content a {
  transform: translateX(-30%);
  color: #fff;
  font-size: 42px;
}
.overlay-content a:hover {
  color: #fcfcfc !important;
}
#cs-minicart-pricing p strong {
  font-size: 1.5rem;
  color: #2e4450;
  font-style: normal;
  font-weight: 500 !important;
  line-height: normal;
}
#cs-minicart-pricing p span {
  font-size: 1.5rem;
  color: #2e4450;
  font-style: normal;
  font-weight: 700 !important;
  line-height: normal;
}
#minicart-btn .checkout {
  display: none;
}
#minicart-btn a {
  font-size: 18px;
  font-weight: 500;
  line-height: normal;
  background-color: #83a7d3;
  padding: 17px 44px;
  border-radius: 8px;
  color: #fff;
}
#minicart-btn a:hover {
  background-color: #6491c8;
}

/* ---- Mini cart WooCommerce footer buttons ---- */
.woocommerce-mini-cart__buttons .wc-forward {
  background: #37506e !important;
  opacity: 1 !important;
}
.woocommerce-mini-cart__buttons .wc-forward:hover {
  background: #f9a31a !important;
}

/* ---- Cart page toggle (gift/individual toggle) ---- */
#cs-cart-toggle-wrapper .cs-cart-check-box {
  transform: scale(1.2);
}
#cs-cart-toggle-wrapper input[type="checkbox"] {
  position: relative;
  appearance: none;
  width: 45px;
  height: 21px;
  background: #ccc;
  border-radius: 50px;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition: 0.4s ease;
}
#cs-cart-toggle-wrapper input:checked[type="checkbox"] {
  background: var(--secondary-500, #f9a31a);
}
#cs-cart-toggle-wrapper input[type="checkbox"]::after {
  position: absolute;
  content: "";
  width: 22px;
  height: 20px;
  top: 0;
  left: 0;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  transform: scale(1.1);
  transition: 0.4s ease;
}
#cs-cart-toggle-wrapper input:checked[type="checkbox"]::after {
  left: calc(100% - 22px);
}

/* ---- WooCommerce cart table ---- */
.woocommerce-cart .cart-collaterals .cart_totals table th {
  width: 50% !important;
}
.woocommerce .cart .button,
.woocommerce .cart input.button {
  background-color: #37506e !important;
}
.woocommerce .cart .button,
.woocommerce .cart input.button:hover {
  background-color: #37506e !important;
  color: #ffffff !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
  background-color: #fab548 !important;
}
.woocommerce .woocommerce-cart-form a.remove {
  display: block;
  font-size: 18px;
  height: 20px;
  width: 20px;
  line-height: 17px;
  border-radius: 100%;
  color: #37506e !important;
  text-decoration: none;
  font-weight: 700;
  border: 2px solid #37506e;
  text-align: center;
}
.woocommerce-cart table.shop_table td small {
  color: white;
  font-weight: 700;
  font-size: 12px;
  background: #f9a31a;
  padding: 2px 6px;
  border-radius: 4px;
}
.woocommerce-cart table.shop_table td .first-payment-date small {
  color: #37506e !important;
  background: #fde2b8 !important;
  font-weight: 600 !important;
}

@media only screen and (max-width: 992px) {
  .woocommerce .cart .button {
    margin-top: 10px !important;
  }
  .woocommerce-cart table.cart img {
    min-width: 2.2rem !important;
  }
}

/* ---- Cross-sell products ---- */
.cross-sell-product .tw-full-width {
  width: 100% !important;
}
.cross-sell-product .cross-sell-button:hover {
  background-color: #ffffff !important;
  color: #394c62 !important;
}
.cross-sell-product .cross-sell-button:hover svg path {
  stroke: #394c62 !important;
}

/* ---- Bundle course card (cart context) ---- */
@media only screen and (max-width: 1024px) {
  .bundle-course-card-single {
    position: relative !important;
    transform: none !important;
    left: 0 !important;
    top: 0 !important;
    padding: 6px !important;
    font-size: 20px !important;
    margin-bottom: 15px !important;
  }
}
