/* WooCommerce star rating font */
@font-face {
  font-family: 'WooCommerce';
  src: url('data:application/font-woff;charset=utf-8;base64,') format('woff');
  font-weight: normal;
  font-style: normal;
}
/* Fallback: use unicode stars */
.woocommerce .star-rating { color: #F5A623; font-size: .85rem; letter-spacing: 2px; }
.woocommerce .woocommerce-product-rating { display: flex; align-items: center; gap: .5rem; margin-bottom: 1rem; }
.woocommerce .woocommerce-review-link { font-size: var(--fs-sm); color: var(--clr-muted); text-decoration: none; }
.woocommerce .woocommerce-review-link:hover { color: var(--clr-accent); }

/* Product quantity */
.woocommerce .quantity { display: inline-flex; }
.woocommerce .quantity input.qty {
  width: 56px;
  text-align: center;
  border: 1.5px solid var(--clr-border);
  border-radius: var(--radius-sm);
  padding: .75rem .5rem;
  font-family: var(--ff-head);
  font-weight: 600;
  font-size: var(--fs-lg);
}
.woocommerce .quantity input.qty:focus {
  border-color: var(--clr-accent);
  outline: none;
}

/* Single product add to cart */
.woocommerce .single_add_to_cart_button {
  background: var(--clr-accent) !important;
  border: 2px solid var(--clr-accent) !important;
  color: #fff !important;
  padding: .9rem 2rem !important;
  font-size: var(--fs-base) !important;
  letter-spacing: .04em !important;
  border-radius: var(--radius-sm) !important;
  font-family: var(--ff-head) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  transition: all var(--transition) !important;
}
.woocommerce .single_add_to_cart_button:hover {
  background: #C8281F !important;
  border-color: #C8281F !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(232,51,42,.35) !important;
}

/* Variations */
.woocommerce table.variations { width: 100%; }
.woocommerce table.variations td { padding: .5rem 0; }
.woocommerce table.variations td label {
  font-family: var(--ff-head);
  font-weight: 600;
  font-size: var(--fs-sm);
}
.woocommerce table.variations td select {
  width: 100%;
  padding: .7rem 1rem;
  border: 1.5px solid var(--clr-border);
  border-radius: var(--radius-sm);
  font-family: var(--ff-body);
  font-size: var(--fs-base);
  background: var(--clr-white);
  color: var(--clr-text);
  cursor: pointer;
}
.woocommerce table.variations td select:focus {
  border-color: var(--clr-accent);
  outline: none;
}
.woocommerce .reset_variations {
  font-size: var(--fs-xs);
  color: var(--clr-muted);
  text-decoration: underline;
  margin-top: .5rem;
  display: inline-block;
}

/* Checkout fields */
.woocommerce form .form-row { margin-bottom: 1rem; }
.woocommerce form .form-row label {
  font-family: var(--ff-head);
  font-weight: 500;
  font-size: var(--fs-xs);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--clr-muted);
  margin-bottom: .4rem;
  display: block;
}
.woocommerce form .form-row .required { color: var(--clr-accent); margin-left: 2px; }
.woocommerce .woocommerce-billing-fields__field-wrapper,
.woocommerce .woocommerce-shipping-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.woocommerce .woocommerce-billing-fields__field-wrapper .form-row.wide,
.woocommerce .woocommerce-shipping-fields__field-wrapper .form-row.wide {
  grid-column: 1 / -1;
}
@media (max-width: 640px) {
  .woocommerce .woocommerce-billing-fields__field-wrapper,
  .woocommerce .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns: 1fr;
  }
}

/* Payment methods */
.woocommerce #payment { background: transparent; border-radius: var(--radius-md); }
.woocommerce #payment ul.payment_methods {
  list-style: none;
  border: 1px solid var(--clr-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  margin-bottom: 1rem;
}
.woocommerce #payment ul.payment_methods li {
  padding: 1rem 1.25rem;
  border-bottom: 1px solid var(--clr-border);
  display: flex;
  align-items: center;
  gap: .75rem;
}
.woocommerce #payment ul.payment_methods li:last-child { border-bottom: none; }
.woocommerce #payment ul.payment_methods li label {
  font-family: var(--ff-head);
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: .75rem;
}
.woocommerce #payment div.payment_box {
  background: var(--clr-light);
  padding: 1rem 1.25rem;
  border-radius: 0 0 var(--radius-md) var(--radius-md);
  font-size: var(--fs-sm);
  color: var(--clr-muted);
  margin-top: .5rem;
}
.woocommerce #payment #place_order {
  width: 100%;
  padding: 1.1rem !important;
  background: var(--clr-accent) !important;
  color: #fff !important;
  font-size: var(--fs-base) !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  border-radius: var(--radius-sm) !important;
  border: none !important;
  cursor: pointer !important;
  transition: all var(--transition) !important;
}
.woocommerce #payment #place_order:hover {
  background: #C8281F !important;
  box-shadow: 0 8px 24px rgba(232,51,42,.35) !important;
}

/* Order received */
.woocommerce .woocommerce-order {
  text-align: center;
  padding: 3rem;
}
.woocommerce .woocommerce-order .woocommerce-thankyou-order-details {
  background: var(--clr-light);
  border-radius: var(--radius-lg);
  padding: 1.5rem;
  display: flex;
  gap: 1.5rem;
  justify-content: center;
  flex-wrap: wrap;
  margin: 2rem 0;
}
.woocommerce .woocommerce-order .woocommerce-thankyou-order-details li {
  list-style: none;
}
.woocommerce .woocommerce-order-overview__payment-method strong,
.woocommerce .woocommerce-order-overview__order strong,
.woocommerce .woocommerce-order-overview__date strong,
.woocommerce .woocommerce-order-overview__total strong {
  color: var(--clr-accent);
  font-family: var(--ff-head);
}
