.print__toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2); }
.print__label { color: var(--color-muted); font-weight: 600; }
.print-sheet { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8mm; }
.qr-card { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2mm; min-height: 82mm; padding: 6mm; border: 1px dashed var(--color-faint); border-radius: var(--radius); text-align: center; break-inside: avoid; page-break-inside: avoid; background: var(--color-surface); color: var(--color-text); }
.qr-card__bistro { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--color-muted); }
.qr-card__table { font-size: 1.6rem; font-weight: 900; line-height: 1.1; }
.qr-card__qr svg { display: block; width: 46mm; height: 46mm; }
.qr-card__cta { font-weight: 800; }
.qr-card__hint { font-size: 0.75rem; color: var(--color-muted); }
.print-sheet--poster { grid-template-columns: 1fr; }
.qr-poster { display: flex; flex-direction: column; align-items: center; gap: 6mm; padding: 10mm; text-align: center; break-inside: avoid; color: var(--color-text); }
.qr-poster__bistro { font-size: 2rem; font-weight: 900; }
.qr-poster__cta { font-size: 2.6rem; font-weight: 900; }
.qr-poster__qr svg { display: block; width: 130mm; max-width: 100%; height: auto; }
.qr-poster__hint { font-size: 1.2rem; color: var(--color-text-2); }
@media (max-width: 560px) { .print-sheet { grid-template-columns: 1fr; } }

@media print {
  @page { size: A4; margin: 12mm; }
  #topbar, #banner, .env-badge, #toast-host, .print__toolbar { display: none !important; }
  body { background: var(--color-surface); }
  .print { max-width: none; padding: 0; }
  /* Fixed sizes so 2 × 3 cards fit an A4 page (186 × 273 mm printable). */
  .print-sheet { grid-template-columns: repeat(2, 88mm); gap: 6mm; justify-content: center; }
  .qr-card { height: 84mm; min-height: 0; padding: 4mm; gap: 1.5mm; }
  .qr-card__bistro { font-size: 8pt; }
  .qr-card__table { font-size: 18pt; }
  .qr-card__qr svg { width: 44mm; height: 44mm; }
  .qr-card__cta { font-size: 11pt; }
  .qr-card__hint { font-size: 7.5pt; }
  .print-sheet--poster { grid-template-columns: 1fr; }
  .qr-poster { padding-top: 20mm; }
  .qr-poster__qr svg { width: 120mm; }
}
