/* Mobile menu UX: premium 2-column cards, clear dietary marks, touch-safe cart controls. */
.public-main .card-menu .grid,.public-main .pm-grid,.public-main .mm-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.public-main .card-menu .photo,.public-main .pm-card .pm-photo,.public-main .mm-card .mm-photo{aspect-ratio:1.25/1!important;height:auto!important;min-height:0!important;overflow:hidden!important}
.public-main .card-menu .photo img,.public-main .pm-card .pm-photo img,.public-main .mm-card .mm-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
.public-main .card-menu .body p,.public-main .pm-card p,.public-main .mm-card-body p{color:#666b72!important;font-weight:500!important;line-height:1.5!important;opacity:1!important}
.public-main .card-menu .bottom strong,.public-main .pm-card .bottom strong,.public-main .mm-card .bottom strong{font-size:17px!important;font-weight:900!important;letter-spacing:-.2px!important}

/* FSSAI-inspired clear green/brown square marks with contrasting dot. */
.public-main .dietary-badge{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:26px!important;padding:5px 8px!important;border:1.5px solid currentColor!important;border-radius:6px!important;background:#fff!important;box-shadow:0 5px 14px rgba(0,0,0,.14)!important;font:900 8px/1 "DM Sans",Arial,sans-serif!important;letter-spacing:.45px!important}
.public-main .dietary-badge::before{content:""!important;width:10px!important;height:10px!important;border:2px solid currentColor!important;border-radius:50%!important;background:currentColor!important;box-sizing:border-box!important;flex:0 0 10px!important}
.public-main .dietary-badge.veg{color:#16823b!important;border-color:#16823b!important}
.public-main .dietary-badge.nonveg{color:#7b3f24!important;border-color:#7b3f24!important}

/* + ADD until selected; then 44px touch targets for - 1 +. */
.public-main .card .item-qty-control{display:flex!important;align-items:center!important;justify-content:flex-end!important;width:44px!important;height:44px!important;min-width:44px!important;border:0!important;border-radius:13px!important;overflow:hidden!important;background:#17181c!important;box-shadow:0 8px 18px rgba(30,30,35,.18)!important}
.public-main .card:not(.selected) .item-qty-control{width:78px!important;min-width:78px!important}
.public-main .card:not(.selected) .item-qty-control .item-qty-minus,.public-main .card:not(.selected) .item-qty-control .item-qty-value{display:none!important}
.public-main .card:not(.selected) .item-qty-control .item-qty-plus{width:100%!important;height:44px!important;min-width:44px!important;border:0!important;background:#17181c!important;color:#fff!important;font-size:0!important;font-weight:900!important}
.public-main .card:not(.selected) .item-qty-control .item-qty-plus::after{content:"+ ADD"!important;font:900 11px/1 "DM Sans",Arial,sans-serif!important;letter-spacing:.3px!important}
.public-main .card.selected .item-qty-control{width:104px!important;min-width:104px!important;background:#a58a52!important}
.public-main .card.selected .item-qty-control button{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border:0!important;background:transparent!important;color:#fff!important;font-size:22px!important;font-weight:800!important}
.public-main .card.selected .item-qty-control .item-qty-value{width:36px!important;text-align:center!important;color:#fff!important;font-size:13px!important;font-weight:900!important}

/* Clean transparent logo container and sticky category navigation. */
.public-main .card-menu header .brand img{background:transparent!important;box-shadow:none!important;filter:none!important}
.public-main .card-menu .cats{position:sticky!important;top:70px!important;z-index:14!important;background:rgba(255,255,255,.90)!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border-bottom:1px solid rgba(30,30,35,.08)!important}

/* Floating order pill + safe-area protection. */
.public-main .card-menu{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
.public-main .cart{bottom:calc(14px + env(safe-area-inset-bottom))!important;min-height:64px!important;border-radius:999px!important;padding:9px 18px!important;gap:13px!important}
.public-main .cart em{display:flex!important;align-items:center!important;gap:6px!important;margin-left:auto!important;white-space:nowrap!important;color:#f8f5ef!important}
.public-main .cart i{color:#c5a880!important;margin-left:5px!important;font-size:21px!important}

/* Cart sheet stays opaque with deterministic dark-on-light text. */
.public-main .modal{background:rgba(0,0,0,.42)!important;opacity:1!important;backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}
.public-main .modal .sheet,.public-main .cart-modal{background:#fff!important;color:#1a1a1a!important;opacity:1!important;isolation:isolate!important}
.public-main .modal .sheet h1,.public-main .modal .sheet h2,.public-main .modal .sheet h3,.public-main .modal .sheet strong,.public-main .modal .sheet b,.public-main .cart-modal h1,.public-main .cart-modal h2,.public-main .cart-modal h3,.public-main .cart-modal .item-name,.public-main .cart-modal .item-price{color:#111!important;-webkit-text-fill-color:#111!important;opacity:1!important}
.public-main .modal .sheet p,.public-main .modal .sheet small,.public-main .modal .sheet .subtext,.public-main .modal .sheet .line small,.public-main .cart-modal p,.public-main .cart-modal small,.public-main .cart-modal .subtext{color:#666!important;-webkit-text-fill-color:#666!important;opacity:1!important}
.public-main .modal .sheet .line{color:#1a1a1a!important;border-color:#e9e6df!important}
.public-main .modal .sheet input,.public-main .cart-modal input{background:#fff!important;color:#171717!important;-webkit-text-fill-color:#171717!important;border:1px solid #ddd!important;opacity:1!important}
.public-main .modal .sheet .qty button,.public-main .cart-modal .qty button{background:#fff!important;color:#171717!important;border:1px solid #d8d4cc!important;min-width:44px!important;min-height:44px!important}

@media(max-width:600px){
 .public-main .card-menu .grid,.public-main .pm-grid,.public-main .mm-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
 .public-main .card-menu .photo{aspect-ratio:1.15/1!important}
 .public-main .card-menu .body{padding:11px!important}
 .public-main .card-menu .body h3{font-size:15px!important;line-height:1.25!important}
 .public-main .card-menu .body p{font-size:10px!important}
 .public-main .card-menu .bottom{grid-template-columns:1fr auto!important;gap:8px!important}
 .public-main .card-menu .bottom>span{display:none!important}
 .public-main .card-menu .bottom strong{grid-column:1!important;grid-row:1!important;align-self:center!important}
 .public-main .card-menu .item-qty-control{grid-column:2!important;grid-row:1!important}
 .public-main .card-menu header{height:70px!important}
 .public-main .card-menu .cats{top:70px!important}
 .public-main .cart{width:min(94%,650px)!important;height:64px!important}
}
@media(max-width:380px){
 .public-main .card-menu .grid,.public-main .pm-grid,.public-main .mm-grid{grid-template-columns:1fr!important}
 .public-main .card-menu .photo{aspect-ratio:1.05/1!important}
}
