/* Corrosion Integrity — WooCommerce surfaces in the design system.
   Scoped to .ci-scope like everything else; loaded only on shop pages. */

/* ---------- price + buy row on a catalog card ---------- */
.ci-scope .ci-buy{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:.5rem}
.ci-scope .ci-price{font-family:var(--mono);font-size:1.02rem;font-weight:600;color:var(--ink);
  font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.ci-scope .ci-price del{color:var(--ink-4);font-weight:400;margin-right:.4em}
.ci-scope .ci-price ins{text-decoration:none;color:var(--oxide)}
.ci-scope .ci-price-quote{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);font-weight:500}
.ci-scope .ci-cart-add{padding:.55em 1em;font-size:.8rem;margin-left:auto}
.ci-scope .ci-cart-add.loading{opacity:.6;pointer-events:none}
.ci-scope .ci-cart-add.added::after{content:" ✓"}
.ci-scope .ci-prod h4 a:hover{color:var(--accent)}

/* ---------- WooCommerce pages ---------- */
.ci-woo .woocommerce-breadcrumb{font-family:var(--mono);font-size:.68rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ink-3);margin-bottom:1.6rem}
.ci-woo .woocommerce-breadcrumb a{color:var(--accent)}
.ci-woo h1.product_title,.ci-woo .woocommerce-products-header__title{
  font-family:var(--disp);font-stretch:118%;font-weight:800;letter-spacing:-.02em;
  font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.02;margin-bottom:1rem}
.ci-woo .price{font-family:var(--mono);font-size:1.35rem;font-weight:600;color:var(--ink);
  font-variant-numeric:tabular-nums}
.ci-woo .woocommerce-product-details__short-description{font-size:1.02rem;color:var(--ink-2);max-width:60ch}

.ci-woo .button,.ci-woo button.button,.ci-woo input.button,.ci-woo a.button,
.ci-woo .woocommerce-Button,.ci-woo #place_order{
  font-family:var(--sans);font-size:.875rem;font-weight:600;letter-spacing:0;
  background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);
  border-radius:var(--r);padding:.75em 1.3em;line-height:1.2;cursor:pointer;
  transition:background .22s ease,transform .22s ease,box-shadow .22s ease}
.ci-woo .button:hover,.ci-woo button.button:hover,.ci-woo a.button:hover,.ci-woo #place_order:hover{
  background:var(--accent-deep);border-color:var(--accent-deep);color:var(--on-accent);
  transform:translateY(-1px);box-shadow:0 10px 22px -14px rgba(var(--shadow),.85)}
.ci-woo .button.alt{background:var(--current);border-color:var(--current);color:var(--on-current)}
.ci-woo .checkout-button{display:inline-block}

.ci-woo .quantity input.qty{font-family:var(--mono);text-align:center;width:4.5em;
  border:1px solid var(--line-2);background:var(--surface);color:var(--ink);
  border-radius:var(--r);padding:.6em .3em}

/* tables — cart, order review, downloads */
.ci-woo table.shop_table{border:1px solid var(--line-2);border-radius:var(--r);border-collapse:separate;
  border-spacing:0;width:100%;background:var(--surface);overflow:hidden}
.ci-woo table.shop_table th{font-family:var(--mono);font-size:.64rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-3);font-weight:500;text-align:left;
  padding:14px 16px;border-bottom:1px solid var(--line)}
.ci-woo table.shop_table td{padding:16px;border-bottom:1px solid var(--line);color:var(--ink-2);font-size:.94rem}
.ci-woo table.shop_table tr:last-child td{border-bottom:0}
.ci-woo table.shop_table .product-name a{color:var(--ink);font-weight:500}
.ci-woo table.shop_table .amount{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}
.ci-woo .cart_totals h2,.ci-woo #order_review_heading,.ci-woo .woocommerce-billing-fields h3,
.ci-woo .woocommerce-additional-fields h3,.ci-woo #ship-to-different-address{
  font-family:var(--disp);font-stretch:118%;font-weight:700;font-size:1.15rem;letter-spacing:-.008em;
  margin:0 0 1rem}

/* forms */
.ci-woo .form-row{display:flex;flex-direction:column;gap:7px;margin:0 0 14px}
.ci-woo .form-row label{font-family:var(--mono);font-size:.62rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-3)}
.ci-woo .input-text,.ci-woo select,.ci-woo textarea,.ci-woo .select2-container .select2-selection{
  font-family:var(--sans);font-size:.94rem;color:var(--ink);background:var(--surface);
  border:1px solid var(--line-2);border-radius:var(--r);padding:.72em .85em;width:100%;height:auto}
.ci-woo .input-text:focus,.ci-woo select:focus,.ci-woo textarea:focus{outline:none;border-color:var(--accent)}
.ci-woo .required{color:var(--oxide);text-decoration:none}

/* payment methods */
.ci-woo #payment{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r);padding:20px}
.ci-woo #payment ul.payment_methods{list-style:none;margin:0 0 1rem;padding:0;
  border-bottom:1px solid var(--line)}
.ci-woo #payment ul.payment_methods li{padding:12px 0;border-bottom:1px solid var(--line)}
.ci-woo #payment ul.payment_methods li:last-child{border-bottom:0}
.ci-woo #payment ul.payment_methods label{font-family:var(--sans);font-size:.95rem;
  letter-spacing:0;text-transform:none;color:var(--ink);font-weight:500;display:inline}
.ci-woo #payment div.payment_box{background:var(--accent-soft);border-radius:var(--r);
  padding:14px 16px;margin-top:10px;font-size:.9rem;color:var(--ink-2)}
.ci-woo #payment div.payment_box::before{display:none}

/* notices */
.ci-woo .woocommerce-message,.ci-woo .woocommerce-info,.ci-woo .woocommerce-error{
  border:1px solid var(--line-2);border-left:3px solid var(--accent);background:var(--surface);
  border-radius:var(--r);padding:14px 18px;margin:0 0 1.4rem;font-size:.94rem;color:var(--ink-2);
  list-style:none;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ci-woo .woocommerce-message{border-left-color:var(--current)}
.ci-woo .woocommerce-error{border-left-color:var(--oxide)}
.ci-woo .woocommerce-message::before,.ci-woo .woocommerce-info::before,.ci-woo .woocommerce-error::before{display:none}
.ci-woo .woocommerce-message .button{margin-left:auto}

/* shipping choices at checkout */
.ci-woo #shipping_method{list-style:none;margin:0;padding:0}
.ci-woo #shipping_method li{padding:6px 0;font-size:.92rem;color:var(--ink-2)}
.ci-woo .woocommerce-shipping-destination{font-size:.85rem;color:var(--ink-3)}

/* single product gallery */
.ci-woo .woocommerce-product-gallery img{border:1px solid var(--line);border-radius:var(--r)}
.ci-woo .product_meta{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;color:var(--ink-3);
  border-top:1px solid var(--line);padding-top:1.2rem;margin-top:1.6rem}

/* the floating quote tray must not sit on top of the cart button on mobile */
@media (max-width:520px){ .ci-woo .ci-tray{bottom:74px} }

/* ---------- header cart link ---------- */
.ci-scope .ci-cartlink{position:relative;display:inline-flex;align-items:center;justify-content:center;
  width:38px;height:38px;border:1px solid var(--line-2);border-radius:var(--r);color:var(--ink-2);
  background:var(--surface);transition:border-color .22s ease,color .22s ease}
.ci-scope .ci-cartlink:hover{border-color:var(--accent);color:var(--accent)}
.ci-scope .ci-cartlink svg{width:17px;height:17px}
.ci-scope .ci-cartn{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;
  border-radius:9px;background:var(--accent);color:var(--on-accent);font-family:var(--mono);
  font-size:.62rem;font-weight:600;display:flex;align-items:center;justify-content:center;
  font-variant-numeric:tabular-nums}
.ci-scope .ci-cartn[hidden]{display:none}
