.food-action-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.food-action { display:flex; flex-direction:column; align-items:flex-start; gap:10px; padding:24px; border:1px solid #dce5df; border-radius:14px; background:#fff; color:#244337; text-decoration:none; }
.food-action .nav-ic { width:28px; height:28px; }
.food-action strong { font-size:1.15rem; }
.food-action span { color:#57685e; font-size:.95rem; }
.food-action:hover { border-color:#17745b; background:#f4faf6; color:#17745b; }
.food-action-primary, .food-action-primary:hover { background:#17745b; color:#fff; }
.food-action-primary span { color:#fff; }
.food-home-alerts { display:flex; flex-wrap:wrap; gap:12px 24px; margin:22px 0; }
.food-home-alerts a { color:#285843; }
.food-details { border:1px solid #dce5df; border-radius:10px; padding:12px 16px; background:#fff; }
.food-details > summary { cursor:pointer; font-weight:600; min-height:24px; }
.food-details[open] > summary { margin-bottom:16px; }
.food-inline-details { max-width:100%; }
.food-inline-details > summary { cursor:pointer; padding:8px; color:#476455; }
.food-inline-details[open] > .app-actions { margin-top:10px; }
.food-sale-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:16px; }
.food-sale-heading p { margin:0; color:#5a6c61; }
.food-home + .food-details { margin-top:24px; }
.food-sale-layout .sale-submit-actions > div { flex:1 1 0; width:0; min-width:0; }
.food-sale-layout .sale-submit-actions .btn { white-space:normal; height:100%; padding:10px 8px; font-size:15px; line-height:1.3; }
.food-products .food-products-heading { background:none; border:0; box-shadow:none; padding:0; margin-bottom:16px; min-height:0; }
.food-products-search { padding:14px 16px 8px; }
.food-products-search-row { display:flex; align-items:flex-end; gap:12px; }
.food-products-query { flex:1; min-width:160px; }
.food-products-category { flex:0 1 240px; min-width:140px; }
.food-products-search .form-label { margin-bottom:5px; font-size:.85rem; }
.food-products .product-filter-actions { flex-wrap:nowrap; }
.food-products-extra { margin-top:10px; }
.food-products-extra summary { cursor:pointer; color:#4e6459; font-size:.85rem; width:fit-content; }
.food-products-extra-grid { display:flex; flex-wrap:wrap; gap:12px; margin-top:12px; }
.food-products-extra-field { flex:0 1 240px; }
.food-products .product-state-filters { padding:8px 16px; gap:8px; }
.food-products .product-filter-pill { padding:5px 10px; min-height:34px; font-size:.85rem; }
.food-products .product-filter-pill span { min-width:22px; height:22px; padding:2px 5px; font-size:.8rem; }
.food-products .food-products-list-head { padding:10px 16px; min-height:0; }
.food-products .product-list-actions { display:flex; flex-direction:column; align-items:flex-start; gap:6px; min-width:110px; }
.food-product-row-tools summary { cursor:pointer; font-size:.8rem; color:#526559; }
.food-product-row-tools[open] .btn, .food-product-row-tools[open] form { margin-top:6px; }
.food-products .product-list-table tbody td { padding-top:12px; padding-bottom:12px; }
.food-products .product-list-table thead th { text-transform:none; letter-spacing:normal; font-size:.875rem; font-weight:600; padding-top:12px; padding-bottom:12px; }
@media (max-width:767px) {
 .food-products-search-row { flex-wrap:wrap; gap:10px; }
 .food-products-query { flex-basis:100%; }
 .food-products-category { flex:1; }
 .food-products .product-filter-actions { flex-wrap:wrap; }
 .food-products .food-products-heading { gap:10px; }
 .food-products .food-products-heading .app-actions { display:flex; flex-flow:row nowrap; width:100%; gap:8px; }
 .food-products .food-products-heading .app-actions > a { flex:1; width:auto; }
 .food-products .food-products-heading .app-actions .dropdown { flex:0 0 auto; }
 .food-products .food-products-heading .app-actions .btn { width:auto; }
 .food-products .product-list-card-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .food-products .product-state-filters { flex-wrap:nowrap; overflow-x:auto; }
 .food-products .product-filter-pill { flex-shrink:0; }
 .food-products-extra-field { flex:1 1 140px; }
}
@media (max-width:767px) {
 .food-return-table thead { display:none; }
 .food-return-table tr { display:block; padding:12px; border-bottom:1px solid #dce5df; }
 .food-return-table td { display:block; border:0; padding:6px; white-space:normal; }
 .food-return-table td[data-label]::before { content:attr(data-label); display:block; font-weight:600; margin-bottom:5px; }
 .food-action-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .food-action { padding:16px; gap:8px; }
 .food-action strong { font-size:1rem; }
 .food-action span { font-size:.85rem; }
 .food-home-alerts { flex-direction:column; gap:14px; }
 .food-sale-heading { align-items:flex-start; }
 .food-inline-details .app-actions { justify-content:flex-start; }
 .sale-search-panel .input-group { display:flex; flex-wrap:wrap; gap:8px; }
 .sale-search-panel .input-group > .form-control { flex:1 1 100%; width:100%; border-radius:8px !important; }
 .sale-search-panel .input-group > .btn { width:100%; margin-left:0; border-radius:8px !important; }
}
@media (max-width:359px) { .food-action-grid { grid-template-columns:1fr; } }
@media print { .food-home, .food-inline-details { display:none; } }


/* Food checkout: keep the amount and actions visible on desktop. */
.food-sale-layout .sale-table td { padding-top:10px; padding-bottom:10px; }
.food-sale-layout .sale-table td:first-child strong { font-weight:600; }
.food-sale-layout .quantity-stepper .btn { min-width:36px; min-height:40px; }
.food-sale-layout .sale-summary { padding:16px !important; }
.food-sale-layout .sale-total-box { padding:12px 16px; flex-shrink:0; }
.food-sale-layout .sale-summary h2 { flex-shrink:0; }
.food-sale-layout .client-payment-mode { min-height:48px; padding:8px 12px; }
.food-sale-layout .client-payment-mode-icon { width:32px; height:32px; flex-basis:32px; }
.food-sale-layout .sale-payment-mode-primary > span:nth-of-type(2) { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; }
.food-sale-layout .sale-payment-mode-primary small { margin:0; font-size:.8rem; }
.food-sale-layout .food-details { padding:8px 12px; }
.food-sale-layout #openProductCatalogBtn, .food-sale-layout #payFullAmountBtn { font-size:1rem; font-weight:600; }
.food-checkout-footer { padding-top:12px; border-top:1px solid #dce5df; flex-shrink:0; }
.food-checkout-footer .btn { font-size:1rem; min-height:44px; }
.food-sale-layout .sale-delivery-panel { padding:12px 16px !important; }
.food-sale-layout .delivery-chip { padding:8px 12px; min-height:48px; }
.food-sale-layout .delivery-chip-ic { width:32px; height:32px; }
.food-sale-layout .sale-summary .btn-primary { --bs-btn-disabled-bg:#17745b; --bs-btn-disabled-border-color:#17745b; }
.food-sale-layout .sale-summary .btn-outline-primary { --bs-btn-disabled-color:#527568; --bs-btn-disabled-border-color:#a9beb5; }
@media (min-width:1200px) and (min-height:600px) {
 .food-sale-layout .sale-summary { display:flex; flex-direction:column; top:90px; max-height:calc(100dvh - 220px); }
 .food-checkout-scroll { overflow-y:auto; min-height:0; scrollbar-gutter:stable; padding-right:4px; }
 .food-cart-scroll { max-height:calc(100dvh - 340px); overflow:auto; scrollbar-gutter:stable; }
 .food-cart-scroll thead { position:sticky; top:0; z-index:1; }
}
@media (max-width:1199px), (max-height:599px) {
 .food-sale-layout .sale-summary { position:static; max-height:none; }
}
@media print {
 .food-sale-layout .sale-summary { position:static; max-height:none; display:block; }
 .food-checkout-scroll, .food-cart-scroll { overflow:visible; max-height:none; }
}
