/* Favorito Delivery — Build 407
   UX de app: modais, filtros, tabs, upsell e preservação das correções 402–406. */

/* Footer textual antigo nunca volta. */
body.marketplace-body .market-footer{display:none!important}

/* Desktop: conteúdo real centralizado em até 900px. */
@media (min-width:901px){
  body.marketplace-body .market-header>.market-wrap,
  body.marketplace-body .market-main>.market-wrap,
  body.marketplace-body .market-main>.market-section,
  body.marketplace-body .consumer-native-pagebar,
  body.marketplace-body .consumer-page-shell,
  body.marketplace-body .app-store-page,
  body.marketplace-body .market-app-bottom,
  body[data-market-page="produto"] .market-product-page,
  body[data-market-page="produto"] .market-product-shell,
  body[data-market-page="produto"] .market-product-sticky,
  body[data-market-page="produto"] .market-product-footer,
  body[data-market-page="produto"] [data-product-sticky]{max-width:900px!important;margin-left:auto!important;margin-right:auto!important}
}

/* Informações da loja — desktop = modal de verdade, solto em todas as bordas. */
body.marketplace-body .market-store-info-dialog{
  width:min(820px,calc(100vw - 48px))!important;
  height:auto!important;
  max-width:820px!important;
  max-height:calc(100dvh - 56px)!important;
  margin:28px auto!important;
  border:0!important;
  border-radius:22px!important;
  padding:0!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 26px 80px rgba(15,23,42,.30)!important;
  opacity:0!important;
  transform:translateY(10px) scale(.985)!important;
  transition:opacity .22s ease,transform .22s ease!important;
}
body.marketplace-body .market-store-info-dialog[open]{display:block!important}
body.marketplace-body .market-store-info-dialog.is-v407-open,
body.marketplace-body .market-store-info-dialog.is-open{opacity:1!important;transform:none!important}
body.marketplace-body .market-store-info-dialog.is-v407-closing{opacity:0!important;transform:translateY(8px) scale(.985)!important}
body.marketplace-body .market-store-info-dialog::backdrop{background:rgba(15,23,42,.48)!important;backdrop-filter:blur(2px)!important}
body.marketplace-body .market-store-info-screen{height:min(760px,calc(100dvh - 56px))!important;max-height:calc(100dvh - 56px)!important;border-radius:22px!important;overflow:hidden!important;box-shadow:none!important;background:#fff!important}
body.marketplace-body .market-store-info-scroll{overflow:auto!important;overscroll-behavior:contain!important;min-height:0!important}
html.fd407-overlay-open,html.fd407-overlay-open body{overflow:hidden!important;overscroll-behavior:none!important}

/* Mobile = tela lateral, entra da direita e volta para a direita ao fechar. */
@media (max-width:760px){
  body.marketplace-body .market-store-info-dialog{
    width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;
    margin:0!important;border-radius:0!important;inset:0!important;
    transform:translateX(100%)!important;opacity:1!important;
    transition:transform .28s cubic-bezier(.22,.8,.26,1)!important;
  }
  body.marketplace-body .market-store-info-dialog.is-v407-open,
  body.marketplace-body .market-store-info-dialog.is-open{transform:translateX(0)!important}
  body.marketplace-body .market-store-info-dialog.is-v407-closing{transform:translateX(100%)!important}
  body.marketplace-body .market-store-info-screen{width:100%!important;height:100dvh!important;max-height:none!important;border-radius:0!important}
  body.marketplace-body .market-store-info-head{position:sticky!important;top:0!important;z-index:5!important;background:#fff!important}
  body.marketplace-body .market-store-info-tabs{position:sticky!important;top:var(--fd407-info-head,62px)!important;z-index:4!important;background:#fff!important}
}

/* Filtro de pedidos com comportamento de app. */
body[data-market-page="pedidos"] [data-order-filter-sheet]{overflow:hidden!important}
@media (min-width:761px){
  body[data-market-page="pedidos"] [data-order-filter-sheet]{width:min(520px,calc(100vw - 48px))!important;margin:auto!important;border-radius:20px!important;transform:translateY(10px) scale(.985)!important;opacity:0!important;transition:.2s ease!important}
  body[data-market-page="pedidos"] [data-order-filter-sheet].is-v407-open{opacity:1!important;transform:none!important}
}
@media (max-width:760px){
  body[data-market-page="pedidos"] [data-order-filter-sheet]{
    width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;
    inset:0!important;margin:0!important;border-radius:0!important;padding:0!important;background:#fff!important;
    transform:translateX(100%)!important;opacity:1!important;transition:transform .28s cubic-bezier(.22,.8,.26,1)!important;
  }
  body[data-market-page="pedidos"] [data-order-filter-sheet].is-v407-open{transform:translateX(0)!important}
  body[data-market-page="pedidos"] [data-order-filter-sheet].is-v407-closing{transform:translateX(100%)!important}
  body[data-market-page="pedidos"] [data-order-filter-sheet] form{height:100dvh!important;padding:0 18px calc(20px + env(safe-area-inset-bottom))!important;overflow:auto!important}
  body[data-market-page="pedidos"] [data-order-filter-sheet] .consumer-sheet-handle{display:none!important}
  body[data-market-page="pedidos"] [data-order-filter-sheet] header{position:sticky!important;top:0!important;background:#fff!important;z-index:3!important;padding:15px 0 13px!important;border-bottom:1px solid #eceff3!important}
}

/* Tabs Marketplace: cor preservada + borda completa novamente. */
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom{
  border-top:1px solid #dfe3e8!important;border-bottom:1px solid #dfe3e8!important;box-shadow:none!important;overflow:hidden!important;
}
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab]{
  position:relative!important;border:1px solid #dfe3e8!important;border-top:0!important;border-bottom:0!important;border-radius:0!important;background:#fff!important;
}
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab]+a[data-fav-vitrine-bottom-tab]{border-left-width:1px!important}
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab].active,
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab][aria-selected="true"]{background:#eef0f3!important}
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab].active::after,
body[data-market-home-model="favorito_vitrine"][data-market-page="inicio"] .market-app-bottom>a[data-fav-vitrine-bottom-tab][aria-selected="true"]::after{
  content:""!important;display:block!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:3px!important;background:var(--color-primary-ui,var(--color-primary,#ea010b))!important;border-radius:0!important;
}
body[data-market-model="offers_v1"] .offers-v1-tabs{border:1px solid #dfe3e8!important;overflow:hidden!important}
body[data-market-model="offers_v1"] .offers-v1-tabs button{border-right:1px solid #dfe3e8!important;border-radius:0!important}
body[data-market-model="offers_v1"] .offers-v1-tabs button:last-child{border-right:0!important}
body[data-market-model="offers_v1"] .offers-v1-tabs button[aria-selected="true"]{background:#eef0f3!important}

/* Upsell real no carrinho. */
.fd407-cart-upsell{margin:15px 0 18px;background:#fff;border:1px solid #e2e6eb;border-radius:16px;padding:14px 0;overflow:hidden}
.fd407-cart-upsell-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 14px 11px}
.fd407-cart-upsell-head small{display:block;font-size:11px;font-weight:900;letter-spacing:.08em;color:var(--color-primary-ui,var(--color-primary,#ea010b))}
.fd407-cart-upsell-head h2{margin:2px 0 0;font-size:19px;line-height:1.2}.fd407-cart-upsell-head>span{font-size:12px;color:#667085;white-space:nowrap}
.fd407-cart-upsell-track{display:flex;gap:10px;overflow-x:auto;padding:0 14px 3px;scrollbar-width:none;scroll-snap-type:x proximity}.fd407-cart-upsell-track::-webkit-scrollbar{display:none}
.fd407-cart-upsell-card{position:relative;flex:0 0 176px;min-height:74px;border:1px solid #e4e7ec;border-radius:13px;padding:9px;display:grid;grid-template-columns:55px 1fr;gap:9px;background:#fff;scroll-snap-align:start}
.fd407-cart-upsell-image{width:55px;height:55px;border-radius:10px;overflow:hidden;background:#f2f4f7;display:grid;place-items:center}.fd407-cart-upsell-image img{width:100%;height:100%;object-fit:cover}
.fd407-cart-upsell-copy{min-width:0;padding-right:29px}.fd407-cart-upsell-copy strong{display:block;font-size:14px;line-height:1.22;max-height:35px;overflow:hidden}.fd407-cart-upsell-copy b{display:block;margin-top:5px;font-size:14px;color:var(--color-primary-ui,var(--color-primary,#ea010b))}
.fd407-cart-upsell-form{position:absolute!important;right:8px!important;bottom:8px!important;margin:0!important}.fd407-cart-upsell-form button{width:28px;height:28px;border:0;border-radius:50%;background:var(--color-primary-ui,var(--color-primary,#ea010b));color:var(--color-primary-ui-contrast,#fff);font:800 21px/1 Arial;display:grid;place-items:center;cursor:pointer}

/* A confirmação visual é o contador/card do carrinho, não um aviso gigante. */
.market-product-added-bar,.market-cart-toast,.market-cart-toast-host{display:none!important}

/* Andamento: concluídas verdes; etapa atual usa a cor do contexto. */
body[data-market-page="pedido"] .fd404-order-timeline .consumer-order-timeline-step.is-done:not(.is-current)>span{background:#e8f7ee!important;border-color:#b7e5c8!important;color:#16843f!important}
body[data-market-page="pedido"] .fd404-order-timeline .consumer-order-timeline-step.is-done:not(.is-current)>div strong{color:#16843f!important}
body[data-market-page="pedido"] .fd404-order-timeline .consumer-order-timeline-step small{font-size:11px!important;color:#667085!important;white-space:nowrap!important}

@media(max-width:620px){.fd407-cart-upsell-head>span{display:none}.fd407-cart-upsell-card{flex-basis:164px}}

/* Os modais informativos do modelo Perfil seguem a mesma linguagem do app. */
@media (min-width:761px){
  body[data-market-page="loja"] dialog.profile-store-dialog{
    width:min(800px,calc(100vw - 56px))!important;max-width:800px!important;max-height:calc(100dvh - 56px)!important;
    margin:auto!important;border-radius:22px!important;overflow:auto!important;box-shadow:0 26px 80px rgba(15,23,42,.30)!important;
    opacity:0!important;transform:translateY(10px) scale(.985)!important;transition:opacity .22s ease,transform .22s ease!important;
  }
  body[data-market-page="loja"] dialog.profile-store-dialog.is-v407-open{opacity:1!important;transform:none!important}
}
@media (max-width:760px){
  body[data-market-page="loja"] dialog.profile-store-dialog{
    width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;inset:0!important;margin:0!important;border-radius:0!important;
    transform:translateX(100%)!important;opacity:1!important;transition:transform .28s cubic-bezier(.22,.8,.26,1)!important;overflow:auto!important;
  }
  body[data-market-page="loja"] dialog.profile-store-dialog.is-v407-open{transform:translateX(0)!important}
  body[data-market-page="loja"] dialog.profile-store-dialog.is-v407-closing{transform:translateX(100%)!important}
  body[data-market-page="loja"] dialog.profile-store-dialog .dialog-head{position:sticky!important;top:0!important;z-index:5!important;background:#fff!important}
}
