
#ema-marketplace { font-family: inherit; }
.ema-toolbar { display:flex; gap:8px; align-items:center; }
.ema-toolbar input, .ema-toolbar select, .ema-toolbar button { padding:8px; }
.ema-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap:12px; }
.ema-card { border:1px solid #eee; border-radius:8px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.ema-card img { width:100%; height:140px; object-fit:cover; }
.ema-card-body { padding:10px; display:flex; flex-direction:column; gap:6px; }
.ema-card-body h4 { margin:0 0 4px; font-size:16px; }
.ema-card-body p { margin:0; font-size:13px; color:#555; }
.ema-card-body button, .ema-card-body a { padding:8px; text-align:center; text-decoration:none; border:none; cursor:pointer; }
.ema-card-body .ema-add-items { background:#111; color:#fff; border-radius:6px; }
.ema-card-body .ema-directions { background:#f2f2f2; border-radius:6px; }

/* Modal */
.ema-modal { position:fixed; left:0; top:0; right:0; bottom:0; background:rgba(0,0,0,0.35); display:flex; align-items:center; justify-content:center; z-index:99999; }
.ema-modal-content { background:#fff; width:96%; max-width:520px; border-radius:10px; padding:16px; position:relative; }
#ema-close { position:absolute; right:12px; top:8px; cursor:pointer; font-size:20px; }
#ema-basket-form label { display:block; margin-top:8px; font-weight:600; }
#ema-basket-form input { width:100%; padding:8px; }
#ema-basket-items { margin-top:10px; border-top:1px dashed #ddd; padding-top:8px; }
.ema-basket-row { display:flex; justify-content:space-between; align-items:center; padding:6px 0; border-bottom:1px solid #f3f3f3; }
.ema-basket-row button { border:none; background:#ffefef; padding:4px 8px; cursor:pointer; }
#ema-checkout { margin-top:12px; width:100%; background:#0a7; color:#fff; border-radius:8px; padding:10px; font-size:16px; }
