
/* ═════════ SHOP PAGES LAYER (cart / checkout / account) — 2026-09-22 ═════════
   Theme's generic .form-row{display:grid} collided with WooCommerce's p.form-row
   (label and input were being split into two grid columns). Everything below is
   scoped to .nsrx-shop-page so marketing/portal views are untouched. */
.nsrx-shop-page{background:var(--bg-cool,#f5f7fa);min-height:calc(100vh - 72px);padding:28px 0 64px;}
.nsrx-shop-inner{max-width:1180px;margin:0 auto;padding:0 28px;}
.nsrx-shop-page .ptitle{font-family:'DM Sans',sans-serif;font-size:28px;color:var(--navy);margin:6px 0 4px;letter-spacing:-.01em;}
.nsrx-shop-page .psub{color:var(--text-secondary);font-size:14px;margin:0 0 24px;}
.nsrx-shop-page .cart-back{font-size:13px;color:var(--text-secondary);text-decoration:none;}
.nsrx-shop-page .cart-back:hover{color:var(--violet);}
.nsrx-steps{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0 10px;}
.nsrx-steps span{font-size:12px;font-weight:600;color:var(--slate-muted);background:#fff;border:1px solid var(--border);border-radius:999px;padding:6px 12px;}
.nsrx-steps span.on{background:var(--navy);border-color:var(--navy);color:#fff;}
.nsrx-steps span.done{color:var(--navy);}
.nsrx-shop-page .woocommerce{font-family:'Inter',sans-serif;color:var(--text);}
/* fields */
.nsrx-shop-page .form-row{display:block!important;grid-template-columns:none!important;margin:0 0 14px!important;padding:0!important;width:auto;float:none!important;}
.nsrx-shop-page .form-row label{display:block;font-size:12.5px;font-weight:600;color:var(--navy);margin:0 0 6px;text-align:left;line-height:1.3;}
.nsrx-shop-page .form-row .required{color:#c0392b;text-decoration:none;}
.nsrx-shop-page .form-row .woocommerce-input-wrapper{display:block;width:100%;}
.nsrx-shop-page input.input-text,.nsrx-shop-page textarea,.nsrx-shop-page select,
.nsrx-shop-page .select2-container .select2-selection--single{width:100%!important;box-sizing:border-box;border:1.5px solid var(--border)!important;border-radius:10px!important;
 background:#fff!important;padding:11px 14px!important;font:400 14.5px/1.4 'Inter',sans-serif!important;color:var(--text)!important;min-height:46px;box-shadow:none!important;transition:border-color .15s;}
.nsrx-shop-page .select2-container .select2-selection--single{height:46px;display:flex;align-items:center;padding:0 14px!important;}
.nsrx-shop-page .select2-container .select2-selection__rendered{padding:0!important;line-height:1.4!important;color:var(--text)!important;}
.nsrx-shop-page .select2-container .select2-selection__arrow{height:44px!important;right:8px!important;}
.nsrx-shop-page input.input-text:focus,.nsrx-shop-page textarea:focus,.nsrx-shop-page select:focus{outline:none;border-color:var(--violet)!important;}
.nsrx-shop-page textarea{min-height:96px;resize:vertical;}
.nsrx-shop-page ::placeholder{color:#9aa6b8;}
.nsrx-shop-page #billing_address_2_field{margin-top:-6px!important;}
.nsrx-shop-page #billing_address_2_field label{position:absolute!important;clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden;}
/* checkout grid: details left, sticky order summary right */
.nsrx-checkout-page form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:0 28px;align-items:start;}
.nsrx-checkout-page form.checkout > *{grid-column:1;}
.nsrx-checkout-page form.checkout > #order_review_heading{grid-column:2;grid-row:1;margin:0;padding:22px 24px 0;background:#fff;border:1px solid var(--border);border-bottom:0;border-radius:16px 16px 0 0;}
.nsrx-checkout-page form.checkout > #order_review{grid-column:2;grid-row:2 / span 6;background:#fff;border:1px solid var(--border);border-top:0;border-radius:0 0 16px 16px;padding:8px 24px 24px;position:sticky;top:96px;}
.nsrx-checkout-page #customer_details{grid-row:1 / span 7;display:block;width:auto;}
.nsrx-checkout-page #customer_details .col-1,.nsrx-checkout-page #customer_details .col-2{float:none!important;width:100%!important;max-width:none;background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;box-sizing:border-box;margin:0 0 20px;}
.nsrx-checkout-page .col2-set::before,.nsrx-checkout-page .col2-set::after{display:none;}
.nsrx-checkout-page h3{font-family:'DM Sans',sans-serif;font-size:17px;font-weight:700;color:var(--navy);margin:0 0 16px;}
.nsrx-checkout-page .woocommerce-billing-fields__field-wrapper,.nsrx-checkout-page .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;}
.nsrx-checkout-page .woocommerce-billing-fields__field-wrapper > .form-row,.nsrx-checkout-page .woocommerce-shipping-fields__field-wrapper > .form-row{grid-column:1 / -1;}
.nsrx-checkout-page .form-row-first{grid-column:1 / 2!important;}
.nsrx-checkout-page .form-row-last{grid-column:2 / 3!important;}
.nsrx-checkout-page #billing_city_field{grid-column:1 / -1!important;}
.nsrx-checkout-page #billing_state_field{grid-column:1 / 2!important;}
.nsrx-checkout-page #billing_postcode_field{grid-column:2 / 3!important;}
.nsrx-checkout-page #billing_phone_field{grid-column:1 / 2!important;}
.nsrx-checkout-page #billing_email_field{grid-column:2 / 3!important;}
.nsrx-checkout-page .woocommerce-account-fields,.nsrx-checkout-page #ship-to-different-address{margin-top:6px;font-size:14px;}
.nsrx-checkout-page #ship-to-different-address label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;}
/* order summary table */
.nsrx-shop-page table.shop_table{border:0!important;border-collapse:collapse;width:100%;margin:0 0 16px!important;border-radius:0!important;}
.nsrx-shop-page table.shop_table th,.nsrx-shop-page table.shop_table td{border:0!important;border-bottom:1px solid var(--border-light,#f0f2f5)!important;padding:12px 0!important;font-size:14px;background:transparent!important;}
.nsrx-checkout-page table.shop_table thead th{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--slate-muted);font-weight:700;}
.nsrx-checkout-page table.shop_table td:last-child,.nsrx-checkout-page table.shop_table th:last-child{text-align:right;}
.nsrx-shop-page table.shop_table tr.order-total th,.nsrx-shop-page table.shop_table tr.order-total td{font-size:17px;color:var(--navy);border-bottom:0!important;}
.nsrx-shop-page .product-quantity{color:var(--slate-muted);font-weight:600;}
/* payment + attestation + place order */
.nsrx-shop-page #payment{background:transparent!important;border-radius:0!important;}
.nsrx-shop-page #payment ul.payment_methods{padding:0 0 12px!important;border:0!important;margin:0!important;}
.nsrx-shop-page #payment ul.payment_methods li{list-style:none;font-size:14px;font-weight:600;color:var(--navy);}
.nsrx-shop-page #payment div.payment_box{background:var(--bg-cool)!important;color:var(--text-secondary)!important;border-radius:10px!important;font-size:13px!important;padding:12px 14px!important;margin:10px 0 0!important;}
.nsrx-shop-page #payment div.payment_box::before{display:none!important;}
.nsrx-shop-page #payment div.form-row.place-order{padding:0!important;margin:0!important;display:flex!important;flex-direction:column;gap:14px;}
.nsrx-shop-page .woocommerce-privacy-policy-text{font-size:12px;color:var(--slate-muted);line-height:1.5;}
.nsrx-shop-page .woocommerce-privacy-policy-text p{margin:0;}
.nsrx-shop-page .nsrx-attestation{order:-1;background:var(--violet-soft,#E8EFFB);border:1px solid #cfdcf5;border-radius:12px;padding:14px!important;margin:0!important;}
.nsrx-shop-page .nsrx-attestation label.checkbox,.nsrx-shop-page label.woocommerce-form__label-for-checkbox{display:flex!important;align-items:flex-start;gap:10px;background:none!important;color:var(--text)!important;
 font-size:12.5px!important;font-weight:500!important;line-height:1.5!important;padding:0!important;margin:0!important;width:auto!important;height:auto!important;border:0!important;box-shadow:none!important;border-radius:0!important;cursor:pointer;}
.nsrx-shop-page .nsrx-attestation input[type=checkbox],.nsrx-shop-page input[type=checkbox]{width:18px;height:18px;min-width:18px;margin:1px 0 0!important;accent-color:var(--navy);}
.nsrx-shop-page .nsrx-attestation .optional{display:none;}
.nsrx-shop-page button.button,.nsrx-shop-page a.button,.nsrx-shop-page input.button,.nsrx-shop-page #place_order,.nsrx-shop-page .checkout-button{
 background:var(--navy)!important;color:#fff!important;border:0!important;border-radius:999px!important;font:600 15px/1 'Inter',sans-serif!important;padding:15px 26px!important;cursor:pointer;transition:background .15s;text-align:center;}
.nsrx-shop-page #place_order,.nsrx-shop-page .checkout-button{width:100%;font-size:16px!important;padding:17px 26px!important;}
.nsrx-shop-page button.button:hover,.nsrx-shop-page a.button:hover,.nsrx-shop-page #place_order:hover,.nsrx-shop-page .checkout-button:hover{background:var(--violet)!important;}
.nsrx-shop-page button.button:disabled,.nsrx-shop-page button.button[disabled]{background:#c9d1de!important;color:#fff!important;opacity:1!important;}
/* coupon + notices */
.nsrx-shop-page .woocommerce-form-coupon-toggle .woocommerce-info,.nsrx-shop-page .woocommerce-info,.nsrx-shop-page .woocommerce-message,.nsrx-shop-page .woocommerce-error{
 background:#fff!important;border:1px solid var(--border)!important;border-left:3px solid var(--violet)!important;border-radius:12px!important;color:var(--text-secondary)!important;font-size:13.5px;padding:13px 16px 13px 44px!important;margin:0 0 18px!important;}
.nsrx-shop-page .woocommerce-error{border-left-color:#c0392b!important;}
.nsrx-shop-page .woocommerce-info::before,.nsrx-shop-page .woocommerce-message::before,.nsrx-shop-page .woocommerce-error::before{color:var(--violet)!important;top:13px!important;left:16px!important;}
.nsrx-shop-page .woocommerce-message .button{padding:8px 14px!important;font-size:12.5px!important;float:right;}
.nsrx-shop-page .woocommerce-info a,.nsrx-shop-page .woocommerce-message a:not(.button){color:var(--violet);font-weight:600;}
.nsrx-shop-page form.checkout_coupon{background:#fff;border:1px solid var(--border)!important;border-radius:12px!important;padding:16px!important;margin:0 0 18px!important;display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.nsrx-shop-page form.checkout_coupon p:not(.form-row){width:100%;margin:0;font-size:13px;color:var(--text-secondary);}
.nsrx-shop-page form.checkout_coupon .form-row{flex:1;margin:0!important;}
/* cart */
.nsrx-cart-page .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;}
.nsrx-cart-page .woocommerce > .woocommerce-notices-wrapper{grid-column:1 / -1;}
.nsrx-cart-page .woocommerce > .cart-empty,.nsrx-cart-page .woocommerce > .return-to-shop{grid-column:1 / -1;}
.nsrx-cart-page form.woocommerce-cart-form{background:#fff;border:1px solid var(--border);border-radius:16px;padding:8px 22px;}
.nsrx-cart-page .cart-collaterals{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;position:sticky;top:96px;}
.nsrx-cart-page .cart-collaterals .cart_totals{width:100%!important;float:none!important;}
.nsrx-cart-page .cart_totals h2{font-family:'DM Sans',sans-serif;font-size:17px;color:var(--navy);margin:0 0 8px;}
.nsrx-cart-page table.cart thead th{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:var(--slate-muted);font-weight:700;}
.nsrx-cart-page table.cart img{width:56px!important;border-radius:8px;background:var(--bg-cool);}
.nsrx-cart-page table.cart td.product-name a{color:var(--navy);text-decoration:none;font-weight:600;}
.nsrx-cart-page table.cart a.remove{color:var(--slate-muted)!important;font-weight:400;}
.nsrx-cart-page table.cart a.remove:hover{background:#fdecea!important;color:#c0392b!important;}
.nsrx-cart-page .quantity input.qty{width:72px;min-height:40px;padding:6px 8px!important;text-align:center;}
.nsrx-cart-page td.actions{padding-top:16px!important;}
.nsrx-cart-page td.actions .coupon{display:flex;gap:8px;align-items:center;}
.nsrx-cart-page td.actions .coupon input.input-text{width:170px!important;min-height:40px;padding:8px 12px!important;}
.nsrx-cart-page td.actions .button{padding:11px 18px!important;font-size:13px!important;}
.nsrx-cart-page td.actions button[name=update_cart]{background:#fff!important;color:var(--navy)!important;border:1.5px solid var(--border)!important;}
.nsrx-cart-page .wc-proceed-to-checkout{padding:8px 0 0!important;}
.nsrx-shop-page .return-to-shop .button{display:inline-block;}
/* account */
.nsrx-account-page .woocommerce{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px;}
.nsrx-account-page .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0 0 20px;display:flex;gap:8px;flex-wrap:wrap;}
.nsrx-account-page .woocommerce-MyAccount-navigation a{display:inline-block;padding:8px 14px;border:1px solid var(--border);border-radius:999px;font-size:13px;color:var(--navy);text-decoration:none;}
.nsrx-account-page .woocommerce-MyAccount-navigation .is-active a{background:var(--navy);color:#fff;border-color:var(--navy);}
.nsrx-account-page .woocommerce-MyAccount-navigation,.nsrx-account-page .woocommerce-MyAccount-content{float:none!important;width:100%!important;}
/* order received */
.nsrx-shop-page ul.woocommerce-order-overview{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 20px;}
.nsrx-shop-page ul.woocommerce-order-overview li{background:#fff;border:1px solid var(--border)!important;border-radius:12px;padding:12px 16px!important;margin:0!important;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--slate-muted);}
.nsrx-shop-page ul.woocommerce-order-overview li strong{display:block;font-size:14px;text-transform:none;letter-spacing:0;color:var(--navy);margin-top:4px;}
.nsrx-shop-page .woocommerce-order-details,.nsrx-shop-page .woocommerce-customer-details{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;margin-bottom:18px;}
.nsrx-shop-page .woocommerce-customer-details address{border:0!important;padding:0!important;font-style:normal;line-height:1.6;}
/* responsive */
@media(max-width:980px){
 .nsrx-checkout-page form.checkout{grid-template-columns:1fr;}
 .nsrx-checkout-page form.checkout > #order_review_heading,.nsrx-checkout-page form.checkout > #order_review{grid-column:1;grid-row:auto;position:static;}
 .nsrx-checkout-page #customer_details{grid-row:auto;}
 .nsrx-cart-page .woocommerce{grid-template-columns:1fr;}
 .nsrx-cart-page .cart-collaterals{position:static;}
}
@media(max-width:600px){
 .nsrx-shop-inner{padding:0 14px;}
 .nsrx-shop-page .ptitle{font-size:24px;}
 .nsrx-checkout-page #customer_details .col-1,.nsrx-checkout-page #customer_details .col-2,.nsrx-checkout-page form.checkout > #order_review{padding:18px;}
 .nsrx-checkout-page form.checkout > #order_review_heading{padding:18px 18px 0;}
 .nsrx-checkout-page .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr;}
 .nsrx-checkout-page .woocommerce-billing-fields__field-wrapper > .form-row{grid-column:1 / -1!important;}
 .nsrx-shop-page input.input-text,.nsrx-shop-page textarea,.nsrx-shop-page select{font-size:16px!important;}
 .nsrx-cart-page form.woocommerce-cart-form{padding:4px 14px;}
 .nsrx-cart-page table.shop_table_responsive tr td{text-align:right!important;}
 .nsrx-cart-page td.actions .coupon{flex-direction:column;align-items:stretch;}
 .nsrx-cart-page td.actions .coupon input.input-text{width:100%!important;}
 .nsrx-cart-page td.actions .button{width:100%;margin-top:8px;}
 .nsrx-steps span{font-size:11px;padding:5px 10px;}
}
/* v2 polish */
.nsrx-shop-page .form-row-first,.nsrx-shop-page .form-row-last,.nsrx-shop-page .form-row-wide{width:auto!important;}
.nsrx-checkout-page form.checkout > #order_review_heading{display:none;}
.nsrx-checkout-page form.checkout > #order_review{grid-row:1 / span 7;border-top:1px solid var(--border);border-radius:16px;padding:22px 24px 24px;}
.nsrx-checkout-page form.checkout > #order_review::before{content:"Your order";display:block;font:700 17px 'DM Sans',sans-serif;color:var(--navy);margin:0 0 8px;}
.nsrx-checkout-page .woocommerce-account-fields p.create-account{margin:4px 0 0!important;}
.nsrx-checkout-page .woocommerce-account-fields label{justify-content:flex-start;}
.nsrx-shop-page .woocommerce-message,.nsrx-shop-page .woocommerce-info,.nsrx-shop-page .woocommerce-error{outline:none!important;box-shadow:none!important;}
.nsrx-shop-page .woocommerce-notices-wrapper:focus,.nsrx-shop-page [role=alert]:focus{outline:none!important;}
.nsrx-cart-page .quantity input.qty{width:76px!important;max-width:76px;}
@media(max-width:980px){.nsrx-checkout-page form.checkout > #order_review{grid-row:auto;}}
@media(max-width:600px){
 .nsrx-checkout-page .woocommerce-billing-fields__field-wrapper > .form-row,
 .nsrx-checkout-page #billing_first_name_field,.nsrx-checkout-page #billing_last_name_field,
 .nsrx-checkout-page #billing_state_field,.nsrx-checkout-page #billing_postcode_field,
 .nsrx-checkout-page #billing_phone_field,.nsrx-checkout-page #billing_email_field{grid-column:1 / -1!important;}
 .nsrx-cart-page .quantity input.qty{width:90px!important;max-width:90px;margin-left:auto;display:block;}
}
.nsrx-shop-page p.woocommerce-thankyou-order-received{display:none;}
.nsrx-shop-page .woocommerce-order > p{color:var(--text-secondary);font-size:14px;margin:0 0 18px;}
