/* Eighteen materially different print architectures, not eighteen accent-color swaps.
   A4 is the default; Receipt Roll has a deliberately narrow paper silhouette. */
.invoice-v7.invoice-architecture{display:block;--paper-ink:#22383d;line-height:1.42}
.invoice-architecture .invoice-header,.invoice-architecture .invoice-med-header{break-inside:avoid}
.invoice-architecture .invoice-title small,.invoice-architecture .invoice-med-mark small{display:block;color:var(--invoice-accent);font-size:8px;letter-spacing:1.5px;font-weight:800;margin-bottom:7px}
.invoice-architecture .invoice-med-mark span{display:block;font-size:20px;color:var(--invoice-accent);font-weight:900;text-transform:uppercase}
.invoice-architecture .invoice-title span{display:block}
.invoice-architecture .invoice-parties,.invoice-architecture .invoice-patient{grid-template-columns:1fr 1fr;gap:9px}
.invoice-architecture .invoice-parties>div,.invoice-architecture .invoice-patient>div{min-height:0}
.invoice-architecture .invoice-party-main,.invoice-architecture .invoice-party-secondary{min-height:86px}
.invoice-architecture .invoice-party-reference{grid-column:1/-1;display:flex;align-items:center;gap:17px;min-height:38px!important;padding:7px 12px!important;background:#fbfcfd;border:1px solid #e8edf0}
.invoice-architecture .invoice-party-reference strong{font-size:10px}
.invoice-architecture .invoice-party-reference p{font-size:9px}
.invoice-architecture .invoice-footer-block{grid-template-columns:minmax(0,1fr) minmax(205px,42%);gap:20px}
.invoice-architecture .invoice-left-stack{display:flex;flex-direction:column;gap:14px;min-width:0}
.invoice-architecture .invoice-remarks{min-height:0}
.invoice-architecture .invoice-paybox{border:1px solid #cfdcde;background:#fff;padding:10px 12px;break-inside:avoid}
.invoice-architecture .invoice-pay-heading{border-bottom:1px solid #e7edee;display:flex;justify-content:space-between;gap:8px;padding-bottom:7px;margin-bottom:8px}
.invoice-architecture .invoice-pay-heading strong{font-size:9px;color:#2a4550}
.invoice-architecture .invoice-pay-heading small{font-size:8px;color:var(--invoice-accent);font-weight:800;letter-spacing:.8px}
.invoice-architecture .invoice-pay-content{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start}
.invoice-architecture .invoice-bank-row{display:flex;justify-content:space-between;gap:8px;padding:3px 0;line-height:1.4;font-size:8px}
.invoice-architecture .invoice-bank-row span{color:#687c83;flex-shrink:0}
.invoice-architecture .invoice-bank-row strong{color:#223c43;text-align:right;overflow-wrap:anywhere;font-size:8px}
.invoice-architecture .invoice-qr{width:104px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.invoice-architecture .invoice-qr img{height:88px;width:88px;object-fit:contain;image-rendering:pixelated;background:#fff}
.invoice-architecture .invoice-qr b{font-size:8px;color:#203c45;letter-spacing:.6px}
.invoice-architecture .invoice-qr small{font-size:6.5px;color:#607a81;line-height:1.15}
.invoice-architecture .invoice-table-ledger th,.invoice-architecture .invoice-table-ledger td,.invoice-architecture .invoice-med-table-pharmacy th,.invoice-architecture .invoice-med-table-pharmacy td{border:1px solid #cad6d7}
.invoice-architecture .invoice-table-ledger th,.invoice-architecture .invoice-med-table-pharmacy th{border-radius:0}
.invoice-architecture .invoice-line-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.invoice-architecture .invoice-line-card{border:1px solid #dce6e8;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 9px;break-inside:avoid}
.invoice-architecture .invoice-card-number{grid-column:1/-1;border-bottom:1px solid #e6edf0;padding-bottom:5px}
.invoice-architecture .invoice-card-number small{color:var(--invoice-accent);letter-spacing:1px;font-weight:900}
.invoice-architecture .invoice-card-name b{display:block;font-size:11px}.invoice-architecture .invoice-card-name small{font-size:8px;display:block;color:#70828b}
.invoice-architecture .invoice-card-metrics{display:flex;gap:5px 9px;flex-wrap:wrap;grid-column:1/-1;color:#6d8085}
.invoice-architecture .invoice-card-metrics small{font-size:8px}
.invoice-architecture .invoice-card-amount{text-align:right;color:var(--invoice-accent);font-size:12px;align-self:end}
.invoice-architecture .invoice-line-receipt{border-top:2px dashed #596d6d}
.invoice-architecture .invoice-receipt-row{padding:10px 0;border-bottom:1px dashed #b8c6c5;display:flex;align-items:flex-start;justify-content:space-between;gap:9px}
.invoice-architecture .invoice-receipt-row strong{font-size:11px;white-space:nowrap}
.invoice-architecture .invoice-receipt-row small{display:block;color:#647b7a;margin-top:2px;font-size:8px}
.invoice-architecture .invoice-med-table tfoot td{border-top:2px solid var(--invoice-accent);padding:8px 5px;font-weight:800;font-size:9px}
.invoice-architecture .invoice-med-table .name small{white-space:normal}
.invoice-architecture .invoice-med-table td,.invoice-architecture .invoice-table td{font-variant-numeric:tabular-nums}
.invoice-architecture .invoice-refs strong{word-break:break-word}

/* Twelve business formats: different hierarchy, table density and payment placement. */
.invoice-v7.theme-minimal .invoice-header{border-bottom:1px solid #9bb4ad}
.invoice-v7.theme-minimal .invoice-parties>div{border:0;border-left:2px solid #bfd5cc;padding-left:12px}
.invoice-v7.theme-minimal .invoice-footer-block{grid-template-columns:1fr 1fr}
.invoice-v7.theme-executive .invoice-title{text-align:right}
.invoice-v7.theme-executive .invoice-parties{grid-template-columns:1.25fr .75fr}
.invoice-v7.theme-executive .invoice-party-reference{background:#eaf0f2}
.invoice-v7.theme-executive .invoice-paybox{border-left:4px solid #1e3544}
.invoice-v7.theme-ledger .invoice-header{display:block;text-align:center;padding-bottom:12px}
.invoice-v7.theme-ledger .invoice-brand{justify-content:center}.invoice-v7.theme-ledger .invoice-title{text-align:center;margin-top:10px}
.invoice-v7.theme-ledger .invoice-refs{background:#f7f5f0;border:1px solid #ab9a80}
.invoice-v7.theme-ledger .invoice-parties>div{border-radius:0;border-color:#b6aa98}
.invoice-v7.theme-ledger .invoice-footer-block{display:block}.invoice-v7.theme-ledger .invoice-left-stack{display:grid;grid-template-columns:1fr 1fr;margin-bottom:15px}
.invoice-v7.theme-ledger .invoice-totals{max-width:350px;margin-left:auto}
.invoice-v7.theme-midnight .invoice-header{flex-direction:row-reverse;align-items:center}
.invoice-v7.theme-midnight .invoice-brand{text-align:right}.invoice-v7.theme-midnight .invoice-title{text-align:left}
.invoice-v7.theme-midnight .invoice-refs{border-radius:0;background:#f4f2ed}
.invoice-v7.theme-midnight .invoice-table-compact th{background:#182635}
.invoice-v7.theme-midnight .invoice-footer-block{grid-template-columns:1fr 1fr}
.invoice-v7.theme-emerald{border-left:11px solid #1b8069}
.invoice-v7.theme-emerald .invoice-header{border:0}
.invoice-v7.theme-emerald .invoice-refs{background:#e6f3ed}
.invoice-v7.theme-emerald .invoice-line-card{background:#f4fbf8;border-radius:12px;border:0}
.invoice-v7.theme-emerald .invoice-party-main{border-radius:12px 0 12px 0}
.invoice-v7.theme-emerald .invoice-footer-block{display:flex;flex-direction:column-reverse}
.invoice-v7.theme-emerald .invoice-totals{width:100%;max-width:100%;display:grid;grid-template-columns:1fr 1fr}
.invoice-v7.theme-emerald .invoice-totals>div.invoice-grand,.invoice-v7.theme-emerald .invoice-total-words{grid-column:1/-1}
.invoice-v7.theme-mono{font-family:'Courier New',monospace}
.invoice-v7.theme-mono .invoice-header{border-bottom:2px solid #111}
.invoice-v7.theme-mono .invoice-refs,.invoice-v7.theme-mono .invoice-parties>div,.invoice-v7.theme-mono .invoice-paybox{border-radius:0;background:#fff;border:1px solid #222}
.invoice-v7.theme-mono .invoice-table th{background:#fff;color:#111;border-top:2px solid #111;border-bottom:2px solid #111}
.invoice-v7.theme-mono .invoice-table td{border-bottom:1px solid #222}.invoice-v7.theme-mono .invoice-grand{background:#111}
.invoice-v7.theme-modern{display:grid;grid-template-columns:1.1fr .9fr;column-gap:12px}
.invoice-v7.theme-modern .invoice-header{grid-column:1/-1}
.invoice-v7.theme-modern .invoice-parties{grid-column:1;grid-row:2;grid-template-columns:1fr;margin-top:12px;gap:5px}
.invoice-v7.theme-modern .invoice-party-reference{grid-column:1}
.invoice-v7.theme-modern .invoice-refs{grid-column:2;grid-row:2;grid-template-columns:1fr;margin:12px 0 18px}
.invoice-v7.theme-modern>.invoice-table-wrap,.invoice-v7.theme-modern>.invoice-footer-block,.invoice-v7.theme-modern>.invoice-signoff{grid-column:1/-1}
.invoice-v7.theme-modern .invoice-table th{background:#edf3f7;color:#23546c;border-bottom:3px solid #38789b}
.invoice-v7.theme-receipt{width:340px;max-width:340px;min-width:0!important;padding:21px 17px;box-shadow:0 5px 22px #152a2420}
.invoice-v7.theme-receipt .invoice-header{display:block;text-align:center}.invoice-v7.theme-receipt .invoice-brand{justify-content:center}
.invoice-v7.theme-receipt .invoice-brand h2{font-size:17px}.invoice-v7.theme-receipt .invoice-title{text-align:center;margin-top:14px}
.invoice-v7.theme-receipt .invoice-title span{font-size:16px}
.invoice-v7.theme-receipt .invoice-refs{display:block;padding:0;border:0;background:none;margin:10px 0}
.invoice-v7.theme-receipt .invoice-refs>div{display:flex;flex-direction:row;justify-content:space-between;padding:3px 0}
.invoice-v7.theme-receipt .invoice-parties{display:block}.invoice-v7.theme-receipt .invoice-parties>div{margin-bottom:6px;min-height:0;padding:6px;border:0}
.invoice-v7.theme-receipt .invoice-footer-block{display:block}.invoice-v7.theme-receipt .invoice-left-stack{margin-bottom:12px}
.invoice-v7.theme-receipt .invoice-pay-content{grid-template-columns:1fr}.invoice-v7.theme-receipt .invoice-qr{margin:auto}
.invoice-v7.theme-peach .invoice-header{display:block;background:#fff1e9;border-radius:14px;padding:18px;margin:-15px -15px 14px}
.invoice-v7.theme-peach .invoice-title{text-align:left;margin-top:15px}
.invoice-v7.theme-peach .invoice-title span{font-size:30px}
.invoice-v7.theme-peach .invoice-parties>div{border-radius:13px}
.invoice-v7.theme-peach .invoice-line-card{background:#fff8f4;border-radius:15px;border-color:#f4d8c9}
.invoice-v7.theme-peach .invoice-footer-block{display:block}.invoice-v7.theme-peach .invoice-totals{margin-top:12px}
.invoice-v7.theme-lavender .invoice-header{display:flex;align-items:center;flex-direction:column;text-align:center}
.invoice-v7.theme-lavender .invoice-brand{justify-content:center}.invoice-v7.theme-lavender .invoice-title{text-align:center}
.invoice-v7.theme-lavender .invoice-parties{grid-template-columns:1fr 1fr}
.invoice-v7.theme-lavender .invoice-totals{background:#f7f4ff;border-color:#d8cce9}
.invoice-v7.theme-lavender .invoice-footer-block{grid-template-columns:1fr 1fr}
.invoice-v7.theme-editorial .invoice-header{display:block;text-align:center;border-top:3px double #7c685b;border-bottom:3px double #7c685b;padding:12px}
.invoice-v7.theme-editorial .invoice-brand{justify-content:center}.invoice-v7.theme-editorial .invoice-title{text-align:center;margin-top:10px}
.invoice-v7.theme-editorial .invoice-refs{background:#fff;border-block:1px solid #a6998c;padding:8px}
.invoice-v7.theme-editorial .invoice-parties{grid-template-columns:1fr 1fr}.invoice-v7.theme-editorial .invoice-parties>div{border:0}
.invoice-v7.theme-editorial .invoice-table th{background:#fff;color:#3e342c;border-bottom:2px solid #82766c}
.invoice-v7.theme-editorial .invoice-footer-block{display:block}.invoice-v7.theme-editorial .invoice-left-stack{display:grid;grid-template-columns:1fr 1fr}
.invoice-v7.theme-editorial .invoice-totals{max-width:380px;margin:16px 0 0 auto}
.invoice-v7.theme-studio .invoice-header{background:#b84d65;color:white;display:block;padding:24px;margin:-32px -31px 20px}
.invoice-v7.theme-studio .invoice-header h2,.invoice-v7.theme-studio .invoice-header p,.invoice-v7.theme-studio .invoice-title span,.invoice-v7.theme-studio .invoice-title b,.invoice-v7.theme-studio .invoice-title small{color:#fff}
.invoice-v7.theme-studio .invoice-title{text-align:left;margin-top:16px}
.invoice-v7.theme-studio .invoice-title span{font-size:36px;font-weight:900}
.invoice-v7.theme-studio .invoice-line-cards{grid-template-columns:1fr 1fr}.invoice-v7.theme-studio .invoice-line-card{border-left:5px solid #c86276}
.invoice-v7.theme-studio .invoice-totals .invoice-grand{background:#b84d65}

/* Six specialist medical layouts with different information architectures. */
.invoice-v7.theme-pharmacy{border:1px solid #9eacb3;border-radius:0;padding:24px}
.invoice-v7.theme-pharmacy .invoice-med-header{border-bottom:1px solid #7e8b8e;padding-bottom:10px}
.invoice-v7.theme-pharmacy .invoice-med-mark span{font-size:17px}
.invoice-v7.theme-pharmacy .invoice-refs{border:1px solid #afbabc;background:#fff;border-radius:0;margin:7px 0;padding:8px}
.invoice-v7.theme-pharmacy .invoice-patient{gap:0;margin-bottom:7px}
.invoice-v7.theme-pharmacy .invoice-patient>div{border:1px solid #b8c3c5;border-radius:0;margin:-.5px}
.invoice-v7.theme-pharmacy .invoice-patient .invoice-party-reference{min-height:0}
.invoice-v7.theme-pharmacy .invoice-med-table{font-size:8px}
.invoice-v7.theme-pharmacy .invoice-med-table th{padding:7px 3px;background:#235f53}
.invoice-v7.theme-pharmacy .invoice-med-table td{padding:7px 3px}
.invoice-v7.theme-pharmacy .invoice-footer-block{grid-template-columns:1fr 1fr;gap:12px}
.invoice-v7.theme-pharmacy .invoice-paybox{border:1px solid #b6c2c4}
.invoice-v7.theme-clinic{border-top:10px solid #4c91ac}
.invoice-v7.theme-clinic .invoice-med-header{border:0}
.invoice-v7.theme-clinic .invoice-med-mark{background:#e9f4fa;padding:12px;border-radius:10px}
.invoice-v7.theme-clinic .invoice-refs{background:#ecf7fb;border-radius:12px}
.invoice-v7.theme-clinic .invoice-patient{grid-template-columns:2fr 1fr}
.invoice-v7.theme-clinic .invoice-patient>div{border:0;background:#f5fafc;border-radius:10px}
.invoice-v7.theme-clinic .invoice-med-table th{background:#4c91ac}
.invoice-v7.theme-clinic .invoice-footer-block{display:block}
.invoice-v7.theme-clinic .invoice-left-stack{display:grid;grid-template-columns:1fr 1fr;margin-bottom:14px}
.invoice-v7.theme-lab{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}
.invoice-v7.theme-lab .invoice-med-header{grid-column:1/-1;border-bottom:5px solid #2694a2}
.invoice-v7.theme-lab .invoice-refs{grid-column:2;grid-row:2;grid-template-columns:1fr;margin:12px 0}
.invoice-v7.theme-lab .invoice-patient{grid-column:1;grid-row:2;grid-template-columns:1fr;margin:12px 0}
.invoice-v7.theme-lab .invoice-patient .invoice-party-reference{grid-column:1}
.invoice-v7.theme-lab>.invoice-table-wrap,.invoice-v7.theme-lab>.invoice-footer-block,.invoice-v7.theme-lab>.invoice-signoff{grid-column:1/-1}
.invoice-v7.theme-lab .invoice-med-table th{background:#e5f3f5;color:#236a75;border-bottom:3px solid #2798a2}
.invoice-v7.theme-lab .invoice-footer-block{grid-template-columns:1fr 1fr}
.invoice-v7.theme-dental{border-top:7px solid #6eaba0}
.invoice-v7.theme-dental .invoice-med-header{display:block}
.invoice-v7.theme-dental .invoice-med-mark{text-align:left;margin-top:14px}
.invoice-v7.theme-dental .invoice-med-mark span{font-size:27px;font-weight:400}
.invoice-v7.theme-dental .invoice-refs{background:#f4fbfa;grid-template-columns:repeat(3,1fr)}
.invoice-v7.theme-dental .invoice-patient>div{border-radius:13px;border:1px solid #d8eae5;background:#f7fbf9}
.invoice-v7.theme-dental .invoice-med-table th{background:#fff;color:#387a72;border-bottom:2px solid #6da99d}
.invoice-v7.theme-dental .invoice-med-table tbody tr:nth-child(even){background:#f3faf8}
.invoice-v7.theme-hospital .invoice-med-header{background:#293d68;padding:21px;margin:-32px -31px 18px}
.invoice-v7.theme-hospital .invoice-med-header h2,.invoice-v7.theme-hospital .invoice-med-header p,.invoice-v7.theme-hospital .invoice-med-mark span,.invoice-v7.theme-hospital .invoice-med-mark b,.invoice-v7.theme-hospital .invoice-med-mark small{color:#fff}
.invoice-v7.theme-hospital .invoice-refs{border:1px solid #dbe3ef;background:#eef2f8}
.invoice-v7.theme-hospital .invoice-patient{grid-template-columns:1.5fr .85fr}
.invoice-v7.theme-hospital .invoice-med-table{font-size:8px}
.invoice-v7.theme-hospital .invoice-med-table th{background:#2b426f}
.invoice-v7.theme-hospital .invoice-footer-block{display:grid;grid-template-columns:1fr 1fr}
.invoice-v7.theme-optical .invoice-med-header{flex-direction:row-reverse;align-items:center;border-bottom:6px solid #b1a8d0}
.invoice-v7.theme-optical .invoice-med-mark{text-align:left}
.invoice-v7.theme-optical .invoice-med-mark span{font-size:23px}
.invoice-v7.theme-optical .invoice-refs{border-radius:15px;background:#f5f2fb}
.invoice-v7.theme-optical .invoice-patient>div{border:1px solid #ddd5ec;border-radius:15px}
.invoice-v7.theme-optical .invoice-med-table th{background:#f1eef8;color:#594b7e;border-bottom:3px solid #9c8cbe}
.invoice-v7.theme-optical .invoice-footer-block{display:flex;flex-direction:column-reverse;gap:12px}
.invoice-v7.theme-optical .invoice-left-stack{display:grid;grid-template-columns:1fr 1fr;width:100%}
.invoice-v7.theme-optical .invoice-totals{width:100%}

/* Tiny gallery previews express hierarchy, not merely the palette. */
.template-mini{transition:transform .15s}.template-tile:hover .template-mini{transform:translateY(-1px)}
.template-mini.theme-executive .mini-bar,.template-mini.theme-hospital .mini-bar,.template-mini.theme-midnight .mini-bar,.template-mini.theme-studio .mini-bar{height:20px;width:100%;margin:-10px -10px 5px;border-radius:0}
.template-mini.theme-ledger .mini-bar,.template-mini.theme-editorial .mini-bar{width:100%;height:1px}.template-mini.theme-ledger .mini-lines i,.template-mini.theme-mono .mini-lines i{border-bottom:1px solid #aaa;background:transparent}
.template-mini.theme-emerald .mini-bar{width:7px;height:70px;position:absolute;left:0;top:0}
.template-mini.theme-modern .mini-lines{display:grid;grid-template-columns:1fr 1fr}
.template-mini.theme-peach .mini-total,.template-mini.theme-studio .mini-total{width:100%}
.template-mini.theme-lavender .mini-name,.template-mini.theme-dental .mini-name{text-align:center}
.template-mini.theme-lab .mini-lines,.template-mini.theme-optical .mini-lines{display:grid;grid-template-columns:1fr 1fr}
.template-mini.theme-pharmacy .mini-lines i,.template-mini.theme-hospital .mini-lines i{border:1px solid #9aafab;height:6px}

/* A two-column desktop editor should show the whole A4 sheet at a glance.
   This only affects the editor preview; print and PDF export keep full resolution. */
@media(min-width:1201px){
  .studio-paper-wrap .invoice-v7.invoice-architecture:not(.theme-receipt){zoom:.68}
}

@media print{
  #duescope-print-root .invoice-v7.invoice-architecture{overflow:visible!important}
  #duescope-print-root .invoice-v7.theme-receipt{width:80mm!important;min-width:0!important;max-width:80mm!important;margin:0 auto!important}
  .invoice-architecture .invoice-line-card,.invoice-architecture .invoice-receipt-row,.invoice-architecture .invoice-paybox{break-inside:avoid}
  .invoice-architecture .invoice-paybox{box-shadow:none}
}
.invoice-export-stage .invoice-v7.theme-receipt{width:355px!important;max-width:355px!important;min-width:0!important;margin:auto!important}
