@media (max-width: 768px) {
#billing_first_name_field, #billing_last_name_field, .tt-gh #billing_country_field, .tt-gh #billing_city_field, .tt-gh #billing_state_field, .tt-gh #billing_address_1_field, #shipping-fields > p, .checkout-box.tt-hoa-don > p, .w-49, p#billing_province_field, p#billing_district_field, p#billing_ward_field {
    width: 100% !important;
}
}
/* ========== Layout tổng thể ========== */
.custom-checkout-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 30px 15px;
  font-family: "Roboto", sans-serif;
  color: #1a1a1a;
}

.coupon-box {
    position: relative;
}

.coupon-box svg {
    position: absolute;
    top: 9px;
    left: 5px;
}

input#coupon_code {
    padding-left: 35px;
    border: solid 1px #E1E1EA;
    border-radius: 4px;
}

.cart-head-title {
    display: flex;
	gap: 20px;
	margin: 20px 0 45px 0;
}

.cart-head-title h2 {
    width: fit-content;
    font-size: 40px;
    font-weight: 700;
    line-height: 60px;
	margin: 0;
}

.coupon-box input {
    margin: 0;
}

table.shop_table.order-review-table {
    margin-top: 5px !important;
}

.custom-checkout-wrapper form.checkout {
  display: flex;
  gap: 4%;
  flex-wrap: wrap;
}

.custom-checkout-wrapper span.optional {
    display: none;
}

.custom-checkout-wrapper td.product-total, .custom-checkout-wrapper tr.order-total > td{
    text-align: center !important;
}

.custom-checkout-wrapper tr.fee > td{
	text-align: right;
}

.checkout-left,
.checkout-right {
  width: 48%;
}

/* ========== Thanh step tiến trình ========== */
.checkout-steps {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
  font-size: 14px;
}

.checkout-steps .step {
  flex: 1;
  text-align: center;
  padding: 12px;
  border-bottom: 3px solid #ddd;
  color: #666;
  line-height: 1.4;
}

.checkout-steps .step.active {
  border-color: #2a4d9c;
  color: #2a4d9c;
  font-weight: 600;
}

/* ========== Box trắng cho từng phần ========== */
.checkout-box {
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 25px 20px;
  margin-bottom: 25px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.04);
}

.checkout-box h3 {
    font-size: 24px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    padding-top: 10px !important;
    color: #2D3F65;
}

.tt-gh #billing_country_field, .tt-gh #billing_city_field, .tt-gh #billing_state_field, .tt-gh  #shipping-fields > p, .checkout-box.tt-hoa-don > p, p#billing_province_field, p#billing_district_field, p#billing_ward_field, #billing_district_nt_field {
    width: 49%;
	margin-right: 0;
}

.w-49{
	width: 49% !important;
	margin-right: 0 !important;
}

.checkout-box.tt-kh > p, .checkout-box.tt-gh > p, #shipping-fields {
    width: 100%;
}

.checkout-box.tt-kh, .checkout-box.tt-gh, .checkout-box.tt-hoa-don, #shipping-fields {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

/* ========== Input field ========== */
.woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-shipping-fields__field-wrapper .form-row,
.custom-invoice-fields .form-row {
  margin-bottom: 15px;
}

.woocommerce input.input-text,
.woocommerce select,
.woocommerce textarea {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
  transition: border 0.2s ease;
}

.woocommerce input.input-text:focus,
.woocommerce select:focus,
.woocommerce textarea:focus {
  border-color: #2a4d9c;
  outline: none;
}

/* ========== Radio & Checkbox ========== */
.woocommerce-checkout .form-row .woocommerce-input-wrapper input[type=checkbox],
.woocommerce-checkout .form-row .woocommerce-input-wrapper input[type=radio] {
  margin-right: 6px;
}

.invoice-vat label {
  margin-right: 20px;
  font-weight: normal;
  cursor: pointer;
}

/* ========== Thông tin đơn hàng (order review) ========== */
.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
}

.shop_table.order-review-table th {
    background: #2D3F65;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    text-transform: none;
    text-align: center;
	border: solid 1px #d7d7d7;
}

.cart-discount th {
    text-align: left !important;
    padding: 0 15px !important;
}

th.product-total {
    text-align: center !important;
}

.shop_table.order-review-table td.product-total, .shop_table.order-review-table tr.order-total td {
    text-align: right !important;
}

.shop_table.order-review-table td {
    font-size: 18px !important;
    font-weight: 400;
    color: #2D2D2D;
    text-align: left;
    border: solid 1px #d7d7d7 !important;
	padding: 15px;
}

.shop_table.order-review-table tr.cart-subtotal {
    display: none;
}

.shop_table.order-review-table tr.fee > th{
    font-size: 18px;
    font-weight: 400;
    text-align: left !important;
    border: solid 1px #d7d7d7;
    padding: 15px;
    color: #0F69AF !important;
    background: none;
}

.shop_table.order-review-table tr.order-total > th {
    font-size: 18px;
    font-weight: 400;
    color: #2D2D2D;
    text-align: left !important;
    border: solid 1px #d7d7d7;
    padding: 15px;
    background: none;
}

tr.shipping td {
    color: #0F69AF !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 10px;
  border-bottom: 1px solid #eee;
}

.woocommerce-checkout-review-order-table tfoot th {
  text-align: left;
}

.woocommerce-checkout-review-order-table tfoot td {
  text-align: right;
  font-weight: 600;
}

/* Màu giá giảm */
.woocommerce-checkout-review-order-table .cart-discount td {
  color: #d00;
}

/* Tổng tiền */
.woocommerce-checkout-review-order-table .order-total td {
  color: #2a4d9c;
  font-size: 16px;
}

/* ========== Thanh toán (payment) ========== */
.woocommerce-checkout #payment {
  background: transparent;
  border: none;
}

div#payment .form-row.place-order {
    display: none;
}

.woocommerce-checkout #payment ul.payment_methods {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-checkout #payment ul.payment_methods li {
  margin-bottom: 10px;
}

.woocommerce-checkout #payment ul.payment_methods label {
  font-size: 14px;
  cursor: pointer;
}

/* ========== Nút đặt hàng ========== */
.checkout-submit {
  width: 100%;
  margin-top: 20px;
}

.checkout-submit button {
  background: #2D3F65;
  color: #fff;
  padding: 7px 32px;
  border-radius: 6px;
  border: none;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.25s ease;
}

.checkout-submit button:hover {
  background: #1d3b73;
}

/* ========== Responsive ========== */
@media (max-width: 992px) {
  .checkout-left, .checkout-right {
    width: 100%;
  }
}

/* ==================== */
.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
    width: 100%;
}

/* Căn chỉnh icon bên trong trường input */
.woocommerce-input-wrapper {
    position: relative;
}

.input-icon {
    position: absolute;
    left: 12px;
    top: 40%;
    transform: translateY(-50%);
    z-index: 1;
}

input.with-svg-icon {
    padding-left: 30px; 
}


input#billing_email, input#billing_phone, input#billing_company, input#invoice_company, input#invoice_email {
    padding-left: 40px;
}

p#invoice_vat_field {
    display: flex;
    align-items: center;
	justify-content: space-between;
}

p#invoice_vat_field input#invoice_vat_no {
    margin-left: 40px;
}

.custom-checkout-wrapper label, .custom-checkout-wrapper input {
    font-size: 16px !important;
    color: #373737 !important;
    font-weight: 400;
}

.checkout-left input, .checkout-left select {
    margin-bottom: 5px;
}
