/* Quiet, readable operational detail, separate from verification. */
.pyx-delivery-details { margin: 14px 0 18px; padding: 14px 16px; border: 1px solid var(--border, #28404a); border-radius: 8px; font-size: 13px; line-height: 1.65; }
.pyx-delivery-details summary { cursor: pointer; font-weight: 600; padding: 4px 0; }
.pyx-delivery-details p { margin: 12px 0 0; }
.pyx-delivery-details a { text-decoration: underline; }
.pyx-delivery-condition { display: block; grid-column: 1 / -1; margin: 8px 0 4px; font-size: 12px; line-height: 1.6; white-space: normal; overflow-wrap: anywhere; text-align: left; }
.pyx-shipping-heading { display: block; margin-bottom: 12px; text-align: left; font-size: 12px; }
.woocommerce-checkout #order_review #shipping_method li,
.woocommerce-cart .cart_totals ul#shipping_method li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 8px 10px; align-items: start; }
.woocommerce-checkout #order_review #shipping_method li label,
.woocommerce-cart .cart_totals ul#shipping_method li label { grid-column: 2; min-width: 0; }
.woocommerce-checkout #order_review #shipping_method .pyx-delivery-condition,
.woocommerce-cart .cart_totals ul#shipping_method .pyx-delivery-condition { grid-column: 2; margin-top: 0; }
.pyx-account-explain { border-left: 3px solid var(--cyan, #45d9df); padding: 14px 18px; margin: 0 0 24px; background: rgba(70,200,210,.06); line-height: 1.6; }
.pyx-account-explain p { margin: 6px 0 0; font-size: 14px; }
.pyx-request-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
#pyxax-request .pyxax-modal-card { max-height: 88dvh; overflow-y: auto; overscroll-behavior: contain; }
#pyxax-request input, #pyxax-request textarea { min-height: 44px; font-size: 16px; }
.pyx-delivery-details summary:focus-visible { outline: 2px solid var(--cyan, #45d9df); outline-offset: 4px; }
@media(max-width: 480px) { .pyx-request-grid { grid-template-columns: 1fr; } }

/* Provider widgets must fit the checkout column, including 320px phones.
 * Override the gateway plugin's desktop-class 300px minimum, not its frames. */
.woocommerce-checkout #ppcp_checkout.desktop.responsive,
.woocommerce-checkout .google-pay-container.checkout.desktop.responsive,
.woocommerce-checkout .apple-pay-container.checkout.desktop.responsive {
  min-width: 0; width: 100%; max-width: 100%; margin-left: 0; margin-right: 0;
}

/* Unit price and payment note are distinct rows, never the same grid cell. */
.pyx-qty-tile [data-out="unit"]:empty,
.pyx-qty-tile [data-out="note"]:empty { display: none; }
@media (max-width: 480px) {
  .pyx-qty-tiles .pyx-qty-tile {
    grid-template-areas: "name flag" "price price" "unit unit" "note note";
    row-gap: 5px;
  }
  .pyx-qty-tiles [data-out="unit"] { grid-area: unit; }
  .pyx-qty-tiles [data-out="note"] { grid-area: note; }
  .pyx-qty-tiles .pyx-qty-tile-price { justify-self: start; white-space: normal; }
  .pyx-qty-tiles .pyx-qty-tile-flag { white-space: normal; text-align: right; }
}

@media (max-width: 360px) {
  body #researchBanner .pyx-ruo-bar-text { min-width: 0; white-space: normal; }
  body #researchBanner button { flex-shrink: 0; }
}

@media (max-width: 480px) {
  .pyx-purchase-block .pyxax-request-panel { padding: 20px 16px; }
  .pyx-purchase-block .pyxax-request-btn.lg {
    width: 100%; max-width: 100%; min-width: 0;
    padding: 14px 16px; white-space: normal; text-align: center;
  }
}

/* A single available method has no visible radio: reclaim that column. */
.woocommerce #shipping_method li:has(> input[type="hidden"]) > label,
.woocommerce #shipping_method li:has(> input[type="hidden"]) > .pyx-delivery-condition { grid-column: 1 / -1; }

/* Quantity offer disclosure only; account/checkout fields are unchanged. */
.pyx-offer-details{margin-top:6px;font:13px/1.55 var(--font-body, sans-serif)}
.pyx-offer-details summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:3px;color:#b5dfeb}
.pyx-offer-details p{margin:8px 0 0;font-size:13px;color:#b4c8d3}
.pyx-offer-details summary:focus-visible{outline:2px solid #79d9ed;outline-offset:3px}
.pyx-offer-unified .offer-condition,.pyx-offer-unified .offer-card{display:inline}
.pyx-offer-unified .offer-condition::before,.pyx-offer-unified .offer-card::before{content:" · "}
.pyx-offer-unified strong.pyx-bogo-hl,.pyx-offer-unified .offer-card{color:#f0f4f8;font-weight:600}
.pyx-offer-unified .pyx-offer-details{margin-top:0}
.pyx-offer-unified .offer-condition{margin-top:4px;font-size:13px}
.pyx-offer-unified .offer-card{margin-top:4px}
