/* Favorito Delivery — Build 571
   Régua pública única no desktop: 1280px. Sem width:100vw, margens negativas ou transforms de largura. */
html{
  min-width:0;
  max-width:100%;
  overflow-x:clip;
  scrollbar-gutter:stable;
}
body.marketplace-body{
  --fd-content-max:1280px;
  --fd-desktop-gutter:24px;
  min-width:0;
  max-width:100%;
  margin:0;
  overflow-x:clip;
  background:#f7f8fa;
}
body.marketplace-body *{box-sizing:border-box}
body.marketplace-body .market-main,
body.marketplace-body .market-wrap,
body.marketplace-body .fav-vitrine-home,
body.marketplace-body .app-store-page{
  min-width:0;
  max-width:100%;
}
body.marketplace-body .market-main{width:100%}

@media(min-width:1024px){
  /* Cabeçalho, Home, páginas internas e rodapé usam exatamente a mesma régua. */
  body.marketplace-body .market-header > .market-wrap,
  body.marketplace-body .market-store-context-bar > .market-wrap,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-home > .market-wrap,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-home > [data-fav-vitrine-tab-panel] > .market-wrap,
  body.marketplace-native-page .market-main,
  body[data-market-page="loja"] .market-main{
    width:calc(100% - 48px)!important;
    max-width:1280px!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* A Home não cria uma segunda largura para endereço, filtros/categorias, slide ou cards. */
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-home{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-bottom:96px!important;
  }
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-top{
    left:auto!important;
    right:auto!important;
    width:calc(100% - 48px)!important;
    max-width:1280px!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-location-row,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-location,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-discovery-row,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-banners,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-section{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  /* Páginas internas ocupam a régua inteira; filhos não podem recriar largura menor/maior. */
  body.marketplace-native-page .market-main > *,
  body[data-market-page="loja"] .market-main > *{
    max-width:100%!important;
    min-width:0!important;
  }
  body.marketplace-native-page .market-main > section,
  body.marketplace-native-page .market-main > article,
  body.marketplace-native-page .market-main > form,
  body.marketplace-native-page .market-main > div{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  /* Ofertas / Restaurantes volta no desktop e usa a mesma largura de 1280px. */
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .market-app-bottom.market-vitrine-bottom-nav{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:calc(100% - 48px)!important;
    max-width:1280px!important;
    min-width:0!important;
    margin:0 auto!important;
    transform:none!important;
    translate:none!important;
    z-index:120!important;
    background:#fff!important;
    border:1px solid #e8ebef!important;
    border-bottom:0!important;
    border-radius:18px 18px 0 0!important;
    overflow:hidden!important;
    box-shadow:0 -8px 28px rgba(15,23,42,.08)!important;
  }
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .market-app-bottom.market-vitrine-bottom-nav > a{
    min-width:0!important;
    width:100%!important;
  }
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .market-main{
    padding-bottom:96px!important;
  }
}

@media(max-width:1023px){
  html{scrollbar-gutter:auto}
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .market-app-bottom.market-vitrine-bottom-nav{
    width:100%!important;
    max-width:100%!important;
  }
}

/* Favorito Delivery — Build 572
   Correção final da régua da Home: topo/endereço/descoberta usam a MESMA largura dos banners e cards. */
@media (min-width:1024px){
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"]{
    --fd572-home-width:min(1280px, calc(100% - 48px));
  }

  /* Os quatro blocos principais da Home obedecem exatamente à mesma régua. */
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-top.market-wrap,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-banners.market-wrap,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-section.market-wrap{
    width:var(--fd572-home-width)!important;
    max-width:1280px!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }

  /* Endereço e faixa de descoberta não podem escapar da régua do pai. */
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-top > .fav-vitrine-location-row,
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-top > .fav-vitrine-discovery-row{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
  }
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .fav-vitrine-location{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
  }

  /* Menu inferior de Ofertas/Restaurantes na mesma régua exata. */
  body[data-market-page="inicio"][data-market-home-model="favorito_vitrine"] .market-app-bottom.market-vitrine-bottom-nav{
    width:var(--fd572-home-width)!important;
    max-width:1280px!important;
    left:50%!important;
    right:auto!important;
    margin:0!important;
    transform:translateX(-50%)!important;
  }
}
