/* === Donate Now product (postid-11777) — widen custom price field === */

/* 1) Make sure parent rows don't clip width */
.postid-11777 form.cart,
.postid-11777 .cart { min-width: 0; }

/* 2) Let the price row breathe if it's flexed anywhere */
.postid-11777 form.cart .elex-nyp-wrapper,
.postid-11777 form.cart .woocommerce-variation-add-to-cart,
.postid-11777 form.cart .variations,
.postid-11777 form.cart .single_variation_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  width: 100%;
}

/* 3) Target the exact field you saw in Inspect */
.postid-11777 form.cart input[name="custom_price_field_11777"],
/* future-proof: any similar custom_price_field_* on this product */
.postid-11777 form.cart input[name^="custom_price_field_"] {
  width: 26rem !important;      /* bump this as you like */
  max-width: 100%;
  min-width: 20ch;              /* readable typing space */
  flex: 0 1 26rem;              /* don’t shrink to nothing in flex rows */
  display: inline-block;
  padding-right: .5rem;
}

/* 4) If the input carries Woo's .input-text class, match it too */
.postid-11777 form.cart input.input-text[name^="custom_price_field_"] {
  width: 26rem !important;
  flex: 0 1 26rem;
}

/* 5) Neutralize tiny size="6" behavior if present */
.postid-11777 form.cart input[name^="custom_price_field_"][size] {
  width: auto !important;
  min-width: 20ch !important;
}

/* 6) Optional: full width on very small phones */
@media (max-width: 480px) {
  .postid-11777 form.cart input[name^="custom_price_field_"] {
    width: 100% !important;
    flex-basis: 100%;
  }
}
/* — Membership product: widen custom price in variation add-to-cart — */

/* Let the inner rows breathe so the input can grow */
.single-product form.variations_form,
.single-product form.variations_form .single_variation_wrap,
.single-product form.variations_form .woocommerce-variation-add-to-cart{
  min-width: 0;
  display: block;
}

/* Catch common NYP/custom-price field names used after a variation is chosen */
.single-product form.variations_form .woocommerce-variation-add-to-cart input[name^="custom_price_field_"],
.single-product form.variations_form .woocommerce-variation-add-to-cart input[name*="custom_price"],
.single-product form.variations_form .woocommerce-variation-add-to-cart input[name="elex_nyp_price"],
.single-product form.variations_form .woocommerce-variation-add-to-cart .elex-nyp-wrapper input{
  width: 26rem !important;   /* roomier typing area */
  max-width: 100%;
  min-width: 20ch;
  display: inline-block;
  flex: 0 1 26rem;
  padding-right: .5rem;
}

/* If a size="6" (etc.) attribute is present, neutralize it */
.single-product form.variations_form .woocommerce-variation-add-to-cart input[name*="custom_price"][size],
.single-product form.variations_form .woocommerce-variation-add-to-cart input[name="elex_nyp_price"][size]{
  width: auto !important;
  min-width: 20ch !important;
}

/* Mobile: allow full line if space is tight */
@media (max-width: 480px){
  .single-product form.variations_form .woocommerce-variation-add-to-cart input[name*="custom_price"],
  .single-product form.variations_form .woocommerce-variation-add-to-cart input[name="elex_nyp_price"]{
    width: 100% !important;
    flex-basis: 100%;
  }
}
/* Widen Name Your Price input field */
.woocommerce div.product form.cart input[name*="price"],
.woocommerce div.product form.cart .name-your-price input,
.woocommerce div.product form.cart input[type="number"] {
    width: 160px;
    min-width: 160px;
    padding: 10px 12px;
    font-size: 1.1rem;
}