.masticha-order-wrap {
  --mo-accent: #56752e;
  --mo-border: #d7d7d7;
  --mo-product: #f4f4f4;
  --mo-voc1: #eef4e8;
  --mo-voc1-strong: #6e8c43;
  --mo-voc2: #fff3d8;
  --mo-voc2-strong: #c88716;
  --mo-order: #eaf1f7;
  --mo-order-strong: #47728f;
  max-width: 1280px;
  margin: 2rem auto;
  color: #222;
}
.masticha-table-scroll { overflow-x: auto; border: 1px solid var(--mo-border); border-radius: 10px; }
.masticha-product-table { width: 100%; min-width: 1080px; border-collapse: separate; border-spacing: 0; margin: 0; }
.masticha-product-table th, .masticha-product-table td { padding: 11px 9px; border: 0; border-bottom: 1px solid var(--mo-border); vertical-align: middle; }
.masticha-group-headings th { padding: 13px 10px; color: #fff; text-align: center !important; font-size: 1.08rem; letter-spacing: .02em; border-right: 3px solid #fff; }
.masticha-group-headings th:last-child { border-right: 0; }
.masticha-product-table thead .masticha-group-headings small { display: block; margin-top: 3px; color: #111; font-size: .78rem; font-weight: 700; letter-spacing: 0; opacity: 1; }
.masticha-product-group { background: #555; }
.masticha-voc1-group { background: var(--mo-voc1-strong); }
.masticha-voc2-group { background: var(--mo-voc2-strong); }
.masticha-order-group { background: var(--mo-order-strong); }
.masticha-column-headings th { background: var(--mo-product); font-size: .82rem; line-height: 1.25; text-align: center !important; }
.masticha-column-headings th:nth-child(4), .masticha-column-headings th:nth-child(5), .masticha-product-table tbody td:nth-child(4), .masticha-product-table tbody td:nth-child(5) { background: var(--mo-voc1); }
.masticha-column-headings th:nth-child(6), .masticha-column-headings th:nth-child(7), .masticha-product-table tbody td:nth-child(6), .masticha-product-table tbody td:nth-child(7) { background: var(--mo-voc2); }
.masticha-column-headings th:nth-child(8), .masticha-column-headings th:nth-child(9), .masticha-product-table tbody td:nth-child(8), .masticha-product-table tbody td:nth-child(9) { background: var(--mo-order); }
.masticha-voc1-start { border-left: 3px solid var(--mo-voc1-strong) !important; }
.masticha-voc2-start { border-left: 3px solid var(--mo-voc2-strong) !important; }
.masticha-order-start { border-left: 3px solid var(--mo-order-strong) !important; }
.masticha-product-table tbody tr:last-child td { border-bottom: 0; }
.masticha-product-table tbody tr.is-selected td { box-shadow: inset 0 0 0 9999px rgba(255, 255, 255, .25); }
.masticha-product-table td:not(.masticha-product-name):not(.masticha-photo-cell) { text-align: right; white-space: nowrap; }
.masticha-product-table .masticha-product-name { min-width: 220px; }
.masticha-product-table .masticha-product-name a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.masticha-product-table small { display: block; color: #686868; margin-top: 3px; }
.masticha-photo-cell { width: 64px; text-align: center; }
.masticha-photo-cell img { display: block; width: 54px; height: 54px; margin: auto; border-radius: 6px; object-fit: contain; }
.masticha-tax-cell { text-align: center !important; }
.masticha-qty { width: 72px; padding: 8px; text-align: center; border: 1px solid #9aabb6; border-radius: 4px; background: #fff; }
.masticha-summary { max-width: 480px; margin: 20px 0 28px auto; padding: 18px; background: #f6f8f3; border-radius: 8px; }
.masticha-summary > div { display: flex; justify-content: space-between; gap: 20px; padding: 5px 0; }
.masticha-total-row { font-size: 1.2rem; border-top: 1px solid #ccd5c2; margin-top: 7px; padding-top: 12px !important; }
.masticha-discount-row { display: none !important; color: var(--mo-accent); }
.has-discount .masticha-discount-row { display: flex !important; }
.masticha-threshold-message { margin: 12px 0 0; padding: 10px 12px; border: 1px solid #d63638; border-radius: 5px; background: #fff0f0; color: #b42318; font-size: 1rem; font-weight: 800; }
.has-discount .masticha-threshold-message { border-color: #6e8c43; background: #eef6e8; color: #315019; }
.masticha-customer-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.masticha-customer-fields h3, .masticha-full { grid-column: 1 / -1; }
.masticha-customer-fields label { font-weight: 600; }
.masticha-customer-fields label span { display: block; margin: 3px 0 7px; color: #666; font-size: .85rem; font-weight: 400; }
.masticha-customer-fields input:not([type=checkbox]), .masticha-customer-fields textarea { box-sizing: border-box; width: 100%; margin-top: 6px; padding: 10px; border: 1px solid #bbb; border-radius: 4px; font: inherit; }
.masticha-copy { font-weight: 400 !important; }
.masticha-submit { margin-top: 22px; padding: 13px 24px; border: 0; border-radius: 5px; background: var(--mo-accent); color: #fff; font-size: 1rem; font-weight: 700; cursor: pointer; }
.masticha-submit:disabled { opacity: .5; cursor: not-allowed; }
.masticha-hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; }
.masticha-message { padding: 14px 16px; margin-bottom: 18px; border-radius: 5px; }
.masticha-success { background: #eaf5e3; color: #315019; }
.masticha-error { background: #fdebea; color: #8a1f17; }
.masticha-export-actions { display: flex; justify-content: flex-end; gap: 10px; margin: 0 0 14px; }
.masticha-export-button { padding: 10px 16px; border: 1px solid var(--mo-accent); border-radius: 5px; background: #fff; color: var(--mo-accent); font: inherit; font-weight: 700; cursor: pointer; }
.masticha-export-button:hover { background: var(--mo-accent); color: #fff; }
.masticha-export-button:disabled { opacity: .55; cursor: wait; }
@media (max-width: 760px) {
  .masticha-table-scroll { overflow: visible; border: 0; border-radius: 0; }
  .masticha-product-table { min-width: 0; border-collapse: separate; }
  .masticha-product-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .masticha-product-table tbody, .masticha-product-table tr, .masticha-product-table td { display: block; width: 100%; box-sizing: border-box; }
  .masticha-product-table tbody tr { margin-bottom: 14px; overflow: hidden; border: 1px solid var(--mo-border); border-radius: 9px; background: #fff; }
  .masticha-product-table tbody td { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 9px 12px; border-bottom: 1px solid var(--mo-border) !important; border-left: 0 !important; text-align: right !important; white-space: normal !important; }
  .masticha-product-table tbody td::before { content: attr(data-label); flex: 0 0 46%; color: #555; font-size: .8rem; font-weight: 700; text-align: left; }
  .masticha-product-table .masticha-product-name { min-width: 0; padding: 13px 12px; background: #555; color: #fff; text-align: left !important; }
  .masticha-product-table .masticha-product-name::before { display: none; }
  .masticha-product-table .masticha-product-name small { color: #ddd; }
  .masticha-photo-cell { display: none !important; }
  .masticha-product-table tbody td:nth-child(4), .masticha-product-table tbody td:nth-child(5) { background: var(--mo-voc1); }
  .masticha-product-table tbody td:nth-child(6), .masticha-product-table tbody td:nth-child(7) { background: var(--mo-voc2); }
  .masticha-product-table tbody td:nth-child(8), .masticha-product-table tbody td:nth-child(9) { background: var(--mo-order); }
  .masticha-product-table tbody tr td:last-child { border-bottom: 0 !important; }
  .masticha-customer-fields { grid-template-columns: 1fr; }
  .masticha-customer-fields h3, .masticha-full { grid-column: auto; }
  .masticha-summary { max-width: none; }
  .masticha-export-actions { display: grid; grid-template-columns: 1fr; }
  .masticha-export-button { width: 100%; }
}
