.order-report{color:#233653;min-width:0;font-size:14px}.order-report button,.order-report input,.order-report select{font:inherit}.or-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:14px;background:#fff;border:1px solid #dfe5ec;border-radius:16px;padding:20px}.or-field{display:flex;flex-direction:column;gap:7px;min-width:0}.or-field>span{font-size:12px;font-weight:750;color:#52637a}.or-field input,.or-field select{background:#fff;min-height:42px;width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:9px;padding:8px 10px;color:#233653}.or-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 15px;border-radius:9px;border:1px solid #ccd5df;background:#fff;color:#263d60;font-weight:700;cursor:pointer;white-space:normal;text-decoration:none}.or-button:hover{background:#f0f5fa}.or-button.or-primary{background:#1e3459;color:#fff;border-color:#1e3459}.or-button:disabled{opacity:.5;cursor:default}.or-filter-actions{display:flex;align-items:end;gap:8px}.or-export{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.or-export p{color:#617189;font-size:12px;max-width:520px}.or-export>div{display:flex;gap:8px;flex-wrap:wrap}.or-alert,.or-notice{padding:12px 15px;border-radius:10px;line-height:1.5}.or-alert{background:#feeceb;color:#922b2b}.or-notice{background:#fff3d5;color:#785019}.or-report-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;border-bottom:3px solid #1e3459;padding:20px 0 16px;margin-top:4px}.or-eyebrow{font-size:10px;letter-spacing:.1em;font-weight:800;color:#708096}.or-report-header h2{font-size:26px;line-height:1.2;margin:5px 0}.or-report-header p{margin:6px 0 0;color:#52637a}.or-report-meta{display:flex;flex-direction:column;gap:5px;font-size:11px;text-align:right;color:#617189}.or-report-meta strong{font-size:15px;color:#233653}.or-criteria,.or-note{font-size:12px;line-height:1.5;color:#67768a;margin:10px 0}.or-table-wrap{overflow-x:auto;border:1px solid #dbe3ed;border-radius:12px;background:#fff;margin-top:14px}.order-report table{border-collapse:collapse;width:100%;text-align:left}.order-report th,.order-report td{border-bottom:1px solid #e0e6ee;vertical-align:top;line-height:1.45;padding:11px 10px}.order-report thead th{background:#edf2f8;color:#415673;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.025em}.or-detail-table{min-width:1120px;font-size:12px}.or-detail-table th{white-space:nowrap}.order-report .or-group th{background:#dfe9f6;font-size:12px;color:#253d60;border-top:2px solid #c5d7ea;padding:10px}.or-name{min-width:175px;font-weight:700}.or-product{min-width:150px}.or-notes{min-width:160px;max-width:300px;white-space:pre-wrap;overflow-wrap:anywhere}.or-folio{font-family:ui-monospace,monospace;font-size:11px}.order-report .or-number{text-align:right;font-variant-numeric:tabular-nums;font-weight:750}.or-service{display:inline-block;padding:4px 7px;border-radius:6px;font-size:10px;font-weight:800}.or-service.or-breakfast{background:#fff0c9;color:#86550b}.or-service.or-lunch{background:#e0f1e4;color:#286542}.or-service.or-other{background:#e7e9fa;color:#514b92}.or-summary{margin:30px 0 0;padding-top:24px;border-top:1px solid #dce3ed}.or-summary h2{font-size:23px;margin:0 0 16px;line-height:1.25}.or-summary h3{font-size:16px;margin:22px 0 12px}.or-service-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.or-total{padding:18px;background:#e7edf5;border-radius:13px;display:flex;flex-direction:column;gap:9px}.or-total.or-breakfast{background:#fff1cf}.or-total.or-lunch{background:#e1f0e5}.or-total.or-other{background:#ebebfb}.or-total span{font-size:12px;font-weight:750}.or-total strong{font-size:30px;line-height:1.1}.or-summary-table{background:#fff;border:1px solid #dbe3ed;font-size:13px}.or-summary-table th:first-child{min-width:120px}.or-summary-table .or-number{width:110px}.order-report tfoot{font-weight:800;background:#edf2f8}.or-level-products{margin-top:24px;break-inside:auto}.or-level-products h3{padding-left:12px;border-left:4px solid #5f81ac}.or-empty{text-align:center;padding:44px 20px;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;margin-top:20px}.or-empty h3{font-size:19px;margin:0 0 10px}.or-empty p{color:#617189;margin:0}
@media(max-width:700px){.or-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:12px}.or-filter-actions{grid-column:1/-1}.or-filter-actions .or-primary{flex:1}.or-export,.or-report-header{align-items:flex-start;flex-direction:column}.or-export>div{width:100%}.or-export .or-button{flex:1}.or-report-meta{text-align:left}.or-service-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.or-total{padding:14px}.or-report-header h2{font-size:23px}.or-summary-table th,.or-summary-table td{padding:9px 8px}}
@page{size:A4 landscape;margin:9mm}
@media print{
 body.cafeteria-report-print{background:#fff!important;color:#111!important;margin:0!important}
 body.cafeteria-report-print *{visibility:hidden}
 body.cafeteria-report-print .order-report,body.cafeteria-report-print .order-report *{visibility:visible}
 body.cafeteria-report-print .order-report{position:absolute;left:0;top:0;width:100%;margin:0;padding:0;font-size:9pt;color:#111;background:#fff;overflow:visible}
 body.cafeteria-report-print .order-report .or-no-print{display:none!important}
 body.cafeteria-report-print .or-report-header{margin:0;padding:0 0 10px;border-bottom:2px solid #222;break-inside:avoid}
 body.cafeteria-report-print .or-report-header h2{font-size:18pt}
 body.cafeteria-report-print .or-report-meta{font-size:8pt}
 body.cafeteria-report-print .or-report-meta strong{font-size:10pt}
 body.cafeteria-report-print .or-criteria,body.cafeteria-report-print .or-note{font-size:8pt;margin:5px 0;color:#333}
 body.cafeteria-report-print .or-table-wrap{overflow:visible;border:0;border-radius:0;margin-top:9px}
 body.cafeteria-report-print .or-detail-table{min-width:0!important;table-layout:auto;font-size:8.5pt;width:100%}
 body.cafeteria-report-print .order-report table{page-break-inside:auto}
 body.cafeteria-report-print .order-report thead{display:table-header-group}
 body.cafeteria-report-print .order-report tbody{break-inside:auto}
 body.cafeteria-report-print .order-report tfoot{display:table-row-group}
 body.cafeteria-report-print .order-report tr{break-inside:avoid;page-break-inside:avoid}
 body.cafeteria-report-print .order-report th,body.cafeteria-report-print .order-report td{padding:5px 4px;border:1px solid #bbb;line-height:1.25;overflow-wrap:anywhere}
 body.cafeteria-report-print .or-detail-table th{white-space:normal}
 body.cafeteria-report-print .or-name{min-width:28mm}
 body.cafeteria-report-print .or-product{min-width:25mm}
 body.cafeteria-report-print .or-notes{min-width:28mm;max-width:44mm}
 body.cafeteria-report-print .or-folio{font-size:7pt}
 body.cafeteria-report-print .or-service{padding:0;background:none!important;font-size:7pt;color:#111!important}
 body.cafeteria-report-print .or-group th{font-size:8pt;background:#e9eef4!important;border-color:#777;break-after:avoid}
 body.cafeteria-report-print .or-summary{margin-top:16px;padding-top:12px;break-inside:auto}
 body.cafeteria-report-print .or-summary h2{font-size:15pt;margin:0 0 8px;break-after:avoid}
 body.cafeteria-report-print .or-summary h3{font-size:11pt;margin:12px 0 7px;break-after:avoid}
 body.cafeteria-report-print .or-service-totals{gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));break-inside:avoid}
 body.cafeteria-report-print .or-total{padding:10px;border:1px solid #aaa;border-radius:0}
 body.cafeteria-report-print .or-total strong{font-size:22pt}
 body.cafeteria-report-print .or-summary-table{font-size:9pt}
 body.cafeteria-report-print .or-level-products{margin-top:14px}
}

/* Reading order: totals, levels, special requests, complete detail. */
.order-report .or-service-totals{gap:18px}
.order-report .or-total{padding:24px;border:1px solid #d4deeb;gap:12px}
.order-report .or-total span{font-size:17px;font-weight:800}
.order-report .or-total strong{font-size:52px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.order-report .or-level-totals{min-width:580px}
.order-report .or-level-totals thead th{font-size:15px;padding:17px 14px;text-transform:none;letter-spacing:0}
.order-report .or-level-totals tbody th{font-size:20px;padding:20px 14px;vertical-align:middle}
.order-report .or-level-totals .or-number{font-size:28px;padding:17px 14px;text-align:center;vertical-align:middle}
.order-report .or-level-totals tfoot th{font-size:19px;vertical-align:middle}
.order-report .or-level-totals tfoot .or-number{font-size:30px}
.order-report .or-level-totals tbody tr:nth-child(even){background:#f6f8fb}
.order-report .or-level-totals th:first-child{min-width:160px}
.order-report .or-attention{margin-top:30px;padding:20px;border:2px solid #e8b94c;border-radius:14px;background:#fff9e9}
.order-report .or-attention h2,.order-report .or-detail-section h2{font-size:23px;line-height:1.3;margin:0 0 12px}
.order-report .or-attention .or-notes{font-size:14px;font-weight:800;color:#63430b;background:#fff4d4}
.order-report .or-detail-section{margin-top:32px}
@media(max-width:700px){
 .order-report .or-total{padding:18px;gap:10px}
 .order-report .or-total span{font-size:15px}
 .order-report .or-total strong{font-size:42px}
 .order-report .or-service-totals{gap:10px}
 .order-report .or-attention{padding:14px}
}
@media print{
 body.cafeteria-report-print .order-report .or-service-totals{gap:8px}
 body.cafeteria-report-print .order-report .or-total{padding:10px;gap:6px;background:#fff!important;border:1px solid #555}
 body.cafeteria-report-print .order-report .or-total span{font-size:12pt}
 body.cafeteria-report-print .order-report .or-total strong{font-size:32pt}
 body.cafeteria-report-print .order-report .or-level-totals{min-width:0}
 body.cafeteria-report-print .order-report .or-level-totals thead th{font-size:11pt;padding:7px 6px}
 body.cafeteria-report-print .order-report .or-level-totals tbody th{font-size:13pt;padding:8px 6px}
 body.cafeteria-report-print .order-report .or-level-totals .or-number{font-size:19pt;padding:7px 6px}
 body.cafeteria-report-print .order-report .or-level-totals tfoot th{font-size:12pt}
 body.cafeteria-report-print .order-report .or-level-totals tfoot .or-number{font-size:20pt}
 body.cafeteria-report-print .order-report .or-level-totals th:first-child{min-width:0}
 body.cafeteria-report-print .order-report .or-attention{margin-top:14px;padding:10px;border:2px solid #777;border-radius:0;background:#fff}
 body.cafeteria-report-print .order-report .or-attention h2,body.cafeteria-report-print .order-report .or-detail-section h2{font-size:15pt;break-after:avoid}
 body.cafeteria-report-print .order-report .or-attention .or-notes{font-size:9pt;color:#111;background:#fff4d4}
 body.cafeteria-report-print .order-report .or-detail-section{margin-top:16px}
}

.order-report .or-special-table{min-width:800px}.order-report .or-special-table .or-notes{min-width:220px;font-size:15px}
@media print{body.cafeteria-report-print .order-report .or-special-table{min-width:0!important}body.cafeteria-report-print .order-report .or-special-table .or-notes{min-width:45mm;font-size:10pt}}

/* Level and service sections, with non-overlapping normal/special counts. */
.order-report .or-level-service-block{margin:28px 0 36px}
.order-report .or-level-service-heading{break-inside:avoid;break-after:avoid;margin-bottom:14px}
.order-report .or-level-service-heading h3{font-size:32px;line-height:1.15;text-transform:uppercase;font-weight:850;color:#182b4b;margin:0 0 12px;overflow-wrap:anywhere}
.order-report .or-level-service-counts{display:inline-block;margin:0;border-radius:10px;padding:12px 18px;background:#203455;color:#fff;font-size:21px;font-weight:800;line-height:1.35;font-variant-numeric:tabular-nums}
.order-report .or-count-breakdown{display:block;color:#43536b;font-size:11px;line-height:1.5;font-weight:650;white-space:normal;margin-top:7px}
.order-report .or-count-total{display:block}
.order-report .or-total .or-count-breakdown{font-size:13px}
.order-report .or-level-totals .or-number{min-width:145px}
.order-report .or-special-tag{display:block;width:fit-content;font-size:10px;line-height:1.4;background:#eee7ff;color:#4b2f72;border:1px solid #cdb6ee;border-radius:5px;padding:2px 6px;margin:5px 0;font-weight:800}
.order-report .or-special-row .or-notes,.order-report .or-attention .or-notes{background:#eee7ff;color:#352355;border-left:3px solid #9b78d0;font-weight:750}
@media(max-width:700px){.order-report .or-level-service-heading h3{font-size:25px}.order-report .or-level-service-counts{font-size:17px;padding:10px 12px}.order-report .or-level-service-block{margin:22px 0 28px}}
@media print{
 body.cafeteria-report-print .order-report .or-level-service-block{margin:15px 0 20px;break-inside:auto}
 body.cafeteria-report-print .order-report .or-level-service-heading{margin-bottom:7px;break-after:avoid}
 body.cafeteria-report-print .order-report .or-level-service-heading h3{font-size:23pt;margin:0 0 8px;color:#111;break-after:avoid}
 body.cafeteria-report-print .order-report .or-level-service-counts{font-size:14pt;padding:8px 12px;background:#203455!important;color:#fff!important;border-radius:6px;print-color-adjust:exact;-webkit-print-color-adjust:exact}
 body.cafeteria-report-print .order-report .or-level-service-block .or-table-wrap{break-before:avoid}
 body.cafeteria-report-print .order-report .or-count-breakdown{font-size:8pt;margin-top:4px;color:#333}
 body.cafeteria-report-print .order-report .or-level-totals .or-number{min-width:0}
 body.cafeteria-report-print .order-report .or-special-tag{font-size:7pt;padding:1px 4px}
 body.cafeteria-report-print .order-report .or-special-row .or-notes{background:#eee7ff!important;color:#111;border-left:2px solid #9b78d0;print-color-adjust:exact;-webkit-print-color-adjust:exact}
}
