/* v37.3.11 — shared by invoice preview and the standalone print window. */
.inv38-sheet.inv38-compact {max-width:880px;margin:0 auto;line-height:1.4;font-size:11px;direction:rtl;color:#1d222a;background:#fff}
.inv38-compact .inv38-head {gap:8px;align-items:center}
.inv38-compact .inv38-brand {gap:6px;min-width:0}
.inv38-compact .inv38-brand img {width:36px;height:36px;padding:3px;border-radius:8px}
.inv38-compact .inv38-brand b {font-size:16px;line-height:1.3}
.inv38-compact .inv38-brand span {font-size:10px}
.inv38-compact .inv38-meta {gap:5px;grid-template-columns:repeat(3,minmax(0,1fr))}
.inv38-compact .inv38-meta > div {padding:4px 8px;border-radius:6px}
.inv38-compact .inv38-meta span {font-size:9px}
.inv38-compact .inv38-meta b {font-size:11px;line-height:1.35;margin-top:1px;overflow-wrap:anywhere}
.inv38-compact .inv38-rule {height:2px;margin:6px 0}
.inv38-compact .inv38-cust {gap:5px}
.inv38-compact .inv38-cust > div {padding:4px 8px;border-radius:6px}
.inv38-compact .inv38-cust span {font-size:9px}
.inv38-compact .inv38-cust b {font-size:11px;line-height:1.4;margin-top:1px;overflow-wrap:anywhere}
.inv38-compact .inv38-table {margin-top:6px;border-radius:6px;table-layout:auto}
.inv38-compact .inv38-table th {padding:4px 6px;font-size:10px;line-height:1.4}
.inv38-compact .inv38-table td {padding:3px 6px;font-size:11px;line-height:1.4}
.inv38-compact .inv38-table td:first-child {width:26px}
.inv38-compact .inv38-table td small {display:inline;margin:0 5px 0 0;font-size:9px;white-space:nowrap}
/* RTL grid: amount on the physical right, customer contact on physical left. */
.inv38-compact .inv38-bottom {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:8px;margin-top:6px;align-items:stretch;grid-auto-rows:1fr;direction:rtl}
.inv38-compact .inv38-total {margin:0;display:flex;min-width:0}
.inv38-compact .inv38-total-box {box-sizing:border-box;width:100%;padding:5px 8px;border-radius:6px}
.inv38-compact .inv38-total-box > div {gap:6px;padding:2px 0;font-size:10.5px}
.inv38-compact .inv38-total-box .grand {margin-top:2px;padding-top:4px;font-size:12px}
.inv38-compact .inv38-verify {display:flex;margin:0;min-width:0}
.inv38-compact .inv38-verify-box {box-sizing:border-box;display:flex;flex:1;min-width:0;padding:5px 7px;border-radius:6px}
.inv38-compact .inv38-verify-title {font-size:10px;line-height:1.3;margin-bottom:3px}
.inv38-compact .inv38-verify-grid {display:flex;flex:1;min-width:0}
.inv38-compact .inv38-vitem {box-sizing:border-box;display:flex;flex:1;flex-direction:column;justify-content:flex-end;align-items:center;text-align:center;padding:4px 6px;min-height:42px;min-width:0;border:0;background:transparent;break-inside:avoid}
.inv38-compact .inv38-vitem > span {font-size:9px}
.inv38-compact .inv38-vitem > strong {margin-top:2px;font-size:10px;line-height:1.3;overflow-wrap:anywhere}
.inv38-compact .inv38-vitem small {margin-top:2px;font-size:9px;overflow-wrap:anywhere;line-height:1.3}
.inv38-compact .inv38-sign-img {max-width:120px;max-height:28px;width:auto;height:auto;margin:2px auto 0;object-fit:contain}
.inv38-compact .inv38-foot {margin-top:5px;font-size:9px;line-height:1.3}
@media (max-width:520px) {
  .inv38-compact .inv38-head {flex-wrap:wrap}
  .inv38-compact .inv38-meta {width:100%}
  .inv38-compact .inv38-bottom {grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:5px}
}
@media print {
  @page {margin:8mm}
  .inv38-sheet.inv38-compact {max-width:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .inv38-compact .inv38-head {flex-wrap:nowrap}
  .inv38-compact .inv38-meta {width:auto}
  .inv38-compact .inv38-bottom,.inv38-compact .inv38-cust,.inv38-compact .inv38-head {break-inside:avoid}
  .inv38-compact .inv38-table thead {display:table-header-group}
  .inv38-compact .inv38-table tr {break-inside:avoid}
}

/* Compact inline customer labels; totals left, customer signature right. */
.inv38-compact .inv38-cust > div {display:flex;align-items:center;gap:8px;min-width:0}
.inv38-compact .inv38-cust span {display:inline;flex-shrink:0;white-space:nowrap}
.inv38-compact .inv38-cust b {display:inline;margin:0;min-width:0}
.inv38-compact .inv38-bottom {grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.inv38-compact .inv38-total {grid-column:2;grid-row:1}
.inv38-compact .inv38-verify {grid-column:1;grid-row:1}
/* v37.3.17: preview can scroll the item table; numeric identities never split into vertical digits. */
.inv38-compact .inv38-phone{white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;unicode-bidi:isolate}
.inv38-compact .inv38-total-box b{white-space:nowrap;word-break:normal;overflow-wrap:normal}
.inv38-compact .inv38-table-scroll{max-width:100%;overflow-x:auto}
.inv38-compact .inv38-meta b{word-break:normal;overflow-wrap:normal}
@media screen and (max-width:640px){
 .inv38-compact .inv38-cust{grid-template-columns:minmax(0,1fr)!important}
 .inv38-compact .inv38-cust>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px;padding:8px}
 .inv38-compact .inv38-cust b{word-break:normal;overflow-wrap:break-word;text-align:start}
 .inv38-compact .inv38-table{min-width:540px;table-layout:auto}
 .inv38-compact .inv38-bottom{grid-template-columns:minmax(0,1fr)!important}
 .inv38-compact .inv38-total{grid-column:1;grid-row:1}
 .inv38-compact .inv38-verify{grid-column:1;grid-row:2}
 .inv38-compact .inv38-meta{grid-template-columns:minmax(0,1fr);width:100%}
 .inv38-compact .inv38-meta>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px}
 .inv38-compact .inv38-total-box>div{font-size:12px}
}
@media print{
 .inv38-compact .inv38-table-scroll{overflow:visible}
 .inv38-compact .inv38-table{min-width:0;width:100%}
}
.inv38-scroll-hint{display:none}
@media screen and (max-width:640px){.inv38-scroll-hint{display:block;font-size:10px;color:#687281;margin:10px 0 0}}
@media print{.inv38-scroll-hint{display:none!important}}
/* Standalone invoice print page: resources load from a real same-origin URL. */
body.invoice-print{margin:0;padding:8px;background:#fff}
@media print{body.invoice-print{padding:0}.invoice-print .inv38-sheet{max-width:none}}

/* Sales invoice: payment details sit beside totals; the contact signature
   remains the same height and stays aligned at the bottom. */
.inv38-compact .inv38-sales-title{font-size:14px;font-weight:900;white-space:nowrap}
.inv38-compact .inv38-sales-title + .inv38-meta{flex:1;min-width:0}
.inv38-compact .inv38-with-payments{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.2fr)}
.inv38-compact .inv38-with-payments .inv38-verify{grid-column:1;grid-row:1}
.inv38-compact .inv38-with-payments .inv38-payment-box{grid-column:2;grid-row:1}
.inv38-compact .inv38-with-payments .inv38-total{grid-column:3;grid-row:1}
.inv38-compact .inv38-payment-box{box-sizing:border-box;min-width:0;border:1px solid #e3e6ea;border-radius:6px;padding:5px 8px;overflow-wrap:anywhere}
.inv38-compact .inv38-payment-box h3{font-size:11px;line-height:1.4;margin:0 0 4px;border-bottom:1px solid #e3e6ea;padding-bottom:3px}
.inv38-compact .inv38-payment-row{display:flex;justify-content:space-between;align-items:flex-start;gap:6px;padding:2px 0;font-size:10.5px}
.inv38-compact .inv38-payment-row>div,.inv38-compact .inv38-payment-row>span{min-width:0}
.inv38-compact .inv38-payment-row small{display:block;color:#555;font-size:9px;line-height:1.4}
.inv38-compact .inv38-payment-row b{white-space:nowrap;flex-shrink:0}
.inv38-compact .inv38-payment-balance{border-top:1px dashed #d5dae2;margin-top:3px;padding-top:4px;font-weight:700}
.inv38-compact .inv38-payment-empty,.inv38-compact .inv38-payment-note{display:block;color:#555;font-size:9px;line-height:1.45;padding:3px 0}
@media screen and (max-width:640px){
 .inv38-compact .inv38-with-payments{grid-template-columns:minmax(0,1fr)}
 .inv38-compact .inv38-with-payments .inv38-total{grid-column:1;grid-row:1}
 .inv38-compact .inv38-with-payments .inv38-payment-box{grid-column:1;grid-row:2}
 .inv38-compact .inv38-with-payments .inv38-verify{grid-column:1;grid-row:3}
 .inv38-compact .inv38-sales-title{white-space:normal}
}

/* Inline the sales invoice header fields, without changing the store document. */
.inv38-compact .inv38-sales-title + .inv38-meta{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr)}
.inv38-compact .inv38-sales-title + .inv38-meta > div{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;padding:4px}
.inv38-compact .inv38-sales-title + .inv38-meta span{display:inline;white-space:nowrap;flex-shrink:0}
.inv38-compact .inv38-sales-title + .inv38-meta b{display:inline;margin:0;min-width:0;overflow-wrap:anywhere}
@media screen and (max-width:640px){
 .inv38-compact .inv38-sales-title + .inv38-meta{grid-template-columns:minmax(0,1fr)}
 .inv38-compact .inv38-sales-title + .inv38-meta > div{justify-content:space-between}
}
