/* Cart, checkout, order received, account — WooCommerce classic markup mapped to the design system */
.woocommerce-notices-wrapper .woocommerce-message,.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 1.25rem;padding:.9rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--neutral-50);font-size:var(--fs-sm)}
.woocommerce-message{border-color:#BBE3CC;background:#EFF9F3;color:#155235}
.woocommerce-error{border-color:#F3C1BC;background:#FDF1F0;color:#7A1C14}
.woocommerce-error li{margin:.2rem 0}
.commerce-hero{padding-block:1.25rem 1.5rem}
.commerce-steps{display:flex;gap:1.5rem;list-style:none;margin:.75rem 0 0;padding:0;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--on-navy-2)}
.commerce-steps .is-active{color:#fff}
.commerce-steps li::before{content:"○ ";color:var(--rose-200)}.commerce-steps .is-active::before{content:"● "}
/* cart */
.cart-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(20rem,.8fr);gap:2.5rem;align-items:start}
@media (max-width:900px){.cart-layout{grid-template-columns:1fr}}
.shop_table{width:100%;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;font-size:var(--fs-sm)}
.shop_table th{background:var(--neutral-50);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}
.shop_table td{vertical-align:middle}
.shop_table .product-thumbnail img{width:5rem;border-radius:4px}
.shop_table .product-name a{font-family:var(--font-display);font-weight:700;text-decoration:none}
.shop_table .variation{font-size:var(--fs-xs);color:var(--text-3);margin:.2rem 0 0}
.shop_table .variation dt,.shop_table .variation dd{display:inline;margin:0}
.shop_table .product-remove a{display:inline-flex;width:1.8rem;height:1.8rem;border-radius:50%;align-items:center;justify-content:center;background:var(--neutral-100);color:var(--text-2);text-decoration:none;font-weight:700}
.shop_table .quantity input{width:4.2rem;text-align:center}
.cart_totals,.order-summary{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;background:#fff;position:sticky;top:6rem}
.cart_totals h2{font-size:1.05rem;margin-bottom:.75rem}
.cart_totals table{font-size:var(--fs-sm)}
.cart_totals th{background:none;font-weight:500;color:var(--text-2)}
.cart_totals .order-total th,.cart_totals .order-total td{font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:var(--navy)}
.aad-ship-note{display:block;font-size:var(--fs-xs);color:var(--text-2);line-height:1.4}
.aad-gst-note{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}
.woocommerce-shipping-calculator{margin-top:.5rem}
.shipping-calculator-button{font-size:var(--fs-xs);font-weight:600}
.wc-proceed-to-checkout .btn{width:100%;margin-top:1rem}
.cart-empty{padding:3rem 1rem;text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}
.cart-side-note{margin-top:1rem;font-size:var(--fs-xs);color:var(--text-3)}
.cart-side-note ul{padding-left:1em;margin:.4rem 0 0}
/* checkout */
.checkout-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(20rem,.9fr);gap:2.5rem;align-items:start}
@media (max-width:900px){.checkout-layout{grid-template-columns:1fr}}
.checkout-block{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.4rem;background:#fff;margin-bottom:1.25rem}
.checkout-block > h2,.checkout-block > h3{font-size:1.05rem;margin:0 0 1rem;display:flex;align-items:center;gap:.6rem}
.checkout-block > h2 .n{width:1.5rem;height:1.5rem;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--font-mono);font-size:.7rem;display:grid;place-items:center}
.form-row{margin:0 0 .9rem;display:grid;gap:.3rem}
.form-row label{font-size:var(--fs-sm);font-weight:600;color:var(--navy)}
.form-row label .required{color:var(--rose);text-decoration:none}
.form-row .optional{font-weight:400;color:var(--text-3);font-size:var(--fs-xs)}
.form-row-first,.form-row-last{display:inline-grid;width:calc(50% - .5rem);vertical-align:top}
.form-row-first{margin-right:1rem}
@media (max-width:560px){.form-row-first,.form-row-last{width:100%;margin-right:0}}
.woocommerce-input-wrapper{display:block}
.select2-container .select2-selection--single{height:2.9rem;border:1.5px solid var(--border-strong);border-radius:var(--radius)}
.select2-container .select2-selection--single .select2-selection__rendered{line-height:2.8rem;padding-left:.8rem}
.select2-container .select2-selection--single .select2-selection__arrow{height:2.8rem}
#ship-to-different-address{font-size:var(--fs-sm)}
#ship-to-different-address label{display:flex;gap:.5rem;align-items:center;font-weight:500}
.woocommerce-additional-fields .form-row-wide.checkbox label{display:flex;gap:.6rem;align-items:flex-start;font-weight:500}
.woocommerce-checkout-review-order-table{font-size:var(--fs-sm)}
.woocommerce-checkout-review-order-table th{background:none}
.woocommerce-checkout-review-order-table .product-name{color:var(--text)}
.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout-review-order-table .order-total td{font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:var(--navy)}
.woocommerce-checkout-review-order-table .cart-subtotal th,.woocommerce-checkout-review-order-table .shipping th,.woocommerce-checkout-review-order-table .tax-rate th{font-weight:500;color:var(--text-2)}
.wc_payment_methods{list-style:none;margin:0 0 1rem;padding:0}
.wc_payment_method{padding:.9rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius);margin-bottom:.5rem}
.wc_payment_method > label{font-weight:700;font-family:var(--font-display);display:flex;gap:.6rem;align-items:center}
.payment_box{font-size:var(--fs-sm);color:var(--text-2);margin:.5rem 0 0;padding-left:1.7rem}
.woocommerce-terms-and-conditions-wrapper{font-size:var(--fs-sm);margin:1rem 0}
.woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text{color:var(--text-3);font-size:var(--fs-xs)}
#place_order{width:100%;min-height:3.4rem;font-size:1.05rem}
.checkout-trust{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.5rem;font-size:var(--fs-xs);color:var(--text-2)}
.checkout-trust li{display:flex;gap:.5rem;align-items:flex-start}
.checkout-trust svg{width:1rem;height:1rem;color:var(--rose);flex:none;margin-top:.1rem}
.blockUI.blockOverlay{border-radius:var(--radius-lg)}
/* order received + account */
.order-received{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.8fr);gap:2.5rem;align-items:start}
@media (max-width:900px){.order-received{grid-template-columns:1fr}}
.woocommerce-order-overview{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;font-size:var(--fs-xs)}
.woocommerce-order-overview li{background:#fff;padding:.8rem 1rem;color:var(--text-3);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase}
.woocommerce-order-overview strong{display:block;font-family:var(--font-display);font-size:1rem;color:var(--navy);text-transform:none;letter-spacing:0;margin-top:.2rem}
.woocommerce-bacs-bank-details{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;background:var(--neutral-50);margin-bottom:1.5rem}
.woocommerce-bacs-bank-details h2,.woocommerce-bacs-bank-details h3{font-size:1rem}
.wc-bacs-bank-details{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}
.wc-bacs-bank-details li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--border)}
.aad-remit{border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;margin-top:1.5rem}
.aad-remit h2{font-size:1.05rem}
.aad-remit p{font-size:var(--fs-sm);color:var(--text-2)}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}
.woocommerce-MyAccount-navigation li a{display:block;padding:.75rem 1rem;border-bottom:1px solid var(--border);text-decoration:none;font-weight:600;font-size:var(--fs-sm)}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--navy);color:#fff}
.account-layout{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:2.5rem;align-items:start}
@media (max-width:900px){.account-layout{grid-template-columns:1fr}}
.woocommerce-form-login,.woocommerce-form-register{max-width:28rem;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}
.woocommerce-form-login .button,.woocommerce-form-register .button{width:100%}
.button,.woocommerce .button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.9rem;padding:.7rem 1.35rem;border-radius:var(--radius);border:1.5px solid var(--navy);background:var(--navy);color:#fff;font-family:var(--font-display);font-weight:700;font-size:.95rem;text-decoration:none;cursor:pointer}
.button.alt,.woocommerce .button.alt{background:var(--rose);border-color:var(--rose)}
.woocommerce-orders-table .button{min-height:2.2rem;padding:.3rem .8rem;font-size:.8rem}
.woocommerce-order-details h2,.woocommerce-customer-details h2{font-size:1.05rem}
