/* Measured at the same A4 dimensions on screen and in print, including Safari. */
.matrix-print-pages { display: none; color: #202820; font-family: Arial, Helvetica, sans-serif; }
.matrix-print-pages.matrix-print-measuring { display: block; position: absolute; left: -20000px; top: 0; visibility: hidden; }
.matrix-print-pages .matrix-print-sheet { width: 277mm; margin: 0; padding: 0; }
.matrix-print-pages table.matrix { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; }
.matrix-print-pages table.matrix col.matrix-item-width { width: 25%; }
.matrix-print-pages table.matrix th, .matrix-print-pages table.matrix td { border: 1px solid #a5ada6; }
.matrix-print-pages table.matrix th.item-col, .matrix-print-pages table.matrix td.item-cell { min-width: 0; }
.matrix-print-pages table.matrix td.al-cell { width: auto; padding: 0; text-align: center; }
.matrix-print-pages table.matrix .matrix-print-context { display: table-row; }
.matrix-print-pages table.matrix .matrix-print-context td { border: 0; padding: 0 0 9pt; background: #fff; }
.matrix-print-pages .matrix-print-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 16pt; margin-bottom: 12pt; }
.matrix-print-pages .matrix-print-heading h2 { margin: 0; font: 700 24pt/1.1 var(--font-display); color: #1e4230; }
.matrix-print-pages .matrix-print-heading a, .matrix-print-pages .matrix-print-brand a { color: #1e4230; font-size: 9pt; font-weight: 700; text-decoration: none; }
.matrix-print-pages table.matrix .print-meta { display: flex; justify-content: space-between; align-items: baseline; gap: 8pt 18pt; margin: 0 0 7pt; font: 9pt/1.3 Arial, Helvetica, sans-serif; overflow-wrap: anywhere; }
.matrix-print-pages .print-meta > div { flex: 1; min-width: 0; }
.matrix-print-pages .print-meta .pm-name { display: block; margin-bottom: 3pt; font-size: 14pt; color: #202820; }
.matrix-print-pages .pm-menu { display: block; }
.matrix-print-pages .pm-menu:empty { display: none; }
.matrix-print-pages .pm-date { flex-shrink: 0; }
.matrix-print-pages table.matrix .matrix-print-legend { margin: 0; font: 8pt/1.3 Arial, Helvetica, sans-serif; color: #3c483f; }
.matrix-print-pages table.matrix thead th { background: #1e4230 !important; color: #fff !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; font: 700 6.5pt/1.25 Arial, Helvetica, sans-serif; padding: 7pt 2pt; overflow-wrap: normal; vertical-align: middle; }
.matrix-print-pages table.matrix thead th.item-col { padding: 7pt 8pt; letter-spacing: normal; }
.matrix-print-pages .matrix-allergen-label { display: block; }
.matrix-print-pages table.matrix td.item-cell .item-print-name { display: block; padding: 6pt 8pt; font: 9pt/1.25 Arial, Helvetica, sans-serif; color: #202820; white-space: normal; overflow-wrap: anywhere; }
.matrix-print-pages .matrix-print-mark { display: block; min-height: 30px; font: 800 10pt/30px Arial, Helvetica, sans-serif; color: #111; }
.matrix-print-pages table.matrix td.al-cell.state-yes { background: #f6d7d1 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.matrix-print-pages table.matrix td.al-cell.state-may { background: #fdeed3 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.matrix-print-pages .state-yes .matrix-print-mark { color: #b03a24; }
.matrix-print-pages .state-may .matrix-print-mark { color: #8f5c10; }
.matrix-print-pages table.matrix .matrix-print-footer { display: table-footer-group; }
.matrix-print-pages table.matrix .matrix-print-footer td { border: 0; padding: 8pt 0 0; }
.matrix-print-pages table.matrix .matrix-print-responsibility { margin: 0 0 6pt; font: 7.5pt/1.3 Arial, Helvetica, sans-serif; color: #3c483f; }
.matrix-print-pages .matrix-print-brand { display: flex; justify-content: space-between; align-items: baseline; gap: 12pt; border-top: 1px solid #a5ada6; padding-top: 6pt; font: 8pt/1.3 Arial, Helvetica, sans-serif; color: #3c483f; }
@media print {
  @page { size: A4 landscape; margin: 10mm; }
  body.matrix-print-ready { margin: 0; padding: 0; background: #fff; }
  body.matrix-print-ready > :not(.matrix-print-pages) { display: none !important; }
  .matrix-print-pages, .matrix-print-pages.matrix-print-measuring { display: block; position: static; visibility: visible; }
  .matrix-print-pages .matrix-print-sheet { break-after: page; page-break-after: always; }
  .matrix-print-pages .matrix-print-sheet:last-child { break-after: auto; page-break-after: auto; }
  .matrix-print-pages table.matrix tr { break-inside: avoid; page-break-inside: avoid; }
}
