:root{--bg:#f7f3eb;--card:#fff;--ink:#24302b;--muted:#6d756f;--line:#e4ded3;--accent:#315c4d;--accent2:#d99b48;--shadow:0 8px 30px rgba(30,40,34,.07)}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);line-height:1.5}.site{max-width:1120px;margin:auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.site>div{display:flex;flex-direction:column}.brand,.site strong{color:var(--ink);text-decoration:none;font-size:1.25rem}.site span{font-size:.8rem;color:var(--muted)}nav{display:flex;gap:16px;flex-wrap:wrap}nav a{color:var(--ink);text-decoration:none;padding:8px 10px;border-radius:8px}nav a.active,nav a:hover{background:#ebe5da}.home{max-width:1120px;margin:auto;padding:55px 24px}.hero{background:var(--card);border-radius:24px;padding:42px;box-shadow:var(--shadow);display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center}.hero h1{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.02;margin:8px 0 18px}.hero p{font-size:1.1rem;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.75rem;color:var(--accent);margin:0}.home-buttons{display:grid;gap:12px}.bigbtn{display:block;text-align:center;background:var(--accent);color:#fff;text-decoration:none;padding:18px;border-radius:14px;font-weight:800;font-size:1.05rem}.bigbtn.secondary{background:#efe9df;color:var(--ink)}main{max-width:1120px;margin:auto;padding:25px 24px 60px}.grid{display:grid;grid-template-columns:1.5fr .8fr;gap:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow)}.sticky{position:sticky;top:15px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.section-head h1{margin:0}.small-link{color:var(--accent);text-decoration:none;font-weight:700}.product{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;gap:12px}.product:last-child{border-bottom:0}.muted,.small{color:var(--muted);font-size:.9rem}.qty{display:flex;align-items:center;gap:10px}.qty button{width:38px;height:38px;padding:0;border-radius:50%;font-size:1.35rem;border:1px solid var(--line);background:#f4efe7;color:var(--ink)}.qty strong{min-width:22px;text-align:center}label{display:block;font-weight:700;font-size:.9rem;margin-top:10px}input,select{width:100%;padding:12px;border:1px solid #cfc8bd;border-radius:9px;margin:5px 0 7px;background:#fff;font:inherit}.total{font-size:1.3rem;font-weight:800;margin:15px 0}.primary{border:0;border-radius:10px;padding:13px 16px;background:var(--accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.primary:disabled{opacity:.6}.full{width:100%}.cartline{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}.alert{background:#fff0f0;border:1px solid #e2aaaa;color:#8b1e1e;border-radius:10px;padding:12px;margin-bottom:16px}.narrow{max-width:900px}.menu-card img{display:block;width:100%;height:auto;border-radius:10px}.placeholder{display:none;text-align:center;padding:60px 20px;background:#f1ece4;border-radius:12px}.placeholder h2{margin-top:0}footer{text-align:center;color:var(--muted);padding:30px 20px;font-size:.9rem}@media(max-width:800px){.hero,.grid{grid-template-columns:1fr}.sticky{position:static}.site{align-items:flex-start;flex-direction:column}.home{padding-top:25px}.hero{padding:28px}}
.smallbtn{border:0;background:transparent;padding:8px 10px;color:var(--ink);font:inherit;cursor:pointer}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 18px}.tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 15px;cursor:pointer;text-align:left}.tab.selected{background:var(--accent);color:#fff}.switch{display:flex;align-items:center;gap:8px;margin:10px 0;font-weight:600}.switch input{width:auto;margin:0}.slotrow{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.slotrow:last-child{border-bottom:0}.ordergroup{margin-top:18px}.order{border:1px solid var(--line);border-radius:10px;padding:12px;margin:8px 0;background:#fcfbf8}.orderbottom{display:flex;justify-content:space-between;gap:12px;margin-top:8px;font-weight:700}.summaryline{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line)}hr{border:0;border-top:1px solid var(--line);margin:15px 0}
.calendar-tools{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.month-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin-bottom:1rem}.month-btn{padding:.65rem .5rem;border:1px solid #ddd;border-radius:12px;background:#fff;cursor:pointer}.month-btn.selected{background:#111;color:#fff}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.cal-head{font-size:.78rem;text-align:center;font-weight:700;padding:.35rem}.cal-day{border:1px solid #e4e4e4;border-radius:12px;padding:.5rem;min-height:100px;background:#fff}.cal-day.muted{opacity:.45}.cal-day.open{border-color:#4b8f5a}.cal-day.closed{background:#fafafa}.cal-date{display:flex;justify-content:space-between;align-items:center;margin-bottom:.45rem}.day-toggle{font-size:.75rem}.day-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.slot-chip{font-size:.7rem;padding:.25rem;border-radius:8px;border:1px solid #ddd;background:#fff;cursor:pointer}.slot-chip.on{background:#e9f6eb;border-color:#7ab382}.event-list{display:grid;gap:.75rem}.event-item{border:1px solid #e4e4e4;border-radius:12px;padding:1rem}.event-actions{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:800px){.month-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar{gap:3px}.cal-day{min-height:90px;padding:.35rem}.day-slots{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}}

/* Compact weekly agenda */
.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem;margin-top:.65rem}
.week-day{border:1px solid var(--line,#ddd);border-radius:10px;padding:.5rem;background:#fff;min-width:0}
.week-day.open{border-color:#b7d7bd}.week-day.closed{opacity:.72}
.week-day-head{display:flex;justify-content:space-between;gap:.35rem;align-items:flex-start;font-size:.82rem;margin-bottom:.4rem}
.week-day-head>div{min-width:0}.week-day-head b{display:block;text-transform:capitalize;white-space:nowrap}.day-toggle{font-size:.72rem;white-space:nowrap}
.order-count{display:block;font-size:.68rem;color:#667085;margin-top:.12rem}
.week-slots{display:flex;flex-wrap:wrap;gap:.22rem}.slot-chip{border:1px solid #d0d5dd;background:#f8f9fa;border-radius:7px;padding:.24rem .32rem;font-size:.69rem;cursor:pointer}.slot-chip.on{background:#e9f6ec;border-color:#a8d5af}
.order-day-btn{width:100%;margin-top:.45rem;font-size:.72rem;padding:.35rem .4rem}
.orders-week-agenda{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;margin-top:.65rem}
.orders-week-day{border:1px solid var(--line,#ddd);background:#fff;border-radius:9px;padding:.5rem;text-align:left;cursor:pointer}.orders-week-day.selected{outline:2px solid #222}.orders-week-day b{display:block;text-transform:capitalize;font-size:.8rem}.orders-week-day span{display:block;font-size:.7rem;color:#667085;margin-top:.15rem}
@media(max-width:900px){.week-calendar,.orders-week-agenda{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.week-calendar,.orders-week-agenda{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-tools{flex-wrap:wrap}}
