
/* TOTA_BUY_QUICK_ALIGNMENT_V2
   Consistent desktop/mobile fields in Buy Now and Quick Checkout.
   No effect on Standard Checkout.
*/

:is([data-buy-now-form], [data-cart-quick-form])
:is(.popup-contact-card, .popup-delivery-card) {
  min-width: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Fix the parent grids responsible for half-width fields. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card .buy-now-two-v737,
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card .buy-now-three-v737 {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

/* Every ordinary field label occupies the full content width. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card label:has(> input[name="billing_full_name"]),
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card label:has(> input[name="billing_phone"]),
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card label:has(> input[name="billing_email"]),
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card label:has(> input[name="billing_complete_address"]),
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card label:has(> input[name="billing_postcode"]) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Normalize field dimensions, overriding older fixed-width rules. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card input[name="billing_full_name"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card input[name="billing_phone"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card input[name="billing_email"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card input[name="billing_complete_address"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card input[name="billing_postcode"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card select[data-tota-district-select] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  min-height: 46px !important;
  box-sizing: border-box !important;
  padding: 10px 12px !important;
  border: 1px solid #d8d8d8 !important;
  border-radius: 10px !important;
  background: #fff !important;
  font: inherit;
  font-size: 13px !important;
}

/* Keep the PIN and conditional district dropdown aligned. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card .cart-quick-location-row {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
.popup-checkout-card .cart-quick-location-row > label {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
[data-tota-district-wrap] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin-top: 12px !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
[data-tota-district-wrap][hidden] {
  display: none !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
[data-tota-district-wrap] > label {
  display: block !important;
  width: 100% !important;
}

/* Mobile: ensure no two-column field layout or horizontal overflow. */
@media (max-width: 767px) {
  :is([data-buy-now-form], [data-cart-quick-form])
  .buy-now-fields-v739 {
    min-width: 0 !important;
  }

  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-checkout-card {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-checkout-card .buy-now-two-v737,
  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-checkout-card .buy-now-three-v737 {
    display: block !important;
  }
}


/* TOTA_DELIVERY_CARD_ALIGNMENT_V3 */

/* Complete Address: override older fixed-width constraints. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card > label:has(input[name="billing_complete_address"]) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card input[name="billing_complete_address"] {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Consistent bottom breathing room inside Delivery Details. */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card {
  padding-bottom: 26px !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card .cart-quick-location-row {
  margin-bottom: 0 !important;
}

@media (max-width: 767px) {
  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-delivery-card {
    padding-bottom: 22px !important;
  }

  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-delivery-card input[name="billing_complete_address"] {
    width: 100% !important;
  }
}


/* TOTA_DELIVERY_GRID_SAVE_VISIBILITY_V4 */

/*
 * The delivery card is a two-column grid in legacy CSS.
 * Make every direct field and location row span both columns.
 */
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card {
  grid-template-columns: minmax(0, 1fr) !important;
  padding-bottom: 26px !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card > label,
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card > .cart-quick-location-row,
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card > .buy-now-two-v737,
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card > .buy-now-three-v737 {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card input[name="billing_complete_address"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card input[name="billing_postcode"],
:is([data-buy-now-form], [data-cart-quick-form])
.popup-delivery-card select[data-tota-district-select] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/*
 * Legacy display:flex!important was overriding hidden.
 * Explicitly respect hidden for save-address controls.
 */
[data-buy-now-form] [data-buy-save-wrap][hidden],
[data-cart-quick-form] [data-cart-quick-save-wrap][hidden],
[data-buy-now-form] .cart-quick-save-address[hidden],
[data-cart-quick-form] .cart-quick-save-address[hidden] {
  display: none !important;
}

/* Keep conditional account/password controls hidden too. */
[data-buy-now-form] [data-buy-password][hidden],
[data-cart-quick-form] [data-cart-quick-password][hidden] {
  display: none !important;
}

@media (max-width: 767px) {
  :is([data-buy-now-form], [data-cart-quick-form])
  .popup-delivery-card {
    grid-template-columns: minmax(0, 1fr) !important;
    padding-bottom: 22px !important;
  }
}
