*{box-sizing:border-box}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20252b;background:#f3f5f7}
body{margin:0;line-height:1.5}
.wrap{width:min(1180px,calc(100% - 2rem));margin:auto}
.site-header{background:#222b35;color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 8px #0002}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px}
.brand{font-size:1.2rem;font-weight:800;color:#fff;text-decoration:none}
nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
nav a,.link-button{color:#fff;text-decoration:none;background:none;border:0;font:inherit;cursor:pointer;padding:.3rem}
main{padding:2rem 0}
.card{background:#fff;border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 5px 24px #0000000d}
.narrow{max-width:560px;margin:2rem auto}
.hero{padding:3rem 2rem}
h1{margin-top:0}h2{font-size:1.05rem}
label{display:block;font-weight:650;margin:.8rem 0}
input,select,textarea,button,.button{font:inherit}
input,select,textarea{width:100%;padding:.7rem;border:1px solid #cbd2d9;border-radius:8px;background:#fff}
button,.button{display:inline-block;padding:.65rem 1rem;border:1px solid #b8c0c8;border-radius:8px;background:#fff;text-decoration:none;color:#20252b;cursor:pointer}
.primary{background:#8c1d18;color:#fff;border-color:#8c1d18}
.actions{display:flex;gap:.7rem;flex-wrap:wrap}
.inline{display:inline}
.alert{padding:1rem;border-radius:9px;margin-bottom:1rem}
.alert.error{background:#fde8e7;color:#8c1d18}.alert.success{background:#e7f6eb;color:#17652a}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1rem 0 2rem}
.product{border:1px solid #e0e4e8;border-radius:10px;padding:1rem}
.product .price{font-weight:800;font-size:1.1rem}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.form-grid label:nth-last-child(-n+2){grid-column:span 2}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{padding:.7rem;border-bottom:1px solid #e5e7eb;text-align:left;vertical-align:top}
th{background:#f6f7f8}
.badge{display:inline-block;padding:.25rem .5rem;border-radius:99px;font-size:.85rem;font-weight:750}
.badge.delivery{background:#ffe2d8;color:#9a3518}.badge.pickup{background:#dff1ff;color:#075985}
.row-delivery{background:#fff3ef}.row-pickup{background:#eff8ff}
.small{padding:.35rem .6rem;font-size:.9rem}.total{text-align:right;font-size:1.2rem;font-weight:800}
footer{padding:2rem 0;color:#66717c}
@media(max-width:800px){.product-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-grid label:nth-last-child(-n+2){grid-column:auto}}
@media(max-width:560px){.product-grid{grid-template-columns:1fr}.header-inner{align-items:flex-start;padding:.7rem 0}.hero{padding:2rem 1rem}}
@media print{body{background:#fff}.site-header,footer,.print-hide{display:none!important}.card{box-shadow:none;padding:0}.wrap{width:100%}.row-delivery{background:#fff0eb!important}.row-pickup{background:#eef8ff!important}}

.danger{color:#9b1c1c;border-color:#e2a5a5}.inline{display:inline}.daily select{width:auto;padding:.35rem}
.date-filter{display:flex;align-items:end;gap:.75rem;flex-wrap:wrap}.date-filter label{min-width:150px;margin:.25rem 0}.date-filter input{min-width:150px}.summary-heading{margin-top:2.5rem;padding-top:1.5rem;border-top:3px solid #8c1d18}.daily-summary{margin:1.25rem 0 2rem;break-inside:avoid}.daily-summary h3{margin-bottom:.5rem;background:#f6f7f8;padding:.6rem .8rem}.need-table{max-width:850px}.need-table .qty{text-align:right;white-space:nowrap}.need-table tfoot{border-top:2px solid #20252b}.article-subtotal td{font-size:.92rem;color:#4b5563}.row-cancelled{opacity:.7;background:#f2f2f2!important;text-decoration-color:#777}.cancel-note{display:block;font-size:.8rem;color:#9b1c1c;margin-top:.35rem}.print-note{font-size:.9rem;color:#4b5563}@media print{.date-filter{display:none!important}.daily-summary{break-inside:avoid}.summary-heading{break-before:page}.row-cancelled{opacity:1;background:#eee!important}}
