body {margin:0;font-family:'Segoe UI',sans-serif;display:flex;}
.sidebar {width:200px;background:#1f2937;color:white;padding:20px;}
.sidebar h2 {color:#10b981;}
.sidebar ul {list-style:none;padding:0;}
.sidebar li {margin:10px 0;}
.sidebar a {color:white;text-decoration:none;font-weight:bold;}
.sidebar a:hover {color:#10b981;}
.content {flex:1;padding:20px;background:#f9fafb;}
.info-box {background:white;padding:15px;margin-bottom:20px;border-radius:8px;box-shadow:0 0 10px rgba(0,0,0,0.1);}
.info-box button {background:#10b981;color:white;border:none;padding:8px 12px;margin-right:10px;border-radius:6px;cursor:pointer;}
.info-box button:hover {background:#059669;}
.meal-box {background:white;margin:10px;padding:10px;border-radius:8px;box-shadow:0 0 8px rgba(0,0,0,0.1);text-align:center;}
.meal-box img {width:100%;max-width:250px;border-radius:8px;}


/* v2.6.4 Patch: Grid layout only for homepage content */
.grid-home {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
  align-items: stretch;
}
.grid-home .meal-box { height: 100%; display:flex; flex-direction:column; }
.grid-home .meal-box img { width:100%; height:160px; object-fit:cover; }
.grid-home .meal-box .price { display:inline-block; margin-top:auto; font-weight:bold; }


/* v2.6.5 prep: Minimal UI for auth info-box */
.info-box-auth {
  border: 1px solid rgba(0,0,0,0.06);
  background: #ffffff;
  display: block;
}
.info-box-auth p { margin: 0 0 10px 0; color:#1f2937; }
.info-box-auth .actions { display:flex; gap:10px; flex-wrap:wrap; }
.btn {
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .08s ease;
  display:inline-block;
  padding:10px 14px;
  border-radius:8px;
  text-decoration:none;
  font-weight:600;
  line-height:1;
  border:1px solid transparent;
}
.btn-primary { background:#10b981; color:#ffffff; border-color:#10b981; }
.btn-primary:hover { background:#0fb07a; color:#ffffff; border-color:#0fb07a; filter:none; }
.btn-outline { background:#ffffff; color:#1f2937; border-color:#e5e7eb; }
.btn-outline:hover { background:#10b981; color:#ffffff; border-color:#10b981; }


/* v2.6.6: Sidebar user box with role-based links */
.sidebar .divider { border:0; border-top:1px solid rgba(255,255,255,0.15); margin:14px 0; }
.user-box { margin-top:10px; color:#e5e7eb; }
.user-box .hello { font-size:14px; margin-bottom:8px; color:#ffffff; }
.user-links { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.user-links li.sep { height:8px; }
.user-links a { display:flex; align-items:center; gap:8px; color:#e5e7eb; text-decoration:none; padding:6px 8px; border-radius:6px; }
.user-links a:hover { background:rgba(255,255,255,0.08); color:#ffffff; }
.user-links svg { width:16px; height:16px; fill:currentColor; flex:0 0 16px; }

/* v2.7.4-Patch UI */
.card{background:#f7f7f7;border-radius:12px;padding:12px;margin:12px 0}
.row{display:flex;gap:8px;align-items:center}
.row.between{justify-content:space-between}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;background:#ececec}
.filters{margin:12px 0;padding:8px;display:flex;gap:12px;flex-wrap:wrap;background:#f0f0f0;border-radius:12px}
.order-details summary{cursor:pointer}
.table-wrap{overflow:auto}
.btn{display:inline-block;padding:6px 10px;border-radius:8px;background:#222;color:#fff;text-decoration:none;border:0}
.btn-alt{background:#eee;color:#000}

/* v2.8.0: Daily offer section (featured + list) */
.daily-section { display:grid; grid-template-columns: 1fr; gap:16px; margin-bottom:24px; }
.daily-featured { display:flex; gap:16px; background:#ffffff; border-radius:10px; box-shadow:0 0 8px rgba(0,0,0,0.08); padding:12px; align-items:center; }
.daily-featured img { width:200px; max-height:160px; object-fit:cover; border-radius:10px; }
.daily-featured-body h3 { margin:0 0 6px; font-size:1.25rem; }
.daily-price { margin-top:8px; font-weight:700; }

.daily-list { display:grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap:12px; }
.daily-card { background:#ffffff; border-radius:10px; box-shadow:0 0 6px rgba(0,0,0,0.06); overflow:hidden; }
.daily-card img { width:100%; height:120px; object-fit:cover; display:block; }
.daily-card-body { padding:8px 10px; display:flex; justify-content:space-between; align-items:center; }

/* v2.8.0 UI refresh for Daily Offer */
.daily-wrapper { background:#ffffff; border-radius:12px; box-shadow:0 2px 12px rgba(0,0,0,0.12); padding:16px; }
.daily-grid { display:grid; grid-template-columns: 2fr 1fr; gap:18px; align-items:start; }
.daily-left { background:#fff; border-radius:10px; }
.daily-left .img { width:100%; height:260px; object-fit:cover; border-radius:10px; display:block; }
.daily-left .body { padding:12px 6px 6px; text-align:center; }
.daily-left .title { font-weight:800; margin:8px 0 4px; font-size:1.1rem; }
.daily-left .desc { color:#374151; margin:0 0 6px; }
.daily-left .price { font-weight:800; margin:6px 0 12px; }
.daily-left .cta { display:inline-block; padding:10px 18px; border-radius:8px; border:none; background:#10b981; color:#fff; font-weight:700; cursor:pointer; }
.daily-left .cta:hover { filter:brightness(0.95); }

.daily-right { border-left:1px solid #e5e7eb; padding-left:18px; }
.daily-mini { display:flex; gap:12px; align-items:center; background:#fff; border-radius:10px; box-shadow:0 1px 6px rgba(0,0,0,0.06); overflow:hidden; padding:8px; margin-bottom:12px; }
.daily-mini img { width:120px; height:80px; object-fit:cover; border-radius:8px; flex:0 0 auto; }
.daily-mini .meta { display:flex; flex-direction:column; gap:2px; }
.daily-mini .meta .name { font-weight:800; }
.daily-mini .meta .p { color:#374151; }
.daily-mini .meta .pr { font-weight:800; }

.daily-viewall { text-align:right; margin-top:6px; }
.daily-viewall a { color:#111827; text-decoration:none; font-style:italic; font-weight:600; }
.daily-viewall a:hover { text-decoration:underline; }

@media (max-width: 980px){
  .daily-grid { grid-template-columns: 1fr; }
  .daily-right { border-left: none; padding-left: 0; }
}

/* v2.8.1: Mini cart controls for category cards */
.mini-cart { margin-top:8px; display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.qty { display:inline-flex; align-items:center; border:1px solid #e5e7eb; border-radius:8px; overflow:hidden; }
.qty .qbtn { background:#f3f4f6; border:none; padding:6px 10px; cursor:pointer; font-weight:700; }
.qty .qbtn:active { transform:translateY(1px); }
.qty .qinput { width:48px; text-align:center; border:none; outline:none; padding:6px 4px; }
.btn-add { background:#10b981; color:#fff; border:none; padding:8px 12px; border-radius:8px; font-weight:700; cursor:pointer; }
.btn-add:hover { filter:brightness(0.95); }

/* v2.8.1-patch3: Category grid 5-up */
.grid-cats { display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:12px; }
.grid-cats .meal-box img { width:100%; height:160px; object-fit:cover; }
@media (max-width: 1280px){ .grid-cats { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 980px){ .grid-cats { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 720px){ .grid-cats { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 420px){ .grid-cats { grid-template-columns: 1fr; } }

/* v2.8.1-patch4: Centered bottom mini-cart on category cards */
.grid-cats .meal-box { display:flex; flex-direction:column; }
.grid-cats .meal-box .card-body { display:flex; flex-direction:column; flex:1; padding:8px; }
.grid-cats .meal-box .card-actions { margin-top:auto; display:flex; justify-content:center; align-items:center; gap:10px; padding-top:8px; }
.grid-cats .meal-box h4 { margin:6px 0 4px; }
.grid-cats .meal-box p { margin:0 0 6px; color:#374151; }
.grid-cats .meal-box .price { font-weight:700; }

/* v2.8.1-patch6: Center qty above button (stacked vertically) */
.grid-cats .meal-box .mini-cart { 
  display:flex; 
  flex-direction:column; 
  align-items:center; 
  justify-content:center; 
  gap:8px;
}
.grid-cats .meal-box .qty { margin-bottom:2px; }

.btn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(0,0,0,.15); }
