.order-print-dialog{background:var(--paper);color:var(--blue);border:1px solid var(--line);border-radius:14px;max-width:860px;width:calc(100% - 32px);max-height:calc(100dvh - 36px);padding:24px;font:inherit;box-shadow:0 20px 70px #1f304a38}.order-print-dialog::backdrop{background:#13223890}.order-print-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.order-print-top h2{font-size:26px;line-height:1.2;color:var(--red);margin:0 0 8px}.order-print-top p{font-size:12px;margin:0;overflow-wrap:anywhere}.order-print-close{font:inherit;color:var(--blue);border:1px solid var(--line);border-radius:50%;width:44px;height:44px;flex-shrink:0;background:white;font-size:25px;cursor:pointer}.order-print-tools{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:22px 0 15px}.order-print-tools label{display:grid;gap:6px;font-size:12px;font-weight:bold}.order-print-tools select{font:inherit;font-size:14px;min-height:46px;padding:10px 28px 10px 12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--blue)}.order-print-help{font-size:12px;color:#58677e;line-height:1.6;margin:0 0 15px}.order-print-status{font-size:12px;min-height:18px;line-height:1.5;margin:10px 0 0}.order-print-preview{padding:20px 8px;background:#e9e5df;border:1px solid var(--line);border-radius:8px;overflow:auto;max-height:55dvh}/* Compact receipt: the same layout is used in the preview and on paper. */
.receipt-sheet{width:80mm;max-width:100%;box-sizing:border-box;padding:2mm;margin:0 auto;background:#fff;color:#000;font:12px/1.25 Arial,Helvetica,sans-serif;overflow-wrap:anywhere;word-break:normal;text-align:left;letter-spacing:0}
.receipt-sheet[data-format="58"]{width:58mm;font-size:11px}
.receipt-sheet[data-format="a4"]{width:180mm;padding:8mm;font-size:14px}
.receipt-sheet *{box-sizing:border-box;max-width:100%;letter-spacing:0}
.receipt-sheet header,.receipt-sheet footer{display:block;max-width:none;margin:0;padding:0;border:0;color:#000}
.receipt-sheet h2,.receipt-sheet h3,.receipt-sheet p{color:#000}
.receipt-heading{text-align:center}
.receipt-heading h2{font:bold 20px/1.1 Arial,Helvetica,sans-serif;margin:0 0 2px}
.receipt-heading p{font-size:inherit;line-height:1.2;margin:2px 0}
.receipt-branch{font-weight:bold}
.receipt-code{font-size:10px!important;font-weight:bold;overflow-wrap:anywhere}
.receipt-state{font-size:12px;font-weight:800;text-align:center;border:1.5px solid #000;padding:4px 2px;margin:6px 0;line-height:1.2}
.receipt-state[data-state=cancelled]{border-width:2px}
.receipt-context{padding:0 0 4px}
.receipt-field{font-size:inherit;line-height:1.25;margin:3px 0;white-space:pre-wrap}
.receipt-important{font-size:10.5px;font-weight:bold;margin:1px 0 5px;line-height:1.25}
.receipt-items{list-style:none;margin:0;padding:0;border-top:1px dashed #000;border-bottom:1px dashed #000}
.receipt-item{padding:6px 0;break-inside:avoid;border-bottom:1px dashed #888}
.receipt-item:last-child{border-bottom:0}
.receipt-product{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:start;gap:6px}
.receipt-product>strong{font-size:13px;line-height:1.25;min-width:0}
.receipt-sheet[data-format="58"] .receipt-product>strong{font-size:12px}
.receipt-price{white-space:nowrap;font-size:11px;line-height:1.4}
.receipt-sauces{font-size:11px;font-weight:bold;line-height:1.25;margin:3px 0 0;white-space:pre-wrap}
.receipt-notes{margin:6px 0;padding:5px 0;border-top:1px solid #000;border-bottom:1px solid #000}
.receipt-sheet h3{font-size:11px;line-height:1.2;margin:0 0 3px}
.receipt-notes p{font-size:12px;line-height:1.25;font-weight:bold;margin:0;white-space:pre-wrap}
.receipt-total{display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:baseline;gap:6px;font-size:14px;line-height:1.2;border-bottom:1px dashed #000;padding:7px 0;margin:0 0 5px;break-inside:avoid}
.receipt-total>strong{white-space:nowrap;overflow-wrap:normal;word-break:normal}
.receipt-map-note{font-size:10px;line-height:1.25;margin:4px 0;white-space:pre-wrap}
.receipt-invoice{border-top:1px dashed #000;margin-top:6px;padding-top:6px}
.receipt-invoice .receipt-field{font-size:11px}
.receipt-sheet .receipt-footer{font-size:9px;line-height:1.2;text-align:center;border-top:1px dashed #000;margin-top:7px;padding-top:5px}
/* Villa Morra and Fortis Abasto: keep amounts away from the physical right
   edge of their thermal printers. Other receipts keep their layout. */
.receipt-sheet:is([data-print-profile="villa-morra-zkp8016"],[data-print-profile="fortis-abasto-termica"]){width:68mm;padding:2mm}
.receipt-sheet:is([data-print-profile="villa-morra-zkp8016"],[data-print-profile="fortis-abasto-termica"]) .receipt-product{grid-template-columns:minmax(0,1fr);gap:2px}
.receipt-sheet:is([data-print-profile="villa-morra-zkp8016"],[data-print-profile="fortis-abasto-termica"]) .receipt-price{justify-self:start;text-align:left;font-weight:bold}
.receipt-sheet:is([data-print-profile="villa-morra-zkp8016"],[data-print-profile="fortis-abasto-termica"]) .receipt-total{grid-template-columns:max-content max-content;justify-content:start;column-gap:4mm}
.receipt-print-guard{color:#000;font:14px Arial,sans-serif;margin:12mm}#order-print-root{display:none!important}
@media(max-width:580px){.order-print-dialog{padding:18px;width:calc(100% - 20px)}.order-print-top h2{font-size:24px}.order-print-tools{align-items:stretch}.order-print-tools label{flex:1}.order-print-tools button{width:100%}.order-print-preview{max-height:48dvh}.receipt-sheet[data-format="a4"]{width:180mm}}
@media print{
 @page{size:auto;margin:0}
 html,body{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;min-width:0!important;max-width:none!important;width:auto!important;height:auto!important;overflow:visible!important}
 body>*{display:none!important}
 body>#order-print-root{display:block!important;margin:0!important;padding:0!important;max-width:none!important;width:auto!important;color:#000!important;background:#fff!important}
 dialog,.order-print-dialog::backdrop{display:none!important}
 #order-print-root .receipt-sheet{margin:0!important;box-shadow:none!important;max-width:100%!important;border:none!important;print-color-adjust:economy}
 #order-print-root .receipt-sheet[data-format="a4"]{width:190mm}
}
