.ffp-card{scroll-margin-top:84px}.admin-bar .ffp-card{scroll-margin-top:120px}.ffp-card.foodflow-deep-link-target,.ffp-card.is-marketplace-target{border-color:#d4af37!important;background:#fffdf3!important;box-shadow:0 0 0 3px rgba(212,175,55,.25),0 10px 28px rgba(15,23,42,.11)!important;transition:border-color .4s ease,background-color .4s ease,box-shadow .4s ease!important}.ffp-card.foodflow-deep-link-target:hover,.ffp-card.is-marketplace-target:hover{transform:none}@media(max-width:782px){.admin-bar .ffp-card{scroll-margin-top:132px}}@media(prefers-reduced-motion:reduce){.ffp-card.foodflow-deep-link-target,.ffp-card.is-marketplace-target{transition:none!important}}
.foodflow,.foodflow *{box-sizing:border-box}.foodflow{--ff-accent:var(--ff-color-primary);--ff-text:var(--ff-color-text);--ff-muted:var(--ff-color-text-secondary);--ff-border:var(--ff-color-border);max-width:1280px;margin:0 auto;padding:var(--ff-space-4) var(--ff-space-6) var(--ff-space-10);color:var(--ff-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.foodflow img{display:block;max-width:100%}
.foodflow{--ff-accent:#d4af37!important;--ff-text:#111827!important;--ff-muted:#6b7280!important;--ff-border:#e5e7eb!important;background:#f8fafc}.ffp-hero-content,.ffp-card,.ffp-cart-card,.ffp-search,.ffp-filter-panel,.ffp-menu-panel,.ffp-info-dialog,.ffp-offer-card{border-color:#e5e7eb!important;background-color:#fff!important;box-shadow:0 8px 24px rgba(15,23,42,.07)!important}.ffp-hero-content,.ffp-info-dialog{border-radius:20px!important}.ffp-search>svg *{stroke:#d4af37!important}.ffp-search:focus-within{border-color:#d4af37!important;box-shadow:0 0 0 3px rgba(212,175,55,.15)!important}.ffp-category.active,.ffp-filter-panel__footer button[type="submit"]{border-color:#d4af37!important;background:#d4af37!important;color:#111827!important}.ffp-category:hover,.ffp-menu-category-row:hover,.ffp-menu-category-row.is-active{border-color:#d4af37!important;background:#fffbeb!important;color:#9a7615!important}.ffp-add,.ffp-select-options,.ffp-card-plus,.ffp-card-minus,.ffp-qty-plus,.ffp-qty-minus{border-color:#d4af37!important;color:#9a7615!important}.ffp-add:hover,.ffp-select-options:hover{background:#f4c430!important;color:#111827!important}.ffp-menu-trigger,.ffp-checkout,.ffp-mobile-cart-bar button,.ffp-modal__footer .ffp-add{border-color:#1f2937!important;background:#1f2937!important;color:#fff!important}.ffp-menu-trigger:hover,.ffp-checkout:hover,.ffp-mobile-cart-bar button:hover,.ffp-modal__footer .ffp-add:hover{background:#111827!important}.ffp-voice-search{background:#d4af37!important;color:#1f2937!important;box-shadow:0 5px 14px rgba(212,175,55,.28)!important}.ffp-voice-search:hover{background:#f4c430!important}.ffp-voice-search.is-listening{background:#ef4444!important;color:#fff!important}.ffp-voice-search.is-success{background:#22c55e!important;color:#fff!important}.ffp-info-trigger{border-color:#d4af37!important;color:#9a7615!important}.ffp-info-action.is-call{background:#1f2937!important;color:#fff!important}.ffp-info-action.is-directions{background:#d4af37!important;color:#111827!important}.ffp-offer-strip{border-color:#e6c85e!important;background:linear-gradient(135deg,#fffdf3,#fef3c7)!important;box-shadow:0 8px 22px rgba(212,175,55,.12)!important}.ffp-offer-icon,.ffp-offer-card-title span{color:#b58b18!important}.ffp-offers-toggle,.ffp-offer-coupon{border-color:#d4af37!important;background:#d4af37!important;color:#111827!important}.ffp-modal__read-more,.ffp-modal__quantity button{color:#9a7615!important}.ffp-customization-option input:checked+.ffp-customization-option__label::before{border-color:#d4af37!important;background:#d4af37!important}.ffp-customization-option:has(input:checked),.ffp-variation-option input:checked+span{border-color:#d4af37!important;background:#fffbeb!important;color:#9a7615!important}.ffp-card,.ffp-category,.ffp-offer-card,.ffp-info-action,.ffp-add,.ffp-select-options{transition-duration:250ms!important}.ffp-card:hover,.ffp-offer-card:hover{transform:translateY(-2px)}

/* Premium restaurant header */
.ffp-hero{margin-bottom:24px}.ffp-banner{height:210px;overflow:hidden;border-radius:16px;background:#f1f5f9}.ffp-banner img{width:100%;height:100%;object-fit:cover;object-position:center}.ffp-hero-content{display:flex;align-items:center;gap:18px;margin-top:16px;padding:18px 20px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 4px 16px rgba(15,23,42,.05)}.ffp-logo{width:68px;height:68px;flex:0 0 68px;overflow:hidden;padding:6px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:none}.ffp-logo img{width:100%;height:100%;object-fit:contain;border-radius:6px}.ffp-details{min-width:0;flex:1;padding:0}.ffp-title-row{display:flex;align-items:center;gap:8px}.ffp-restaurant-name{margin:0;color:#0f172a;font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-.02em;text-shadow:none}.ffp-badges{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin-top:4px;color:#475569;font-size:13px;font-weight:500}.ffp-badge{display:inline-flex;align-items:center;gap:5px;padding:0;border:0;border-radius:0;background:transparent;color:#475569;font-size:13px;font-weight:500;box-shadow:none}.ffp-status-badge{margin-left:auto;height:34px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:650;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.ffp-status-badge.is-open{color:#14532d;background:#dcfce7;border:1px solid #bbf7d0}.ffp-status-badge.is-closed{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.ffp-operation-status{display:flex;flex-direction:column;gap:4px;margin-top:6px;color:var(--ff-muted);font-size:13px}

/* Sticky discovery controls */
.ffp-search-wrapper{position:relative!important;z-index:2!important;margin:0 0 12px;padding:0;background:transparent!important;transition:none}.ffp-search-wrapper.is-scrolled{box-shadow:none}.ffp-search{display:flex;align-items:center;gap:10px;height:52px;padding:0 14px 0 16px;border:1px solid #cbd5e1;border-radius:12px;background:#fff!important;background-color:#fff!important;position:relative!important;z-index:2!important;box-shadow:0 2px 8px rgba(15,23,42,.04)}.ffp-search svg{width:18px;height:18px;flex:0 0 auto}.ffp-search input{width:100%;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;font-size:15px;color:#0f172a}.ffp-search input::placeholder{color:#94a3b8}.ffp-category-bar{position:sticky;z-index:99;top:64px;display:flex;gap:8px;overflow-x:auto;margin:0 0 16px;padding:8px 0 10px;background:#f8f8f8;scroll-behavior:smooth;scrollbar-width:none}.ffp-category-bar::-webkit-scrollbar{display:none}.ffp-category-bar button,.ffp-category{min-height:36px;padding:7px 14px;border:1px solid #ddd;border-radius:18px;background:#fff;color:#4f4f4f;font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer;transition:color 160ms ease,background-color 160ms ease,border-color 160ms ease,transform 160ms ease}.ffp-category:hover{border-color:#c7c7c7;transform:translateY(-1px)}.ffp-category.active{border-color:var(--ff-accent);background:var(--ff-accent);color:#fff}.admin-bar .ffp-search-wrapper{top:auto}.admin-bar .ffp-category-bar{top:96px}

@media(max-width:782px){.admin-bar .ffp-search-wrapper{top:auto}.admin-bar .ffp-category-bar{top:110px}}
@media(max-width:640px){.foodflow{padding:8px 12px 24px}.ffp-banner{height:155px;border-radius:12px}.ffp-search-wrapper{margin-top:0}.ffp-category-bar{margin-bottom:8px}.ffp-product-section{margin-bottom:24px}.ffp-section-header h2{font-size:20px}.ffp-card{height:176px;gap:12px;padding:12px}.ffp-card-image{width:128px;height:128px;flex-basis:128px}.ffp-product-title{font-size:16px}.ffp-description{font-size:12px}.ffp-card-image>.ffp-add,.ffp-card-image>.ffp-card-quantity{bottom:0;width:96px;height:36px}.ffp-card button{min-height:36px}}

/* Menu and compact product cards */
.ffp-content{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.ffp-products-area{min-width:0}.ffp-product-section{margin-bottom:32px;scroll-margin-top:120px}.ffp-section-header{margin-bottom:12px}.ffp-section-header h2{margin:0;font-size:24px;font-weight:700;line-height:1.3}.ffp-products{display:flex;flex-direction:column;gap:8px}.ffp-card{display:flex;justify-content:space-between;gap:16px;height:192px;padding:16px;border:1px solid var(--ff-border);border-radius:12px;background:#fff;overflow:hidden;transition:box-shadow 160ms ease,border-color 160ms ease,transform 160ms ease}.ffp-card:hover{border-color:#ddd;box-shadow:0 5px 16px rgba(0,0,0,.07);transform:translateY(-1px)}.ffp-card-info{min-width:0;flex:1;cursor:pointer}.ffp-card-info:focus-visible{outline:3px solid rgba(226,55,68,.4);outline-offset:3px}.ffp-veg-badge{display:flex;align-items:center;gap:5px;width:max-content;margin-bottom:5px;color:#267e3e;font-size:11px;font-weight:700;text-transform:uppercase}.ffp-veg-badge span{width:11px;height:11px;border:1px solid currentColor}.ffp-veg-badge span::after{content:"";display:block;width:5px;height:5px;margin:2px;border-radius:50%;background:currentColor}.ffp-veg-badge.is-non-veg{color:#a33a20}.ffp-product-title{display:-webkit-box;margin:0 0 4px;overflow:hidden;color:var(--ff-text);font-size:18px;font-weight:600;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ffp-rating{display:flex;align-items:center;gap:4px;margin-bottom:4px;color:#267e3e;font-size:12px;font-weight:600}.ffp-rating>span{font-size:11px}.ffp-price{margin-bottom:5px;font-size:14px;font-weight:600}.ffp-description{display:-webkit-box;margin:0;overflow:hidden;color:var(--ff-muted);font-size:13px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ffp-card-image{position:relative;width:152px;height:152px;flex:0 0 152px}.ffp-card-image img{width:100%;height:100%;border-radius:10px;object-fit:cover;transition:transform 160ms ease}.ffp-card:hover .ffp-card-image img{transform:scale(1.015)}.ffp-card-image>.ffp-add,.ffp-card-image>.ffp-card-quantity{position:absolute;right:0;left:0;bottom:8px;width:112px;height:38px;margin:0 auto;border:1px solid #f0c7ca;border-radius:8px;background:#fff;color:var(--ff-accent);box-shadow:0 2px 8px rgba(0,0,0,.12);font-size:14px;font-weight:700}.ffp-add{cursor:pointer;transition:background-color 160ms ease,color 160ms ease}.ffp-add:hover{background:var(--ff-accent);color:#fff}.ffp-card-quantity{display:flex;align-items:center;justify-content:space-between;padding:0 6px}.ffp-card-plus,.ffp-card-minus{width:32px;height:32px;border:0;background:transparent;color:var(--ff-accent);font-size:20px;font-weight:700;cursor:pointer;transition:transform 160ms ease}.ffp-card-plus:active,.ffp-card-minus:active{transform:scale(.85)}.ffp-card-count{min-width:20px;text-align:center;font-size:14px;font-weight:700}

/* Compact cart */
.ffp-cart{position:sticky;top:16px}.ffp-cart-card{max-height:calc(100vh - 32px);overflow:auto;padding:16px;border:1px solid var(--ff-border);border-radius:12px;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.06)}.ffp-cart-card h2{margin:0 0 12px;font-size:22px}.ffp-cart-item{padding:10px 0}.ffp-cart-item+hr{height:1px;border:0;background:#eee}.ffp-cart-item-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.ffp-cart-item-name{font-size:14px;font-weight:600;line-height:1.35}.ffp-cart-item-price{flex:0 0 auto;font-size:13px;font-weight:600}.ffp-cart-item-customizations{margin:0 0 8px;color:var(--ff-muted);font-size:11px;line-height:1.4}.ffp-cart-item-customizations dl,.ffp-cart-item-customizations p{margin:0}.ffp-cart-quantity{display:inline-flex;align-items:center;gap:8px;padding:3px 6px;border:1px solid #f0c7ca;border-radius:7px;background:#fff}.ffp-qty-minus,.ffp-qty-plus{width:26px;height:26px;padding:0;border:0;background:transparent;color:var(--ff-accent);font-size:17px;font-weight:700;cursor:pointer;transition:transform 160ms ease}.ffp-qty-minus:active,.ffp-qty-plus:active{transform:scale(.85)}.ffp-qty-number{min-width:16px;text-align:center;font-size:13px;font-weight:700}.ffp-cart-checkout-footer{position:sticky;bottom:-16px;margin:10px -16px -16px;padding:12px 16px 16px;border-top:1px solid var(--ff-border);background:#fff;box-shadow:0 -5px 12px rgba(0,0,0,.04)}.ffp-cart-summary-breakdown{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #eee}.ffp-cart-summary-row{display:flex;justify-content:space-between;margin-bottom:6px;font-size:13px;color:var(--ff-muted)}.ffp-cart-summary-row:last-child{margin-bottom:0}.ffp-cart-total h3{display:flex;justify-content:space-between;margin:0 0 10px;font-size:16px}.ffp-checkout{width:100%;height:44px;border:0;border-radius:8px;background:var(--ff-accent);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background-color 160ms ease,transform 160ms ease}.ffp-checkout:hover{background:#c92f3b}.ffp-checkout:active{transform:scale(.985)}.ffp-cart-empty{margin:24px 8px;text-align:center;color:var(--ff-muted);font-size:13px;line-height:1.5}.ffp-cart-empty::before{content:"";display:block;width:44px;height:34px;margin:0 auto 12px;border:2px solid #d7d7d7;border-radius:6px 6px 12px 12px}

.ffp-card button,.ffp-cart button{min-width:36px;min-height:36px}

@media(max-width:1000px){.ffp-content{grid-template-columns:1fr}.ffp-cart{display:none}.foodflow{max-width:820px}}
@media(max-width:782px){.admin-bar .ffp-search-wrapper{top:46px}.admin-bar .ffp-category-bar{top:110px}}
@media(max-width:640px){.foodflow{padding:8px 12px 24px}.ffp-banner{height:136px;border-radius:12px}.ffp-search-wrapper{margin-top:0}.ffp-category-bar{margin-bottom:8px}.ffp-product-section{margin-bottom:24px}.ffp-section-header h2{font-size:20px}.ffp-card{height:176px;gap:12px;padding:12px}.ffp-card-image{width:128px;height:128px;flex-basis:128px}.ffp-product-title{font-size:16px}.ffp-description{font-size:12px}.ffp-card-image>.ffp-add,.ffp-card-image>.ffp-card-quantity{bottom:0;width:96px;height:36px}.ffp-card button{min-height:36px}}

@media(max-width:380px){.ffp-card-image{width:112px;height:120px;flex-basis:112px}.ffp-card{gap:8px}.ffp-description{-webkit-line-clamp:2}}
@media(prefers-reduced-motion:reduce){.foodflow *{scroll-behavior:auto!important;transition-duration:1ms!important}}

/* Restaurant information modal */
.ffp-title-row{display:flex;align-items:center;gap:9px}.ffp-title-row .ffp-restaurant-name{margin-bottom:0}.ffp-info-trigger{display:inline-flex;width:20px;height:20px;min-width:20px!important;min-height:20px!important;align-items:center;justify-content:center;padding:0;border:1.5px solid #64748b;border-radius:50%;background:#fff;color:#475569;font-family:Georgia,serif;font-size:13px;font-style:italic;font-weight:700;line-height:1;cursor:pointer}.ffp-info-trigger:hover{border-color:var(--ff-accent);color:var(--ff-accent)}.ffp-title-row+.ffp-badges{margin-top:12px}.ffp-info-modal{position:fixed;z-index:100000;inset:0;display:grid;place-items:center;padding:24px;opacity:0;transition:opacity 180ms ease}.ffp-info-modal.is-open{opacity:1}.ffp-info-overlay{position:absolute;inset:0;width:100%;height:100%;min-width:0!important;min-height:0!important;padding:0;border:0;background:rgba(15,23,42,.68);cursor:default}.ffp-info-dialog{position:relative;width:min(620px,95vw);max-height:min(86vh,760px);overflow:auto;padding:28px;border-radius:20px;background:#fff;box-shadow:0 28px 70px rgba(0,0,0,.28);opacity:0;transform:scale(.96) translateY(8px);transition:opacity 180ms ease,transform 180ms ease}.ffp-info-modal.is-open .ffp-info-dialog{opacity:1;transform:none}.ffp-info-close{position:absolute;top:16px;right:16px;display:inline-flex;width:38px;height:38px;min-width:38px!important;min-height:38px!important;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:#f1f5f9;color:#334155;font-size:25px;line-height:1;cursor:pointer}.ffp-info-header{display:flex;align-items:center;gap:18px;padding-right:42px}.ffp-info-logo{display:grid;width:80px;height:80px;flex:0 0 80px;place-items:center;overflow:hidden;padding:9px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.1)}.ffp-info-logo img{width:100%;height:100%;object-fit:contain}.ffp-info-header h2{margin:0;color:#0f172a;font-size:25px;line-height:1.2}.ffp-info-header p{margin:7px 0 0;color:#15803d;font-size:13px;font-weight:700}.ffp-info-header p span{display:inline-grid;width:18px;height:18px;margin-right:4px;place-items:center;border-radius:50%;background:#dcfce7}.ffp-info-description{margin:20px 0 0;color:#64748b;line-height:1.55}.ffp-info-details{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:22px 0 0;border-top:1px solid #e2e8f0}.ffp-info-details>div{padding:14px 12px 14px 0;border-bottom:1px solid #e2e8f0}.ffp-info-details>div:nth-child(even){padding-right:0;padding-left:12px}.ffp-info-details dt{margin-bottom:4px;color:#64748b;font-size:12px;font-weight:650}.ffp-info-details dd{margin:0;color:#1e293b;font-size:14px;font-weight:650;line-height:1.45}.ffp-info-details dd small{display:block;margin-top:4px;color:#64748b;font-size:12px;font-weight:500}.ffp-info-details a{color:inherit}.ffp-info-status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:750}.ffp-info-status.is-open{color:#14532d;background:#dcfce7}.ffp-info-status.is-closed{color:#7f1d1d;background:#fee2e2}.ffp-info-fssai{display:flex;align-items:center;gap:16px;margin-top:20px;padding:16px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff}.ffp-fssai-mark{color:#1d4ed8;font-size:25px;font-weight:850;letter-spacing:-1px;text-transform:lowercase}.ffp-fssai-mark::first-letter{color:#16a34a}.ffp-info-fssai span{display:block;color:#64748b;font-size:11px;font-weight:700;text-transform:uppercase}.ffp-info-fssai strong{display:block;margin-top:2px;color:#0f172a;font-size:15px}.ffp-info-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.ffp-info-action{display:flex;min-height:48px;align-items:center;justify-content:center;gap:8px;padding:11px 16px;border-radius:12px;color:#fff!important;font-weight:750;text-decoration:none!important}.ffp-info-action.is-call{background:#15803d}.ffp-info-action.is-directions{background:#2563eb}.ffp-info-action:hover{filter:brightness(.95)}body.ffp-info-modal-open{overflow:hidden}@media(max-width:640px){.ffp-title-row{justify-content:center}.ffp-info-modal{align-items:end;padding:10px}.ffp-info-dialog{width:100%;max-height:92vh;padding:22px;border-radius:20px}.ffp-info-header{align-items:flex-start;gap:14px}.ffp-info-logo{width:72px;height:72px;flex-basis:72px}.ffp-info-header h2{font-size:21px}.ffp-info-details{grid-template-columns:1fr}.ffp-info-details>div,.ffp-info-details>div:nth-child(even){padding:12px 0}.ffp-info-actions{grid-template-columns:1fr}}
.ffp-hours-badge{display:inline-flex;align-items:flex-start;gap:6px}.ffp-hours-badge strong,.ffp-hours-badge small{display:block}.ffp-hours-badge strong{font-size:12px;line-height:1.2}.ffp-hours-badge small{margin-top:2px;color:var(--ff-muted);font-size:12px;font-weight:600;line-height:1.2}

/* FoodFlow offers */
.ffp-offers{width:100%;margin-top:18px}.ffp-offer-strip{display:flex;min-height:56px;align-items:center;gap:16px;padding:0 12px 0 16px;border:1px solid #86d5a2;border-radius:14px;background:linear-gradient(105deg,#effdf3,#dcf8e5);box-shadow:0 5px 15px rgba(22,101,52,.09)}.ffp-offer-rotation{position:relative;min-width:0;height:54px;flex:1;overflow:hidden}.ffp-offer-current{position:absolute;inset:0;display:flex;min-width:0;align-items:center;gap:10px;color:#14532d;opacity:0;transform:translateY(9px);pointer-events:none;transition:opacity 500ms ease,transform 500ms ease}.ffp-offer-current.is-active{opacity:1;transform:none;pointer-events:auto}.ffp-offer-current strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.ffp-offer-icon{flex:0 0 auto;font-size:20px}.ffp-offers-toggle{min-height:36px!important;padding:7px 13px;border:0;border-radius:999px;background:#18763a;color:#fff;font-size:12px;font-weight:750;white-space:nowrap;cursor:pointer;transition:transform 180ms ease,box-shadow 180ms ease}.ffp-offers-toggle:hover{box-shadow:0 5px 12px rgba(20,83,45,.2);transform:translateY(-1px)}.ffp-offers-panel{overflow:hidden;max-height:0;transition:max-height 300ms ease}.ffp-offers-list{display:grid;gap:10px;padding-top:12px}.ffp-offer-card{--ff-offer-color:#16a34a;position:relative;padding:14px 16px 14px 18px;border:1px solid #e2e8f0;border-radius:13px;background:#fff;box-shadow:0 4px 12px rgba(15,23,42,.05);transition:transform 180ms ease,box-shadow 180ms ease}.ffp-offer-card::before{content:"";position:absolute;top:12px;bottom:12px;left:0;width:4px;border-radius:0 4px 4px 0;background:var(--ff-offer-color)}.ffp-offer-card:hover{box-shadow:0 8px 18px rgba(15,23,42,.08);transform:translateY(-1px)}.ffp-offer-card.is-orange{--ff-offer-color:#f97316}.ffp-offer-card.is-blue{--ff-offer-color:#2563eb}.ffp-offer-card.is-red{--ff-offer-color:#dc2626}.ffp-offer-card.is-purple{--ff-offer-color:#7c3aed}.ffp-offer-card-title{display:flex;align-items:center;gap:8px;color:#17211b}.ffp-offer-card-title span{font-size:18px}.ffp-offer-card p{margin:7px 0 0;color:#475569;font-size:13px}.ffp-offer-card small{display:block;margin-top:4px;color:#64748b;font-size:11px}.ffp-offer-coupon{display:inline-flex;margin-top:9px;padding:4px 8px;border:1px dashed var(--ff-offer-color);border-radius:7px;color:var(--ff-offer-color);font-size:11px;font-weight:800;letter-spacing:.04em}@media(max-width:640px){.ffp-offer-strip{min-height:unset;align-items:stretch;flex-direction:column;gap:0;padding:0 12px 10px}.ffp-offer-rotation{width:100%;height:54px}.ffp-offers-toggle{align-self:stretch}.ffp-offer-current strong{font-size:13px}}

/* Ordering experience states */
.foodflow [hidden]{display:none!important}.foodflow button,.foodflow [role="button"]{outline-offset:3px}.foodflow button:focus-visible,.foodflow [role="button"]:focus-visible,.foodflow input:focus-visible{outline:3px solid rgba(226,55,68,.38)!important}.ffp-card.is-search-match{border-color:#efb7bb;box-shadow:0 4px 14px rgba(226,55,68,.08)}.ffp-menu-empty{padding:32px 16px;text-align:center;color:#696969}.ffp-menu-empty>span{position:relative;display:block;width:52px;height:52px;margin:0 auto 12px;border:2px solid #d7d7d7;border-radius:50%}.ffp-menu-empty>span::before{content:"";position:absolute;top:12px;left:13px;width:20px;height:14px;border:2px solid #bbb;border-radius:50%}.ffp-menu-empty>span::after{content:"";position:absolute;right:8px;bottom:8px;width:13px;height:2px;background:#bbb;transform:rotate(45deg)}.ffp-menu-empty h3{margin:0 0 4px;font-size:16px;color:#363636}.ffp-menu-empty p{margin:0;font-size:13px}.ffp-category-empty{padding:20px}.ffp-products-area:has(.ffp-menu-global-empty) .ffp-product-section{display:none}
.foodflow button.is-loading{position:relative;color:transparent!important;pointer-events:none}.foodflow button.is-loading::after,.ffp-checkout.is-loading::after{content:"";position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-9px 0 0 -9px;border:2px solid rgba(255,255,255,.5);border-top-color:currentColor;border-radius:50%;color:#e23744;animation:ffp-spin .7s linear infinite}.ffp-add.is-loading::after,.ffp-checkout.is-loading::after{border-color:rgba(255,255,255,.5);border-top-color:#fff}.ffp-cart-card{position:relative}.ffp-cart-card.is-updating{pointer-events:none}.ffp-cart-card.is-updating::after{content:"";position:absolute;z-index:2;inset:50px 12px 70px;border-radius:8px;background:linear-gradient(90deg,rgba(245,245,245,.85) 25%,rgba(255,255,255,.95) 45%,rgba(245,245,245,.85) 65%);background-size:220% 100%;animation:ffp-shimmer 1s linear infinite}.ffp-cart-item.is-entering{animation:ffp-cart-enter 170ms ease}.ffp-modal__pricing.is-loading{opacity:.55}.ffp-modal__dialog.is-loading .ffp-modal__scroll{position:relative;min-height:360px}.ffp-modal__dialog.is-loading .ffp-modal__scroll::after{content:"";position:absolute;z-index:4;inset:12px 16px;background:linear-gradient(110deg,#f1f1f1 25%,#fafafa 40%,#f1f1f1 58%);background-size:220% 100%;border-radius:14px;animation:ffp-shimmer 1s linear infinite}.ffp-mobile-cart-bar{display:none}.ffp-cart-close{display:none}
@keyframes ffp-spin{to{transform:rotate(360deg)}}@keyframes ffp-shimmer{to{background-position-x:-220%}}@keyframes ffp-cart-enter{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.ffp-card.is-changing,.ffp-cart-item.is-changing{opacity:.62;transform:scale(.995);transition:opacity 160ms ease,transform 160ms ease}
.ffp-restaurant-name{font-size:var(--ff-font-display)}.ffp-section-header h2{font-size:var(--ff-font-section)}.ffp-product-title{font-size:var(--ff-font-product)}.ffp-description{font-size:var(--ff-font-body)}.ffp-price{font-size:var(--ff-font-price)}.ffp-rating,.ffp-veg-badge{font-size:var(--ff-font-caption)}.ffp-search svg{width:var(--ff-icon-20);height:var(--ff-icon-20)}.ffp-add,.ffp-checkout,.ffp-mobile-cart-bar button{height:var(--ff-control-height)}
@media(max-width:1000px){.foodflow{padding-bottom:96px}.ffp-mobile-cart-bar{position:fixed;z-index:140;right:12px;bottom:12px;left:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:9px 10px 9px 16px;border-radius:14px;background:#1c1c1c;color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.24);animation:ffp-cart-enter 170ms ease}.ffp-mobile-cart-bar div{display:flex;min-width:0;flex-direction:column}.ffp-mobile-cart-bar strong{font-size:14px}.ffp-mobile-cart-bar span{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.ffp-mobile-cart-bar button{min-width:112px;min-height:44px;border:0;border-radius:9px;background:#e23744;color:#fff;font-weight:700}.ffp-cart{position:fixed;z-index:160;top:auto;right:0;bottom:0;left:0;display:block;visibility:hidden;transform:translateY(105%);transition:transform 170ms ease,visibility 0s linear 170ms}.ffp-cart.is-mobile-open{visibility:visible;transform:translateY(0);transition-delay:0s}.ffp-cart .ffp-cart-card{max-height:min(78dvh,720px);border-radius:18px 18px 0 0;padding-bottom:calc(16px + env(safe-area-inset-bottom))}.ffp-cart-heading{display:flex;align-items:center;justify-content:space-between}.ffp-cart-close{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:50%;background:#f3f3f3;font-size:24px}.ffp-cart-backdrop{position:fixed;z-index:150;inset:0;background:rgba(17,24,39,.52)}body.ffp-mobile-cart-open{overflow:hidden}}
@media(max-width:360px){.ffp-mobile-cart-bar{right:8px;bottom:8px;left:8px}.ffp-mobile-cart-bar button{min-width:96px}.ffp-card{gap:8px}.ffp-card-image{width:108px;flex-basis:108px}}
.ffp-card-image>.ffp-select-options{position:absolute;right:0;left:0;bottom:8px;width:112px;height:38px;margin:0 auto;border:1px solid #f0c7ca;border-radius:8px;background:#fff;color:var(--ff-accent);font-weight:700;cursor:pointer}.ffp-customizable-badge{width:max-content;margin-bottom:4px;padding:2px 7px;border-radius:999px;background:#f7f3ff;color:#6741a5;font-size:11px;font-weight:600}
.ffp-menu-navigator{position:sticky;z-index:99;top:64px;display:flex;justify-content:flex-end;height:52px;padding:6px 0;background:#f8f8f8}.ffp-menu-trigger{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 16px;border:0;border-radius:20px;background:#1c1c1c;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.18);font-size:14px;font-weight:700;cursor:pointer}.ffp-menu-backdrop{position:fixed;z-index:190;inset:0;background:transparent}.ffp-menu-panel{position:absolute;z-index:191;top:52px;right:0;width:min(320px,calc(100vw - 32px));max-height:min(520px,70vh);overflow:auto;border:1px solid var(--ff-border);border-radius:16px;background:#fff;box-shadow:0 16px 42px rgba(0,0,0,.18);opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top right;transition:opacity 160ms ease,transform 160ms ease}.ffp-menu-navigator.is-open .ffp-menu-panel{opacity:1;transform:none}.ffp-menu-panel__handle{display:none}.ffp-menu-panel__header{position:sticky;z-index:1;top:0;display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;background:#fff}.ffp-menu-panel__header h2{margin:0;font-size:17px}.ffp-menu-panel__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:0;border-radius:50%;background:#f3f3f3;font-size:23px;cursor:pointer}.ffp-menu-category-list{padding:0 8px 10px}.ffp-menu-category-row{display:flex;width:100%;min-height:46px;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--ff-text);text-align:left;cursor:pointer}.ffp-menu-category-row:hover,.ffp-menu-category-row.is-active{background:#fff1f2;color:var(--ff-accent)}.ffp-menu-category-row__name{display:flex;align-items:center;gap:8px;font-weight:600}.ffp-menu-category-row__count{min-width:30px;color:var(--ff-muted);text-align:right}.ffp-menu-veg{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid #267e3e;color:#267e3e;font-size:9px}.ffp-product-section.is-menu-target .ffp-section-header{animation:ffp-menu-target 700ms ease}@keyframes ffp-menu-target{0%,100%{color:inherit;transform:none}30%{color:var(--ff-accent);transform:translateX(3px)}}.admin-bar .ffp-menu-navigator{top:96px}
@media(max-width:782px){.admin-bar .ffp-menu-navigator{top:110px}}
@media(max-width:640px){body.ffp-menu-open{overflow:hidden}.ffp-menu-navigator{height:52px}.ffp-menu-backdrop{background:rgba(17,24,39,.48)}.ffp-menu-panel{position:fixed;top:auto;right:0;bottom:0;left:0;width:100%;height:70dvh;max-height:70dvh;border:0;border-radius:22px 22px 0 0;opacity:1;transform:translateY(105%);transform-origin:bottom;transition:transform 160ms ease}.ffp-menu-navigator.is-open .ffp-menu-panel{transform:translateY(0)}.ffp-menu-panel__handle{display:block;width:42px;height:4px;margin:8px auto 0;border-radius:2px;background:#d0d0d0}.ffp-menu-category-row{min-height:48px}}

/* Compact sticky menu toolbar and client-side filters */
.ffp-search-wrapper{position:static;z-index:auto;margin-top:0;background:transparent;box-shadow:none!important}.admin-bar .ffp-search-wrapper{top:auto}.ffp-menu-navigator{top:0;align-items:center;justify-content:space-between;height:52px;padding:6px 0}.admin-bar .ffp-menu-navigator{top:32px}.ffp-filter-trigger,.ffp-menu-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:40px;min-width:104px;padding:0 16px;border:1px solid var(--ff-border);border-radius:20px;background:#fff;color:var(--ff-text);box-shadow:0 3px 10px rgba(0,0,0,.09);font-size:14px;font-weight:700;cursor:pointer}.ffp-menu-trigger{border-color:#1c1c1c;background:#1c1c1c;color:#fff}.ffp-filter-backdrop{position:fixed;z-index:99998!important;pointer-events:auto!important;inset:0;background:transparent}.ffp-filter-panel{position:absolute;z-index:99999!important;pointer-events:auto!important;top:52px;left:0;width:min(360px,calc(100vw - 32px));max-height:min(600px,75vh);overflow:auto;border:1px solid var(--ff-border);border-radius:16px;background:#fff;box-shadow:0 16px 42px rgba(0,0,0,.18);opacity:0;transform:translateY(-6px) scale(.98);transform-origin:top left;transition:opacity 160ms ease,transform 160ms ease}.ffp-filter-panel label,.ffp-filter-panel input,.ffp-filter-panel button{pointer-events:auto!important;position:relative!important;z-index:2!important}.ffp-menu-navigator.is-filter-open .ffp-filter-panel{opacity:1;transform:none}.ffp-filter-panel__body{padding:0 16px 88px}.ffp-filter-panel fieldset{margin:0;padding:14px 0;border:0;border-bottom:1px solid var(--ff-border)}.ffp-filter-panel fieldset:last-child{border-bottom:0}.ffp-filter-panel legend{width:100%;margin-bottom:8px;font-size:14px;font-weight:700}.ffp-filter-panel label{display:flex;min-height:42px;align-items:center;gap:10px;border-radius:8px;cursor:pointer}.ffp-filter-panel input{width:18px;height:18px;accent-color:var(--ff-accent)}.ffp-filter-panel__footer{position:sticky;bottom:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px 16px;background:#fff;border-top:1px solid var(--ff-border);box-shadow:0 -5px 14px rgba(0,0,0,.05)}.ffp-filter-panel__footer button{height:42px;border:1px solid var(--ff-accent);border-radius:10px;background:#fff;color:var(--ff-accent);font-weight:700;cursor:pointer}.ffp-filter-panel__footer button[type="submit"]{background:var(--ff-accent);color:#fff}.ffp-product-section{scroll-margin-top:60px}.ffp-subcategory-block{margin-top:20px;padding-left:8px}.ffp-subcategory-header{margin-bottom:10px}.ffp-subcategory-header h3{margin:0;color:#334155;font-size:18px;font-weight:650;line-height:1.35;letter-spacing:-.01em}.ffp-subcategory-header h4{margin:0;color:#475569;font-size:16px;font-weight:600;line-height:1.35}.ffp-subcategory-block--depth-2{margin-top:14px;padding-left:12px}@media(max-width:640px){.ffp-subcategory-block{margin-top:16px;padding-left:4px}.ffp-subcategory-header{margin-bottom:8px}.ffp-subcategory-header h3{font-size:16px}.ffp-subcategory-header h4{font-size:15px}}
@media(max-width:782px){.admin-bar .ffp-menu-navigator{top:46px}}
@media(max-width:640px){body.ffp-menu-open,body.ffp-filter-open{overflow:hidden}.ffp-filter-backdrop{background:rgba(17,24,39,.48)}.ffp-filter-panel{position:fixed;top:auto;right:0;bottom:0;left:0;width:100%;height:70dvh;max-height:70dvh;border:0;border-radius:22px 22px 0 0;opacity:1;transform:translateY(105%);transform-origin:bottom;transition:transform 160ms ease}.ffp-menu-navigator.is-filter-open .ffp-filter-panel{transform:translateY(0)}.ffp-filter-panel__body{padding-bottom:88px}}

/* Mobile Filter Rail & Floating Menu (<= 767px) */
@media(max-width:767px){
  .foodflow .ffp-search-wrapper{margin-bottom:12px!important;position:relative!important;z-index:2!important;background:transparent!important}
  .foodflow .ffp-search{position:relative!important;z-index:2!important;background-color:#ffffff!important;min-height:48px!important;height:48px!important;border:1px solid #e2e8f0!important;border-radius:12px!important;box-shadow:0 2px 8px rgba(15,23,42,.04)!important}
  .ffp-menu-navigator{display:block!important;width:100%!important;height:auto!important;min-height:42px!important;padding:2px 0 6px!important;margin-bottom:12px!important;background:transparent!important;box-shadow:none!important;position:relative!important}
  .ffp-menu-trigger--desktop{display:none!important}
}

/* Filter Rail & Filter Chips */
.ffp-filter-rail{display:flex!important;align-items:center!important;gap:8px!important;overflow-x:auto!important;scrollbar-width:none!important;-ms-overflow-style:none!important;width:100%!important;padding:2px 0 4px!important}
.ffp-filter-rail::-webkit-scrollbar{display:none!important}
.ffp-filter-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;height:38px!important;min-height:38px!important;width:fit-content!important;min-width:auto!important;flex:0 0 auto!important;padding:0 14px!important;border:1px solid #cbd5e1!important;border-radius:20px!important;background:#ffffff!important;color:#1e293b!important;font-size:13px!important;font-weight:600!important;white-space:nowrap!important;box-shadow:0 1px 3px rgba(0,0,0,.05)!important;cursor:pointer!important;transition:all .15s ease!important;margin:0!important}
.ffp-filter-trigger:hover,.ffp-filter-trigger[aria-expanded="true"]{background:#f8fafc!important;border-color:#94a3b8!important;color:#0f172a!important}
.ffp-filter-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:38px!important;min-height:38px!important;width:fit-content!important;flex:0 0 auto!important;padding:0 14px!important;border:1px solid #cbd5e1!important;border-radius:20px!important;background:#ffffff!important;color:#334155!important;font-size:13px!important;font-weight:600!important;white-space:nowrap!important;box-shadow:0 1px 3px rgba(0,0,0,.05)!important;cursor:pointer!important;user-select:none!important;transition:all .15s ease!important;margin:0!important}
.ffp-filter-chip:hover{border-color:#94a3b8!important;background:#f8fafc!important}
.ffp-filter-chip--reordered.is-active,.ffp-filter-chip--reordered[aria-pressed="true"]{background:#ecfdf5!important;border-color:#059669!important;color:#065f46!important;box-shadow:0 0 0 1px #059669!important}
.ffp-filter-chip--best-value.is-active,.ffp-filter-chip--best-value[aria-pressed="true"]{background:#f0fdf4!important;border-color:#16a34a!important;color:#15803d!important;box-shadow:0 0 0 1px #16a34a!important}
.ffp-clear-filters-btn{display:inline-flex!important;margin-top:12px!important;padding:8px 18px!important;border:1px solid #d4af37!important;border-radius:8px!important;background:#d4af37!important;color:#111827!important;font-size:13px!important;font-weight:700!important;cursor:pointer!important}

/* FoodFlow Floating Menu Button (<= 767px) */
.ffp-floating-menu{position:fixed!important;left:16px!important;bottom:calc(16px + env(safe-area-inset-bottom, 0px))!important;z-index:90!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;padding:0!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:13px!important;background:#111827!important;color:#ffffff!important;box-shadow:0 4px 14px rgba(0,0,0,.25)!important;cursor:pointer!important;transition:bottom .2s ease,transform .15s ease,box-shadow .15s ease!important;touch-action:manipulation!important;margin:0!important}
.foodflow.has-active-cart-bar .ffp-floating-menu,body.has-active-cart-bar .ffp-floating-menu{bottom:calc(var(--ffp-cart-bar-height, 68px) + 20px + env(safe-area-inset-bottom, 0px))!important}
.ffp-floating-menu:hover{background:#1f2937!important;transform:translateY(-1px)!important;box-shadow:0 6px 18px rgba(0,0,0,.3)!important}
.ffp-floating-menu:active{transform:scale(.95)!important}
.ffp-floating-menu__icon{width:18px!important;height:18px!important;stroke:#ffffff!important}
.ffp-floating-menu__label{font-size:10px!important;font-weight:700!important;letter-spacing:.5px!important;text-transform:uppercase!important;line-height:1!important;color:#ffffff!important}
@media(min-width:768px){.ffp-floating-menu{display:none!important}}

/* Desktop Toolbar Alignment & Responsive Cart Sidebar Spacing (>= 1001px) */
@media(min-width:1001px){
  .ffp-menu-navigator{display:grid!important;grid-template-columns:minmax(0,1fr) 320px!important;gap:28px!important;align-items:center!important;width:100%!important;height:auto!important;min-height:42px!important;padding:4px 0 12px!important;background:transparent!important;box-shadow:none!important;position:relative!important;top:0!important}
  .ffp-filter-trigger{grid-column:1!important;justify-self:start!important;margin:0!important}
  .ffp-menu-trigger{grid-column:2!important;justify-self:end!important;margin:0!important}
  .foodflow .ffp-cart{position:sticky!important;top:16px!important;margin-top:clamp(26px,2.4vw,46px)!important}
}
@media(max-width:1100px) and (min-width:1001px){
  .ffp-menu-navigator{grid-template-columns:minmax(0,1fr) 300px!important;gap:20px!important}
}




.ffp-back-to-marketplace-wrap{display:none!important}
@media(min-width:768px){.ffp-back-to-marketplace-wrap{display:flex!important;align-items:center!important;justify-content:flex-start!important;margin-bottom:14px!important;width:100%!important}.ffp-back-to-marketplace-btn{display:inline-flex!important;align-items:center!important;gap:8px!important;height:38px!important;min-height:38px!important;padding:0 14px!important;border:1px solid #dcdfe4!important;border-radius:9px!important;background-color:#ffffff!important;background-image:none!important;opacity:1!important;isolation:isolate!important;color:#1e293b!important;font-size:13.5px!important;font-weight:600!important;line-height:1!important;text-decoration:none!important;box-shadow:0 1px 3px rgba(15,23,42,.04)!important;cursor:pointer!important;transition:background-color 180ms ease,border-color 180ms ease,color 180ms ease,box-shadow 180ms ease!important}.ffp-back-to-marketplace-btn:hover,.ffp-back-to-marketplace-btn:focus{background-color:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important;box-shadow:0 2px 6px rgba(15,23,42,.08)!important;text-decoration:none!important}.ffp-back-to-marketplace-btn:focus-visible{outline:2px solid #d4af37!important;outline-offset:2px!important}.ffp-back-to-marketplace-btn .ffp-back-arrow{font-size:15px!important;line-height:1!important;transition:transform 180ms ease!important}.ffp-back-to-marketplace-btn:hover .ffp-back-arrow{transform:translateX(-3px)!important}}

.ffp-closed-notice{position:relative;display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;padding:18px 48px 18px 18px;border:1px solid #fecaca;border-radius:16px;background:linear-gradient(135deg,#fff1f2,#fef2f2);color:#7f1d1d;box-shadow:0 8px 22px rgba(127,29,29,.08)}.ffp-closed-notice[hidden]{display:none}.ffp-closed-notice-icon{font-size:20px}.ffp-closed-notice strong{display:block;font-size:16px}.ffp-closed-notice p{margin:4px 0 0;color:#991b1b}.ffp-closed-notice button{position:absolute;top:10px;right:12px;width:32px;height:32px;padding:0;border:0;background:transparent;color:#7f1d1d;font-size:24px;cursor:pointer}.is-restaurant-closed{border-color:#d1d5db!important;background:#e5e7eb!important;color:#6b7280!important;box-shadow:none!important;cursor:not-allowed!important}.foodflow-restaurant-closed .ffp-checkout.is-restaurant-closed{pointer-events:none}@media(max-width:640px){.ffp-closed-notice{padding:16px 44px 16px 14px;text-align:left}}
.ffp-search input{min-width:0;flex:1}.ffp-voice-search{position:relative;display:inline-flex;width:40px;min-width:40px;height:40px;min-height:40px;flex:0 0 40px;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:#22c55e;color:#fff;box-shadow:0 5px 14px rgba(34,197,94,.3);cursor:pointer;isolation:isolate;transition:background-color 180ms ease,transform 180ms ease,box-shadow 180ms ease}.ffp-voice-search:hover{background:#16a34a;transform:translateY(-1px)}.ffp-voice-search:focus-visible{outline:3px solid rgba(34,197,94,.3);outline-offset:2px}.ffp-search .ffp-voice-search svg{position:relative;z-index:2;width:20px;height:20px;flex:0 0 20px}.ffp-voice-search__check{display:none}.ffp-voice-search.is-listening{background:#ef4444;box-shadow:0 5px 16px rgba(239,68,68,.35);animation:ffp-voice-pulse 1.25s ease-in-out infinite}.ffp-voice-search__rings,.ffp-voice-search__rings::before{position:absolute;z-index:-1;inset:-4px;border:2px solid rgba(239,68,68,.45);border-radius:50%;content:"";opacity:0;pointer-events:none}.ffp-voice-search.is-listening .ffp-voice-search__rings,.ffp-voice-search.is-listening .ffp-voice-search__rings::before{animation:ffp-voice-ring 1.4s ease-out infinite;opacity:1}.ffp-voice-search.is-listening .ffp-voice-search__rings::before{inset:-2px;animation-delay:.45s}.ffp-voice-search.is-success{background:#22c55e;animation:ffp-voice-success .5s ease}.ffp-voice-search.is-success .ffp-voice-search__mic{display:none}.ffp-voice-search.is-success .ffp-voice-search__check{display:block}@keyframes ffp-voice-pulse{50%{transform:scale(1.06)}}@keyframes ffp-voice-ring{0%{opacity:.65;transform:scale(.8)}100%{opacity:0;transform:scale(1.45)}}@keyframes ffp-voice-success{50%{transform:scale(1.12)}}@media(max-width:900px){.ffp-voice-search{width:36px;min-width:36px;height:36px;min-height:36px;flex-basis:36px}}@media(max-width:640px){.ffp-search{padding-right:8px}.ffp-voice-search{width:34px;min-width:34px;height:34px;min-height:34px;flex-basis:34px}.ffp-search .ffp-voice-search svg{width:18px;height:18px;flex-basis:18px}}@media(prefers-reduced-motion:reduce){.ffp-voice-search,.ffp-voice-search__thumb,.ffp-voice-search__rings,.ffp-voice-search__rings::before{animation:none!important;transition:none!important}}
.ff-food-label{display:inline-flex!important;width:auto!important;height:16px!important;flex:0 0 auto!important;align-items:center!important;gap:6px!important;border:0!important;background:transparent!important;vertical-align:middle}.ff-food-label__icon{display:inline-flex!important;width:16px!important;height:16px!important;flex:0 0 16px!important;align-items:center!important;justify-content:center!important;border:1px solid currentColor!important;border-radius:2px!important;background:#fff!important}.ff-food-label__icon>span{display:block!important;width:6px!important;height:6px!important;margin:0!important;border-radius:50%!important;background:currentColor!important}.ff-food-label__text{display:inline-block!important;width:auto!important;height:auto!important;margin:0!important;color:currentColor!important;font-size:12px!important;font-weight:700!important;letter-spacing:.5px!important;line-height:16px!important;white-space:nowrap!important}.ff-food-category-badge{display:flex!important;align-items:center!important;gap:6px!important}.ffp-modal__product-name .ff-food-label{margin-right:7px}.ff-order-item-title .ff-food-label{margin-right:6px}
.ff-food-badge{display:inline-flex;box-sizing:border-box;width:22px;height:22px;min-width:22px;min-height:22px;align-items:center;justify-content:center;padding:0;margin:0;border-radius:6px;background:#fff;box-shadow:0 2px 6px rgba(15,23,42,.14);border:1px solid rgba(15,23,42,.06);vertical-align:middle;line-height:1}.ff-food-symbol{display:block;width:14px;height:14px;flex:0 0 14px}.ff-food-badge--veg{color:#16a34a}.ff-food-badge--egg{color:#d97706}.ff-food-badge--nonveg{color:#dc2626}.ff-food-icon{display:inline-flex;width:16px;height:16px;flex:0 0 16px;align-items:center;justify-content:center;vertical-align:middle}.ff-food-icon--veg{color:#16a34a}.ff-food-icon--egg{color:#d97706}.ff-food-icon--nonveg{color:#dc2626}.ff-food-compact-name,.ffp-cart-item-name{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:8px}.ffp-cart-item-title,.ff-food-compact-name>span{display:inline;clear:none}.ffp-product-title{display:block!important;clear:both!important}.ffp-modal__body>[data-ffp-food-badge]{display:block;clear:both}.ffp-modal__body>[data-ffp-food-badge] .ff-food-badge{margin-top:8px}.ffp-price-presenter{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;line-height:1.2}.ffp-price-del{font-size:12px;color:#94a3b8;text-decoration:line-through;font-weight:500}.ffp-price-ins{font-size:15px;font-weight:800;color:#0f172a;text-decoration:none}.ffp-discount-badge{display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;background:#fef2f2;color:#dc2626;font-size:11px;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.ffp-free-delivery-progress{margin:0 0 12px;padding:12px;border:1px solid rgba(212,175,55,.4);border-radius:10px;background:linear-gradient(135deg,#fffbeb,#fff);color:#1f2937}.ffp-free-delivery-progress__amounts{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-bottom:7px;color:#6b7280;font-size:12px;font-weight:700}.ffp-free-delivery-progress__track{height:8px;overflow:hidden;border-radius:999px;background:#e5e7eb}.ffp-free-delivery-progress__track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d4af37,#f4c430);transition:width 250ms ease}.ffp-free-delivery-progress p{margin:8px 0 0;color:#1f2937;font-size:12px;font-weight:750;line-height:1.35;text-align:center}.ffp-free-delivery-progress.is-unlocked{border-color:rgba(212,175,55,.7);background:linear-gradient(135deg,#fef3c7,#fffbeb)}.ffp-free-delivery-progress.is-unlocked p{color:#856404}@media(max-width:640px){.ffp-free-delivery-progress{padding:11px}.ffp-free-delivery-progress p{font-size:11px}}
.ffp-unavailable{min-height:38px;padding:8px 11px;border:1px solid #d9aa24;border-radius:10px;background:#f5f1e7;color:#5f5128;font-weight:700;cursor:not-allowed}.foodflow[data-ordering-enabled="false"] .ffp-modal [data-ffp-modal-cta]{pointer-events:none;opacity:.55}
.foodflow .ffp-content{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:28px}.foodflow .ffp-card{display:grid;height:auto;min-height:192px;grid-template-columns:minmax(0,1fr) 152px;align-items:start;overflow:hidden}.foodflow .ffp-card-image{display:flex;width:152px;height:auto;flex:0 0 152px;align-self:start;flex-direction:column;gap:8px}.foodflow .ffp-card-photo{width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:#f1f5f9}.foodflow .ffp-card-photo img{display:block;width:100%;height:100%;border-radius:10px;object-fit:cover}.foodflow .ffp-card-image>.ffp-add,.foodflow .ffp-card-image>.ffp-select-options,.foodflow .ffp-card-image>.ffp-card-quantity,.foodflow .ffp-card-image>.ffp-unavailable{position:static;right:auto;bottom:auto;left:auto;width:100%;max-width:none;height:38px;min-height:38px;margin:0}.foodflow .ffp-unavailable{display:flex;align-items:center;justify-content:center;padding:5px 8px;border-color:#d7bd70;border-radius:8px;background:#faf7ed;color:#514723;font-size:12px;font-weight:700;line-height:1.15;text-align:center;cursor:not-allowed}.foodflow .ffp-cart{top:16px}.foodflow .ffp-cart-card{width:100%;padding:18px;border-radius:16px;box-shadow:0 10px 28px rgba(15,23,42,.08)}.foodflow .ffp-cart-card.is-empty .ffp-cart-heading{justify-content:center}.foodflow .ffp-cart-card.is-empty .ffp-cart-heading h2{margin-bottom:6px;text-align:center}.foodflow .ffp-cart-empty-state{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;margin:12px 0 4px;color:var(--ff-muted);text-align:center}.foodflow .ffp-cart-empty-state__icon{display:grid;width:60px;height:60px;place-items:center;border:1px solid #eadcae;border-radius:16px;background:#fffbeb}.foodflow .ffp-cart-empty-state__icon svg{display:block;width:40px;height:40px;max-width:40px;max-height:40px;flex:0 0 40px;fill:none!important;stroke:#806215;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.foodflow .ffp-cart-empty-state p{max-width:220px;margin:0;font-size:13px;line-height:1.5}@media(max-width:1100px) and (min-width:1001px){.foodflow .ffp-content{grid-template-columns:minmax(0,1fr) 300px;gap:20px}.foodflow .ffp-card{grid-template-columns:minmax(0,1fr) 136px}.foodflow .ffp-card-image{width:136px;flex-basis:136px}}@media(max-width:1000px){.foodflow .ffp-content{grid-template-columns:1fr}}@media(max-width:640px){.foodflow .ffp-card{min-height:148px;grid-template-columns:minmax(0,1fr) 112px}.foodflow .ffp-card-image{width:112px;flex-basis:112px;gap:6px}.foodflow .ffp-card-image>.ffp-add,.foodflow .ffp-card-image>.ffp-select-options,.foodflow .ffp-card-image>.ffp-card-quantity,.foodflow .ffp-card-image>.ffp-unavailable{height:38px;min-height:38px}.foodflow .ffp-cart-card.is-empty .ffp-cart-heading{position:relative}.foodflow .ffp-cart-card.is-empty .ffp-cart-close{position:absolute;right:0}}@media(max-width:360px){.foodflow .ffp-card{grid-template-columns:minmax(0,1fr) 104px}.foodflow .ffp-card-image{width:104px;flex-basis:104px}.foodflow .ffp-unavailable{padding:4px;font-size:11px}}
.foodflow .ffp-card-quantity{overflow:hidden;border-color:#d4af37;background:#fff;transition:opacity 200ms ease,transform 200ms ease}.foodflow .ffp-card-quantity button{min-width:40px;height:100%;padding:0}.foodflow .ffp-card-quantity.is-loading{opacity:.65}.foodflow .ffp-card-quantity.is-loading button,.foodflow .ffp-card-quantity.is-ambiguous button{cursor:wait;opacity:.45}.foodflow .ffp-card-count.is-changing{animation:ffp-qty-change 200ms ease}.foodflow .ffp-control-enter{animation:ffp-control-enter 200ms ease}@keyframes ffp-control-enter{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes ffp-qty-change{50%{opacity:.45;transform:scale(.92)}}@media(max-width:640px){.foodflow .ffp-card-image>.ffp-add,.foodflow .ffp-card-image>.ffp-select-options,.foodflow .ffp-card-image>.ffp-card-quantity{height:42px;min-height:42px}.foodflow .ffp-card-quantity{padding:0 2px}.foodflow .ffp-card-quantity button{min-width:40px}}@media(prefers-reduced-motion:reduce){.foodflow .ffp-control-enter,.foodflow .ffp-card-count.is-changing{animation:none!important}.foodflow .ffp-card-quantity{transition:none!important}}
/* Premium compact menu enhancements. */
.ffp-card{border-radius:16px;border-color:#ebe6dc;box-shadow:0 5px 18px rgb(31 41 55 / 6%)}.ffp-product-title{letter-spacing:-.02em}.ffp-price{font-weight:800}.ffp-description{line-height:1.5}.ffp-card-photo{border-radius:14px;overflow:hidden;background:#eee}.ffp-paired{margin:-6px 0 18px;padding:13px;border:1px solid #eadfca;border-radius:14px;background:#fffaf0;opacity:0;transform:translateY(-5px);transition:opacity .2s ease,transform .2s ease}.ffp-paired.is-visible{opacity:1;transform:none}.ffp-paired h4{margin:0 0 9px;text-transform:uppercase;letter-spacing:.09em;font-size:11px;color:#8a6410}.ffp-paired__track{display:flex;gap:9px;overflow-x:auto}.ffp-paired-item{display:grid!important;grid-template-columns:48px minmax(90px,1fr) auto;align-items:center;gap:8px;flex:0 0 min(280px,82vw);padding:8px!important;min-height:64px}.ffp-paired-item__image{width:48px;height:48px;border-radius:9px;overflow:hidden}.ffp-paired-item__image img{width:100%;height:100%;object-fit:cover}.ffp-paired-item__copy strong,.ffp-paired-item__copy span{display:block}.ffp-paired-item .ffp-card-image{width:auto}.ffp-paired-item .ffp-add,.ffp-paired-item .ffp-select-options{min-width:64px;min-height:42px}.ffp-image-placeholder{display:flex;width:100%;height:100%;min-height:120px;flex-direction:column;align-items:center;justify-content:center;background:#ececec;color:#737373}.ffp-image-placeholder small{font-size:11px}@media(max-width:430px){.ffp-content{gap:12px}.ffp-card{padding:12px}.ffp-paired{padding:10px}.ffp-paired-item{flex-basis:250px}}@media(prefers-reduced-motion:reduce){.ffp-paired{transition:none}}
.foodflow .ffp-paired{height:auto;min-height:0;margin:0 0 18px;padding:12px 14px;border-color:#ead9ad;border-radius:15px;background:#fffaf0}.foodflow .ffp-paired h4{margin:0 0 10px;color:#8a6410;font-size:12px;font-weight:700;letter-spacing:.08em}.foodflow .ffp-paired__track{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none}.foodflow .ffp-paired__track::-webkit-scrollbar{display:none}.foodflow .ffp-paired-item{display:grid!important;width:auto;height:auto;min-height:88px;grid-template-columns:64px minmax(0,1fr) 82px;align-items:center;gap:10px;flex:0 0 min(360px,88vw);padding:10px!important;overflow:hidden;scroll-snap-align:start}.foodflow .ffp-paired-item__image{width:64px;height:64px;border-radius:10px}.foodflow .ffp-paired-item__image img{display:block;width:64px;height:64px;object-fit:cover}.foodflow .ffp-paired-item__copy{min-width:0}.foodflow .ffp-paired-item__copy strong{display:-webkit-box;overflow:hidden;color:var(--ff-text);font-size:14px;font-weight:650;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.foodflow .ffp-paired-item__copy span{display:block;margin-top:5px;color:var(--ff-text);font-size:14px;font-weight:700;line-height:1.25;white-space:nowrap}.foodflow .ffp-paired-item__copy span del{margin-right:4px;color:var(--ff-muted);font-size:12px;font-weight:500}.foodflow .ffp-paired-item__copy span ins{font-weight:700;text-decoration:none}.foodflow .ffp-paired-item .ffp-card-image{display:flex;position:static;width:82px;height:38px;min-width:82px;flex:0 0 82px;align-items:center;align-self:center}.foodflow .ffp-paired-item .ffp-card-image>.ffp-add,.foodflow .ffp-paired-item .ffp-card-image>.ffp-select-options,.foodflow .ffp-paired-item .ffp-card-image>.ffp-card-quantity,.foodflow .ffp-paired-item .ffp-card-image>.ffp-unavailable{position:static;width:82px;height:38px;min-width:82px;min-height:38px;margin:0;padding:0 8px;border-radius:9px;font-size:13px}.foodflow .ffp-paired-item .ffp-card-quantity button{min-width:28px}.foodflow .ffp-paired-item .ffp-card-count{font-size:13px}@media(min-width:1001px){.foodflow .ffp-paired{padding:15px 16px}.foodflow .ffp-paired h4{margin-bottom:11px;font-size:13px}.foodflow .ffp-paired__track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow:visible}.foodflow .ffp-paired-item{width:100%;min-height:104px;grid-template-columns:80px minmax(0,1fr) 100px;gap:13px;max-width:none;padding:11px 12px!important}.foodflow .ffp-paired-item:only-child{max-width:560px}.foodflow .ffp-paired-item__image,.foodflow .ffp-paired-item__image img{width:80px;height:80px;border-radius:11px}.foodflow .ffp-paired-item__copy strong{font-size:16px}.foodflow .ffp-paired-item__copy span{font-size:16px}.foodflow .ffp-paired-item__copy span del{font-size:13px}.foodflow .ffp-paired-item .ffp-card-image{width:100px;height:40px;min-width:100px;flex-basis:100px}.foodflow .ffp-paired-item .ffp-card-image>.ffp-add,.foodflow .ffp-paired-item .ffp-card-image>.ffp-select-options,.foodflow .ffp-paired-item .ffp-card-image>.ffp-card-quantity,.foodflow .ffp-paired-item .ffp-card-image>.ffp-unavailable{width:100px;height:40px;min-width:100px;min-height:40px;font-size:14px}}
/* Global dialog shells may render beside the ordering root. Keep the native hidden state authoritative. */
.ffp-info-modal{pointer-events:none}.ffp-info-modal.is-open{pointer-events:auto}.ffp-info-modal[hidden]{display:none!important}

/* FOODFLOW PRO 3.0 - DIETARY MARKERS, COMPACT CHIPS & CARD ALIGNMENT */
.ffp-card-top-left-chip{position:absolute!important;top:8px!important;left:8px!important;z-index:3!important;display:inline-flex!important;align-items:center!important;background:transparent!important;padding:0!important;margin:0!important;border:0!important;pointer-events:none!important}
.ffp-card-top-right-chip{position:absolute!important;top:8px!important;right:8px!important;z-index:3!important;display:inline-flex!important;align-items:center!important;background:transparent!important;padding:0!important;margin:0!important;border:0!important;pointer-events:none!important}
.ffp-dietary-marker{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;min-width:22px!important;min-height:22px!important;padding:0!important;margin:0!important;box-sizing:border-box!important;border-radius:6px!important;background:rgba(255,255,255,0.94)!important;box-shadow:0 2px 6px rgba(15,23,42,0.16)!important;border:1.5px solid currentColor!important;flex-shrink:0!important;vertical-align:middle!important}
.ffp-dietary-marker--veg{color:#16a34a!important;border-color:#16a34a!important}
.ffp-dietary-marker--nonveg{color:#dc2626!important;border-color:#dc2626!important}
.ffp-dietary-marker--egg{color:#d97706!important;border-color:#d97706!important}
.ffp-dietary-marker__dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;border-radius:50%!important;background-color:currentColor!important;box-sizing:border-box!important}
.ffp-discount-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:3px 7px!important;border-radius:5px!important;background:#f59e0b!important;color:#0f172a!important;font-size:10px!important;font-weight:900!important;letter-spacing:0.04em!important;line-height:1!important;box-shadow:0 2px 6px rgba(245,158,11,0.4)!important;white-space:nowrap!important;text-transform:uppercase!important;border:1px solid #d97706!important}
.ffp-card-marketing-chip{display:inline-flex!important;align-items:center!important;padding:2px 6px!important;border-radius:4px!important;background:#fef3c7!important;color:#92400e!important;font-size:10px!important;font-weight:800!important;margin-top:4px!important;white-space:nowrap!important}

/* FOODFLOW PRO 5.0 — ADAPTIVE PRICE FLAP & BEST VALUE TRUST BADGE */
.ffp-price-presenter{display:inline-flex!important;align-items:center!important;min-width:0!important;line-height:1.2!important}
.ffp-price-del,.ffp-discovery-card__price del,.ffp-price del{font-size:clamp(10px,2.6vw,11px)!important;color:#94a3b8!important;text-decoration:line-through!important;font-weight:500!important;background:transparent!important;margin:0!important;padding:0!important;border:0!important;white-space:nowrap!important}
.ffp-sale-price-flap,.ffp-discovery-card__price ins,.ffp-price ins{position:relative!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:0 clamp(7px,2vw,11px)!important;height:var(--ffp-card-action-height,clamp(32px,8.5vw,36px))!important;min-height:var(--ffp-card-action-height,clamp(32px,8.5vw,36px))!important;max-height:var(--ffp-card-action-height,clamp(32px,8.5vw,36px))!important;border-radius:7px!important;background:#f4b400!important;background:linear-gradient(135deg,#fadb14 0%,#f4b400 100%)!important;color:#111827!important;font-size:clamp(12.5px,3.4vw,15px)!important;font-weight:800!important;letter-spacing:-0.01em!important;line-height:1.1!important;text-decoration:none!important;box-shadow:0 1px 3px rgba(200,138,0,0.25)!important;border:1px solid #c88a00!important;margin:0!important;white-space:nowrap!important;box-sizing:border-box!important}
.ffp-best-value-badge,.ffp-lowest-price-badge{display:inline-flex!important;align-items:center!important;gap:3px!important;padding:2px clamp(5px,1.5vw,7px)!important;border-radius:5px!important;background:#f0fdf4!important;border:1px solid #bbf7d0!important;color:#15803d!important;font-size:clamp(9px,2.5vw,10.5px)!important;font-weight:700!important;letter-spacing:0.01em!important;line-height:1.1!important;white-space:nowrap!important;margin-top:0!important;width:fit-content!important;max-width:100%!important;height:clamp(21px,5.5vw,24px)!important;min-height:clamp(21px,5.5vw,24px)!important;overflow:hidden!important;text-overflow:ellipsis!important;box-sizing:border-box!important}
.ffp-best-value-icon,.ffp-lowest-price-icon{width:11px!important;height:11px!important;flex-shrink:0!important;color:#16a34a!important}
.ffp-trust-badge-row{margin-top:4px!important;display:flex!important;align-items:center!important;min-height:22px!important;box-sizing:border-box!important}
.ffp-dish-card .ffp-trust-badge-row,.ffp-discovery-card .ffp-trust-badge-row,.ffp-marketplace .ffp-trust-badge-row{justify-content:center!important}
.ffp-dish-card .ffp-best-value-badge,.ffp-dish-card .ffp-lowest-price-badge,.ffp-discovery-card .ffp-best-value-badge,.ffp-discovery-card .ffp-lowest-price-badge,.ffp-marketplace .ffp-best-value-badge,.ffp-marketplace .ffp-lowest-price-badge{margin-left:auto!important;margin-right:auto!important}
.ffp-discovery-card__title,.ffp-dish-card__body h4{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:normal!important;font-size:clamp(12px,3.2vw,13.5px)!important;font-weight:700!important;line-height:1.25!important;min-height:2.5em!important;max-height:2.5em!important}
.ffp-marketplace-card__rating{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:fit-content!important;min-width:max-content!important;flex-shrink:0!important;height:20px!important;min-height:20px!important;padding:0 5px!important;border-radius:5px!important;background:#16803b!important;color:#fff!important;font-size:8.5px!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;overflow:visible!important}
.ffp-dish-card,.ffp-discovery-card,.ffp-marketplace-card{box-sizing:border-box!important;border:1px solid #dfe5ec!important;border-radius:12px!important;background:#ffffff!important;box-shadow:0 2px 8px rgba(15,23,42,0.035)!important;overflow:hidden!important;transition:border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease!important}
@media (hover: hover) and (pointer: fine){.ffp-dish-card:hover,.ffp-discovery-card:hover,.ffp-marketplace-card:hover{border-color:#cdd5df!important;box-shadow:0 5px 16px rgba(15,23,42,0.07)!important;transform:translateY(-1px)!important}}
.ffp-dish-card__footer,.ffp-discovery-card__footer,.ffp-marketplace-card__action{border-top:1px solid #edf0f4!important}
body.foodflow-app-page #foodflow-app-root,#foodflow-app-root{position:relative!important;background-color:#ffffff!important;isolation:isolate!important}
body.foodflow-app-page #foodflow-app-root::before,#foodflow-app-root::before{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;z-index:0!important;background-image:url('../images/marketplace-background/food-illustration-bg.png')!important;background-repeat:repeat-y!important;background-position:center top!important;background-size:100% auto!important;opacity:0.70!important}
body.foodflow-app-page #foodflow-app-root .ffp-marketplace,#foodflow-app-root .ffp-marketplace,.ffp-marketplace{position:relative!important;isolation:isolate!important;background-color:transparent!important}
body.foodflow-app-page #foodflow-app-root .ffp-marketplace>* ,#foodflow-app-root .ffp-marketplace>* ,.ffp-marketplace>*{position:relative;z-index:1}
body.foodflow-app-page #foodflow-app-root .ffp-marketplace::before,#foodflow-app-root .ffp-marketplace::before,.ffp-marketplace::before,body.foodflow-app-page #foodflow-app-root .ffp-marketplace::after,#foodflow-app-root .ffp-marketplace::after,.ffp-marketplace::after{display:none!important}
@media (max-width:767px){body.foodflow-app-page #foodflow-app-root::before,#foodflow-app-root::before{opacity:0.42!important;background-size:135% auto!important;background-position:center top!important}}
@media (min-width:768px){body.foodflow-app-page #foodflow-app-root:has(.ffp-marketplace)::before,body.foodflow-app-page #foodflow-app-root:has(.foodflow)::before,#foodflow-app-root:has(.ffp-marketplace)::before,#foodflow-app-root:has(.foodflow)::before,.ffp-marketplace::before,.ffp-marketplace::after,.foodflow::before,.foodflow::after{display:none!important;background-image:none!important}body.foodflow-app-page #foodflow-app-root:has(.ffp-marketplace),body.foodflow-app-page #foodflow-app-root:has(.foodflow),#foodflow-app-root:has(.ffp-marketplace),#foodflow-app-root:has(.foodflow),.ffp-marketplace,.foodflow{background-color:#ffffff!important;background-image:none!important}.foodflow .ffp-paired,.ffp-paired{display:none!important}}
/* FOODFLOW PRO 5.6 - RESTAURANT MENU CARD OPACITY & STACKING ISOLATION */
body.foodflow-app-page #foodflow-app-root .ffp-card,#foodflow-app-root .ffp-card,.foodflow .ffp-card,.ffp-card{position:relative!important;z-index:1!important;background-color:#ffffff!important}
body.foodflow-app-page #foodflow-app-root .ffp-paired-item,#foodflow-app-root .ffp-paired-item,.foodflow .ffp-paired-item{position:relative!important;z-index:1!important;background-color:#ffffff!important}
body.foodflow-app-page #foodflow-app-root .ffp-cart-card,#foodflow-app-root .ffp-cart-card,.foodflow .ffp-cart-card{position:relative!important;z-index:1!important;background-color:#ffffff!important}

/* FOODFLOW PRO 3.1 - THEME-INDEPENDENT PACKAGING CHARGE VISIBILITY */
tr.ffp-checkout-packaging-row {
    display: table-row !important;
    visibility: visible !important;
    opacity: 1 !important;
}
tr.ffp-checkout-packaging-row th,
tr.ffp-checkout-packaging-row td {
    display: table-cell !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* FOODFLOW PRO 3.5 - PLATFORM-WIDE CUSTOMER VEG MODE DEFENSIVE OVERRIDES */
html.ffp-veg-mode-active .foodflow [data-menu-diet="nonveg"],
html.ffp-veg-mode-active .foodflow [data-menu-diet="egg"],
html.ffp-veg-mode-active .foodflow [data-food-type="nonveg"],
html.ffp-veg-mode-active .foodflow [data-food-type="egg"],
body.ffp-veg-mode-active .foodflow [data-menu-diet="nonveg"],
body.ffp-veg-mode-active .foodflow [data-menu-diet="egg"],
body.ffp-veg-mode-active .foodflow [data-food-type="nonveg"],
body.ffp-veg-mode-active .foodflow [data-food-type="egg"],
.foodflow.ffp-veg-mode-active [data-menu-diet="nonveg"],
.foodflow.ffp-veg-mode-active [data-menu-diet="egg"],
.foodflow.ffp-veg-mode-active [data-food-type="nonveg"],
.foodflow.ffp-veg-mode-active [data-food-type="egg"],
.foodflow [hidden],
.foodflow .is-foodflow-filter-hidden {
    display: none !important;
}
.ffp-filter-panel label.is-disabled {
    opacity: 0.45 !important;
    pointer-events: none !important;
}

/* FOODFLOW PRO 4.2 — HOST THEME CHROME ISOLATION FOR APP PAGES */
body.foodflow-app-page > :not(#wpadminbar):not(#foodflow-app-root):not(.ff-active-orders):not(script):not(style):not(link):not(svg):not(meta) {
    display: none !important;
}
body.foodflow-app-page .woodmart-toolbar,
body.foodflow-app-page .wd-toolbar,
body.foodflow-app-page .mobile-nav,
body.foodflow-app-page .storefront-handheld-footer-bar,
body.foodflow-app-page .sticky-toolbar,
body.foodflow-app-page .theme-bottom-nav,
body.foodflow-app-page footer.site-footer,
body.foodflow-app-page .site-mobile-navigation,
body.foodflow-app-page .mobile-bottom-nav,
body.foodflow-app-page .mobile-navigation-bar,
body.foodflow-app-page div[class*="toolbar"],
body.foodflow-app-page div[class*="bottom-nav"],
body.foodflow-app-page div[class*="mobile-bottom"] {
    display: none !important;
}

/* FOODFLOW PRO 4.3 — REUSABLE HORIZONTAL SCROLL RAIL ARROWS */
.ffp-rail-wrapper {
    position: relative !important;
    width: 100% !important;
}
.ffp-rail-arrow {
    position: absolute !important;
    z-index: 15 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.15) !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.18s ease !important;
}
.ffp-rail-arrow:hover:not([disabled]) {
    background: #ffffff !important;
    border-color: #94a3b8 !important;
    transform: translateY(-50%) scale(1.06) !important;
}
.ffp-rail-arrow:active:not([disabled]) {
    transform: translateY(-50%) scale(0.96) !important;
}
.ffp-rail-arrow.is-prev {
    left: 4px !important;
}
.ffp-rail-arrow.is-next {
    right: 4px !important;
}
.ffp-rail-arrow[disabled],
.ffp-rail-arrow.is-hidden {
    opacity: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

/* ==========================================================================
   FOODFLOW PRO 5.8 — RESTAURANT TRUST BADGE COMPACT CHIP SYSTEM
   ========================================================================== */
.foodflow .ffp-trust-badges,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badges {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 4px 0 0 0 !important;
    padding: 2px 0 !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    scroll-snap-type: none !important;
    list-style: none !important;
    box-sizing: border-box !important;
}

.foodflow .ffp-trust-badge,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
    padding: 0 11px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    border: 1px solid #dbc58e !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
    vertical-align: middle !important;
}

.foodflow .ffp-trust-badge > img,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge > img {
    width: 14px !important;
    height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
    flex: 0 0 14px !important;
    object-fit: contain !important;
    margin: 0 !important;
    padding: 0 !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

.foodflow .ffp-trust-badge > svg,
.foodflow .ffp-trust-badge__icon,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge > svg,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge__icon {
    width: 13px !important;
    height: 13px !important;
    min-width: 13px !important;
    min-height: 13px !important;
    max-width: 13px !important;
    max-height: 13px !important;
    flex: 0 0 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    stroke: #16a34a !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle !important;
}

.foodflow .ffp-trust-badge > span,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge > span {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #16a34a !important;
    font-size: 13px !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.foodflow .ffp-trust-badge > div,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge > div {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.foodflow .ffp-trust-badge strong,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge strong {
    display: inline !important;
    color: #111827 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    letter-spacing: -0.01em !important;
    margin: 0 !important;
    padding: 0 !important;
}

.foodflow .ffp-trust-badge small,
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge small {
    display: none !important;
}

/* ==========================================================================
   FOODFLOW PRO 5.9 — RESTAURANT PROFILE CARD REDESIGN
   Two-column layout: details left, logo/status right
   ========================================================================== */

/* Profile card wrapper — layered on existing .ffp-hero-content base */
body.foodflow-app-page #foodflow-app-root .ffp-profile-card,
.foodflow .ffp-profile-card {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 18px 20px !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06) !important;
    text-align: left !important;
    min-height: 0 !important;
}


/* ── Left column ── */
.ffp-profile-left {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* Title row already has base styles; keep alignment */
.ffp-profile-card .ffp-title-row {
    justify-content: flex-start !important;
    text-align: left !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.ffp-profile-card .ffp-restaurant-name {
    text-align: left !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    flex: 1 !important;
    min-width: 0 !important;
}

/* Location line */
.ffp-profile-location {
    display: flex !important;
    align-items: flex-start !important;
    gap: 5px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    min-width: 0 !important;
}

.ffp-profile-location__icon {
    flex: 0 0 12px !important;
    margin-top: 1px !important;
    color: #94a3b8 !important;
}

.ffp-profile-location span {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    min-width: 0 !important;
}

/* Gold opening panel */
.ffp-opening-panel {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    padding: 10px 12px !important;
    border: 1px solid #f3d679 !important;
    border-radius: 12px !important;
    background: #fffbeb !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.ffp-opening-row {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #78350f !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

.ffp-opening-icon {
    flex: 0 0 12px !important;
    color: #d97706 !important;
    stroke: #d97706 !important;
}

.ffp-opening-row strong {
    color: #92400e !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

.ffp-opening-row span {
    color: #78350f !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    min-width: 0 !important;
}


/* ── Right column ── */
.ffp-profile-right {
    flex: 0 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 96px !important;
}

/* Logo shell in new layout */
.ffp-profile-card .ffp-logo {
    width: 84px !important;
    height: 84px !important;
    flex: 0 0 84px !important;
    padding: 7px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 2px 10px rgba(15, 23, 42, 0.08) !important;
    overflow: hidden !important;
}

.ffp-profile-card .ffp-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    border-radius: 8px !important;
}

/* Rating */
.ffp-profile-rating {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: #fefce8 !important;
    border: 1px solid #fde68a !important;
    color: #92400e !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.ffp-profile-rating__star {
    color: #f59e0b !important;
    fill: #f59e0b !important;
    flex: 0 0 13px !important;
}

/* FOODFLOW PRO 6.0 — RESTAURANT OPEN / CLOSED STATUS UI REFINEMENT */
body.foodflow-app-page #foodflow-app-root .ffp-status-sign,
.foodflow .ffp-status-sign {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    width: fit-content !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 0 12px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign.is-open,
.foodflow .ffp-status-sign.is-open {
    background: #dcfce7 !important;
    border: 1px solid #bbf7d0 !important;
    color: #14532d !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign.is-closed,
.foodflow .ffp-status-sign.is-closed {
    background: #fee2e2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign__dot,
.foodflow .ffp-status-sign__dot {
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    min-width: 8px !important;
    min-height: 8px !important;
    max-width: 8px !important;
    max-height: 8px !important;
    flex: 0 0 8px !important;
    border-radius: 50% !important;
    font-size: 0 !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign.is-open .ffp-status-sign__dot,
.foodflow .ffp-status-sign.is-open .ffp-status-sign__dot {
    background-color: #16a34a !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign.is-closed .ffp-status-sign__dot,
.foodflow .ffp-status-sign.is-closed .ffp-status-sign__dot {
    background-color: #dc2626 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign__label,
.foodflow .ffp-status-sign__label {
    display: inline !important;
    color: inherit !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-status-sign__detail,
.foodflow .ffp-status-sign__detail {
    display: inline !important;
    color: inherit !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    margin-left: 2px !important;
    opacity: 0.85 !important;
    white-space: nowrap !important;
}


/* Trust badges inside profile-left keep 5.8 scoped rules intact */
.ffp-profile-card .ffp-trust-badges {
    margin-top: 0 !important;
}

/* ── FOODFLOW PRO — RESTAURANT HERO / BANNER SURFACE OPACITY REFINEMENTS ── */
.ffp-hero {
    position: relative !important;
    z-index: 1 !important;
    opacity: 1 !important;
    isolation: isolate !important;
}

.ffp-banner {
    position: relative !important;
    z-index: 1 !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
    isolation: isolate !important;
}

.ffp-banner:empty {
    display: none !important;
}

.ffp-profile-logo {
    display: none !important;
}

.ffp-description:empty {
    display: none !important;
}

.ffp-section-header h2,
.ffp-subcategory-header h3,
.ffp-subcategory-header h4 {
    display: inline-block !important;
    padding: 8px 16px !important;
    border-radius: 10px !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    opacity: 1 !important;
    isolation: isolate !important;
    border: 1px solid #dfe5ec !important;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
    color: #0f172a !important;
    margin: 0 0 14px !important;
}

@media (min-width: 768px) {
    body.foodflow-app-page #foodflow-app-root .foodflow,
    .foodflow {
        max-width: 1200px !important;
        width: min(100% - 48px, 1200px) !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-profile-card,
    .foodflow .ffp-profile-card {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        gap: 20px !important;
        padding: 20px 24px !important;
        border-radius: 16px !important;
        background-color: #ffffff !important;
        background: #ffffff !important;
        opacity: 1 !important;
        isolation: isolate !important;
        position: relative !important;
        z-index: 1 !important;
        border: 1px solid #dfe5ec !important;
        box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06) !important;
    }

    .ffp-profile-logo {
        display: block !important;
        width: 78px !important;
        height: 78px !important;
        min-width: 78px !important;
        min-height: 78px !important;
        flex: 0 0 78px !important;
        padding: 5px !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06) !important;
        overflow: hidden !important;
    }

    .ffp-profile-logo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        border-radius: 8px !important;
    }

    .ffp-profile-right .ffp-logo--mobile-only {
        display: none !important;
    }

    .ffp-profile-left {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        gap: 10px !important;
    }

    .ffp-profile-card .ffp-restaurant-name {
        font-size: 25px !important;
        font-weight: 700 !important;
        color: #0f172a !important;
    }

    .ffp-opening-panel {
        max-width: 420px !important;
        padding: 10px 14px !important;
        border: 1px solid #f3d679 !important;
        border-radius: 12px !important;
        background: #fffbeb !important;
    }

    .ffp-profile-right {
        flex: 0 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 10px !important;
        min-width: 110px !important;
    }

    .ffp-content {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 320px !important;
        gap: 24px !important;
        align-items: start !important;
    }

    .ffp-products {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 16px 12px !important;
    }

    .ffp-card {
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
        gap: 10px !important;
        min-height: 270px !important;
        height: 100% !important;
        padding: 12px !important;
        border: 1px solid #dfe5ec !important;
        border-radius: 14px !important;
        background-color: #ffffff !important;
        background: #ffffff !important;
        opacity: 1 !important;
        isolation: isolate !important;
        position: relative !important;
        z-index: 1 !important;
        box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04) !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
    }

    .ffp-card:hover {
        border-color: #cbd5e1 !important;
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08) !important;
        transform: translateY(-1px) !important;
    }

    .ffp-card-image {
        display: contents !important;
    }

    .ffp-card-photo {
        order: 1 !important;
        width: 100% !important;
        height: 128px !important;
        flex: 0 0 128px !important;
        border-radius: 10px !important;
        overflow: hidden !important;
        background: #f8fafc !important;
    }

    .ffp-card-photo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        border-radius: 10px !important;
    }

    .ffp-card-info {
        order: 2 !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        gap: 4px !important;
        margin-top: 4px !important;
    }

    .ffp-product-title {
        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #0f172a !important;
        margin: 0 0 2px !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
    }

    .ffp-description {
        font-size: 11px !important;
        line-height: 1.35 !important;
        color: #64748b !important;
        margin-top: 2px !important;
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        overflow: hidden !important;
    }

    .ffp-card-image > .ffp-add,
    .ffp-card-image > .ffp-select-options,
    .ffp-card-image > .ffp-card-quantity,
    .ffp-card-image > .ffp-unavailable {
        order: 3 !important;
        position: static !important;
        width: 100% !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
        margin: 6px 0 0 0 !important;
        border-radius: 8px !important;
        box-sizing: border-box !important;
    }

    .ffp-cart {
        position: sticky !important;
        top: 24px !important;
        display: block !important;
    }

    .ffp-cart .ffp-cart-card {
        background-color: #ffffff !important;
        background: #ffffff !important;
        opacity: 1 !important;
        isolation: isolate !important;
        position: relative !important;
        z-index: 1 !important;
        border: 1px solid #dfe5ec !important;
        border-radius: 16px !important;
        box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06) !important;
        padding: 20px !important;
    }
}

@media (min-width: 900px) and (max-width: 1199px) {
    .ffp-products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (min-width: 768px) and (max-width: 899px) {
    .ffp-products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
