/* Woo / WP extras — tokens from style.css */

.woocommerce-checkout form .form-row,
.woocommerce-cart form .form-row,
.contact-form .field {
  margin: 0 0 var(--space-5);
}
.woocommerce-checkout form .form-row label {
  display: block;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-semibold);
  margin-bottom: var(--space-2);
  color: var(--color-text-primary);
}
.woocommerce-checkout form .form-row input.input-text,
.woocommerce-checkout form .form-row textarea,
.woocommerce-checkout form .form-row select,
.woocommerce-cart form .form-row input.input-text,
.contact-form input:not([type="checkbox"]):not([type="radio"]),
.contact-form select,
.contact-form textarea {
  width: 100%;
  min-height: var(--tap-target, 44px);
  padding: var(--space-4) var(--space-5);
  font: inherit;
  color: var(--color-text-primary);
  background: var(--color-surface-muted);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-none);
  box-sizing: border-box;
}
.contact-form .f-check input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-height: 0;
  min-width: 18px;
  padding: 0;
  margin: 3px 0 0;
  border: 0;
  background: none;
  flex: none;
  accent-color: var(--color-action-primary);
}
.woocommerce form .form-row input.input-text:focus-visible,
.woocommerce form .form-row textarea:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px var(--color-focus-ring);
}
body.woocommerce-page .site-header,
body.woocommerce-checkout .site-header {
  position: relative;
}

.noiymy-checkout {
  max-width: 1120px;
}
form.checkout.woocommerce-checkout,
.woocommerce form.checkout {
  font-family: var(--font-family-primary);
  color: var(--color-text-primary);
}
.woocommerce-page.woocommerce-checkout #order_review,
.woocommerce-page.woocommerce-checkout #order_review_heading,
.woocommerce-page.woocommerce-checkout .col2-set,
form.checkout .col2-set,
form.checkout #order_review,
form.checkout #order_review_heading,
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2,
form.checkout .col2-set .col-1,
form.checkout .col2-set .col-2 {
  float: none !important;
  width: 100% !important;
  clear: none;
}
.noiymy-hide-country,
.woocommerce-checkout .woocommerce-shipping-fields {
  display: none !important;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px 20px;
}
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.woocommerce-checkout form .form-row {
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0;
  overflow: visible;
}
.woocommerce-checkout form .form-row-wide,
.woocommerce-checkout form .form-row-wide.address-field {
  grid-column: 1 / -1;
}
.woocommerce-checkout form .form-row-first,
.woocommerce-checkout form .form-row-last {
  float: none !important;
  width: 100% !important;
  display: block !important;
  margin: 0 !important;
}
.woocommerce-checkout label .optional {
  display: none;
}
@media (max-width: 639px) {
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 960px) {
  form.checkout.woocommerce-checkout,
  .noiymy-checkout form.checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
    column-gap: 40px;
    row-gap: 16px;
    align-items: start;
  }
  form.checkout .woocommerce-NoticeGroup,
  form.checkout .woocommerce-form-coupon-toggle,
  form.checkout .checkout_coupon {
    grid-column: 1 / -1;
  }
  form.checkout .col2-set {
    grid-column: 1;
    grid-row: 2 / span 20;
  }
  form.checkout #order_review_heading {
    grid-column: 2;
    grid-row: 2;
    margin-top: 0;
  }
  form.checkout #order_review {
    grid-column: 2;
    grid-row: 3;
  }
}

.woocommerce-checkout h1,
.woocommerce-checkout h3 {
  font-family: var(--font-family-display);
  font-weight: 600;
  color: var(--color-text-primary);
}
.woocommerce-checkout h3 {
  font-size: var(--font-size-2xl);
  margin: 0 0 var(--space-5);
}

.woocommerce table.shop_table {
  width: 100%;
  border: 1px solid var(--color-border-default);
  border-collapse: collapse;
  background: var(--color-surface-muted);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: var(--space-5);
  border-bottom: 1px solid var(--color-border-default);
  text-align: left;
  font-size: var(--font-size-body);
}
.woocommerce-checkout-review-order {
  background: var(--color-surface-soft);
  padding: var(--space-6);
  border: 1px solid var(--color-border-default);
}
.woocommerce-checkout table.shop_table {
  background: transparent;
  border: 0;
}
.woocommerce-checkout table.shop_table th,
.woocommerce-checkout table.shop_table td {
  vertical-align: top;
  padding: var(--space-4) 0;
}
.woocommerce-checkout table.shop_table tfoot th {
  width: 38%;
  font-weight: var(--font-weight-semibold);
}
.woocommerce-checkout ul#shipping_method,
.woocommerce-checkout .woocommerce-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
  width: 100%;
}
.woocommerce-checkout ul#shipping_method li,
.woocommerce-checkout .woocommerce-shipping-methods li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 8px;
  text-align: left;
}
.woocommerce-checkout ul#shipping_method label,
.woocommerce-checkout .woocommerce-shipping-methods label {
  display: inline;
  font-weight: var(--font-weight-base);
  line-height: 1.4;
}
.woocommerce-checkout #payment {
  background: transparent;
  padding: var(--space-5) 0 0;
  border: 0;
  border-top: 1px solid var(--color-border-default);
  margin-top: var(--space-2);
}
.woocommerce-checkout #payment ul.payment_methods {
  list-style: none;
  margin: 0;
  padding: 0;
}
.woocommerce-checkout #payment ul.payment_methods li {
  margin: 0 0 var(--space-4);
}
.woocommerce-checkout #payment div.payment_box {
  background: var(--color-surface-muted);
  padding: var(--space-4) var(--space-5);
  margin: 8px 0 0 26px;
  color: var(--color-text-secondary);
  font-size: var(--font-size-body);
}
.woocommerce-checkout #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::after {
  display: none;
}
.woocommerce-checkout #payment .place-order {
  float: none !important;
  width: 100% !important;
  margin: var(--space-5) 0 0;
}
.woocommerce-checkout #place_order {
  width: 100%;
  display: block;
}
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  font-size: var(--font-size-body);
  color: var(--color-text-tertiary);
}
.woocommerce-checkout .woocommerce-form__label-for-checkbox {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-weight: var(--font-weight-base);
}
.woocommerce-checkout #payment input[type="radio"],
.woocommerce-checkout #payment input[type="checkbox"],
.woocommerce-checkout input[type="checkbox"],
.woocommerce-checkout input[type="radio"] {
  width: 18px;
  height: 18px;
  min-height: 0;
  min-width: 18px;
  padding: 0;
  flex: none;
  accent-color: var(--color-action-primary);
}
.woocommerce-checkout button.button.alt,
.woocommerce-checkout #place_order,
.woocommerce-cart a.button.alt,
.woocommerce-checkout button.button {
  background: var(--color-action-accent) !important;
  color: var(--color-text-inverse) !important;
  border: 0 !important;
  border-radius: var(--radius-none) !important;
  padding: 12px 18px !important;
  font-weight: var(--font-weight-semibold) !important;
  cursor: pointer;
  min-height: var(--tap-target, 44px);
}
.woocommerce-checkout button.button.alt:hover,
.woocommerce-checkout #place_order:hover {
  background: var(--color-action-accent-hover) !important;
}
.woocommerce-error, .woocommerce-info, .woocommerce-message {
  border-radius: var(--radius-none);
  border: 1px solid var(--color-border-default);
  padding: var(--space-5);
  margin-bottom: var(--space-6);
  background: var(--color-surface-soft);
}
.woocommerce-form-coupon-toggle .woocommerce-info {
  font-size: var(--font-size-body);
}
.woocommerce-privacy-policy-text {
  font-size: var(--font-size-body);
  color: var(--color-text-tertiary);
}

.woocommerce-cart table.cart img { width: 64px; height: auto; }
.woocommerce .cart-collaterals { margin-top: var(--space-7); }
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
