/* S24 Menu CSS v3.1 */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{
  --primary:#e86c2c;
  --primary-d:#c85a1a;
  --bg:#f9fafb;
  --surface:#fff;
  --border:#e5e7eb;
  --text:#1f2937;
  --muted:#6b7280;
}

body{font-family:'Tajawal',sans-serif;background:var(--bg);color:var(--text);padding-bottom:90px;font-size:15px}
[dir=ltr] body{font-family:'Inter',sans-serif}
button,input,textarea{font-family:inherit}

/* ══ HEADER ══════════════════════════════════════ */
.menu-header{background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}
.mh-top{display:flex;align-items:center;gap:10px;padding:12px 14px 8px}
.mh-logo{width:46px;height:46px;border-radius:10px;object-fit:cover;flex-shrink:0}
.mh-info{flex:1;min-width:0}
.mh-name{font-size:1.05rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mh-desc{font-size:.77rem;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mh-right{display:flex;align-items:center;gap:7px;flex-shrink:0}
.mh-welcome{background:#fff7ed;color:var(--primary);font-size:.82rem;padding:5px 14px;text-align:center;font-weight:500;border-bottom:1px solid #fed7aa}

/* زر الحالة — بسيط جداً */
.status-btn{border:none;border-radius:20px;padding:5px 13px;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background .2s,color .2s;white-space:nowrap}
.status-btn.open{background:#d1fae5;color:#065f46}
.status-btn.closed{background:#fee2e2;color:#991b1b}

/* Lang switch */
.lang-sw{display:flex;background:#f3f4f6;border-radius:20px;overflow:hidden;border:1px solid var(--border)}
.lang-sw a{font-size:.75rem;padding:4px 10px;color:var(--muted);font-weight:700;text-decoration:none}
.lang-sw a.on{background:var(--primary);color:#fff}

/* Categories nav */
.cats-nav{display:flex;gap:6px;padding:7px 12px 9px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.cats-nav::-webkit-scrollbar{display:none}
.cat-btn{background:#f3f4f6;border:none;border-radius:20px;padding:6px 16px;font-family:inherit;font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s,color .15s}
.cat-btn.active,.cat-btn:hover{background:var(--primary);color:#fff}

/* Closed notice */
.closed-notice{background:#fef3c7;color:#92400e;font-size:.84rem;padding:8px 14px;text-align:center;margin:10px 14px 0;border-radius:8px}

/* ══ MENU ITEMS ══════════════════════════════════ */
.menu-main{max-width:620px;margin:0 auto;padding:12px 14px}
.cat-sec{margin-bottom:28px}
.cat-hd{font-size:.97rem;font-weight:800;padding-bottom:8px;border-bottom:2px solid var(--primary);margin-bottom:10px;color:#111827}
.items-grid{display:flex;flex-direction:column;gap:8px}

.item-card{background:var(--surface);border-radius:12px;display:flex;cursor:pointer;overflow:hidden;box-shadow:0 1px 4px rgba(0,0,0,.06);transition:transform .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent}
.item-card:active{transform:scale(.99)}
.item-img-wrap{width:88px;flex-shrink:0}
.item-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.item-body{flex:1;padding:10px 12px;display:flex;flex-direction:column;gap:3px;min-width:0}
.item-name{font-weight:700;font-size:.88rem;line-height:1.3}
.item-desc{font-size:.76rem;color:var(--muted);line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.item-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.item-price{font-weight:800;color:var(--primary);font-size:.9rem}
.add-btn{width:28px;height:28px;background:var(--primary);color:#fff;border:none;border-radius:50%;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;transition:background .15s}
.add-btn:active{background:var(--primary-d)}

/* ══ CART BAR ════════════════════════════════════ */
.cart-bar{position:fixed;bottom:0;left:0;right:0;padding:10px 14px;z-index:60;pointer-events:none}
.cart-bar.hidden{display:none}
.cart-bar button{width:100%;max-width:620px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;background:var(--primary);color:#fff;border:none;border-radius:14px;padding:13px 18px;font-family:inherit;font-size:.92rem;font-weight:700;cursor:pointer;box-shadow:0 4px 20px rgba(232,108,44,.35);pointer-events:all}
.cart-badge{background:rgba(255,255,255,.25);border-radius:20px;padding:2px 10px;font-size:.8rem}

/* ══ OVERLAY ═════════════════════════════════════ */
.sheet-ov{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:70;transition:opacity .25s}
.sheet-ov.hidden{display:none}

/* ══ BOTTOM SHEETS ═══════════════════════════════ */
.b-sheet{
  position:fixed;bottom:0;left:0;right:0;
  background:var(--surface);border-radius:20px 20px 0 0;
  z-index:80;display:flex;flex-direction:column;
  transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);
  max-height:92vh;
}
.b-sheet.hidden{display:none}
.b-sheet.open{transform:translateY(0);display:flex}
.sheet-bar{width:38px;height:4px;background:#e5e7eb;border-radius:4px;margin:10px auto 0;flex-shrink:0;cursor:pointer}
.sheet-hd{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid #f3f4f6;flex-shrink:0}
.sheet-hd h3{font-weight:700;font-size:.97rem}
.sheet-hd button{background:none;border:none;font-size:1.1rem;cursor:pointer;color:var(--muted);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s}
.sheet-hd button:hover{background:#f3f4f6}
.sheet-scroll{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:12px;-webkit-overflow-scrolling:touch}
.sheet-ft{padding:12px 18px 20px;border-top:1px solid #f3f4f6;flex-shrink:0}

/* ══ ITEM DETAIL SHEET ═══════════════════════════ */
.is-img{width:100%;max-height:210px;object-fit:cover;display:block}
.is-body{padding:14px 18px}
.is-name{font-size:1.08rem;font-weight:800;margin-bottom:5px}
.is-desc{font-size:.84rem;color:var(--muted);margin-bottom:14px;line-height:1.6}
.opt-group{margin-bottom:14px}
.opt-title{font-weight:700;font-size:.84rem;margin-bottom:7px;color:var(--text)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:2px solid var(--border);border-radius:8px;padding:6px 14px;font-family:inherit;font-size:.82rem;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.chip:hover{border-color:var(--primary)}
.chip.sel{border-color:var(--primary);background:#fff7ed;color:var(--primary);font-weight:700}

.addon-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color .15s}
.addon-row:hover{border-color:var(--primary)}
.addon-row.sel{background:#fff7ed;border-color:var(--primary)}
.addon-check{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0;cursor:pointer}
.addon-name{flex:1;font-size:.84rem}
.addon-price{font-size:.8rem;color:var(--primary);font-weight:700}

/* is-footer inside sheet-scroll */
.is-foot{display:flex;align-items:center;gap:10px;padding:12px 18px;border-top:1px solid #f3f4f6;flex-shrink:0}
.qty-ctrl{display:flex;align-items:center;gap:8px}
.qty-btn{width:32px;height:32px;border:2px solid var(--primary);border-radius:50%;background:#fff;color:var(--primary);font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.qty-n{font-weight:800;font-size:1rem;min-width:22px;text-align:center}
.btn-add-cart{flex:1;background:var(--primary);color:#fff;border:none;border-radius:10px;padding:12px;font-family:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .15s}
.btn-add-cart:active{background:var(--primary-d)}

/* ══ CART SHEET ══════════════════════════════════ */
.cart-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f9fafb}
.cart-item:last-child{border-bottom:none}
.ci-info{flex:1;min-width:0}
.ci-name{font-weight:700;font-size:.86rem}
.ci-meta{font-size:.74rem;color:var(--muted);margin-top:1px}
.ci-price{font-weight:800;color:var(--primary);font-size:.86rem;white-space:nowrap}
.ci-qty{display:flex;align-items:center;gap:5px}
.ci-btn{width:24px;height:24px;border:1px solid var(--border);border-radius:50%;background:#f9fafb;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;font-weight:700}

.cart-total-row{display:flex;justify-content:space-between;font-weight:800;font-size:.95rem;margin-bottom:10px}
.btn-primary{width:100%;background:var(--primary);color:#fff;border:none;border-radius:12px;padding:14px;font-family:inherit;font-size:.93rem;font-weight:700;cursor:pointer;transition:background .15s}
.btn-primary:active{background:var(--primary-d)}

/* ══ ORDER SHEET FIELDS ══════════════════════════ */
.sheet-scroll .field{display:flex;flex-direction:column;gap:5px}
.sheet-scroll .field label{font-size:.83rem;font-weight:600;color:var(--text)}
.sheet-scroll .field input,
.sheet-scroll .field textarea{padding:9px 12px;border:1.5px solid var(--border);border-radius:8px;font-family:inherit;font-size:.9rem;transition:border-color .15s;resize:vertical}
.sheet-scroll .field input:focus,
.sheet-scroll .field textarea:focus{border-color:var(--primary);outline:none}

/* ══ HOURS SHEET ═════════════════════════════════ */
.hours-table{width:100%;border-collapse:collapse}
.hours-table tr{border-bottom:1px solid #f3f4f6}
.hours-table tr:last-child{border-bottom:none}
.day-cell{padding:10px 4px;font-weight:700;font-size:.88rem;width:90px}
.time-cell{padding:10px 4px;font-size:.85rem;color:var(--muted)}
.closed-badge{background:#fee2e2;color:#dc2626;padding:2px 10px;border-radius:20px;font-size:.78rem;font-weight:700}
