.elementor-1678 .elementor-element.elementor-element-66f22496{margin-top:100px;margin-bottom:100px;padding:0px 200px 0px 200px;}.elementor-1678 .elementor-element.elementor-element-00300b3 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:30px;font-weight:600;color:#222222;}@media(max-width:1024px){.elementor-1678 .elementor-element.elementor-element-66f22496{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-1678 .elementor-element.elementor-element-66f22496{margin-top:30px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-1678 .elementor-element.elementor-element-00300b3 .elementor-heading-title{font-size:25px;}}/* Start custom CSS for shortcode, class: .elementor-element-5ab93e4 *//* =========================================================
   JOSEPHINE — CART (clean white, no grey gaps)
   Scope: .elementor-element-5ab93e4 .woocommerce
   ========================================================= */
.elementor-element-5ab93e4 .woocommerce{
  --text:#111; --muted:#6b6b6b; --line:#e9e9e9;
  --radius:10px; --h:44px; --fz:12.5px;
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--text);
}

/* ========== Notices ========== */
.elementor-element-5ab93e4 .woocommerce .woocommerce-message,
.elementor-element-5ab93e4 .woocommerce .woocommerce-info,
.elementor-element-5ab93e4 .woocommerce .woocommerce-error{
  margin:0 0 16px 0; background:#fff; border:1px solid var(--line);
  border-radius:var(--radius); padding:12px 14px; color:var(--text);
  box-shadow:none;
}

/* =========================================================
   CART TABLE — Desktop (pure white, no zebra/shadows)
   ========================================================= */
.elementor-element-5ab93e4 .woocommerce table.shop_table{
  width:100%; border-collapse:separate; border-spacing:0;
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  overflow:hidden; table-layout:fixed; box-shadow:none;
}
.elementor-element-5ab93e4 .woocommerce table.shop_table thead th{
  background:#fff; color:var(--muted); text-transform:uppercase; letter-spacing:.02em;
  font-size:11.5px; font-weight:600; padding:12px 18px; border-bottom:1px solid var(--line);
}
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody tr,
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody td{
  background:#fff !important; box-shadow:none !important;
}
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody tr:nth-child(odd),
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody tr:nth-child(even){
  background:#fff !important; /* tắt zebra hoàn toàn */
}
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody td{
  padding:18px; vertical-align:middle; font-size:var(--fz); border-bottom:1px solid var(--line);
}
.elementor-element-5ab93e4 .woocommerce table.shop_table tbody tr:last-child td{border-bottom:none}

/* Cột cố định để không xẹp */
.elementor-element-5ab93e4 .woocommerce th.product-thumbnail,
.elementor-element-5ab93e4 .woocommerce td.product-thumbnail{width:120px; text-align:center}
.elementor-element-5ab93e4 .woocommerce th.product-price,
.elementor-element-5ab93e4 .woocommerce td.product-price{width:140px; text-align:right}
.elementor-element-5ab93e4 .woocommerce th.product-quantity,
.elementor-element-5ab93e4 .woocommerce td.product-quantity{width:150px; text-align:center}
.elementor-element-5ab93e4 .woocommerce th.product-subtotal,
.elementor-element-5ab93e4 .woocommerce td.product-subtotal{width:150px; text-align:right}

/* Remove (x) */
.elementor-element-5ab93e4 .woocommerce a.remove{
  width:26px;height:26px;border:1px solid var(--line);border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;line-height:1;
  color:var(--text); text-decoration:none; transition:background .15s ease, transform .08s ease;
}
.elementor-element-5ab93e4 .woocommerce a.remove:hover{background:#f6f6f6; transform:scale(1.03)}

/* Thumbnail */
.elementor-element-5ab93e4 .woocommerce td.product-thumbnail a{display:block}
.elementor-element-5ab93e4 .woocommerce td.product-thumbnail img{
  width:96px;height:128px;object-fit:cover;border-radius:8px;display:block; opacity:1;visibility:visible;
}

/* Tên sản phẩm */
.elementor-element-5ab93e4 .woocommerce td.product-name a{
  color:var(--text); text-decoration:none; font-weight:500; font-size:13px;
}
.elementor-element-5ab93e4 .woocommerce td.product-name a:hover{opacity:.85}

/* Giá/Subtotal — số thẳng cột */
.elementor-element-5ab93e4 .woocommerce .amount bdi{ font-variant-numeric:tabular-nums; font-size:13px; }

/* Quantity */
.elementor-element-5ab93e4 .woocommerce td.product-quantity .quantity{
  display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line);
  border-radius:8px; padding:6px 10px; background:#fff;
}
.elementor-element-5ab93e4 .woocommerce .quantity input.qty{
  width:52px; height:22px; border:none; background:transparent; text-align:center;
  font-size:var(--fz); padding:0; outline:none;
}

/* =========================================================
   ACTIONS ROW (Coupon / Apply / Update)
   ========================================================= */
.elementor-element-5ab93e4 .woocommerce td.actions{
  display:grid; grid-template-columns:1fr auto auto; gap:12px; align-items:center;
  padding:16px 18px; background:#fff; border-top:1px solid var(--line);
}
.elementor-element-5ab93e4 .woocommerce td.actions *{float:none; margin:0}
.elementor-element-5ab93e4 .woocommerce td.actions .coupon{display:contents}
.elementor-element-5ab93e4 .woocommerce #coupon_code{
  grid-column:1/2; height:var(--h); border:1px solid var(--line); border-radius:8px;
  background:#fff; padding:0 14px; font-size:var(--fz);
  display:flex; align-items:center; box-sizing:border-box;
  min-width:0; /* quan trọng để không bị co bố cục */
  flex:1 1 auto;
}

/* Buttons */
.elementor-element-5ab93e4 .woocommerce .button,
.elementor-element-5ab93e4 .woocommerce a.button,
.elementor-element-5ab93e4 .woocommerce button.button,
.elementor-element-5ab93e4 .woocommerce .wc-proceed-to-checkout .checkout-button{
  height:var(--h); padding:0 18px; border-radius:8px; border:1px solid var(--text);
  background:#fff; color:var(--text); text-decoration:none;
  display:inline-flex; align-items:center; justify-content:center;
  line-height:normal; font-size:12.5px; font-weight:600; letter-spacing:.02em;
  transition:background .15s ease, color .15s ease;
}
.elementor-element-5ab93e4 .woocommerce .button:hover,
.elementor-element-5ab93e4 .woocommerce .wc-proceed-to-checkout .checkout-button:hover{
  background:#111; color:#fff !important;
}
.elementor-element-5ab93e4 .woocommerce button[disabled]{opacity:.45; cursor:not-allowed}

/* =========================================================
   CART TOTALS (card phải)
   ========================================================= */
.elementor-element-5ab93e4 .woocommerce .cart-collaterals{margin-top:24px}
.elementor-element-5ab93e4 .woocommerce .cart_totals{
  background:#fff; border:1px solid var(--line); border-radius:var(--radius);
  padding:18px; max-width:420px; margin-left:auto; box-shadow:none;
}
.elementor-element-5ab93e4 .woocommerce .cart_totals h2{
  margin:0 0 6px; font-size:11.5px; font-weight:600; color:var(--muted);
  text-transform:uppercase; letter-spacing:.02em;
}
.elementor-element-5ab93e4 .woocommerce .cart_totals table.shop_table{
  border:none; background:transparent; width:100%;
}
.elementor-element-5ab93e4 .woocommerce .cart_totals table.shop_table th,
.elementor-element-5ab93e4 .woocommerce .cart_totals table.shop_table td{
  border:none; padding:10px 0; font-size:var(--fz); background:#fff;
}
.elementor-element-5ab93e4 .woocommerce .cart_totals .cart-subtotal th,
.elementor-element-5ab93e4 .woocommerce .cart_totals .cart-subtotal td{color:var(--muted)}
.elementor-element-5ab93e4 .woocommerce .woocommerce-shipping-destination{
  margin:6px 0 0; font-size:12px; color:var(--muted)
}
.elementor-element-5ab93e4 .woocommerce .order-total th,
.elementor-element-5ab93e4 .woocommerce .order-total td{
  border-top:1px solid var(--line); padding-top:14px;
}
.elementor-element-5ab93e4 .woocommerce .order-total .amount bdi{font-size:15px; font-weight:700}
.elementor-element-5ab93e4 .woocommerce .wc-proceed-to-checkout .checkout-button{ width:100%; margin-top:14px; }

/* =========================================================
   MOBILE — card list tinh gọn, trắng hoàn toàn
   ========================================================= */
@media (max-width:768px){
  /* Tắt mọi nền xám/shadow */
  .elementor-element-5ab93e4 .woocommerce .shop_table,
  .elementor-element-5ab93e4 .woocommerce .shop_table *{
    background:#fff !important; box-shadow:none !important;
  }

  /* Bảng responsive của Woo => thẻ card trắng */
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive{
    width:100%; border:0; border-radius:0; table-layout:auto; background:#fff;
  }
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive thead{ display:none !important; }

  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive tbody tr{
    display:block; margin:12px 0; border:1px solid #e9e9e9; border-radius:12px; padding:12px; background:#fff !important;
  }

  /* Ô trong card: xếp dọc, đường phân cách mảnh */
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive tbody td{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    border:none; border-bottom:1px solid #f0f0f0; padding:10px 4px;
    background:#fff !important; font-size:12.5px;
  }
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive tbody tr td:last-child{ border-bottom:none; }

  /* Nhãn data-title giữ chữ, bỏ mọi nền */
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive tbody td::before{
    content:attr(data-title); flex:0 0 auto; color:#777; font-weight:600; background:transparent !important; border:0; padding:0; margin:0;
  }

  /* Ảnh riêng trên đầu card */
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive td.product-thumbnail{
    display:block; border-bottom:1px solid #f0f0f0; padding:0 0 10px 0; background:#fff;
  }
  .elementor-element-5ab93e4 .woocommerce table.shop_table.shop_table_responsive td.product-thumbnail::before{ display:none !important; }
  .elementor-element-5ab93e4 .woocommerce td.product-thumbnail a{display:inline-block}
  .elementor-element-5ab93e4 .woocommerce td.product-thumbnail img{
    width:96px; height:128px; object-fit:cover; border-radius:8px; display:block;
  }

  /* Tên sản phẩm full hàng */
  .elementor-element-5ab93e4 .woocommerce td.product-name{ display:block; padding:8px 0 10px 0; }
  .elementor-element-5ab93e4 .woocommerce td.product-name::before{display:none !important;}
  .elementor-element-5ab93e4 .woocommerce td.product-name a{
    display:block; color:#111; text-decoration:none; font-weight:500; font-size:13px;
  }

  /* Giá & Tổng: giữ tabular numbers */
  .elementor-element-5ab93e4 .woocommerce td.product-price,
  .elementor-element-5ab93e4 .woocommerce td.product-subtotal{
    justify-content:space-between;
  }
  .elementor-element-5ab93e4 .woocommerce .amount bdi{font-variant-numeric:tabular-nums;}

  /* Quantity không co */
  .elementor-element-5ab93e4 .woocommerce td.product-quantity{ justify-content:space-between; }
  .elementor-element-5ab93e4 .woocommerce .quantity{
    display:inline-flex; align-items:center; gap:8px; border:1px solid #e1e1e1;
    border-radius:8px; padding:6px 10px; background:#fff;
  }
  .elementor-element-5ab93e4 .woocommerce .quantity input.qty{
    width:54px; height:22px; border:0; background:transparent; text-align:center; font-size:12.5px; padding:0; outline:none;
  }

  /* ===== Coupon/Actions — Sửa lỗi co & full-width xếp dọc ===== */
  .elementor-element-5ab93e4 .woocommerce td.actions{
    display:grid !important; grid-template-columns:1fr; gap:10px;
    border:0; padding:0; background:#fff !important;
  }
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon{display:contents !important}
  .elementor-element-5ab93e4 .woocommerce #coupon_code{
    width:100%; min-width:0; height:44px; border:1px solid #e1e1e1; border-radius:8px;
    padding:0 14px; background:#fff; font-size:12.5px; flex:1 1 auto;
  }
  .elementor-element-5ab93e4 .woocommerce td.actions .button,
  .elementor-element-5ab93e4 .woocommerce td.actions button{
    width:100%; min-width:0; height:44px; border:1px solid #111; border-radius:8px;
    background:#fff; color:#111; display:inline-flex; align-items:center; justify-content:center;
    line-height:normal; font-size:12.5px; font-weight:600;
  }

  /* Cart totals: trắng hoàn toàn */
  .elementor-element-5ab93e4 .woocommerce .cart_totals,
  .elementor-element-5ab93e4 .woocommerce .cart_totals *{ background:#fff !important; box-shadow:none !important; }
}
/* --- bỏ vạch chia dọc trong bảng & trong hàng actions --- */
.elementor-element-5ab93e4 .woocommerce table.shop_table th,
.elementor-element-5ab93e4 .woocommerce table.shop_table td{
  border-left:0 !important; border-right:0 !important;
}

/* ========== DESKTOP/TABLET: coupon trái, update phải ========== */
@media (min-width:769px){
  .elementor-element-5ab93e4 .woocommerce td.actions{
    display:flex !important;
    align-items:center;
    gap:12px;
    justify-content:space-between;   /* tách trái/phải */
    padding:16px 18px;
    background:#fff;
    border-top:1px solid var(--line);
  }

  /* Nhóm coupon (input + Apply) bên trái */
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon{
    display:flex !important;
    align-items:center;
    gap:10px;
    flex:1 1 auto;                   /* chiếm phần trái */
    min-width:0;
  }
  .elementor-element-5ab93e4 .woocommerce #coupon_code{
    flex:1 1 260px;                  /* co giãn, không làm bể layout */
    min-width:0;
    height:var(--h);
    border:1px solid var(--line);
    border-radius:8px;
    padding:0 14px;
  }
  .elementor-element-5ab93e4 .woocommerce .coupon .button{
    flex:0 0 auto; white-space:nowrap;
  }

  /* Update cart đẩy sát mép phải */
  .elementor-element-5ab93e4 .woocommerce button[name="update_cart"]{
    margin-left:auto;                /* ép sang phải */
    height:var(--h);
  }
}

/* ========== MOBILE: xếp dọc, full-width, không lệch phải ========== */
@media (max-width:768px){
  .elementor-element-5ab93e4 .woocommerce td.actions{
    display:grid !important;
    grid-template-columns:1fr;
    gap:10px;
    border:0;
    padding:0;
    background:#fff !important;
  }
  /* Cho input + apply mỗi cái một hàng full-width */
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon{
    display:contents !important;
  }
  .elementor-element-5ab93e4 .woocommerce #coupon_code{
    width:100%; min-width:0; height:44px;
    border:1px solid #e1e1e1; border-radius:8px; padding:0 14px;
  }
  .elementor-element-5ab93e4 .woocommerce td.actions .button,
  .elementor-element-5ab93e4 .woocommerce td.actions button{
    width:100%; height:44px;
  }
}
/* ==== ACTIONS: desktop/tablet: coupon trái, update phải (không chồng lấn) ==== */
@media (min-width:769px){
  .elementor-element-5ab93e4 .woocommerce td.actions{
    display:grid !important;
    grid-template-columns: minmax(320px, 1fr) auto; /* trái: coupon, phải: update */
    align-items:center; gap:12px;
    padding:16px 18px; background:#fff; border-top:1px solid var(--line);
  }
  .elementor-element-5ab93e4 .woocommerce td.actions *{ float:none !important; }

  /* Nhóm coupon bên trái */
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon{
    grid-column:1/2; display:flex !important; align-items:center; gap:10px;
    min-width:0; /* chống tràn gây đè nút phải */
  }
  .elementor-element-5ab93e4 .woocommerce #coupon_code{
    flex:1 1 auto; min-width:0; height:var(--h);
    border:1px solid var(--line); border-radius:8px; padding:0 14px;
  }
  .elementor-element-5ab93e4 .woocommerce .coupon .button{
    flex:0 0 auto; white-space:nowrap;
  }

  /* Update cart ở cột phải, ép sát mép */
  .elementor-element-5ab93e4 .woocommerce button[name="update_cart"]{
    grid-column:2/3; justify-self:end; height:var(--h);
  }
}

/* ==== MOBILE: 3 phần xếp dọc, 2 nút full-width bằng nhau ==== */
@media (max-width:768px){
  .elementor-element-5ab93e4 .woocommerce td.actions{
    display:grid !important; grid-template-columns:1fr;
    gap:10px; border:0; padding:0; background:#fff !important;
  }
  /* tách input + button thành 2 hàng */
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon{ display:contents !important; }
  .elementor-element-5ab93e4 .woocommerce #coupon_code{
    width:100% !important; min-width:0; height:44px;
    border:1px solid #e1e1e1; border-radius:8px; padding:0 14px;
  }

  /* cho cả Apply & Update full-width */
  .elementor-element-5ab93e4 .woocommerce td.actions .coupon .button,
  .elementor-element-5ab93e4 .woocommerce td.actions button[name="update_cart"]{
    width:100% !important; display:block !important; height:44px;
  }
}

/* Bỏ vạch dọc còn sót trong bảng (nếu có) */
.elementor-element-5ab93e4 .woocommerce table.shop_table th,
.elementor-element-5ab93e4 .woocommerce table.shop_table td{
  border-left:0 !important; border-right:0 !important;
}/* End custom CSS */