/* ===============================
   BEP365 Onepage Cart → Checkout
   Flatsome (row/col flex) FIX
   =============================== */

.bep365-opc{margin:18px 0 0;border:1px solid rgba(15,23,42,.10);border-radius:14px;background:#fff;overflow:hidden}
.bep365-opc__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:#f8fafc;border-bottom:1px solid rgba(15,23,42,.10)}
.bep365-opc__title{margin:0;font-size:18px;font-weight:800;line-height:1.2}
.bep365-opc__toggle{border:1px solid rgba(15,23,42,.18);background:#fff;border-radius:10px;padding:8px 10px;font-weight:700;cursor:pointer}
.bep365-opc__body{padding:12px 14px}
.bep365-opc.is-collapsed .bep365-opc__body{display:none}
.bep365-opc__loading{font-weight:700;opacity:.8;padding:10px 0}

/* Ẩn cart layout lớn */
.woocommerce-cart-form,.cart-collaterals,.woocommerce-cart .cart_totals{display:none!important}

/* ===============================
   FONT + TYPO RESET (fix “lỗi font”)
   =============================== */
#bep365-onepage-checkout,
#bep365-onepage-checkout *{
  font-family:inherit!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}
#bep365-onepage-checkout{
  font-size:14px;
  line-height:1.45;
  color:#0f172a;
}
#bep365-onepage-checkout h3,
#bep365-onepage-checkout h4{
  font-weight:800;
}

/* ===============================
   LAYOUT: ép Flatsome form > .row thành đúng 2 cột
   FIX: cột rỗng / gutter gây “dải trắng”
   =============================== */

/* Không cho CSS cũ biến form thành grid */
#bep365-onepage-checkout form.checkout,
#bep365-onepage-checkout .woocommerce-checkout{display:block!important}

/* Row chính của Flatsome */
#bep365-onepage-checkout form.checkout>.row,
#bep365-onepage-checkout .woocommerce-checkout>.row{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:flex-start;
  gap:18px;
  margin-left:0!important;
  margin-right:0!important;
}

/* Reset padding col để không dư “dải trắng” */
#bep365-onepage-checkout form.checkout>.row>[class*="large-"],
#bep365-onepage-checkout .woocommerce-checkout>.row>[class*="large-"]{
  padding-left:0!important;
  padding-right:0!important;
  margin:0!important;
}

/* Nếu Flatsome render thêm 1 cột rỗng (hiếm), hide luôn */
#bep365-onepage-checkout form.checkout>.row>.col:empty,
#bep365-onepage-checkout .woocommerce-checkout>.row>.col:empty{display:none!important}

/* Cột trái */
#bep365-onepage-checkout form.checkout>.row>.large-7,
#bep365-onepage-checkout .woocommerce-checkout>.row>.large-7{
  flex:1 1 auto!important;
  min-width:620px;
}

/* Cột phải */
#bep365-onepage-checkout form.checkout>.row>.large-5,
#bep365-onepage-checkout .woocommerce-checkout>.row>.large-5{
  flex:0 0 420px!important;
  width:420px!important;
  max-width:420px!important;
}

/* Col-inner phải FULL WIDTH + sticky */
#bep365-onepage-checkout .large-5 .col-inner{
  width:100%!important;
  max-width:none!important;
  position:sticky;
  top:12px;
  align-self:flex-start;
}

/* Responsive */
@media(max-width:980px){
  #bep365-onepage-checkout form.checkout>.row,
  #bep365-onepage-checkout .woocommerce-checkout>.row{
    flex-wrap:wrap!important;
  }
  #bep365-onepage-checkout form.checkout>.row>.large-7,
  #bep365-onepage-checkout .woocommerce-checkout>.row>.large-7{
    min-width:0;
    flex:1 1 100%!important;
  }
  #bep365-onepage-checkout form.checkout>.row>.large-5,
  #bep365-onepage-checkout .woocommerce-checkout>.row>.large-5{
    flex:1 1 100%!important;
    width:auto!important;
    max-width:none!important;
  }
  #bep365-onepage-checkout .large-5 .col-inner{position:static}
}

/* ===============================
   BOX ORDER REVIEW (cột phải)
   =============================== */
#bep365-onepage-checkout #order_review{
  width:100%!important;
  max-width:none!important;
  border:1px solid rgba(15,23,42,.12);
  border-radius:14px;
  background:#fff;
  padding:14px;
}

/* Ngăn bẻ chữ kỳ cục do theme */
#bep365-onepage-checkout #order_review,
#bep365-onepage-checkout #order_review *{
  word-break:normal!important;
  overflow-wrap:break-word;
  hyphens:auto;
}

#bep365-onepage-checkout #order_review_heading{margin:0 0 10px;font-weight:900}

/* ===============================
   ORDER REVIEW TABLE
   =============================== */
#bep365-onepage-checkout #order_review table.shop_table{
  width:100%!important;
  table-layout:fixed;
  border:0!important;
  margin:0!important;
}
#bep365-onepage-checkout #order_review table.shop_table th,
#bep365-onepage-checkout #order_review table.shop_table td{
  border:0!important;
  padding:8px 0!important;
  vertical-align:top;
}

/* Tên/giá */
#bep365-onepage-checkout #order_review table.shop_table th.product-name,
#bep365-onepage-checkout #order_review table.shop_table td.product-name{width:72%}
#bep365-onepage-checkout #order_review table.shop_table th.product-total,
#bep365-onepage-checkout #order_review table.shop_table td.product-total{
  width:28%;
  text-align:right;
  white-space:nowrap;
}

/* Tên gọn 2 dòng */
#bep365-onepage-checkout #order_review .product-name{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
#bep365-onepage-checkout #order_review .product-name .product-quantity{
  flex:0 0 auto;
  opacity:.7;
  white-space:nowrap;
}
#bep365-onepage-checkout #order_review .product-name > *:first-child{
  min-width:0;
  flex:1 1 auto;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
}

/* Tổng/giảm */
#bep365-onepage-checkout #order_review .order-total strong{font-size:18px}
#bep365-onepage-checkout #order_review .cart-discount td,
#bep365-onepage-checkout #order_review .cart-discount th{opacity:.95}

/* Nút đặt hàng */
#bep365-onepage-checkout #place_order{
  width:100%;
  border-radius:12px;
  padding:14px;
  font-weight:900;
}
