/* VOLTARC — WooCommerce global overrides: cart, checkout, account, notices */

/* ─────────── WC notices ─────────── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
  border-top:3px solid var(--vx-volt);
  background:var(--vx-surface);
  color:var(--vx-cloud);
  padding:1rem 1.25rem;
  border-radius:0 0 var(--vx-radius) var(--vx-radius);
  margin-bottom:1.5rem;
}
.woocommerce-error{border-top-color:var(--vx-danger)}
.woocommerce-info{border-top-color:var(--vx-cyan)}

/* ─────────── Cart page ─────────── */
.woocommerce-cart-form table.cart{
  width:100%;
  border-collapse:collapse;
}
.woocommerce-cart-form table.cart td,
.woocommerce-cart-form table.cart th{
  padding:.875rem 1rem;
  border-bottom:1px solid rgba(255,255,255,.06);
  vertical-align:middle;
  color:var(--vx-cloud);
}
.woocommerce-cart-form table.cart thead th{
  font-family:var(--vx-font-display);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--vx-slate);
  padding-bottom:.625rem;
}
.woocommerce-cart-form table.cart td.product-name a{
  font-weight:700;
  color:var(--vx-white);
}
.woocommerce-cart-form table.cart td.product-price,
.woocommerce-cart-form table.cart td.product-subtotal{
  font-family:var(--vx-font-mono);
  color:var(--vx-volt);
}
.woocommerce-cart-form table.cart .quantity input{
  background:var(--vx-surface);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--vx-radius);
  color:var(--vx-cloud);
  text-align:center;
  width:4.5rem;
  padding:.4rem;
}
.woocommerce-cart-form table.cart a.remove{
  color:var(--vx-danger) !important;
  font-size:1.125rem;
  opacity:.7;
  transition:opacity var(--vx-dur) var(--vx-ease);
}
.woocommerce-cart-form table.cart a.remove:hover{opacity:1}

/* Cart totals */
.cart_totals{
  background:var(--vx-surface);
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--vx-radius-lg);
  padding:1.5rem;
}
.cart_totals h2{font-size:1.25rem;margin-bottom:1.25rem}
.cart_totals table{width:100%;border-collapse:collapse}
.cart_totals table th,.cart_totals table td{
  padding:.625rem 0;
  border-bottom:1px solid rgba(255,255,255,.06);
  vertical-align:middle;
  color:var(--vx-cloud);
}
.cart_totals table th{
  font-weight:700;
  color:var(--vx-slate);
  font-size:.875rem;
  width:40%;
}
.cart_totals table .order-total th,
.cart_totals table .order-total td{
  border-bottom:none;
  font-family:var(--vx-font-mono);
  color:var(--vx-volt);
  font-size:1.25rem;
  font-weight:700;
  padding-top:1rem;
}

/* ─────────── Checkout ─────────── */
.woocommerce-checkout #checkout,
.woocommerce-checkout .woocommerce{
  max-width:100%;
}
.woocommerce-checkout-payment{
  background:var(--vx-surface);
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--vx-radius-lg);
  padding:1.5rem;
}
.woocommerce-checkout-payment ul.payment_methods{
  list-style:none;
  padding:0;
  margin:0 0 1.25rem;
  display:flex;
  flex-direction:column;
  gap:.5rem;
}
.woocommerce-checkout-payment ul.payment_methods li label{
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.875rem 1rem;
  background:var(--vx-carbon);
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--vx-radius);
  cursor:pointer;
  transition:border-color var(--vx-dur) var(--vx-ease);
  font-size:.9375rem;
  color:var(--vx-cloud);
}
.woocommerce-checkout-payment ul.payment_methods li input[type=radio]:checked + label,
.woocommerce-checkout-payment ul.payment_methods li label:has(input:checked){
  border-color:var(--vx-volt);
}
.woocommerce-checkout-payment div.payment_box{
  background:var(--vx-carbon);
  border-radius:var(--vx-radius);
  padding:.875rem 1rem;
  font-size:.875rem;
  color:var(--vx-slate);
  margin-top:.5rem;
}

/* Form fields */
.woocommerce form .form-row,
.woocommerce-checkout form .form-row{
  margin-bottom:1rem;
}
.woocommerce form .form-row label,
.woocommerce-checkout form .form-row label{
  display:block;
  font-size:.8125rem;
  font-weight:700;
  color:var(--vx-slate);
  margin-bottom:.375rem;
}
.woocommerce form .form-row input,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea,
.woocommerce-checkout form .form-row input,
.woocommerce-checkout form .form-row select{
  width:100%;
  background:var(--vx-surface);
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--vx-radius);
  color:var(--vx-cloud);
  padding:.625rem .875rem;
  font-size:.9375rem;
  transition:border-color var(--vx-dur) var(--vx-ease);
}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row select:focus,
.woocommerce-checkout form .form-row input:focus{
  border-color:var(--vx-volt);
  outline:none;
  box-shadow:0 0 0 3px rgba(200,255,43,.15);
}
.woocommerce form .form-row.woocommerce-invalid input{border-color:var(--vx-danger)}
.woocommerce form .form-row .required{color:var(--vx-danger)}

/* Order review table */
#order_review table.woocommerce-checkout-review-order-table{
  width:100%;
  border-collapse:collapse;
  background:var(--vx-surface);
  border-radius:var(--vx-radius-lg);
  overflow:hidden;
  padding:1.25rem;
  border:1px solid rgba(255,255,255,.06);
}
#order_review table.woocommerce-checkout-review-order-table th,
#order_review table.woocommerce-checkout-review-order-table td{
  padding:.625rem .875rem;
  border-bottom:1px solid rgba(255,255,255,.06);
  color:var(--vx-cloud);
  font-size:.9375rem;
}
#order_review table.woocommerce-checkout-review-order-table tfoot .order-total th,
#order_review table.woocommerce-checkout-review-order-table tfoot .order-total td{
  font-family:var(--vx-font-mono);
  font-size:1.125rem;
  color:var(--vx-volt);
  border-bottom:none;
}

/* Place order button */
#place_order{
  width:100%;
  font-size:1.0625rem;
  padding:1rem;
  border-radius:var(--vx-radius-lg);
  margin-top:1rem;
}

/* ─────────── GDPR / Complianz overrides ─────────── */
#cmplz-cookiebanner-container .cmplz-cookiebanner{
  background:var(--vx-surface) !important;
  border:1px solid rgba(200,255,43,.15) !important;
  border-radius:var(--vx-radius-lg) !important;
  color:var(--vx-cloud) !important;
}
#cmplz-cookiebanner-container .cmplz-btn.cmplz-accept{
  background:var(--vx-volt) !important;
  color:var(--vx-ink) !important;
  border:none !important;
}
#cmplz-cookiebanner-container .cmplz-btn.cmplz-deny{
  background:transparent !important;
  border:1px solid rgba(255,255,255,.2) !important;
  color:var(--vx-cloud) !important;
}

/* ─────────── Account pages ─────────── */
.woocommerce-account .woocommerce-MyAccount-navigation{
  background:var(--vx-surface);
  border:1px solid rgba(255,255,255,.06);
  border-radius:var(--vx-radius-lg);
  padding:1rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:.25rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{
  display:block;
  padding:.5rem .875rem;
  border-radius:.375rem;
  font-size:.875rem;
  color:var(--vx-cloud);
  transition:background var(--vx-dur) var(--vx-ease),color var(--vx-dur) var(--vx-ease);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover{
  background:rgba(200,255,43,.08);
  color:var(--vx-volt);
}

/* ─────────── Rank Math breadcrumb ─────────── */
.rank-math-breadcrumb{
  font-size:.8125rem;
  color:var(--vx-slate);
  margin-bottom:.75rem;
}
.rank-math-breadcrumb a{color:var(--vx-slate)}
.rank-math-breadcrumb a:hover{color:var(--vx-volt)}
.rank-math-breadcrumb .separator{margin:0 .375rem;opacity:.4}
