.woocommerce div.product form.cart.erp-form,
form.cart.erp-form {
  display: block;
  width: 100%;
  margin: 1.5rem 0;
  color: #463933;
  font: inherit;
}
.erp-form *, .erp-form *::before, .erp-form *::after { box-sizing: border-box; }
.erp-form [hidden] { display: none !important; }
.erp-form .erp-intro { margin: 0 0 1rem; font-size: .875rem; line-height: 1.65; color: #6a5952; }
.erp-form .erp-fields { display: grid; grid-template-columns: minmax(0, 1fr) 6.5rem; gap: 1rem; align-items: start; }
.erp-form .erp-field.variations { margin: 0; }
.erp-form .erp-field > label { display: block; margin: 0 0 .5rem; color: #463933; font-size: .8125rem; font-weight: 600; }
.woocommerce div.product form.cart.erp-form .erp-field select,
.woocommerce div.product form.cart.erp-form .erp-field input[type="number"],
.erp-form .erp-field select,
.erp-form .erp-field input[type="number"] {
  display: block;
  width: 100%;
  min-width: 0;
  max-width: none;
  min-height: 46px;
  margin: 0;
  padding: .7rem .8rem;
  border: 1px solid #cdbab0;
  border-radius: 4px;
  background: #fffcf7;
  color: #463933;
  font: inherit;
  font-size: .9375rem;
  line-height: 1.5;
}
.erp-form input[type="number"] { text-align: center; }
.erp-form .erp-status { margin: .8rem 0; min-height: 1.5em; color: #6a5952; font-size: .8125rem; line-height: 1.6; }
.erp-form .erp-status.erp-status-error { color: #963b36; font-weight: 500; }
.erp-form .erp-quote { margin: .9rem 0; padding: 1rem; border: 1px solid #e4ccc3; border-radius: 6px; background: #fffaf4; }
.erp-form .erp-quote-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: .35rem .75rem; font-size: .875rem; }
.erp-form .erp-unit-price { color: #6a5952; font-size: .75rem; }
.erp-form .erp-split { display: grid; gap: .6rem; margin: .9rem 0 0; font-size: .875rem; }
.erp-form .erp-split > div { display: flex; justify-content: space-between; gap: 1rem; align-items: baseline; }
.erp-form .erp-split dt, .erp-form .erp-split dd { margin: 0; padding: 0; }
.erp-form .erp-split dd { font-weight: 600; white-space: nowrap; }
.erp-form .erp-dot { display: inline-block; width: .45rem; height: .45rem; margin-right: .55rem; border-radius: 50%; vertical-align: .1em; }
.erp-form .erp-dot-stock { background: #667750; }
.erp-form .erp-dot-preorder { background: #aa655e; }
.erp-form .erp-production { margin-top: .95rem; padding-top: .85rem; border-top: 1px solid #e4ccc3; font-size: .8125rem; line-height: 1.65; }
.erp-form .erp-production p { margin: 0 0 .35rem; }
.erp-form .erp-production p:last-child { margin-bottom: 0; color: #6a5952; }
.erp-form .erp-stock-note { margin: .85rem 0 0; font-size: .8125rem; color: #546441; line-height: 1.6; }
.erp-form .erp-consent { display: flex; align-items: flex-start; gap: .7rem; margin: 1rem 0; padding: .85rem; border: 1px solid #dfbfb8; border-radius: 5px; background: #faeeeb; cursor: pointer; font-size: .8125rem; line-height: 1.65; }
.erp-form .erp-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin: .2rem 0 0; accent-color: #965d54; cursor: pointer; }
.erp-form .erp-consent span { min-width: 0; }
.erp-form .erp-recovery { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem 1rem; margin: .9rem 0; }
.erp-form .erp-retry, .erp-form .erp-recovery a { border: 0; background: transparent; color: #804d46; font: inherit; font-size: .8125rem; line-height: 1.6; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.erp-form .erp-retry { min-height: 44px; margin: 0; padding: .4rem 0; box-shadow: none; }
.woocommerce div.product form.cart.erp-form .erp-add,
.erp-form .erp-add { display: block; float: none; width: 100%; min-height: 48px; margin: 1rem 0 0; padding: .85rem 1rem; border: 1px solid #965d54; border-radius: 4px; background: #965d54; color: #fff; font: inherit; font-size: .875rem; font-weight: 600; line-height: 1.5; text-align: center; cursor: pointer; }
.woocommerce div.product form.cart.erp-form .erp-add:hover:not(:disabled),
.erp-form .erp-add:hover:not(:disabled) { border-color: #7d4942; background: #7d4942; color: #fff; }
.erp-form .erp-add:disabled { opacity: .6; cursor: not-allowed; }
.erp-form :is(select, input, button, a):focus-visible { outline: 2px solid #87584e; outline-offset: 3px; }
.erp-form .erp-noscript, .erp-unavailable { padding: .9rem; border: 1px solid #e4ccc3; border-radius: 4px; background: #fffaf4; color: #6a5952; font-size: .875rem; line-height: 1.65; }
@media (max-width: 360px) {
  .erp-form .erp-fields { grid-template-columns: minmax(0, 1fr) 5.5rem; gap: .65rem; }
  .erp-form .erp-quote, .erp-form .erp-consent { padding: .8rem; }
}
