/* ==========================================================================
   FOODFLOW PRO 4.8 — THEME ISOLATION & HOST DEFENSE SYSTEM
   Guarantees 100% pixel-parity between Localhost and Live WP themes (Unimart, etc.)
   ========================================================================== */

/* 1. Box Model & Typography Isolation */
body.foodflow-app-page #foodflow-app-root,
body.foodflow-app-page #foodflow-app-root *,
body.foodflow-app-page #foodflow-app-root *::before,
body.foodflow-app-page #foodflow-app-root *::after {
    box-sizing: border-box !important;
}

body.foodflow-app-page #foodflow-app-root {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #0f172a !important;
    background-color: #ffffff !important;
    isolation: isolate !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

/* 2. Image Defensive Reset */
body.foodflow-app-page #foodflow-app-root img {
    display: block !important;
    max-width: 100% !important;
    border: 0 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    filter: none !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-dish-card__image img,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__image-link img,
body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* 3. Featured Dishes Horizontal Rail Isolation (Mobile < 768px) */
@media (max-width: 767px) {
    body.foodflow-app-page #foodflow-app-root .ffp-featured__grid,
    body.foodflow-app-page #foodflow-app-root .ffp-quick-dishes-grid {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        margin-right: -14px !important;
        padding: 0 14px 4px 0 !important;
        overflow-x: auto !important;
        overscroll-behavior-inline: contain !important;
        scroll-snap-type: x proximity !important;
        scrollbar-width: none !important;
        width: auto !important;
        max-width: none !important;
        float: none !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-featured__grid .ffp-dish-card {
        flex: 0 0 clamp(156px, 44vw, 185px) !important;
        width: clamp(156px, 44vw, 185px) !important;
        min-width: clamp(156px, 44vw, 185px) !important;
        max-width: clamp(156px, 44vw, 185px) !important;
        display: flex !important;
        flex-direction: column !important;
        scroll-snap-align: start !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        float: none !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__logo {
        display: none !important;
    }
}

/* 4. Discovery Grid Isolation ("More to explore" < 768px) */
@media (max-width: 767px) {
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: clamp(8px, 2.5vw, 12px) !important;
        width: 100% !important;
        float: none !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid .ffp-discovery-card,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-grid .ffp-discovery-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: none !important;
        display: flex !important;
        flex-direction: column !important;
        height: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        float: none !important;
    }
}

/* 5. Product Title 2-Line Clamp & Alignment */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__title,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body h4,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__title a,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body h4 a {
    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;
    margin: 0 0 3px !important;
    color: #0f172a !important;
    text-decoration: none !important;
}

/* 6. Unclipped Rating Badge & Restaurant Identity Isolation */
body.foodflow-app-page #foodflow-app-root .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: #ffffff !important;
    font-size: 8.5px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* 7. Best Value Badge Isolation */
body.foodflow-app-page #foodflow-app-root .ffp-best-value-badge,
body.foodflow-app-page #foodflow-app-root .ffp-lowest-price-badge,
.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 {
    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;
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important;
    max-width: 100% !important;
    min-width: 0 !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;
}

/* 8. Action Button Resets */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body > div a,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !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;
    padding: 0 clamp(6px, 1.8vw, 10px) !important;
    border-radius: 7px !important;
    background: #17202a !important;
    color: #ffffff !important;
    font-size: clamp(10.5px, 2.9vw, 12px) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    transition: background-color 0.18s ease !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    text-transform: none !important;
    flex-shrink: 1 !important;
}

.ffp-marketplace{--ink:#17202a;--muted:#667085;--line:#e8eaed;--accent:#c89b2c;--success:#16803b;width:100%;max-width:1240px;margin:auto;padding:18px 14px 72px;overflow:hidden;box-sizing:border-box;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ffp-marketplace *{box-sizing:border-box}.ffp-marketplace [hidden]{display:none!important}.ffp-marketplace a{color:inherit}.ffp-marketplace__brandbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ffp-marketplace__brandbar>div{display:flex;align-items:center;gap:99px}.ffp-marketplace__brandbar strong{font-size:18px}.ffp-marketplace__brandbar>span{color:var(--muted);font-size:11px}.ffp-marketplace__brandmark{display:grid;width:32px;height:32px;place-items:center;border-radius:10px;background:var(--ink);color:#fff;font-weight:900}.ffp-marketplace__controls{position:relative;z-index:20}.ffp-marketplace__search-wrap{position:relative}.ffp-marketplace__search{display:grid!important;grid-template-columns:22px minmax(0,1fr) 42px!important;align-items:center!important;gap:10px!important;min-height:52px!important;height:52px!important;padding:0 5px 0 14px!important;border:1px solid #cbd5e1!important;border-radius:14px!important;background:#fff!important;box-shadow:0 2px 8px rgba(15,23,42,.04)!important;box-sizing:border-box!important;transition:border-color .18s,background-color .18s,box-shadow .18s!important}.ffp-marketplace__search:focus-within{border-color:var(--accent)!important;background:#fff!important;box-shadow:0 0 0 3px rgba(200,155,44,.14)!important}.ffp-marketplace__search>svg,.ffp-search-icon{grid-column:1!important;width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;justify-self:center!important;align-self:center!important;fill:none!important;stroke:#64748b!important;stroke-linecap:round!important;stroke-width:2!important}.ffp-marketplace__search input{grid-column:2!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:0!important;margin:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;color:var(--ink)!important;font:inherit;font-size:15px!important;line-height:1.3!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.ffp-marketplace__search input::placeholder{color:#94a3b8!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.ffp-marketplace__voice{grid-column:3!important;justify-self:end!important;align-self:center!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex:0 0 42px!important;margin:0!important;padding:0!important;border:1px solid #e2e8f0!important;border-radius:12px!important;background:#f8fafc!important;color:#475569!important;cursor:pointer!important;box-shadow:none!important;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s!important}.ffp-marketplace__voice svg{width:20px!important;height:20px!important;flex:0 0 20px!important;fill:none!important;stroke:currentColor!important;stroke-linecap:round!important;stroke-width:1.8!important}.ffp-marketplace__voice:hover{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#0f172a!important}.ffp-marketplace__voice:active{background:#e2e8f0!important}.ffp-marketplace__voice:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}.ffp-marketplace__voice.is-listening{background:#fee2e2!important;border-color:#fca5a5!important;color:#dc2626!important;box-shadow:0 0 0 3px rgba(239,68,68,.18)!important}.ffp-marketplace__voice.is-success{background:#dcfce7!important;border-color:#86efac!important;color:#166534!important}.ffp-marketplace__voice-status{margin:7px 4px 0;color:var(--muted);font-size:12px}.ffp-dish-search{position:absolute;z-index:30;top:calc(100% + 7px);right:0;left:0;max-height:min(430px,60vh);overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(15,23,42,.16)}.ffp-dish-search__result{display:grid;min-height:72px;grid-template-columns:minmax(0,1fr) 52px;align-items:center;gap:10px;padding:9px 10px 9px 13px;border-bottom:1px solid #f0f1f2;text-decoration:none}.ffp-dish-search__copy,.ffp-dish-search__copy strong,.ffp-dish-search__copy>span{display:block;min-width:0}.ffp-dish-search__copy strong{font-size:14px}.ffp-dish-search__copy>span{overflow:hidden;margin-top:3px;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ffp-dish-search__copy small{display:block;color:#9f1239;font-size:10px}.ffp-dish-search__result img{width:52px;height:52px;border-radius:10px;object-fit:cover}.ffp-dish-search__empty{margin:0;padding:15px;color:var(--muted);font-size:13px}
.ffp-mobile-hero{position:relative;width:calc(100% + 28px);margin-left:-14px;margin-right:-14px;margin-top:-18px;margin-bottom:20px;height:clamp(300px,82vw,350px);min-height:300px;max-height:350px;aspect-ratio:auto;overflow:hidden;border-radius:0!important;box-shadow:none!important;border:0!important;box-sizing:border-box}.ffp-mobile-hero__carousel{position:absolute;inset:0;z-index:1;overflow:hidden;width:100%;height:100%;border-radius:0!important}.ffp-mobile-hero__track{display:flex;width:100%;height:100%;transition:transform 400ms cubic-bezier(.25,1,.5,1);will-change:transform;touch-action:pan-y}.ffp-mobile-hero__slide{flex:0 0 100%;width:100%;height:100%;position:relative;overflow:hidden;border-radius:0!important}.ffp-mobile-hero__link{display:block;width:100%;height:100%;text-decoration:none;pointer-events:auto;border-radius:0!important}.ffp-mobile-hero__image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border:0;border-radius:0!important}.ffp-mobile-hero__scrim{position:absolute;top:0;left:0;right:0;height:150px;z-index:2;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.52) 0%,rgba(0,0,0,.22) 55%,rgba(0,0,0,0) 100%)}.ffp-mobile-hero__overlay{position:relative;z-index:3;padding:14px 16px 0;display:flex;flex-direction:column;gap:12px;pointer-events:none}.ffp-mobile-hero__overlay>*{pointer-events:auto}.ffp-mobile-hero .ffp-mobile-location__label{color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important}.ffp-mobile-hero .ffp-location-arrow{color:rgba(255,255,255,.85)!important}.ffp-mobile-hero .ffp-mobile-location__address{color:rgba(255,255,255,.95)!important;text-shadow:0 1px 3px rgba(0,0,0,.5)!important;max-width:230px!important}.ffp-mobile-hero .ffp-mobile-profile{background:rgba(255,255,255,.92)!important;border:1px solid rgba(255,255,255,.9)!important;box-shadow:0 4px 12px rgba(0,0,0,.2)!important}.ffp-mobile-hero .ffp-mobile-search{background:#fff!important;border:1px solid rgba(255,255,255,.8)!important;border-radius:18px!important;box-shadow:0 4px 16px rgba(15,23,42,.16)!important}.ffp-mobile-hero .ffp-veg-mode-wrap{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.6)!important}.ffp-mobile-hero .ffp-veg-mode-label{color:#fff!important}.ffp-mobile-hero__dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);z-index:4;display:flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(15,23,42,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.2);pointer-events:auto}.ffp-promo-carousel__dot{position:relative;width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55);cursor:pointer;transition:background 200ms ease,transform 200ms ease,width 200ms ease}.ffp-promo-carousel__dot::before{content:"";position:absolute;inset:-8px}.ffp-promo-carousel__dot.is-active{width:18px;border-radius:999px;background:#fff;transform:scale(1.05)}@media(min-width:768px){.ffp-mobile-hero,.ffp-mobile-promos{display:none!important}}.ffp-marketplace__section{margin-top:25px}.ffp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:12px}.ffp-section-heading h3{margin:0;font-size:22px;line-height:1.15;letter-spacing:-.03em}.ffp-section-heading>div>span{color:#987316;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.ffp-section-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.ffp-quick-dishes-grid,.ffp-chip-row,.ffp-featured__grid,.ffp-verified__track{display:flex;gap:11px;margin-right:-14px;padding:0 14px 4px 0;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none}.ffp-quick-dishes-grid::-webkit-scrollbar,.ffp-chip-row::-webkit-scrollbar,.ffp-featured__grid::-webkit-scrollbar,.ffp-verified__track::-webkit-scrollbar{display:none}.ffp-quick-dish-card{width:74px;min-width:74px;padding:0;border:0;background:transparent;color:var(--ink);text-align:center;cursor:pointer;scroll-snap-align:start}.ffp-quick-dish-card__image-wrap{width:68px;height:68px;margin:0 auto 7px;overflow:hidden;border:1px solid #eef0f2;border-radius:50%;background:#f3f4f5}.ffp-quick-dish-card__image-wrap img{width:100%;height:100%;object-fit:cover}.ffp-quick-dish-card__name{display:-webkit-box;overflow:hidden;font-size:11px;font-weight:700;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ffp-chip-row button{min-height:37px;flex:0 0 auto;padding:0 14px;border:1px solid #dadde1;border-radius:999px;background:#fff;color:#414b57;font-size:12px;font-weight:700;cursor:pointer}.ffp-chip-row button.is-active{border-color:var(--ink);background:var(--ink);color:#fff}.ffp-marketplace__restaurants{scroll-margin-top:12px}.ffp-sort{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;min-width:215px}.ffp-sort select,.ffp-sort__select{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;min-height:46px;height:46px;padding:0 40px 0 16px;border:1px solid #dcdfe4;border-radius:12px;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23334155' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px 14px;color:var(--ink);font-family:inherit;font-size:14px;font-weight:600;line-height:44px;cursor:pointer;box-shadow:0 1px 3px rgba(15,23,42,.04);transition:border-color .18s ease,box-shadow .18s ease}.ffp-sort select:hover,.ffp-sort__select:hover{border-color:#b0b7c0;box-shadow:0 3px 12px rgba(15,23,42,.06)}.ffp-sort select:focus-visible,.ffp-sort__select:focus-visible{outline:3px solid rgba(200,155,44,.25);border-color:var(--accent)}.ffp-marketplace__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.ffp-marketplace-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.045)}.ffp-marketplace-card__image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#eef0f2;text-decoration:none}.ffp-marketplace-card__image>img{width:100%;height:100%;object-fit:cover}.ffp-marketplace-card__fallback{display:grid;height:100%;place-items:center;font-size:24px}.ffp-marketplace-card__status{position:absolute;right:4px;bottom:4px;padding:2px 5px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.13);font-size:7.5px;font-weight:850}.ffp-marketplace-card__status.is-open{background:#e4f8e9;color:#116b31}.ffp-marketplace-card__status.is-closed{background:#fff0f0;color:#9f1239}.ffp-marketplace-card__body{padding:6px!important}.ffp-marketplace-card__identity{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:4px}.ffp-marketplace-card__logo{display:none}.ffp-marketplace-card__name{min-width:0}.ffp-marketplace-card__name h4{margin:0;font-size:11px!important;line-height:1.2!important}.ffp-marketplace-card__name h4 a{display:-webkit-box;overflow:hidden;text-decoration:none;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ffp-marketplace-card__name p{overflow:hidden;margin:2px 0 0;color:var(--muted);font-size:8.5px!important;text-overflow:ellipsis;white-space:nowrap}.ffp-marketplace-card__rating{padding:2px 4px!important;border-radius:4px!important;background:var(--success);color:#fff;font-size:8px!important;font-weight:800;white-space:nowrap}.ffp-marketplace-card__meta{display:flex;min-height:0;flex-wrap:wrap;gap:4px;margin-top:4px;color:#596574;font-size:8.5px}.ffp-marketplace-card__offer{display:-webkit-box;overflow:hidden;margin:5px 0 0;color:#a16207;font-size:8.5px;font-weight:800;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:1}.ffp-marketplace-card__offer span{display:inline-grid;width:12px;height:12px;margin-right:2px;place-items:center;border-radius:50%;background:#fef3c7}.ffp-marketplace-card__action{display:flex;min-height:22px;align-items:flex-end;justify-content:space-between;margin-top:5px;padding-top:5px;border-top:1px solid #f0f1f2;color:#8a6814;font-size:9px!important;font-weight:850;text-decoration:none}.ffp-marketplace-card__action span{font-size:12px}.ffp-restaurant-seal{position:absolute;z-index:2;top:4px;left:4px;display:flex;max-width:80%;align-items:center;gap:3px;padding:3px 5px;border-radius:5px;background:rgba(255,255,255,.92);color:#303846;font-size:7.5px;font-weight:800}.ffp-restaurant-seal img{width:10px;height:10px;object-fit:contain}.ffp-marketplace-empty{grid-column:1/-1;padding:25px 15px;border:1px dashed #ccd1d7;border-radius:14px;color:var(--muted);text-align:center}.ffp-dish-card,.ffp-verified__item{min-width:154px;width:154px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff;text-decoration:none;scroll-snap-align:start}.ffp-dish-card__image,.ffp-verified__image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#eef0f2}.ffp-dish-card__image img,.ffp-verified__image img{width:100%;height:100%;object-fit:cover}.ffp-dish-card__image>span{position:absolute;top:7px;right:7px;left:auto;padding:0;margin:0;border-radius:6px;background:transparent;color:inherit;font-size:8px;font-weight:850;z-index:2}.ffp-dish-card__body{padding:9px}.ffp-dish-card__body h4{overflow:hidden;margin:0;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.ffp-dish-card__body p{overflow:hidden;margin:3px 0 8px;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.ffp-dish-card__body>div{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:10px}.ffp-dish-card__body>div a{padding:5px 6px;border-radius:6px;background:var(--ink);color:#fff;font-size:8px;text-decoration:none}.ffp-dish-card__body a.is-disabled{background:#eef0f2;color:#5d6672}.ffp-dish-card__body small{display:block;margin-top:5px;color:#9f1239;font-size:8px}.ffp-verified__item{display:grid;grid-template-columns:70px minmax(0,1fr);width:220px;min-width:220px}.ffp-verified__image{aspect-ratio:auto;height:100%}.ffp-verified__item>span:last-child{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:10px}.ffp-verified__item strong,.ffp-verified__item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffp-verified__item strong{font-size:11px}.ffp-verified__item small{margin-top:3px;color:var(--muted);font-size:9px}.ffp-verified__item b{margin-top:6px;color:#8a6814;font-size:10px}.ffp-marketplace button:focus-visible,.ffp-marketplace a:focus-visible,.ffp-marketplace select:focus-visible{outline:3px solid rgba(200,155,44,.4);outline-offset:2px}
@media(min-width:390px){.ffp-marketplace__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ffp-marketplace-card__body{padding:8px!important}.ffp-marketplace-card__name h4{font-size:12px!important}.ffp-marketplace-card__meta{font-size:8.5px}.ffp-marketplace-card__action{font-size:9.5px!important}}
@media(min-width:700px){.ffp-marketplace{padding:28px 22px 85px}.ffp-marketplace__brandbar strong{font-size:21px}.ffp-marketplace__brandbar>span{font-size:13px}.ffp-marketplace__search{min-height:60px}.ffp-promo{aspect-ratio:16/6}.ffp-promo__copy{max-width:65%;padding:32px}.ffp-carousel-arrow{position:absolute;z-index:2;top:50%;display:grid;width:36px;height:36px;padding:0;place-items:center;border:0;border-radius:50%;background:rgba(17,24,39,.8);color:#fff;font-size:25px;transform:translateY(-50%);cursor:pointer}.ffp-carousel-arrow.is-prev{left:12px}.ffp-carousel-arrow.is-next{right:12px}.ffp-marketplace__section{margin-top:34px}.ffp-section-heading h3{font-size:27px}.ffp-quick-dish-card{width:88px;min-width:88px}.ffp-quick-dish-card__image-wrap{width:80px;height:80px}.ffp-marketplace__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ffp-marketplace-card__image{aspect-ratio:16/10}.ffp-marketplace-card__body{padding:14px!important}.ffp-marketplace-card__identity{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:9px}.ffp-marketplace-card__logo{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--line);border-radius:10px;object-fit:cover}.ffp-marketplace-card__name h4{font-size:16px!important}.ffp-marketplace-card__name p,.ffp-marketplace-card__meta{font-size:11px}.ffp-marketplace-card__action{min-height:38px;font-size:12px!important}.ffp-featured__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-right:0;padding-right:0;overflow:visible}.ffp-dish-card{width:auto;min-width:0}.ffp-verified__item{width:260px;min-width:260px}}
@media(min-width:1050px){.ffp-marketplace{padding:34px 24px 95px}.ffp-marketplace__grid{grid-template-columns:repeat(var(--ffp-marketplace-columns),minmax(0,1fr));gap:22px}.ffp-promo{aspect-ratio:16/5.2}.ffp-promo__copy strong{font-size:38px}.ffp-marketplace-card__body{padding:15px!important}.ffp-marketplace-card__name h4{font-size:18px!important}.ffp-dish-card__body h4{font-size:14px}}
.ffp-marketplace__brandlogo{width:32px;height:32px;border-radius:10px;object-fit:contain}
.ffp-restaurants-heading-desktop,.ffp-marketplace-card__desktop-status{display:none}
@media(min-width:1024px){.ffp-restaurants-heading-mobile{display:none}.ffp-restaurants-heading-desktop{display:inline}.ffp-marketplace__restaurants .ffp-section-heading{margin-bottom:15px}.ffp-marketplace__restaurants .ffp-section-heading h3{font-size:25px;font-weight:700}.ffp-marketplace__grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.ffp-marketplace-card{display:block;min-height:96px;overflow:visible;border-radius:13px;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:border-color .18s,box-shadow .18s}.ffp-marketplace-card:hover{border-color:#cfd3d8;box-shadow:0 6px 16px rgba(15,23,42,.08)}.ffp-marketplace-card__image{display:none}.ffp-marketplace-card__body{display:grid;min-height:96px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 15px}.ffp-marketplace-card__identity{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px}.ffp-marketplace-card__logo{display:grid;width:64px;height:64px;padding:3px;place-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;object-fit:contain}.ffp-marketplace-card__name h4{font-size:16px}.ffp-marketplace-card__name p{margin-top:4px;font-size:11px}.ffp-marketplace-card__desktop-status{display:inline-flex;align-items:center;gap:5px;margin-top:6px;color:#596574;font-size:10px;font-weight:700}.ffp-marketplace-card__desktop-status:before{width:7px;height:7px;border-radius:50%;background:#98a2b3;content:""}.ffp-marketplace-card__desktop-status.is-open{color:#137333}.ffp-marketplace-card__desktop-status.is-open:before{background:#22a447}.ffp-marketplace-card__desktop-status.is-closed{color:#9f1239}.ffp-marketplace-card__desktop-status.is-closed:before{background:#dc4250}.ffp-marketplace-card__rating,.ffp-marketplace-card__meta,.ffp-marketplace-card__offer{display:none}.ffp-marketplace-card__action{min-width:82px;min-height:36px;align-items:center;justify-content:center;gap:5px;margin:0;padding:0 10px;border:1px solid #d9dde2;border-radius:9px;background:#fff;color:#594812;font-size:11px;white-space:nowrap}.ffp-marketplace-card__action span{transition:transform .18s}.ffp-marketplace-card__action:hover span{transform:translateX(3px)}}
@media(prefers-reduced-motion:reduce){.ffp-marketplace *{scroll-behavior:auto!important;transition:none!important}}
@media(min-width:1024px){.ffp-marketplace .ffp-featured .ffp-dish-card__body{padding:16px}.ffp-marketplace .ffp-featured .ffp-dish-card__body h4{font-size:17px;font-weight:700;line-height:1.3}.ffp-marketplace .ffp-featured .ffp-dish-card__body p{margin:5px 0 15px;color:#596574;font-size:13px;font-weight:500;line-height:1.4}.ffp-marketplace .ffp-featured .ffp-dish-card__footer{align-items:center;justify-content:space-between;gap:14px;font-size:18px}.ffp-marketplace .ffp-featured .ffp-dish-card__footer>strong{min-width:0;color:var(--ink);font-size:18px;font-weight:700;line-height:1.25}.ffp-marketplace .ffp-featured .ffp-dish-card__footer>strong del{margin-right:5px;color:#7b8491;font-size:14px;font-weight:500}.ffp-marketplace .ffp-featured .ffp-dish-card__footer>strong ins{font-size:18px;font-weight:700;text-decoration:none}.ffp-marketplace .ffp-featured .ffp-dish-card__footer>a{display:inline-flex;width:auto;min-width:120px;height:42px;flex:0 0 auto;align-items:center;justify-content:center;padding:0 18px;border-radius:10px;font-size:14px;font-weight:600;white-space:nowrap}}
.ffp-mobile-header{display:none}
@media(max-width:767px){.ffp-marketplace__top-search{display:none!important}.ffp-mobile-header{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.ffp-mobile-header__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.ffp-mobile-location{display:flex;align-items:center;gap:8px;min-width:0;padding:0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.ffp-mobile-location__icon{font-size:18px;line-height:1;flex-shrink:0}.ffp-mobile-location__text{display:flex;flex-direction:column;min-width:0}.ffp-mobile-location__label{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}.ffp-location-arrow{font-size:8px;color:var(--muted)}.ffp-mobile-location__address{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:210px}.ffp-mobile-location__address.is-detecting{animation:ffp-shimmer-pulse 1.4s infinite ease-in-out}@keyframes ffp-shimmer-pulse{0%{opacity:.4}50%{opacity:1}100%{opacity:.4}}.ffp-mobile-profile{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border-radius:50%;background:#f1f3f5;color:var(--ink);text-decoration:none;overflow:hidden;flex-shrink:0;border:1px solid var(--line)}.ffp-mobile-profile__avatar{width:100%;height:100%;object-fit:cover}.ffp-mobile-profile__initial{font-size:16px;font-weight:800}.ffp-mobile-profile__icon{width:22px;height:22px}.ffp-mobile-header__main{display:flex;align-items:center;gap:10px}.ffp-mobile-search-wrap{flex:1 1 auto;min-width:0;position:relative}.ffp-mobile-search{grid-template-columns:20px minmax(0,1fr) 38px!important;height:48px!important;min-height:48px!important;padding:0 5px 0 12px!important}.ffp-mobile-search .ffp-marketplace__voice{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;flex:0 0 38px!important;border-radius:10px!important}.ffp-mobile-search input{font-size:14px!important}.ffp-veg-mode-wrap{display:flex;align-items:center;gap:6px;flex-shrink:0;padding-left:2px}.ffp-veg-mode-label{font-size:9px;font-weight:900;line-height:1.1;letter-spacing:.04em;color:#15803d;text-align:center}.ffp-veg-mode-toggle{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.ffp-veg-mode-toggle input{opacity:0;width:0;height:0}.ffp-veg-mode-slider{position:absolute;inset:0;background-color:#cbd5e1;transition:.25s;border-radius:24px}.ffp-veg-mode-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.25s;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2)}.ffp-veg-mode-toggle input:checked+.ffp-veg-mode-slider{background-color:#16a34a}.ffp-veg-mode-toggle input:checked+.ffp-veg-mode-slider:before{transform:translateX(20px)}}
.ffp-desktop-header{display:none}
@media(min-width:768px){.ffp-desktop-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;padding:12px 20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 4px 20px rgba(15,23,42,.05);min-height:76px}.ffp-desktop-header__left{display:flex;align-items:center;gap:14px;min-width:0;flex:0 1 auto}.ffp-desktop-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;max-width:200px}.ffp-desktop-brand__logo{max-height:44px;width:auto;max-width:180px;border-radius:6px;object-fit:contain}.ffp-desktop-brand__mark{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;background:var(--ink);color:#fff;font-weight:900;font-size:16px}.ffp-desktop-brand__text strong{font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--ink);white-space:nowrap}.ffp-desktop-header__divider{width:1px;height:28px;background:var(--line);flex-shrink:0}.ffp-desktop-location{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .18s,background-color .18s;max-width:240px;height:48px}.ffp-desktop-location:hover{border-color:#cbd5e1;background:#f1f5f9}.ffp-desktop-location__icon{font-size:16px;line-height:1;flex-shrink:0}.ffp-desktop-location__text{display:flex;flex-direction:column;min-width:0}.ffp-desktop-location__label{display:flex;align-items:center;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);line-height:1.2}.ffp-desktop-location__address{font-size:12px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;line-height:1.2}.ffp-desktop-location__address.is-detecting{animation:ffp-shimmer-pulse 1.4s infinite ease-in-out}.ffp-desktop-header__center{flex:1 1 auto;max-width:560px;min-width:200px;position:relative}.ffp-desktop-search-wrap{width:100%;position:relative}.ffp-desktop-search{grid-template-columns:22px minmax(0,1fr) 42px!important;min-height:52px!important;height:52px!important;border-radius:14px!important;background:#fff!important;border:1px solid #cbd5e1!important;padding:0 5px 0 14px!important;box-shadow:0 2px 8px rgba(15,23,42,.04)!important}.ffp-desktop-search:focus-within{background:#fff!important;border-color:var(--accent)!important;box-shadow:0 0 0 3px rgba(200,155,44,.14)!important}.ffp-desktop-search input{font-size:15px!important}.ffp-desktop-header__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.ffp-desktop-veg-wrap{display:flex;align-items:center;gap:10px;padding:6px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;height:48px;cursor:pointer;user-select:none}.ffp-desktop-veg-wrap .ffp-veg-mode-label{font-size:13px;font-weight:700;letter-spacing:0;color:#1e293b;white-space:nowrap;text-align:left;cursor:pointer;transition:color 180ms ease}.ffp-desktop-veg-wrap:has(input:checked) .ffp-veg-mode-label{color:#15803d;font-weight:800}.ffp-desktop-veg-wrap .ffp-veg-mode-toggle{position:relative;display:inline-block;width:44px;height:24px;margin:0;cursor:pointer;flex-shrink:0}.ffp-desktop-veg-wrap .ffp-veg-mode-toggle input{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.ffp-desktop-veg-wrap .ffp-veg-mode-slider{position:absolute;inset:0;background-color:#cbd5e1;border:1px solid #cbd5e1;border-radius:24px;transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease}.ffp-desktop-veg-wrap .ffp-veg-mode-slider::before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:#ffffff;border-radius:50%;box-shadow:0 1px 3px rgba(15,23,42,.2);transition:transform 180ms ease}.ffp-desktop-veg-wrap .ffp-veg-mode-toggle input:checked+.ffp-veg-mode-slider{background-color:#16a34a;border-color:#16a34a}.ffp-desktop-veg-wrap .ffp-veg-mode-toggle input:checked+.ffp-veg-mode-slider::before{transform:translateX(20px)}.ffp-desktop-veg-wrap .ffp-veg-mode-toggle input:focus-visible+.ffp-veg-mode-slider{outline:2px solid #16a34a;outline-offset:2px;box-shadow:0 0 0 3px rgba(22,163,74,.25)}@media(prefers-reduced-motion:reduce){.ffp-desktop-veg-wrap .ffp-veg-mode-slider,.ffp-desktop-veg-wrap .ffp-veg-mode-slider::before{transition:none!important}}.ffp-desktop-profile{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;height:48px;transition:border-color .18s,box-shadow .18s}.ffp-desktop-profile:hover{border-color:#cbd5e1;box-shadow:0 2px 8px rgba(15,23,42,.06)}.ffp-desktop-profile__avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.ffp-desktop-profile__initial{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#f1f5f9;color:var(--ink);font-size:14px;font-weight:800}.ffp-desktop-profile__icon{width:20px;height:20px;margin-left:4px}.ffp-desktop-profile__label{font-size:13px;font-weight:700;white-space:nowrap;color:var(--ink)}}
@media(min-width:1200px){.ffp-desktop-location__address{max-width:240px}}

/* AUTOMATIC DISCOVERY FEED & CARD STYLES */
.ffp-marketplace-discovery-wrap{margin-top:32px}.ffp-discovery-categories{margin-top:24px}.ffp-discovery-feed{margin-top:32px}.ffp-section-sub{margin:4px 0 0;color:var(--muted);font-size:13px}.ffp-discovery-group{margin-top:24px}.ffp-discovery-group:first-child{margin-top:12px}.ffp-discovery-group__title{margin:0 0 14px;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--ink)}.ffp-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media(min-width:640px){.ffp-discovery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}@media(min-width:1024px){.ffp-discovery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}}.ffp-discovery-card{width:100%!important;min-width:0!important;display:flex;flex-direction:column;height:100%;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.04);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.ffp-discovery-card:hover{box-shadow:0 6px 20px rgba(15,23,42,.08)}.ffp-discovery-card__image-link{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:#f1f3f5;text-decoration:none}.ffp-discovery-card__image-link img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.ffp-discovery-card:hover .ffp-discovery-card__image-link img{transform:scale(1.04)}.ffp-discovery-card__badge-wrap{position:absolute;top:8px;left:8px;z-index:2}.ffp-discovery-card__badge-wrap .ff-food-badge{margin:0!important;box-shadow:0 2px 6px rgba(0,0,0,.12)}.ffp-discovery-card__body{display:flex;flex-direction:column;flex:1 1 auto;padding:12px 14px 14px}.ffp-discovery-card__title{margin:0 0 4px;font-size:15px;font-weight:700;line-height:1.3;letter-spacing:-.01em}@media(min-width:1024px){.ffp-discovery-card__title{font-size:16px}}.ffp-discovery-card__title a{color:var(--ink)!important;background:transparent!important;padding:0!important;border-radius:0!important;text-decoration:none!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ffp-discovery-card__title a:hover{color:var(--accent)!important}.ffp-discovery-card__restaurant{margin:0 0 12px;font-size:12px;color:var(--muted);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffp-discovery-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;gap:8px;padding-top:10px;border-top:1px solid #f1f5f9}.ffp-discovery-card__price{font-size:14px;font-weight:800;color:var(--ink);line-height:1.2;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.ffp-discovery-card__price del,.ffp-price-del{font-size:12px;color:#94a3b8;margin-right:2px;font-weight:500;text-decoration:line-through}.ffp-discovery-card__price ins,.ffp-price-ins{text-decoration:none;color:var(--ink);font-weight:800;font-size:15px}.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-discovery-card__btn{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 12px;border-radius:8px;background:var(--ink)!important;color:#fff!important;font-size:12px;font-weight:700;text-decoration:none!important;white-space:nowrap!important;flex-shrink:0;transition:background .18s}.ffp-discovery-card__btn:hover{background:#2c3e50!important}.ffp-discovery-card__btn.is-disabled{background:#e2e8f0!important;color:#94a3b8!important;pointer-events:none}@media(max-width:639px){.ffp-discovery-card__body{padding:10px}.ffp-discovery-card__title{font-size:14px}.ffp-discovery-card__restaurant{margin-bottom:8px;font-size:11px}.ffp-discovery-card__footer{flex-direction:column;align-items:stretch;gap:6px}.ffp-discovery-card__price{font-size:13px}.ffp-discovery-card__btn{width:100%;height:32px;font-size:11px}}.ffp-discovery-sentinel{min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:24px}.ffp-discovery-loader{display:flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 12px rgba(15,23,42,.06);color:var(--muted);font-size:13px;font-weight:600}.ffp-discovery-spinner{width:18px;height:18px;border:2px solid #e2e8f0;border-top-color:var(--ink);border-radius:50%;animation:ffp-disc-spin .7s linear infinite}@keyframes ffp-disc-spin{to{transform:rotate(360deg)}}.ffp-discovery-end{margin:12px 0 0;color:var(--muted);font-size:13px;font-weight:600;text-align:center}

/* 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 4.1 — YELLOW SALE PRICE FLAP & LOWEST PRICE TRUST BADGE */
.ffp-price-presenter{display:inline-flex!important;align-items:center!important;flex-wrap:wrap!important;gap:6px!important;line-height:1.2!important}
.ffp-price-del,.ffp-discovery-card__price del,.ffp-price del{font-size: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}
.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-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;min-width:0!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-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-featured .ffp-dish-card{display:flex!important;flex-direction:column!important;height:100%!important}
.ffp-featured .ffp-dish-card__body{display:flex!important;flex-direction:column!important;flex:1 1 auto!important}
.ffp-featured .ffp-dish-card__footer{margin-top:auto!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.4 - IMPENETRABLE VEG MODE & HIDDEN OVERRIDES */
.ffp-marketplace [hidden],
.ffp-marketplace [hidden="true"],
.ffp-marketplace .is-foodflow-filter-hidden {
    display: none !important;
}
.ffp-marketplace.ffp-veg-mode-active [data-food-type="nonveg"],
.ffp-marketplace.ffp-veg-mode-active [data-food-type="egg"],
.ffp-marketplace.ffp-veg-mode-active [data-has-veg="false"],
html.ffp-veg-mode-active [data-foodflow-marketplace] [data-food-type="nonveg"],
html.ffp-veg-mode-active [data-foodflow-marketplace] [data-food-type="egg"],
html.ffp-veg-mode-active [data-foodflow-marketplace] [data-has-veg="false"],
body.ffp-veg-mode-active [data-foodflow-marketplace] [data-food-type="nonveg"],
body.ffp-veg-mode-active [data-foodflow-marketplace] [data-food-type="egg"],
body.ffp-veg-mode-active [data-foodflow-marketplace] [data-has-veg="false"] {
    display: none !important;
}

/* FOODFLOW PRO 3.6 - DESKTOP MARKETPLACE SEARCH RESULTS UI REDESIGN */
@media (min-width: 768px) {
    .ffp-desktop-search-wrap .ffp-dish-search {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-height: 460px !important;
        overflow-y: auto !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 16px !important;
        background: #ffffff !important;
        box-shadow: 0 20px 40px -4px rgba(15, 23, 42, 0.14), 0 8px 16px -4px rgba(15, 23, 42, 0.08) !important;
        z-index: 100 !important;
        padding: 6px 0 !important;
        margin: 0 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__result {
        display: grid !important;
        grid-template-columns: 56px minmax(0, 1fr) 28px !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 10px 14px !important;
        min-height: 72px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        background: #ffffff !important;
        text-decoration: none !important;
        transition: background-color 150ms ease, border-color 150ms ease !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__result:last-child {
        border-bottom: none !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__result:hover,
    .ffp-desktop-search-wrap .ffp-dish-search__result.is-active,
    .ffp-desktop-search-wrap .ffp-dish-search__result:focus-visible {
        background: #f8fafc !important;
        outline: none !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__media {
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
        min-height: 56px !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        flex-shrink: 0 !important;
        background: #f1f5f9 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__media img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        transition: transform 180ms ease !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__result:hover .ffp-dish-search__media img,
    .ffp-desktop-search-wrap .ffp-dish-search__result.is-active .ffp-dish-search__media img {
        transform: scale(1.04) !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__info {
        display: flex !important;
        flex-direction: column !important;
        gap: 3px !important;
        min-width: 0 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__title-row {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        min-width: 0 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__title {
        font-size: 15px !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        line-height: 1.25 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__title mark {
        background: rgba(200, 155, 44, 0.18) !important;
        color: #854d0e !important;
        padding: 0 2px !important;
        border-radius: 2px !important;
        font-weight: 800 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__restaurant {
        font-size: 12px !important;
        color: #64748b !important;
        font-weight: 500 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__status {
        font-size: 11px !important;
        color: #e11d48 !important;
        font-weight: 600 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__pricing {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        flex-shrink: 0 !important;
        text-align: right !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__price {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 2px !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #0f172a !important;
        white-space: nowrap !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__price del,
    .ffp-desktop-search-wrap .ffp-price-del {
        font-size: 12px !important;
        color: #94a3b8 !important;
        font-weight: 500 !important;
        text-decoration: line-through !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__price ins,
    .ffp-desktop-search-wrap .ffp-price-ins {
        font-size: 15px !important;
        color: #0f172a !important;
        font-weight: 800 !important;
        text-decoration: none !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__arrow {
        width: 18px !important;
        height: 18px !important;
        color: #94a3b8 !important;
        transition: color 150ms ease, transform 150ms ease !important;
        flex-shrink: 0 !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__result:hover .ffp-dish-search__arrow,
    .ffp-desktop-search-wrap .ffp-dish-search__result.is-active .ffp-dish-search__arrow {
        color: #0f172a !important;
        transform: translateX(2px) !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__empty {
        padding: 24px 18px !important;
        text-align: center !important;
        color: #64748b !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__empty-title {
        font-size: 14px !important;
        font-weight: 700 !important;
        color: #1e293b !important;
        margin-bottom: 4px !important;
    }
    .ffp-desktop-search-wrap .ffp-dish-search__empty-sub {
        font-size: 12px !important;
        color: #64748b !important;
    }
}

@media (max-width: 767px) {
    /* FOODFLOW PRO 4.2 - MOBILE SEARCH AUTOCOMPLETE FORENSIC FIX */
    .ffp-mobile-search-wrap .ffp-dish-search {
        position: absolute !important;
        top: calc(100% + 8px) !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-height: min(44dvh, 360px) !important;
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 14px !important;
        background: #ffffff !important;
        box-shadow: 0 16px 36px -4px rgba(15, 23, 42, 0.16) !important;
        z-index: 100 !important;
        padding: 4px 0 !important;
        margin: 0 !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__result {
        display: grid !important;
        grid-template-columns: 52px minmax(0, 1fr) 24px !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 9px 10px 9px 12px !important;
        min-height: 68px !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__media {
        grid-column: 1 !important;
        order: initial !important;
        width: 52px !important;
        height: 52px !important;
        flex-shrink: 0 !important;
        border-radius: 10px !important;
        overflow: hidden !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__media img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__info,
    .ffp-mobile-search-wrap .ffp-dish-search__title-row,
    .ffp-mobile-search-wrap .ffp-dish-search__title {
        min-width: 0 !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__info {
        grid-column: 2 !important;
        order: initial !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__title {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        white-space: normal !important;
        font-size: 13px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
        color: #0f172a !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__restaurant {
        font-size: 11px !important;
        color: #64748b !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }
    .ffp-dish-search__dietary {
        grid-column: 3 !important;
        justify-self: end !important;
        align-self: center !important;
        flex-shrink: 0 !important;
    }
    .ffp-mobile-search-wrap .ffp-dish-search__arrow,
    .ffp-dish-search__pricing,
    .ffp-dish-search__price {
        display: none !important;
    }



    /* FOODFLOW PRO 3.7 - MOBILE RESTAURANT HEADING & SORT CONTROL UI FIX */
    .ffp-marketplace__restaurants .ffp-section-heading {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        margin-top: 22px !important;
        margin-bottom: 14px !important;
    }
    .ffp-marketplace__restaurants .ffp-section-heading > div {
        flex: 0 0 auto !important;
        min-width: 0 !important;
    }
    .ffp-marketplace__restaurants .ffp-section-heading h3 {
        margin: 0 !important;
        font-size: 22px !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        letter-spacing: -0.02em !important;
    }
    .ffp-marketplace__restaurants .ffp-restaurants-heading-mobile {
        display: inline-block !important;
        white-space: nowrap !important;
    }
    .ffp-marketplace__restaurants .ffp-sort {
        flex: 0 1 auto !important;
        min-width: 145px !important;
        max-width: 170px !important;
        width: auto !important;
    }
    .ffp-marketplace__restaurants .ffp-sort select,
    .ffp-marketplace__restaurants .ffp-sort__select {
        min-height: 40px !important;
        height: 40px !important;
        padding: 0 30px 0 12px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 38px !important;
        border-radius: 10px !important;
        background-position: right 10px center !important;
        background-size: 12px 12px !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !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.0 — AUTHORITATIVE ADAPTIVE PRODUCT CARD GEOMETRY SYSTEM
   No Overlap • No Clipping • Adaptive to Every Screen Size
   Defends against live WP theme rules (button, .button, .price, ins, del)
   ========================================================================== */

/* ==========================================================================
   FOODFLOW PRO 5.3 — MARKETPLACE CARD SURFACE DESIGN TOKEN SYSTEM
   Visible thin neutral border (1px #dfe5ec) + 12px radius + subtle elevation + consistent separators
   ========================================================================== */

:root {
    --ffp-card-bg: #ffffff;
    --ffp-card-border: #dfe5ec;
    --ffp-card-border-hover: #cdd5df;
    --ffp-card-shadow: 0 2px 8px rgba(15, 23, 42, 0.035);
    --ffp-card-shadow-hover: 0 5px 16px rgba(15, 23, 42, 0.07);
    --ffp-card-radius: 12px;
    --ffp-card-separator: #edf0f4;
    --ffp-card-action-height: clamp(32px, 8.5vw, 36px);

    /* FoodFlow Pro 5.4 — Background Design Tokens */
    --ffp-bg-canvas: #ffffff;
    --ffp-bg-tint-gold: rgba(244, 180, 0, 0.042);
    --ffp-bg-tint-green: rgba(22, 163, 74, 0.032);
    --ffp-bg-tint-dot: rgba(15, 23, 42, 0.028);
    --ffp-bg-arc-gold: rgba(200, 155, 44, 0.045);
    --ffp-bg-arc-green: rgba(22, 163, 74, 0.035);
}
@media (min-width: 768px) {
    :root {
        --ffp-card-action-height: 36px;
    }
}

body.foodflow-app-page #foodflow-app-root,
.ffp-marketplace {
    --ffp-card-bg: #ffffff;
    --ffp-card-border: #dfe5ec;
    --ffp-card-border-hover: #cdd5df;
    --ffp-card-shadow: 0 2px 8px rgba(15, 23, 42, 0.035);
    --ffp-card-shadow-hover: 0 5px 16px rgba(15, 23, 42, 0.07);
    --ffp-card-radius: 12px;
    --ffp-card-separator: #edf0f4;

    /* Background Tokens */
    --ffp-bg-canvas: #ffffff;
    --ffp-bg-tint-gold: rgba(244, 180, 0, 0.042);
    --ffp-bg-tint-green: rgba(22, 163, 74, 0.032);
    --ffp-bg-tint-dot: rgba(15, 23, 42, 0.028);
    --ffp-bg-arc-gold: rgba(200, 155, 44, 0.045);
    --ffp-bg-arc-green: rgba(22, 163, 74, 0.035);
}

/* ==========================================================================
   FOODFLOW PRO 5.5 — HIGH-VISIBILITY CULINARY WATERMARK BACKGROUND SYSTEM
   Recognizable large food motifs: Steaming Bowl, Cloche, Chopsticks & Noodles, Plate
   Visible white surface: #foodflow-app-root canvas + .ffp-marketplace container
   ========================================================================== */

:root {
    --ffp-bg-canvas: #ffffff;
    --ffp-bg-tint-gold: rgba(244, 180, 0, 0.08);
    --ffp-bg-tint-green: rgba(22, 163, 74, 0.07);
    --ffp-bg-tint-amber: rgba(244, 180, 0, 0.06);
    --ffp-bg-tint-dot: rgba(15, 23, 42, 0.04);
}

/* ==========================================================================
   FoodFlow Pro 5.5 — Marketplace Background Food Illustration System
   Full-Scroll Decorative Culinary Illustration Wallpaper
   ========================================================================== */

/* 1. Full-viewport canvas: Clean white base with isolated stacking context */
body.foodflow-app-page #foodflow-app-root,
#foodflow-app-root {
    position: relative !important;
    background-color: #ffffff !important;
    isolation: isolate !important;
}

/* 2. Soft, continuous food illustration wallpaper across the entire scroll */
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;
}

/* 3. Marketplace Container: Transparent overlay with isolated stacking context */
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;
}

/* 4. Content Stacking Safeguard: All interactive cards, text, and controls sit strictly at z-index: 1 */
body.foodflow-app-page #foodflow-app-root .ffp-marketplace > *,
#foodflow-app-root .ffp-marketplace > *,
.ffp-marketplace > * {
    position: relative;
    z-index: 1;
}

/* 5. Clean up any obsolete pseudo-elements on .ffp-marketplace */
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;
}

/* 6. Mobile Adaptation (<768px): Centered, edge-anchored sizing for maximum content clarity */
@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;
    }
}

/* 6b. Desktop Canvas (>=768px): Pure solid white canvas, no background illustration */
@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;
    }
}

/* 7. Restaurant Menu Product Cards & Isolated Card Surfaces (5.6 Fix) */
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;
}

/* Canonical Marketplace Card Shell System (Restaurant, Featured, Discovery) */
body.foodflow-app-page #foodflow-app-root .ffp-dish-card,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card,
body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card,
.ffp-marketplace .ffp-dish-card,
.ffp-marketplace .ffp-discovery-card,
.ffp-marketplace .ffp-marketplace-card {
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--ffp-card-border, #dfe5ec) !important;
    border-radius: var(--ffp-card-radius, 12px) !important;
    background: var(--ffp-card-bg, #ffffff) !important;
    box-shadow: var(--ffp-card-shadow, 0 2px 8px rgba(15, 23, 42, 0.035)) !important;
    text-decoration: none !important;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease !important;
    margin: 0 !important;
    float: none !important;
    position: relative !important;
}

/* Product Cards (Featured & Discovery) Flex Column Normalization */
body.foodflow-app-page #foodflow-app-root .ffp-dish-card,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card,
.ffp-marketplace .ffp-dish-card,
.ffp-marketplace .ffp-discovery-card {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    container-type: inline-size;
    container-name: ffp-card;
}

/* Desktop Only Card Elevation Refinement (Fine pointer & hover capable) */
@media (hover: hover) and (pointer: fine) {
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card:hover,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card:hover,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card:hover,
    .ffp-marketplace .ffp-dish-card:hover,
    .ffp-marketplace .ffp-discovery-card:hover,
    .ffp-marketplace .ffp-marketplace-card:hover {
        border-color: var(--ffp-card-border-hover, #cdd5df) !important;
        box-shadow: var(--ffp-card-shadow-hover, 0 5px 16px rgba(15, 23, 42, 0.07)) !important;
        transform: translateY(-1px) !important;
    }
}

/* Restaurant Card Media Normalization */
body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__image,
.ffp-marketplace .ffp-marketplace-card__image {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: #eef0f2 !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__image img,
.ffp-marketplace .ffp-marketplace-card__image img,
body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__image > img,
.ffp-marketplace .ffp-marketplace-card__image > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Image Zone & Badges (Phase 4, 22, 23) */
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__image,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__image-link,
.ffp-marketplace .ffp-dish-card__image,
.ffp-marketplace .ffp-discovery-card__image-link {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: #f1f3f5 !important;
    flex-shrink: 0 !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-dish-card__image img,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__image-link img,
.ffp-marketplace .ffp-dish-card__image img,
.ffp-marketplace .ffp-discovery-card__image-link img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.3s ease !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-dish-card:hover .ffp-dish-card__image img,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card:hover .ffp-discovery-card__image-link img,
.ffp-marketplace .ffp-dish-card:hover .ffp-dish-card__image img,
.ffp-marketplace .ffp-discovery-card:hover .ffp-discovery-card__image-link img {
    transform: scale(1.04) !important;
}

/* Badges on Image (Phase 22, 23) */
body.foodflow-app-page #foodflow-app-root .ffp-card-top-left-chip,
.ffp-marketplace .ffp-card-top-left-chip {
    position: absolute !important;
    top: clamp(7px, 2vw, 10px) !important;
    left: clamp(7px, 2vw, 10px) !important;
    z-index: 3 !important;
    pointer-events: none !important;
    margin: 0 !important;
    line-height: 1 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-card-top-right-chip,
.ffp-marketplace .ffp-card-top-right-chip {
    position: absolute !important;
    top: clamp(7px, 2vw, 10px) !important;
    right: clamp(7px, 2vw, 10px) !important;
    z-index: 3 !important;
    pointer-events: none !important;
    margin: 0 !important;
    line-height: 1 !important;
}

/* Dark Navy Discount Badge */
body.foodflow-app-page #foodflow-app-root .ffp-discount-chip,
.ffp-marketplace .ffp-discount-chip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 3px clamp(5px, 1.5vw, 7px) !important;
    border-radius: 6px !important;
    background: #17202a !important;
    color: #ffffff !important;
    font-size: clamp(9px, 2.5vw, 10px) !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
    line-height: 1.1 !important;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.25) !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
}

/* Compact Content Body (Phase 11) */
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__body,
.ffp-marketplace .ffp-dish-card__body,
.ffp-marketplace .ffp-discovery-card__body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: clamp(9px, 2.4vw, 12px) clamp(8px, 2.2vw, 12px) 9px !important;
    box-sizing: border-box !important;
}

/* Title (Max 2 lines, Consistent Title Zone - Phase 5) */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__title,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body h4,
.ffp-marketplace .ffp-discovery-card__title,
.ffp-marketplace .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;
    margin: 0 0 2px 0 !important;
    padding: 0 !important;
    font-size: clamp(12px, 3.2vw, 13.5px) !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    color: #0f172a !important;
    letter-spacing: -0.01em !important;
    min-height: 2.5em !important;
    max-height: 2.5em !important;
    min-width: 0 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__title a,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body h4 a,
.ffp-marketplace .ffp-discovery-card__title a,
.ffp-marketplace .ffp-dish-card__body h4 a {
    color: #0f172a !important;
    text-decoration: none !important;
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    display: inline !important;
}

/* Restaurant Row (Phase 6) */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__restaurant-row,
.ffp-marketplace .ffp-discovery-card__restaurant-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 4px 0 !important;
    min-height: 16px !important;
    box-sizing: border-box !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__restaurant,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body p,
.ffp-marketplace .ffp-discovery-card__restaurant,
.ffp-marketplace .ffp-dish-card__body p {
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(10.5px, 2.7vw, 11.5px) !important;
    font-weight: 500 !important;
    color: #64748b !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    line-height: 1.25 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__del-wrap,
.ffp-marketplace .ffp-discovery-card__del-wrap {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-price-del,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__price del,
body.foodflow-app-page #foodflow-app-root .ffp-price del,
.ffp-marketplace .ffp-price-del,
.ffp-marketplace .ffp-discovery-card__price del,
.ffp-marketplace .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;
    box-shadow: none !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

/* ==========================================================================
   ACTION ROW — ADAPTIVE CSS GRID SYSTEM (Phase 7)
   Replaces fragile flexbox with robust two-column grid allocation
   ========================================================================== */
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__footer,
.ffp-marketplace .ffp-dish-card__footer,
.ffp-marketplace .ffp-discovery-card__footer {
    display: grid !important;
    grid-template-columns: minmax(max-content, auto) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin-top: auto !important;
    padding-top: 8px !important;
    border-top: 1px solid var(--ffp-card-separator, #edf0f4) !important;
    box-sizing: border-box !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__action,
.ffp-marketplace .ffp-marketplace-card__action {
    border-top: 1px solid var(--ffp-card-separator, #edf0f4) !important;
}

/* Pricing Block (Column 1 - Phase 7) */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__price,
body.foodflow-app-page #foodflow-app-root .ffp-price-presenter,
.ffp-marketplace .ffp-discovery-card__price,
.ffp-marketplace .ffp-price-presenter {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
    width: fit-content !important;
    max-width: 100% !important;
    height: var(--ffp-card-action-height, clamp(32px, 8.5vw, 36px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
}

/* Rich Gold Sale Price Flap (Phase 7) */
body.foodflow-app-page #foodflow-app-root .ffp-sale-price-flap,
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__price ins,
body.foodflow-app-page #foodflow-app-root .ffp-price ins,
.ffp-marketplace .ffp-sale-price-flap,
.ffp-marketplace .ffp-discovery-card__price ins,
.ffp-marketplace .ffp-price ins {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !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;
    padding: 0 clamp(7px, 2vw, 11px) !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;
    width: fit-content !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Normal Current Price (Phase 9) */
body.foodflow-app-page #foodflow-app-root .ffp-price-amount,
.ffp-marketplace .ffp-price-amount {
    display: inline-flex !important;
    align-items: center !important;
    font-size: clamp(13px, 3.5vw, 15px) !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    min-width: 0 !important;
    height: var(--ffp-card-action-height, clamp(32px, 8.5vw, 36px)) !important;
    padding: 0 4px !important;
}

/* View Item Action Button (Column 2 - Phase 7) */
body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body > div a,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a,
.ffp-marketplace .ffp-discovery-card__btn,
.ffp-marketplace .ffp-dish-card__body > div a,
.ffp-marketplace .ffp-dish-card__footer > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !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;
    padding: 0 clamp(6px, 1.8vw, 10px) !important;
    border-radius: 7px !important;
    background: #17202a !important;
    color: #ffffff !important;
    font-size: clamp(10.5px, 2.9vw, 12px) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    transition: background-color 0.18s ease !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    text-transform: none !important;
    flex-shrink: 1 !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn:hover,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a:hover,
.ffp-marketplace .ffp-discovery-card__btn:hover,
.ffp-marketplace .ffp-dish-card__footer > a:hover {
    background: #2c3e50 !important;
    color: #ffffff !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn.is-disabled,
body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a.is-disabled,
.ffp-marketplace .ffp-discovery-card__btn.is-disabled,
.ffp-marketplace .ffp-dish-card__footer > a.is-disabled {
    background: #e2e8f0 !important;
    color: #94a3b8 !important;
    pointer-events: none !important;
}

/* Extremely Narrow Card Controlled Vertical Fallback (Phase 8, 13) */
@container ffp-card (max-width: 125px) {
    .ffp-dish-card__footer,
    .ffp-discovery-card__footer {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
    }
    .ffp-discovery-card__price,
    .ffp-price-presenter {
        width: 100% !important;
    }
    .ffp-sale-price-flap,
    .ffp-discovery-card__price ins,
    .ffp-price ins {
        width: 100% !important;
        justify-content: center !important;
    }
    .ffp-price-amount {
        width: 100% !important;
        justify-content: center !important;
    }
    .ffp-discovery-card__btn,
    .ffp-dish-card__footer > a {
        width: 100% !important;
    }
}

/* Small-Screen Viewport Fallback Support (<= 330px) */
@media (max-width: 330px) {
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid,
    .ffp-marketplace .ffp-discovery-grid {
        gap: 6px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__body,
    .ffp-marketplace .ffp-dish-card__body,
    .ffp-marketplace .ffp-discovery-card__body {
        padding: 7px 6px 7px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__footer,
    .ffp-marketplace .ffp-dish-card__footer,
    .ffp-marketplace .ffp-discovery-card__footer {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-sale-price-flap,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__price ins,
    body.foodflow-app-page #foodflow-app-root .ffp-price ins,
    .ffp-marketplace .ffp-sale-price-flap,
    .ffp-marketplace .ffp-discovery-card__price ins,
    .ffp-marketplace .ffp-price ins {
        width: 100% !important;
        justify-content: center !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn,
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a,
    .ffp-marketplace .ffp-discovery-card__btn,
    .ffp-marketplace .ffp-dish-card__footer > a {
        width: 100% !important;
    }
}

/* Trust Status Region (Compact Best Value Badge - Phase 10) */
body.foodflow-app-page #foodflow-app-root .ffp-trust-badge-row,
.ffp-marketplace .ffp-trust-badge-row,
.ffp-dish-card .ffp-trust-badge-row,
.ffp-discovery-card .ffp-trust-badge-row {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 22px !important;
    width: 100% !important;
    margin-top: 4px !important;
    box-sizing: border-box !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-best-value-badge,
body.foodflow-app-page #foodflow-app-root .ffp-lowest-price-badge,
.ffp-marketplace .ffp-best-value-badge,
.ffp-marketplace .ffp-lowest-price-badge,
.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 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: 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;
    box-sizing: border-box !important;
    margin-top: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: fit-content !important;
    height: clamp(21px, 5.5vw, 24px) !important;
    min-height: clamp(21px, 5.5vw, 24px) !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body.foodflow-app-page #foodflow-app-root .ffp-best-value-icon,
body.foodflow-app-page #foodflow-app-root .ffp-lowest-price-icon,
.ffp-marketplace .ffp-best-value-icon,
.ffp-marketplace .ffp-lowest-price-icon {
    width: 11px !important;
    height: 11px !important;
    flex-shrink: 0 !important;
    color: #16a34a !important;
}

/* Tighten Section Spacing between Featured Dishes and Next Section */
.ffp-marketplace .ffp-featured {
    margin-bottom: 28px !important;
}
.ffp-marketplace .ffp-marketplace-discovery-wrap {
    margin-top: 28px !important;
}

/* ==========================================================================
   FOODFLOW PRO 6.5 — DESKTOP MARKETPLACE DENSITY & 8-CARD GRID REFINEMENT
   STRICTLY DESKTOP ONLY — ZERO TOUCH TO MOBILE (<= 767px)
   ========================================================================== */

/* 1. Tablet & Up Base Card Geometry Polish (>= 768px) */
@media (min-width: 768px) {
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__image,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__image-link,
    .ffp-marketplace .ffp-dish-card__image,
    .ffp-marketplace .ffp-discovery-card__image-link {
        aspect-ratio: 1 / 0.82 !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__body,
    .ffp-marketplace .ffp-dish-card__body,
    .ffp-marketplace .ffp-discovery-card__body {
        padding: 10px 10px 8px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__title,
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body h4,
    .ffp-marketplace .ffp-discovery-card__title,
    .ffp-marketplace .ffp-dish-card__body h4 {
        font-size: 13px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        min-height: 2.5em !important;
        max-height: 2.5em !important;
        margin-bottom: 2px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__restaurant,
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__body p,
    .ffp-marketplace .ffp-discovery-card__restaurant,
    .ffp-marketplace .ffp-dish-card__body p {
        font-size: 10.5px !important;
        color: #64748b !important;
        min-height: 14px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__btn,
    body.foodflow-app-page #foodflow-app-root .ffp-dish-card__footer > a,
    .ffp-marketplace .ffp-discovery-card__btn,
    .ffp-marketplace .ffp-dish-card__footer > a {
        min-width: 0 !important;
        max-width: 100% !important;
        height: 30px !important;
        min-height: 30px !important;
        max-height: 30px !important;
        padding: 0 8px !important;
        font-size: 11px !important;
        border-radius: 7px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-sale-price-flap,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-card__price ins,
    body.foodflow-app-page #foodflow-app-root .ffp-price ins,
    .ffp-marketplace .ffp-sale-price-flap,
    .ffp-marketplace .ffp-discovery-card__price ins,
    .ffp-marketplace .ffp-price ins {
        height: 30px !important;
        min-height: 30px !important;
        max-height: 30px !important;
        font-size: 13px !important;
        padding: 0 7px !important;
        border-radius: 6px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-price-amount,
    .ffp-marketplace .ffp-price-amount {
        height: 30px !important;
        font-size: 13px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-trust-badge-row,
    .ffp-marketplace .ffp-trust-badge-row {
        min-height: 22px !important;
        margin-top: 4px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-best-value-badge,
    body.foodflow-app-page #foodflow-app-root .ffp-lowest-price-badge,
    .ffp-marketplace .ffp-best-value-badge,
    .ffp-marketplace .ffp-lowest-price-badge {
        font-size: 9.5px !important;
        height: 22px !important;
        min-height: 22px !important;
        padding: 2px 6px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-discount-chip,
    .ffp-marketplace .ffp-discount-chip {
        font-size: 9.5px !important;
        padding: 3px 6px !important;
    }

    /* Desktop Adaptive Product Card Grid (>= 768px) */
    body.foodflow-app-page #foodflow-app-root .ffp-featured__grid,
    body.foodflow-app-page #foodflow-app-root .ffp-quick-dishes-grid.ffp-featured-grid,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-grid {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 16px !important;
        margin-right: 0 !important;
        padding-right: 0 !important;
        overflow: visible !important;
        width: 100% !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-featured .ffp-dish-card,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid .ffp-discovery-card,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-grid .ffp-discovery-card,
    .ffp-marketplace .ffp-dish-card,
    .ffp-marketplace .ffp-discovery-card {
        flex: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        background-color: #ffffff !important;
        opacity: 1 !important;
        isolation: isolate !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-carousel-arrow {
        display: none !important;
    }
}

/* 3. Desktop Marketplace Container, Spacing & Restaurant Cards (>= 1024px) */
@media (min-width: 1024px) {
    body.foodflow-app-page #foodflow-app-root .ffp-featured__grid,
    body.foodflow-app-page #foodflow-app-root .ffp-quick-dishes-grid.ffp-featured-grid,
    body.foodflow-app-page #foodflow-app-root .ffp-discovery-grid,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-marketplace {
        max-width: 1240px !important;
        width: min(100% - 48px, 1240px) !important;
        margin: 0 auto !important;
        padding: 24px 0 64px !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-desktop-header {
        max-width: 1240px !important;
        width: 100% !important;
        margin-inline: auto !important;
        margin-bottom: 28px !important;
        min-height: 72px !important;
        padding: 10px 20px !important;
        border-radius: 16px !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-marketplace__section {
        margin-top: 28px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-section-heading {
        margin-bottom: 14px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-section-heading h3 {
        font-size: 24px !important;
        font-weight: 800 !important;
        letter-spacing: -0.02em !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-quick-dishes-grid {
        display: flex !important;
        justify-content: flex-start !important;
        gap: 18px !important;
        padding-bottom: 6px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-quick-dish-card {
        width: 80px !important;
        min-width: 80px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-quick-dish-card__image-wrap {
        width: 72px !important;
        height: 72px !important;
        border-radius: 50% !important;
        margin-bottom: 6px !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-marketplace__restaurants .ffp-section-heading {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 16px !important;
        margin-bottom: 16px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace__restaurants .ffp-section-heading h3 {
        font-size: 24px !important;
        font-weight: 800 !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-sort {
        min-width: 190px !important;
        max-width: 220px !important;
        height: 38px !important;
        margin: 0 !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-sort select,
    body.foodflow-app-page #foodflow-app-root .ffp-sort__select {
        height: 38px !important;
        min-height: 38px !important;
        line-height: 36px !important;
        padding: 0 36px 0 14px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        border-radius: 10px !important;
    }

    /* Clean Responsive Restaurant Grid System */
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace__grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace__grid:has(> .ffp-marketplace-card:only-child) .ffp-marketplace-card,
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card:only-child {
        max-width: none !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card {
        display: block !important;
        min-height: 100px !important;
        width: 100% !important;
        max-width: none !important;
        border-radius: var(--ffp-card-radius, 12px) !important;
        background: var(--ffp-card-bg, #ffffff) !important;
        border: 1px solid var(--ffp-card-border, #dfe5ec) !important;
        box-shadow: var(--ffp-card-shadow, 0 2px 8px rgba(15, 23, 42, 0.035)) !important;
        transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card:hover {
        border-color: var(--ffp-card-border-hover, #cdd5df) !important;
        box-shadow: var(--ffp-card-shadow-hover, 0 5px 16px rgba(15, 23, 42, 0.07)) !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__image {
        display: none !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__body {
        display: grid !important;
        min-height: 100px !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 10px 12px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__identity {
        display: grid !important;
        grid-template-columns: 52px minmax(0, 1fr) !important;
        align-items: center !important;
        gap: 10px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__logo {
        display: grid !important;
        width: 52px !important;
        height: 52px !important;
        padding: 3px !important;
        place-items: center !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        object-fit: contain !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__name h4 {
        font-size: 15px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
        color: #0f172a !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__name p {
        margin-top: 3px !important;
        font-size: 11px !important;
        color: #64748b !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__desktop-status {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        margin-top: 4px !important;
        color: #596574 !important;
        font-size: 10px !important;
        font-weight: 700 !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__action {
        min-width: 80px !important;
        height: 32px !important;
        min-height: 32px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        margin: 0 !important;
        padding: 0 10px !important;
        border: 1px solid #d9dde2 !important;
        border-radius: 8px !important;
        background: #ffffff !important;
        color: #594812 !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        transition: background-color 0.18s ease, border-color 0.18s ease !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-card__action:hover {
        background: #f8fafc !important;
        border-color: #cbd5e1 !important;
    }

    body.foodflow-app-page #foodflow-app-root .ffp-featured {
        margin-bottom: 36px !important;
    }
    body.foodflow-app-page #foodflow-app-root .ffp-marketplace-discovery-wrap {
        margin-top: 36px !important;
    }
}
