/* Neuro Zajawka — WooCommerce cart + checkout */

body.woocommerce-cart,
body.woocommerce-checkout {
  background:#F8F7F4;
  color:#111;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce {
  width:min(100% - 2rem, 1180px);
  margin:0 auto;
  padding:3.5rem 0 5rem;
  font-family:"Plus Jakarta Sans",sans-serif;
}

body.woocommerce-cart .entry-title,
body.woocommerce-checkout .entry-title,
body.woocommerce-cart .woocommerce h2,
body.woocommerce-cart .woocommerce h3,
body.woocommerce-checkout .woocommerce h2,
body.woocommerce-checkout .woocommerce h3 {
  font-family:"Syne",sans-serif;
  font-weight:800;
  letter-spacing:-.035em;
  color:#111;
}

body.woocommerce-cart .woocommerce table.shop_table,
body.woocommerce-checkout .woocommerce table.shop_table {
  border:1px solid #D9D5CB;
  border-radius:0;
  background:#F8F7F4;
  overflow:hidden;
}

body.woocommerce-cart .woocommerce table.shop_table th,
body.woocommerce-checkout .woocommerce table.shop_table th {
  font-family:"Space Mono",monospace;
  font-size:.7rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-weight:700;
  color:#55514B;
}

body.woocommerce-cart .woocommerce table.shop_table td,
body.woocommerce-checkout .woocommerce table.shop_table td {
  border-color:#E2DED5;
}

body.woocommerce-cart .woocommerce a,
body.woocommerce-checkout .woocommerce a {
  color:#111;
}

body.woocommerce-cart .woocommerce a:hover,
body.woocommerce-checkout .woocommerce a:hover {
  color:#B33629;
}

body.woocommerce-cart .woocommerce .button,
body.woocommerce-checkout .woocommerce .button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-checkout .woocommerce button.button {
  border-radius:0 !important;
  border:1px solid #111 !important;
  background:#111 !important;
  color:#fff !important;
  min-height:3.35rem;
  padding:.9rem 1.25rem !important;
  font-family:"Space Mono",monospace !important;
  font-size:.72rem !important;
  font-weight:700 !important;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:none !important;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}

body.woocommerce-cart .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce .button:hover,
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-checkout .woocommerce a.button:hover,
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-checkout .woocommerce button.button:hover {
  background:#B33629 !important;
  border-color:#B33629 !important;
  color:#fff !important;
  transform:translateY(-1px);
}

/* Cart */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals {
  margin-top:1.25rem;
}

body.woocommerce-cart .cart_totals {
  width:min(100%,520px) !important;
  float:right !important;
  padding:1.5rem;
  border:1px solid #D9D5CB;
  background:#F0EDE6;
}

body.woocommerce-cart .cart_totals h2 {
  margin:0 0 1rem;
  font-size:clamp(1.35rem,2vw,1.8rem);
}

body.woocommerce-cart .wc-proceed-to-checkout {
  padding-bottom:0;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:100%;
  margin:1rem 0 0 !important;
  min-height:3.8rem;
  background:#111 !important;
  border:1px solid #111 !important;
  color:#fff !important;
  font-family:"Space Mono",monospace !important;
  font-size:.76rem !important;
  font-weight:700 !important;
  letter-spacing:.1em;
  text-transform:uppercase;
  border-radius:0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
  background:#B33629 !important;
  border-color:#B33629 !important;
}

body.woocommerce-cart #wc-stripe-express-checkout-element {
  display:none !important;
}

body.woocommerce-cart .coupon input.input-text {
  min-height:3.35rem;
  border-radius:0 !important;
  border:1px solid #CFCAC0 !important;
  background:#fff !important;
}

/* Checkout */
body.woocommerce-checkout form.checkout {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:3rem clamp(3rem,5vw,6rem);
  align-items:start;
}

body.woocommerce-checkout #customer_details {
  grid-column:1;
  grid-row:1;
  width:100%;
  margin:0;
}

/* Keep the semantic Woo heading for screen readers; render the visual heading inside the right column. */
body.woocommerce-checkout #order_review_heading {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

body.woocommerce-checkout #order_review {
  grid-column:2;
  grid-row:1;
  padding:0;
  border:0;
  background:transparent;
}

body.woocommerce-checkout #order_review::before {
  content:"Twoje zamówienie";
  display:block;
  margin:0 0 1.25rem;
  font-family:"Syne",sans-serif;
  font-size:clamp(1.5rem,2.4vw,2rem);
  line-height:1.05;
  font-weight:800;
  letter-spacing:-.035em;
  color:#111;
}

body.woocommerce-checkout #order_review > table.shop_table {
  background:#F0EDE6;
}

body.woocommerce-checkout #payment {
  margin-top:1rem;
}

body.woocommerce-checkout .col2-set,
body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2 {
  width:100% !important;
  float:none !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3 {
  margin-top:0;
  font-size:clamp(1.5rem,2.4vw,2rem);
}

body.woocommerce-checkout .form-row {
  margin:0 0 1rem;
}

body.woocommerce-checkout .form-row label {
  display:block;
  margin:0 0 .45rem;
  font-family:"Space Mono",monospace;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#55514B;
}

body.woocommerce-checkout .woocommerce-input-wrapper input.input-text,
body.woocommerce-checkout .woocommerce-input-wrapper select,
body.woocommerce-checkout .select2-container .select2-selection--single {
  width:100%;
  min-height:3.45rem;
  border:1px solid #CFCAC0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:none !important;
}

body.woocommerce-checkout .woocommerce-input-wrapper input.input-text {
  padding:.85rem 1rem;
}

body.woocommerce-checkout .woocommerce-input-wrapper input.input-text:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection--single,
body.woocommerce-checkout .select2-container--open .select2-selection--single {
  outline:none;
  border-color:#B33629 !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  line-height:3.35rem;
  padding-left:1rem;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  height:3.35rem;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.45rem .55rem;
  border:1px solid #D9D5CB;
  border-top:2px solid #B33629;
  background:#F0EDE6;
  color:#444;
  padding:1rem 1.2rem;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before {
  content:"%" !important;
  position:static !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 1.45rem;
  width:1.45rem;
  height:1.45rem;
  margin:0 .1rem 0 0 !important;
  border:1px solid #B33629;
  color:#B33629;
  font-family:"Space Mono",monospace;
  font-size:.72rem;
  font-weight:700;
  line-height:1;
}

body.woocommerce-checkout .checkout_coupon {
  border-radius:0 !important;
  border:1px solid #D9D5CB !important;
  background:#F8F7F4;
}

body.woocommerce-checkout .neuro-payment-method-heading {
  margin:1.5rem 0 .85rem;
  font-family:"Syne",sans-serif;
  font-size:1.15rem;
  font-weight:800;
  letter-spacing:-.02em;
}

body.woocommerce-checkout #payment {
  border-radius:0 !important;
  background:#111 !important;
  color:#F8F7F4;
}

body.woocommerce-checkout #payment ul.payment_methods {
  padding:1.15rem !important;
  border-bottom:1px solid #303030 !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  padding:.85rem 0;
  border-bottom:1px solid #2A2A2A;
}

body.woocommerce-checkout #payment ul.payment_methods li:last-child {
  border-bottom:0;
}

body.woocommerce-checkout #payment ul.payment_methods li label {
  color:#F8F7F4;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-weight:600;
}

body.woocommerce-checkout #payment div.payment_box {
  margin:.8rem 0 0;
  border-radius:0 !important;
  background:#F8F7F4 !important;
  color:#111 !important;
}

body.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color:#F8F7F4 !important;
}

body.woocommerce-checkout #payment .place-order {
  padding:1.15rem !important;
}

body.woocommerce-checkout #payment .woocommerce-privacy-policy-text {
  color:#BEB9B1;
  font-size:.8rem;
  line-height:1.55;
}

body.woocommerce-checkout #payment .woocommerce-privacy-policy-text a {
  color:#F8F7F4;
  border-bottom:1px solid #6A6660;
}

body.woocommerce-checkout #place_order {
  width:100% !important;
  float:none !important;
  min-height:4rem !important;
  margin-top:1rem !important;
  background:#F8F7F4 !important;
  color:#111 !important;
  border:1px solid #F8F7F4 !important;
  border-radius:0 !important;
  font-family:"Space Mono",monospace !important;
  font-size:.78rem !important;
  font-weight:700 !important;
  letter-spacing:.1em;
  text-transform:uppercase;
}

body.woocommerce-checkout #place_order:hover,
body.woocommerce-checkout #place_order:focus {
  background:#B33629 !important;
  color:#fff !important;
  border-color:#B33629 !important;
}

body.woocommerce-checkout .wc_payment_method input[type="radio"] {
  accent-color:#B33629;
}

/* Keep checkout compact: user can scan product, total and payment in one panel. */
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  margin-bottom:.5rem !important;
  background:transparent !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  padding:.85rem .55rem !important;
}

body.woocommerce-checkout .nz-checkout-item-actions {
  margin-top:.45rem;
}

body.woocommerce-checkout .nz-checkout-remove {
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  color:#8B2C22 !important;
  font-family:"Space Mono",monospace;
  font-size:.66rem;
  font-weight:700;
  letter-spacing:.06em;
  line-height:1.2;
  text-decoration:underline;
  text-underline-offset:.2em;
  text-transform:uppercase;
}

body.woocommerce-checkout .nz-checkout-remove:hover {
  color:#B33629 !important;
}

body.woocommerce-checkout .nz-checkout-remove:focus-visible {
  outline:2px solid #B33629;
  outline-offset:3px;
}

/* Wide desktop checkout: use the available page width instead of the generic page max-width. */
@media (min-width: 901px) {
  body.woocommerce-checkout main.flex-1 > article,
  body.woocommerce-cart main.flex-1 > article {
    width:100% !important;
    max-width:none !important;
    padding-left:clamp(2rem,4vw,5rem) !important;
    padding-right:clamp(2rem,4vw,5rem) !important;
  }

  body.woocommerce-checkout .woocommerce,
  body.woocommerce-cart .woocommerce {
    width:100% !important;
    max-width:1600px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review {
    min-width:0;
  }
}

/* Optional account creation shown to guests. */
body.woocommerce-checkout .woocommerce-account-fields {
  margin-top:.25rem;
}

body.woocommerce-checkout .woocommerce-account-fields .create-account {
  margin:0 0 1rem;
  padding:1rem 1.1rem;
  border:1px solid #D9D5CB;
  background:#F0EDE6;
}

body.woocommerce-checkout .woocommerce-account-fields label.checkbox {
  display:flex;
  align-items:center;
  gap:.7rem;
  margin:0;
  font-family:"Plus Jakarta Sans",sans-serif;
  font-size:.95rem;
  font-weight:600;
  letter-spacing:0;
  text-transform:none;
  color:#111;
  cursor:pointer;
}

body.woocommerce-checkout #createaccount {
  width:18px;
  height:18px;
  margin:0;
  accent-color:#B33629;
}

@media (max-width: 900px) {
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce {
    padding:2rem 0 3.5rem;
  }

  body.woocommerce-checkout form.checkout {
    display:block;
  }

  body.woocommerce-checkout #order_review_heading {
    margin-top:2.25rem;
  }

  body.woocommerce-checkout #order_review {
    padding:1rem;
  }

  body.woocommerce-cart .cart_totals {
    width:100% !important;
    float:none !important;
  }
}

@media (max-width: 640px) {
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout .woocommerce {
    width:min(100% - 1.25rem,1180px);
  }

  body.woocommerce-checkout .form-row-first,
  body.woocommerce-checkout .form-row-last {
    width:100% !important;
    float:none !important;
  }

  body.woocommerce-cart .shop_table_responsive tr,
  body.woocommerce-checkout .shop_table_responsive tr {
    border-color:#D9D5CB !important;
  }
}


/* NZ checkout clarity 2026-09 */
body.woocommerce-checkout .woocommerce-form-coupon-toggle{margin-bottom:.75rem}
body.woocommerce-checkout form.checkout_coupon{margin:0 0 1.5rem!important;padding:.85rem!important;border:1px solid #d9d5cb!important;background:#f3f0e9}
body.woocommerce-checkout form.checkout_coupon p{margin-bottom:.6rem}
body.woocommerce-checkout form.checkout_coupon p:last-child{margin-bottom:0}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{margin-top:1rem}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row,
body.woocommerce-checkout .nz-digital-consent{margin:0 0 .85rem;padding:1rem 1.05rem;border:1px solid #c9c4ba;background:#f4f1ea}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
body.woocommerce-checkout .nz-digital-consent label{display:flex!important;align-items:flex-start;gap:.72rem;margin:0!important;font-family:"Plus Jakarta Sans",sans-serif;font-size:.91rem;font-weight:600;line-height:1.5;letter-spacing:0;text-transform:none;color:#24211e;cursor:pointer}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
body.woocommerce-checkout .nz-digital-consent input[type="checkbox"]{flex:0 0 auto;width:20px;height:20px;margin:.1rem 0 0!important;accent-color:#b33629}
body.woocommerce-checkout .required{color:#a62d22!important}
body.woocommerce-checkout a{color:#8f281f}
body.woocommerce-checkout input:focus-visible,
body.woocommerce-checkout select:focus-visible,
body.woocommerce-checkout textarea:focus-visible,
body.woocommerce-checkout button:focus-visible,
body.woocommerce-checkout a:focus-visible{outline:3px solid #b33629!important;outline-offset:3px}
body.woocommerce-checkout #place_order{min-height:3.75rem;font-size:.75rem;letter-spacing:.09em}
@media(max-width:900px){
  body.woocommerce-checkout #order_review{padding:0!important}
  body.woocommerce-checkout #order_review_heading{margin-top:1.8rem}
}
@media(max-width:640px){
  body.woocommerce-checkout .woocommerce{padding-top:1.25rem}
  body.woocommerce-checkout h3{font-size:1.2rem;line-height:1.2}
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row,
  body.woocommerce-checkout .nz-digital-consent{padding:.85rem}
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
  body.woocommerce-checkout .nz-digital-consent label{font-size:.86rem;line-height:1.45}
}
