/* ==========================================================================
   Bikaoo — WooCommerce Cart & Checkout blocks restyled to the theme.
   WooCommerce builds these pages from blocks, so the classic templates in
   /woocommerce/cart/ only run for the [woocommerce_cart] shortcode. This
   layer gives the block versions the same typography, radii and colours.
   ========================================================================== */

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout{
  max-width:var(--page-width);margin:0 auto;padding:4rem var(--page-gutter) 8rem;
  font-family:var(--font-body-family);}

/* ---- headings ---- */
.wc-block-components-title,
.wp-block-woocommerce-cart h1,.wp-block-woocommerce-cart h2,
.wp-block-woocommerce-checkout h1,.wp-block-woocommerce-checkout h2{
  font-family:var(--font-heading-family)!important;
  font-weight:500!important;letter-spacing:-.02em!important;line-height:1.14!important;}
.wc-block-cart__submit-container,
.wc-block-components-sidebar{min-width:0;}

/* ---- product rows ---- */
.wc-block-cart-items{border:0;}
.wc-block-cart-items__header{
  font-size:1.15rem!important;text-transform:uppercase;letter-spacing:.14em;font-weight:500;
  border-bottom:1px solid rgba(var(--color-foreground),.14);padding-bottom:1.4rem;}
.wc-block-cart-items__row{
  border-bottom:1px solid rgba(var(--color-foreground),.08);padding:2.2rem 0;}
.wc-block-cart-item__image img,
.wc-block-components-order-summary-item__image img{border-radius:12px;}
.wc-block-components-product-name{
  font-size:1.5rem!important;font-weight:500;text-decoration:none!important;}
.wc-block-components-product-name:hover{text-decoration:underline!important;text-underline-offset:.3rem;}
.wc-block-components-product-price__value,
.wc-block-components-product-price{font-size:1.5rem;}
.wc-block-components-product-price__regular{opacity:.5;text-decoration:line-through;}
.wc-block-cart-item__remove-link{
  font-size:1.2rem!important;text-transform:uppercase;letter-spacing:.1em;
  text-underline-offset:.3rem;}

/* ---- quantity stepper ---- */
.wc-block-components-quantity-selector{
  border-radius:var(--inputs-radius)!important;overflow:hidden;
  border:1px solid rgba(var(--color-foreground),.2)!important;}
.wc-block-components-quantity-selector:after{display:none!important;}
.wc-block-components-quantity-selector__button{
  font-size:1.8rem!important;color:rgb(var(--color-foreground))!important;
  transition:background-color .2s ease;}
.wc-block-components-quantity-selector__button:hover{background:rgba(var(--color-foreground),.06)!important;}
.wc-block-components-quantity-selector__input{font-size:1.5rem!important;}

/* ---- totals panel ---- */
.wc-block-components-sidebar-layout .wc-block-components-sidebar{min-width:0;}
.wp-block-woocommerce-cart-totals-block,
.wc-block-components-totals-wrapper{
  border-color:rgba(var(--color-foreground),.12)!important;}
.wc-block-components-totals-item__label{font-size:1.4rem;}
.wc-block-components-totals-item__value{font-size:1.5rem;font-weight:500;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-size:2.2rem;font-weight:600;}

/* ---- buttons ---- */
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button{
  border-radius:var(--buttons-radius)!important;
  background-color:rgb(var(--color-button))!important;
  color:rgb(var(--color-button-text))!important;
  font-family:var(--font-body-family)!important;
  font-size:1.3rem!important;font-weight:500!important;
  letter-spacing:.16em!important;text-transform:uppercase!important;
  padding:1.8rem 2.6rem!important;min-height:auto!important;
  transition:background-color .3s ease,transform .3s ease!important;}
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{
  background-color:var(--bk-coral)!important;transform:translateY(-2px);}
.wc-block-components-button.is-link{
  text-transform:uppercase;letter-spacing:.14em;font-size:1.2rem;
  text-underline-offset:.4rem;}

/* ---- inputs ---- */
.wc-block-components-text-input input[type=text],
.wc-block-components-text-input input[type=email],
.wc-block-components-text-input input[type=tel],
.wc-block-components-text-input input[type=number],
.wc-block-components-combobox input,
.wc-block-components-textarea{
  border-radius:var(--inputs-radius)!important;
  border:1px solid rgba(var(--color-foreground),.2)!important;
  font-family:var(--font-body-family)!important;font-size:1.5rem!important;
  padding:1.4rem 1.6rem!important;}
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:focus + label{font-size:1.2rem;}
.wc-block-components-text-input input:focus{
  box-shadow:0 0 0 1px rgb(var(--color-foreground))!important;
  outline:none!important;}

/* ---- payment methods ---- */
.wc-block-components-radio-control__option{
  border-radius:12px;padding:1.6rem 1.8rem!important;
  border:1px solid rgba(var(--color-foreground),.14);margin-bottom:1rem;}
.wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border-color:rgb(var(--color-foreground));
  box-shadow:0 0 0 1px rgb(var(--color-foreground));}
.wc-block-components-radio-control__label{font-size:1.45rem;font-weight:500;}

/* ---- empty cart ---- */
.wp-block-woocommerce-empty-cart-block{text-align:center;padding:4rem 0 6rem;}
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{margin-bottom:1.6rem;}
.wp-block-woocommerce-empty-cart-block ul,
.wp-block-woocommerce-empty-cart-block li{list-style:none!important;margin-left:0!important;}
.wp-block-woocommerce-empty-cart-block li::marker{content:none;}

/* ---- "New in store" product grid inside the empty cart ---- */
.wc-block-grid__products,.wp-block-woocommerce-product-new .wc-block-grid__products{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--grid-gap-v) var(--grid-gap-h);list-style:none;padding:0;}
@media screen and (max-width:989px){.wc-block-grid__products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media screen and (max-width:749px){.wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr));}}
.wc-block-grid__product{
  list-style:none!important;margin:0!important;padding:0!important;text-align:left;
  border-radius:15px;overflow:hidden;}
.wc-block-grid__product::marker{content:none;}
.wc-block-grid__product-image img{border-radius:15px 15px 0 0;width:100%;}
.wc-block-grid__product-title{
  font-size:1.6rem!important;font-weight:500;letter-spacing:-.01em;
  text-decoration:none!important;padding:1.2rem 1.2rem .4rem;display:block;}
.wc-block-grid__product-title a{text-decoration:none;}
.wc-block-grid__product-price{display:block;padding:0 1.2rem 1.2rem;font-size:1.5rem;}
.wc-block-grid__product-price del{opacity:.5;}
.wc-block-grid__product-price ins{text-decoration:none;color:rgb(var(--jw-brass));font-weight:600;}
.wc-block-grid__product-onsale{
  background:#c9a24b!important;color:#1a1a1a!important;border-color:#c9a24b!important;
  border-radius:var(--badge-corner-radius)!important;
  text-transform:uppercase;letter-spacing:.1em;font-size:1.05rem;font-weight:500;
  padding:.5rem 1rem!important;}
.wc-block-grid__product .wp-block-button__link,
.wc-block-grid__product .add_to_cart_button{
  margin:0 1.2rem 1.4rem;border-radius:var(--buttons-radius);
  background:rgb(var(--color-button));color:rgb(var(--color-button-text));
  text-transform:uppercase;letter-spacing:.14em;font-size:1.05rem;font-weight:500;
  padding:1.1rem 1.6rem;text-decoration:none;display:inline-flex;}

/* ---- misc ---- */
.wc-block-components-notice-banner{border-radius:12px;font-size:1.4rem;}
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout{gap:4rem;}

/* keep the radio dot clear of its label text */
.wc-block-components-radio-control__option{padding-left:4.4rem!important;}
.wc-block-components-radio-control__input{left:1.6rem!important;}
.wc-block-components-radio-control__label-group,
.wc-block-components-radio-control__description-group{padding-left:0!important;}
