/* Receipt-width kitchen ticket. `stylesheet_link_tag :app` loads this on every
   page, so every rule is scoped to print and to pages that contain a ticket.
   No fixed page size: the receipt printer's driver supplies the roll width. The
   narrow page margin lives in `orders/_kitchen_ticket` because `@page` can't be
   scoped from a shared stylesheet. */
@media print {
  html body:has(.kitchen-ticket) { background: white; color: black; }

  body:has(.kitchen-ticket) .site-header,
  body:has(.kitchen-ticket) .admin-nav,
  body:has(.kitchen-ticket) .flash,
  body:has(.kitchen-ticket) .site-footer,
  body:has(.kitchen-ticket) .no-print,
  body:has(.kitchen-ticket) .receipt-wrap > :not(.ticket-print-only) { display: none !important; }

  body:has(.kitchen-ticket) .ticket-print-only { display: block !important; }
  body:has(.kitchen-ticket) .shell,
  body:has(.kitchen-ticket) .ticket-page,
  body:has(.kitchen-ticket) .receipt-wrap { margin: 0; max-width: none; padding: 0; width: auto; }

  body:has(.kitchen-ticket) .kitchen-ticket {
    background: white;
    border: 0;
    color: black;
    margin: 0;
    max-width: 72mm;
    padding: 0;
    width: auto;
  }
  .kitchen-ticket header { border: 0; padding: 0 0 2mm; }
  .kitchen-ticket header .eyebrow { color: black; font-size: 9pt; margin: 0; }
  .kitchen-ticket header h1 { color: black; font-size: 22pt; font-weight: 700; line-height: 1.1; margin: 1mm 0; }
  .kitchen-ticket header .ticket-reference { color: black; font-size: 9pt; margin: 0 0 1mm; }
  .kitchen-ticket header > div { display: block; }
  .kitchen-ticket .ticket-customer { display: block; font-size: 18pt; font-weight: 700; line-height: 1.15; }
  .kitchen-ticket .ticket-pickup { display: block; font-size: 13pt; font-weight: 700; margin-top: 1mm; }
  .kitchen-ticket .ticket-items { border-top: 1px solid black; margin-top: 2mm; padding-block: 2mm; }
  .kitchen-ticket .ticket-item {
    background: none;
    border: 0;
    break-inside: avoid;
    display: grid;
    gap: 2mm;
    grid-template-columns: 11mm 1fr;
    padding-block: 1mm;
  }
  .kitchen-ticket .ticket-item > strong { font-size: 12pt; font-weight: 700; }
  .kitchen-ticket .ticket-item h2 { font-size: 12pt; font-weight: 400; margin: 0; }
  .kitchen-ticket .ticket-item p { font-size: 10pt; margin: 0; }
  .kitchen-ticket .ticket-note { background: none; border: 1px solid black; break-inside: avoid; font-size: 10pt; margin-block: 2mm; padding: 2mm; }
  .kitchen-ticket .ticket-note p { margin: 1mm 0 0; }
  .kitchen-ticket footer { border-top: 1px solid black; display: flex; font-size: 12pt; font-weight: 700; justify-content: space-between; padding-top: 2mm; }
}
