/* swapti homepage: "This week's menu" explorer (replaces the photo slider) */
.mx-card{position:relative;background:#fff;border-radius:1.8rem;border:1px solid rgba(33,29,26,.08);box-shadow:0 40px 80px -34px rgba(120,60,0,.5);overflow:hidden}
.mx-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.2rem .4rem}
.mx-label{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#C2410C}
.mx-live{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;color:#166534;background:#DCFCE7;padding:.2rem .6rem;border-radius:999px}
.mx-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#16A34A;animation:mx-pulse 1.6s ease-in-out infinite}
.mx-live.off{color:#6B7280;background:#F3F4F6}.mx-live.off::before{background:#9CA3AF;animation:none}
@keyframes mx-pulse{0%,100%{opacity:1}50%{opacity:.35}}

.mx-days{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem;padding:.4rem .8rem}
.mx-day{position:relative;display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.5rem 0;border-radius:.9rem;font-size:.78rem;font-weight:800;color:rgba(33,29,26,.55);cursor:pointer;transition:background .2s,color .2s,transform .2s;touch-action:manipulation}
.mx-day small{font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.75}
.mx-day:hover{background:#FFF3E0}
.mx-day[aria-selected="true"]{background:linear-gradient(135deg,#F59E0B,#EA580C);color:#fff;transform:translateY(-2px);box-shadow:0 10px 18px -10px rgba(234,88,12,.8)}
.mx-day.is-today::after{content:"";position:absolute;top:3px;right:6px;width:6px;height:6px;border-radius:50%;background:#16A34A}

.mx-tabs{display:flex;gap:.4rem;padding:.3rem 1rem .8rem}
.mx-tab{flex:1;padding:.5rem .4rem;border-radius:999px;border:1.5px solid rgba(33,29,26,.14);font-size:.8rem;font-weight:700;color:rgba(33,29,26,.7);cursor:pointer;transition:all .2s;touch-action:manipulation}
.mx-tab:hover{border-color:#EA580C}
.mx-tab[aria-selected="true"]{background:#211D1A;border-color:#211D1A;color:#fff}

.mx-body{animation:mx-in .35s ease both}
@keyframes mx-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.mx-photo{height:170px;background:#FFF1D6;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#C2410C;font-size:.85rem;font-weight:700;text-align:center;padding:0}
.mx-photo img{width:100%;height:100%;object-fit:cover;display:block}
.mx-info{padding:1rem 1.2rem 1.2rem}
.mx-title{font-size:1.25rem;line-height:1.25;font-weight:600;color:#211D1A;min-height:3.1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mx-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-top:.6rem}
.mx-price{font-size:1.9rem;font-weight:700;color:#211D1A;line-height:1}
.mx-count{font-size:.8rem;font-weight:700;color:#C2410C;background:#FFF1E0;padding:.35rem .7rem;border-radius:999px;white-space:nowrap}
.mx-count.off{color:#6B7280;background:#F3F4F6}
.mx-times{display:flex;flex-wrap:wrap;gap:.2rem .9rem;margin-top:.55rem;font-size:.76rem;font-weight:600;color:rgba(33,29,26,.65)}
.mx-cta{display:flex;align-items:center;gap:.9rem;margin-top:1rem}
.mx-btn{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.5rem;border-radius:999px;font-weight:800;font-size:.9rem;color:#fff;background:linear-gradient(135deg,#F59E0B,#EA580C);box-shadow:0 12px 24px -12px rgba(234,88,12,.8);cursor:pointer;transition:transform .15s,box-shadow .15s}
.mx-btn:hover{transform:translateY(-2px)}
.mx-btn.ghost{background:transparent;color:#211D1A;box-shadow:none;border:1.5px solid rgba(33,29,26,.22)}
.mx-link{font-size:.85rem;font-weight:700;color:#C2410C;border-bottom:1.5px solid rgba(194,65,12,.35)}
.mx-link:hover{border-color:#C2410C}
@media(max-width:480px){.mx-photo{height:140px}.mx-title{font-size:1.1rem;min-height:2.8rem}.mx-price{font-size:1.65rem}.mx-info{padding:.9rem 1rem 1rem}.mx-head{padding:.85rem 1rem .3rem}.mx-days{padding:.3rem .5rem}.mx-tabs{padding:.2rem .7rem .7rem}}
@media(prefers-reduced-motion:reduce){.mx-body,.mx-live::before{animation:none}}
