/* WordPress/WooCommerce integration layer. Original Foodia visual remains in assets/css/style.css. */
.woofood-wp-screen { min-height: 100vh; background: #fff; }
.woofood-wp-content { padding: 24px 0 96px; }
.woofood-wp-title { font-size: 1.35rem; font-weight: 800; margin: 0 0 18px; color: #17233c; }
.woofood-wc-box,
.woocommerce .woocommerce-notices-wrapper,
.woocommerce form.checkout,
.woocommerce-cart-form,
.woocommerce .cart-collaterals,
.woocommerce-MyAccount-content,
.woocommerce-MyAccount-navigation { background: #fff; border-radius: 22px; box-shadow: 0 14px 35px rgba(33, 37, 41, .08); padding: 18px; }
.woocommerce ul.products { display: flex; flex-wrap: wrap; align-items: stretch; gap: 16px; padding: 0; margin: 0; }
.woocommerce ul.products li.product { flex: 1 1 170px; min-width: 0; width: auto !important; float: none !important; margin: 0 !important; list-style: none; background: #fff; border-radius: 24px; overflow: hidden; box-shadow: 0 14px 35px rgba(33, 37, 41, .08); padding: 12px; }
.woocommerce ul.products li.product a img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 20px; margin: 0 0 12px; }
.woocommerce-loop-product__title { font-size: 1rem !important; font-weight: 800; color: #17233c; padding: 0 !important; margin: 0 0 6px !important; }
.woocommerce ul.products li.product .price { color: var(--woofood-primary); font-weight: 800; display: block; margin-bottom: 12px; }
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce a.button.alt { border-radius: 999px !important; background: var(--woofood-primary) !important; color: #fff !important; border: 0 !important; font-weight: 800 !important; padding: 12px 18px !important; }
.woocommerce div.product div.images img { border-radius: 28px; box-shadow: 0 14px 35px rgba(33, 37, 41, .08); }
.woocommerce div.product .product_title { font-size: 1.6rem; color: #17233c; font-weight: 900; }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--woofood-primary); font-size: 1.25rem; font-weight: 900; }
.woofood-tracking-widget,
.woofood-delivery-panel { background: #fff; border-radius: 24px; padding: 18px; box-shadow: 0 14px 35px rgba(33, 37, 41, .08); }
.woofood-tracking-form { display: grid; gap: 10px; }
.woofood-tracking-form input { border: 1px solid #eef0f5; border-radius: 16px; padding: 12px 14px; width: 100%; }
.woofood-orders-grid { display: grid; gap: 14px; }
.woofood-order-card { border: 1px solid #eef0f5; border-radius: 20px; padding: 14px; background: #fff; }
.woofood-order-card strong { color: #17233c; }
.woofood-order-status { display: inline-flex; align-items: center; border-radius: 999px; background: color-mix(in srgb,var(--woofood-primary) 12%,transparent); color: var(--woofood-primary); padding: 6px 10px; font-weight: 800; font-size: .85rem; }
.woofood-timeline { display: grid; gap: 8px; margin-top: 14px; }
.woofood-timeline-step { display: flex; gap: 10px; align-items: center; color: #8890a0; }
.woofood-timeline-step::before { content: ''; width: 12px; height: 12px; border-radius: 50%; border: 2px solid currentColor; flex: 0 0 auto; }
.woofood-timeline-step.is-done { color: var(--woofood-primary); font-weight: 800; }
@media (max-width: 575px) {
  .woofood-wp-content { padding: 16px 0 88px; }
}

/* WooFood v5 dynamic layer */
#preloader{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;min-height:100vh!important;display:flex;align-items:center;justify-content:center;z-index:9999999;background:var(--woofood-surface)}.spinner{flex:0 0 auto}.woofood-app-theme .custom-logo{max-height:38px;width:auto}.woofood-dynamic-home{padding-bottom:32px}.woofood-category-slider .icon-bx img{width:26px;height:26px;object-fit:contain;filter:none}.woofood-recommended-products .recomended-list a{text-decoration:none}.woofood-recommended-products .image-box{display:block}.woofood-recommended-products .image-box img{width:100%;height:auto;object-fit:contain}.woofood-item-product .item-media img{width:110px;height:110px;object-fit:contain}.woofood-item-product .item-bookmark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--woofood-primary);color:var(--woofood-on-primary)!important;font-size:24px;line-height:1;text-decoration:none;font-weight:700}.menubar-area .nav-link{font-size:.8rem;font-weight:800;color:var(--woofood-muted);text-align:center}.menubar-area .nav-link.active,.menubar-area .nav-link:hover{color:var(--woofood-primary)}.woocommerce div.product form.cart{background:#fff;border-radius:22px;padding:16px;box-shadow:0 14px 35px rgba(33,37,41,.08)}.woocommerce div.product form.cart .variations select,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid #eef0f5;border-radius:16px;padding:12px 14px}.woofood-post-list{display:grid;gap:12px}.woofood-woocommerce-screen .products:before,.woofood-woocommerce-screen .products:after{display:none!important}.woofood-woocommerce-screen .woocommerce-result-count,.woofood-woocommerce-screen .woocommerce-ordering{float:none!important;margin-bottom:14px}.woofood-woocommerce-screen .woocommerce-ordering select{border:1px solid #eef0f5;border-radius:16px;padding:10px 12px}.sidebar .menu{padding-left:0;margin:0}.sidebar .menu li{list-style:none}.sidebar .menu a{display:flex;align-items:center;gap:10px;padding:12px 18px;color:var(--woofood-text);text-decoration:none;font-weight:800}.sidebar .nav-label{padding:16px 18px 8px;color:#8890a0;font-size:.75rem;text-transform:uppercase;font-weight:900}.woofood-wc-box .entry-content > *:first-child{margin-top:0}.woofood-wc-box .entry-content > *:last-child{margin-bottom:0}
@media (max-width:575px){.header .custom-logo{max-width:120px}}

/* WooFood v6 — Home dinâmica via CPTs */
.woofood-hero-banners{margin:0 0 18px}.woofood-hero-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:160px;padding:22px;border-radius:28px;overflow:hidden;background:var(--woofood-banner-bg);color:var(--woofood-banner-color,var(--woofood-on-primary));box-shadow:var(--woofood-shadow-strong)}.woofood-hero-banner__content{position:relative;z-index:2;max-width:68%}.woofood-hero-banner__badge{display:inline-flex;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--woofood-banner-color,var(--woofood-on-primary)) 18%,transparent);font-size:12px;font-weight:700}.woofood-hero-banner h2{margin:0 0 7px;color:inherit;font-size:24px;line-height:1.05;font-weight:800}.woofood-hero-banner p{margin:0 0 14px;color:inherit;opacity:.92;font-size:13px;line-height:1.35}.woofood-hero-banner__button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border-radius:var(--woofood-button-radius);background:var(--woofood-surface);color:var(--woofood-heading);font-weight:800;text-decoration:none;box-shadow:var(--woofood-shadow-soft)}.woofood-hero-banner__media{position:absolute;right:-5px;bottom:-14px;width:40%;max-width:170px;margin:0}.woofood-hero-banner__media img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 18px 24px color-mix(in srgb,var(--woofood-heading) 22%,transparent))}.woofood-home-cards{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}.woofood-home-cards>.woofood-home-card{flex:1 1 calc((100% - 10px)/2);min-width:0}.woofood-home-card{display:flex;min-height:86px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:4px;padding:12px;border-radius:var(--woofood-card-radius);background:var(--woofood-card-bg,var(--woofood-surface));color:var(--woofood-card-color,var(--woofood-text));text-decoration:none;box-shadow:var(--woofood-shadow-soft);overflow:hidden}.woofood-home-card img{width:34px;height:34px;object-fit:cover;border-radius:12px}.woofood-home-card span{font-size:13px;font-weight:800;line-height:1.1}.woofood-home-card small{font-size:12px;font-weight:400;line-height:1.35;color:inherit;opacity:.68}.woofood-home-banners-shortcode{display:grid;gap:14px}.woofood-home-banner-shortcode-item{border-radius:var(--woofood-card-radius);padding:20px}.woofood-home-banner-shortcode-item .button{display:inline-flex;margin-top:8px;padding:10px 14px;border-radius:var(--woofood-button-radius);background:var(--woofood-surface);color:var(--woofood-heading);font-weight:800;text-decoration:none}.woofood-banner-badge{display:inline-flex;padding:4px 9px;margin-bottom:8px;border-radius:999px;background:color-mix(in srgb,var(--woofood-banner-color,var(--woofood-on-primary)) 18%,transparent);font-size:12px;font-weight:700}@media(max-width:420px){.woofood-hero-banner{min-height:150px;padding:18px}.woofood-hero-banner__content{max-width:72%}.woofood-hero-banner h2{font-size:21px}.woofood-hero-banner__media{width:42%;right:-18px}.woofood-home-cards>.woofood-home-card{flex-basis:100%}.woofood-home-card{min-height:78px}}

/* WooFood v9 — restaura fidelidade visual Foodia */
.woofood-foodia-layout .woofood-hero-banners{display:none!important}
.woofood-promo-banners .woofood-banner-link{display:block;text-decoration:none;color:inherit}
.woofood-promo-banners .add-banner{min-height:148px;color:var(--woofood-banner-color,var(--woofood-on-primary))!important}
.woofood-promo-banners .add-banner .card-info span,
.woofood-promo-banners .add-banner .card-info small,
.woofood-promo-banners .add-banner .card-info .title{color:var(--woofood-banner-color,var(--woofood-on-primary))!important}
.woofood-promo-banners .add-banner .title{white-space:normal;line-height:.95}
.woofood-promo-banners .swiper-slide{height:auto}
.woofood-recommended-products .recomended-list{height:100%}
.woofood-recommended-products .image-box{position:relative;display:block;text-decoration:none}
.woofood-recommended-products .image-box img{width:100%;height:auto;object-fit:contain}
.woofood-recommended-products .image-box .bookmark{position:absolute;right:10px;top:10px;margin:0}
.woofood-recommended-products .image-box .bookmark svg{width:20px;height:20px;display:block}
.woofood-item-product .item-bookmark{background:transparent!important;color:inherit!important;width:auto!important;height:auto!important;border-radius:0!important;padding:0!important}
.woofood-item-product .item-bookmark svg{width:22px;height:22px;display:block}
.woofood-icon-menubar .toolbar-inner{align-items:center;justify-content:space-around}
.woofood-icon-menubar .nav-link{font-size:0!important;line-height:0!important;color:var(--woofood-muted)!important;display:flex;align-items:center;justify-content:center;text-decoration:none}
.woofood-icon-menubar .nav-link svg{display:block;color:currentColor;fill:none;stroke:currentColor}
.woofood-icon-menubar .nav-link.active,
.woofood-icon-menubar .nav-link:hover{color:var(--woofood-primary)!important}
.woofood-icon-menubar .nav-link.active svg,
.woofood-icon-menubar .nav-link:hover svg{color:currentColor!important;fill:none!important;stroke:currentColor!important}
.woofood-category-slider .icon-bx img{width:26px;height:26px;object-fit:contain;filter:none}
.sidebar .nav-link .dz-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--woofood-text)}
.sidebar .nav-link .dz-icon svg{display:block;color:currentColor;fill:none;stroke:currentColor}
@media(max-width:575px){.woofood-promo-banners .add-banner{min-height:140px}}


/* WooFood Icons 3.5.69 — SVG outline centralizado */
.woofood-app-theme svg.woofood-icon{display:block;flex:0 0 auto;fill:none!important;stroke:currentColor!important;color:inherit;shape-rendering:geometricPrecision}
.woofood-app-theme .woofood-icon-menubar .nav-link svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link.active svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible svg.woofood-icon{fill:none!important;stroke:currentColor!important}
.woofood-app-theme .woofood-category-icon__svg svg.woofood-icon,
.woofood-app-theme .woofood-home-card__icon svg.woofood-icon,
.woofood-app-theme .woofood-wishlist-toggle svg.woofood-icon,
.woofood-app-theme .woofood-home-search__icon svg.woofood-icon,
.woofood-app-theme .woofood-shop-view-button svg.woofood-icon{fill:none!important;stroke:currentColor!important}
.woofood-app-theme .woofood-category-icon__image{filter:none!important;object-fit:contain!important}
/* WooFood v10 — CPTs dinâmicos polidos, cores reais e carrosséis robustos */
.woofood-promo-banners .woofood-dynamic-add-banner{
  background: var(--woofood-banner-bg, var(--woofood-primary)) !important;
  color: var(--woofood-banner-color,#fff) !important;
  border: 0 !important;
  overflow: hidden;
}
.woofood-promo-banners .woofood-dynamic-add-banner .circle-1,
.woofood-promo-banners .woofood-dynamic-add-banner .circle-2{
  background: var(--woofood-banner-accent,var(--woofood-primary-soft-strong)) !important;
  opacity: .28;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-body{
  position: relative;
  min-height: 148px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  z-index: 2;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-info{
  position: relative;
  z-index: 3;
  max-width: 70%;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-info span,
.woofood-promo-banners .woofood-dynamic-add-banner .card-info small,
.woofood-promo-banners .woofood-dynamic-add-banner .card-info .title{
  color: var(--woofood-banner-color,#fff) !important;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-info span{
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.18);
  font-size: 11px;
  line-height: 1.2;
  font-weight: 800;
}
.woofood-promo-banners .woofood-dynamic-add-banner .title{
  margin-bottom: 4px;
  font-size: clamp(1.65rem, 7vw, 2.55rem);
  line-height: .88;
  letter-spacing: -.04em;
}
.woofood-promo-banners .woofood-banner-media{
  position: absolute;
  right: -10px;
  bottom: -16px;
  width: 42%;
  max-width: 165px;
  margin: 0;
  z-index: 2;
  pointer-events: none;
}
.woofood-promo-banners .woofood-banner-media img{
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 16px 22px color-mix(in srgb,var(--woofood-heading) 24%,transparent));
}
.woofood-promo-banners .swiper-container,
.woofood-recommended-products .swiper-container,
.woofood-category-slider .swiper-container{
  overflow:clip;
  overflow-clip-margin:40px;
}
.woofood-promo-banners .swiper-wrapper,
.woofood-recommended-products .swiper-wrapper,
.woofood-category-slider .swiper-wrapper{
  align-items: stretch;
}
.woofood-promo-banners .swiper-slide,
.woofood-recommended-products .swiper-slide{
  display: flex;
}
.woofood-promo-banners .swiper-slide > a,
.woofood-promo-banners .swiper-slide > a > .card{
  width:100%;
}
.woofood-recommended-products .swiper-slide{
  width:calc((100% - 40px) / 3);
  max-width:none;
  min-width:0;
}
@media(max-width:991.98px){
  .woofood-recommended-products .swiper-slide{
    width:calc((100% - 20px) / 2);
  }
}
@media(max-width:575.98px){
  .woofood-recommended-products .swiper-slide{
    width:86%;
  }
}
.woofood-recommended-products .swiper-slide > .recomended-list{
  width:100%;
  max-width:100%;
  min-width:0;
}
.woofood-home-cards{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 4px 0 20px;
}
.woofood-home-cards > .woofood-home-card{
  flex: 1 1 calc((100% - 10px) / 2);
  min-width: 0;
}
.woofood-home-card{
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  min-height: 104px;
  gap: 6px;
  padding: 13px;
  border-radius: var(--woofood-card-radius);
  background: var(--woofood-card-bg) !important;
  color: var(--woofood-card-color) !important;
  text-decoration: none !important;
  box-shadow: 0 12px 28px color-mix(in srgb,var(--woofood-heading) 8%,transparent);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease;
}
.woofood-home-card::after{
  content: '';
  position: absolute;
  right: -22px;
  bottom: -28px;
  width: 72px;
  height: 72px;
  border-radius: 999px;
  background: var(--woofood-card-icon);
  opacity: .08;
}
.woofood-home-card:hover{
  transform: translateY(-2px);
  box-shadow: 0 16px 34px color-mix(in srgb,var(--woofood-heading) 12%,transparent);
}
.woofood-home-card__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: var(--woofood-card-radius);
  color: var(--woofood-card-icon);
  background: color-mix(in srgb, var(--woofood-card-icon) 12%, transparent);
}
.woofood-home-card__icon svg{
  display: block;
  width: 22px;
  height: 22px;
}
.woofood-home-card__icon img{
  display: block;
  width: 38px;
  height: 38px;
  border-radius: var(--woofood-card-radius);
  object-fit: contain;
}
.woofood-home-card__title{
  position:relative;
  z-index:2;
  font-size:13px;
  font-weight:900;
  line-height:1.1;
  color:var(--woofood-heading)!important;
}
.woofood-home-card small{
  position: relative;
  z-index: 2;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 11px;
  line-height: 1.25;
  color: inherit !important;
  opacity: .68;
}
@media(max-width:420px){
  .woofood-home-cards > .woofood-home-card{flex-basis:100%;}
  .woofood-promo-banners .woofood-dynamic-add-banner .card-info{max-width:74%;}
  .woofood-promo-banners .woofood-banner-media{width:40%;right:-20px;}
}

/* WooFood v10.1 — home organizada, identidade dinâmica e categorias configuráveis */
.woofood-brand-logo{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.woofood-brand-logo img{display:block;max-height:38px;width:auto;object-fit:contain}
.woofood-brand-text{font-weight:900;color:var(--woofood-heading);text-decoration:none;font-size:15px;line-height:1}
.woofood-foodia-layout{background:var(--woofood-home-bg)}
.woofood-promo-banners .woofood-dynamic-add-banner,
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"]{background:var(--woofood-banner-bg)!important;color:var(--woofood-banner-color)!important}
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .circle-1,
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .circle-2{background:var(--woofood-banner-accent)!important;opacity:.28}
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .card-info span,
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .card-info small,
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .card-info .title{color:var(--woofood-banner-color)!important}
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"] .card-info span{background:color-mix(in srgb,var(--woofood-banner-color,var(--woofood-on-primary)) 18%,transparent);border-radius:999px;padding:4px 9px;font-weight:800}
.woofood-category-slider .categore-box{min-width:76px;text-decoration:none}
.woofood-category-slider .woofood-category-icon{background:var(--woofood-category-bg)!important;color:var(--woofood-category-color)!important;box-shadow:0 10px 20px color-mix(in srgb,var(--woofood-category-bg) 28%,transparent)}
.woofood-category-slider .woofood-category-icon__image{width:28px!important;height:28px!important;object-fit:contain;display:block}
.woofood-category-slider .woofood-category-icon__default{filter:none}
.woofood-home-cards{background:transparent}.woofood-home-card{border:1px solid color-mix(in srgb,var(--woofood-heading) 4%,transparent)}

/* WooFood v11 — vitrines dinâmicas, banners e ícones de categoria robustos */
.woofood-promo-banners .woofood-dynamic-add-banner,
.woofood-promo-banners .add-banner.woofood-dynamic-add-banner,
.woofood-promo-banners .add-banner[style*="--woofood-banner-bg"]{
  background-color: var(--woofood-banner-bg) !important;
  background-image: none !important;
  color: var(--woofood-banner-color) !important;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-info,
.woofood-promo-banners .woofood-dynamic-add-banner .card-info *{
  color: var(--woofood-banner-color) !important;
}
.woofood-promo-banners .woofood-dynamic-add-banner .title::after{
  -webkit-text-stroke-color: color-mix(in srgb, var(--woofood-banner-color) 58%, transparent) !important;
}
.woofood-category-slider .woofood-category-icon__svg{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  color:var(--woofood-category-color,var(--woofood-on-primary));
}
.woofood-category-slider .woofood-category-icon__svg svg{
  display:block;
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
}
.woofood-category-slider .woofood-category-icon__image:not(.woofood-category-icon__default){
  filter:none!important;
}
.woofood-recommended-products .recomended-list{
  height:100%;
}
.woofood-recommended-products .text-content .title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.woofood-brand-logo img{
  max-width:132px;
  max-height:42px;
}
.sidebar .author-box .woofood-brand-logo img{
  max-width:96px;
}

/* WooFood v14 — vitrines editáveis, cards sem avaliação fake e cores por variável */
.woofood-app-theme .btn-link{
  color: var(--woofood-primary) !important;
  text-decoration: none !important;
  font-weight: 800 !important;
}
.woofood-app-theme .btn-link:hover,
.woofood-app-theme .btn-link:focus{
  color: var(--woofood-primary-hover) !important;
  text-decoration: underline !important;
}
.woofood-app-theme .btn-outline-primary{
  color: var(--woofood-primary) !important;
  border-color: var(--woofood-primary) !important;
  background-color: transparent !important;
}
.woofood-app-theme .btn-outline-primary:hover,
.woofood-app-theme .btn-outline-primary:focus,
.woofood-app-theme .btn-check:checked + .btn-outline-primary,
.woofood-app-theme .btn-outline-primary.active,
.woofood-app-theme .btn-outline-primary:active{
  color: var(--woofood-on-primary-hover) !important;
  border-color: var(--woofood-primary-hover) !important;
  background-color: var(--woofood-primary-hover) !important;
}
.woofood-app-theme .text-primary{
  color: var(--woofood-primary) !important;
}
.woofood-recommended-products .recomended-list.woofood-product-card{
  background: var(--woofood-product-card-bg,var(--woofood-surface)) !important;
  color: var(--woofood-product-card-color,var(--woofood-text)) !important;
  border:1px solid var(--woofood-border);
  box-shadow:var(--woofood-shadow-soft);
  overflow: hidden;
}
.woofood-recommended-products .recomended-list.woofood-product-card .image-box{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  background:var(--woofood-product-card-image-bg,var(--woofood-surface-soft));
  border-radius:var(--woofood-card-radius) var(--woofood-card-radius) 0 0;
  margin:0;
  overflow:hidden;
}
.woofood-recommended-products .recomended-list.woofood-product-card .image-box img{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  height:auto;
  object-fit:contain;
  padding:0;
  margin:0;
  border-radius:0;
  box-sizing:border-box;
}
.woofood-recommended-products .recomended-list.woofood-product-card .text-content{
  min-width:0;
  max-width:100%;
  color:inherit!important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .text-content a{
  color:inherit !important;
  text-decoration:none !important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .text-content .title{
  color:var(--woofood-heading)!important;
}
.woofood-product-card__description{
  display:-webkit-box;
  min-width:0;
  max-width:100%;
  min-height:calc(2 * 1.35em);
  max-height:calc(2 * 1.35em);
  margin:6px 0 0!important;
  overflow:hidden;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:break-word;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  color:var(--woofood-product-card-color,var(--woofood-text))!important;
  font-size:12px;
  font-weight:400;
  line-height:1.35;
}
.woofood-product-card__footer{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
}
.woofood-product-card__price,
.woofood-product-card__price .woocommerce-Price-amount,
.woofood-product-card__price .woocommerce-Price-amount bdi,
.woofood-product-card__price .woocommerce-Price-currencySymbol,
.woofood-product-card__price ins,
.woofood-product-card__price ins .woocommerce-Price-amount,
.woofood-product-card__price ins bdi,
.woofood-product-card__price > span:not(.screen-reader-text){
  color: var(--woofood-product-card-price, var(--woofood-primary)) !important;
  font-weight: 900 !important;
}
.woofood-product-card__price del,
.woofood-product-card__price del .woocommerce-Price-amount,
.woofood-product-card__price del .woocommerce-Price-currencySymbol,
.woofood-product-card__price del bdi{
  color: var(--woofood-muted) !important;
  font-weight: 700 !important;
  opacity: .72;
}
.woofood-product-card__action{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  color:var(--woofood-product-card-price,var(--woofood-primary));
  font-size:13px;
  font-weight:900;
  line-height:1.2;
}
.woofood-product-rating{
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color:var(--woofood-warning);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}
.woofood-product-rating svg{
  display: block;
  color: currentColor;
}
.woofood-recommended-products .recomended-list.woofood-product-card .bookmark{
  color: var(--woofood-product-card-price, var(--woofood-primary)) !important;
  background:color-mix(in srgb,var(--woofood-surface) 92%,transparent);
  border-radius: 999px;
  padding: 6px;
}
.woofood-item-product{
  background: var(--woofood-product-card-bg,var(--woofood-surface)) !important;
  color: var(--woofood-product-card-color,var(--woofood-text)) !important;
}
.woofood-item-product .item-content a,
.woofood-item-product .item-content h6{
  color: inherit !important;
}
.woofood-item-product .item-footer h6,
.woofood-item-product .item-footer .woocommerce-Price-amount,
.woofood-item-product .item-footer bdi{
  color: var(--woofood-product-card-price, var(--woofood-primary)) !important;
}

/* WooFood v15 — cards da home maiores e cores herdadas da home */
.woofood-home-cards{
  gap: 12px !important;
  margin: 8px 0 22px !important;
}
.woofood-home-card{
  min-height: 118px !important;
  padding: 15px !important;
  gap: 8px !important;
  border-radius: var(--woofood-card-radius) !important;
}
.woofood-home-card__icon{
  width: 52px !important;
  height: 52px !important;
  border-radius: var(--woofood-card-radius) !important;
  flex: 0 0 52px !important;
}
.woofood-home-card__icon svg{
  width: 30px !important;
  height: 30px !important;
}
.woofood-home-card__icon img{
  width: 52px !important;
  height: 52px !important;
  border-radius: var(--woofood-card-radius) !important;
  object-fit: contain !important;
}
.woofood-home-card__title{
  font-size: 13.5px !important;
  line-height: 1.15 !important;
}
.woofood-home-card small{
  font-size: 11.5px !important;
  line-height: 1.25 !important;
}
@media(max-width:420px){
  .woofood-home-card{min-height:112px !important;padding:14px !important;}
  .woofood-home-card__icon{width:48px !important;height:48px !important;flex-basis:48px !important;}
  .woofood-home-card__icon img{width:48px !important;height:48px !important;}
  .woofood-home-card__icon svg{width:28px !important;height:28px !important;}
}

/* WooFood v15.1 — favorito alinhado no card recomendado */
.woofood-recommended-products .recomended-list.woofood-product-card .image-box .form-check.bookmark{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  z-index:5 !important;
  width:42px !important;
  height:42px !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .image-box .form-check.bookmark .form-check-label{
  position:static !important;
  top:auto !important;
  right:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:42px !important;
  height:42px !important;
  line-height:1 !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:var(--woofood-button-radius) !important;
  background:color-mix(in srgb,var(--woofood-surface) 94%,transparent) !important;
  color:var(--woofood-product-card-price,var(--woofood-primary)) !important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--woofood-heading) 16%,transparent) !important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .image-box .form-check.bookmark .form-check-label svg{
  width:20px !important;
  height:20px !important;
  display:block !important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .image-box .form-check.bookmark .form-check-label svg path{
  fill:none !important;
  stroke:currentColor !important;
}

/* WooFood v16 — padronização visual: radius, busca, logo e cards da home */
/* Componentes estruturais fora da home preservam o raio-base do template. */
.woofood-app-theme .card,
.woofood-app-theme .woofood-wc-box,
.woofood-app-theme .woofood-tracking-widget,
.woofood-app-theme .woofood-delivery-panel,
.woofood-app-theme .woocommerce ul.products li.product{
  border-radius: var(--border-radius-base) !important;
}

/* Na home, cada superfície visual consome diretamente o token Raio dos cards. */
.woofood-app-theme .woofood-dynamic-home .card,
.woofood-app-theme .woofood-promo-banners .add-banner,
.woofood-app-theme .woofood-promo-banners .woofood-dynamic-add-banner,
.woofood-app-theme .woofood-home-card,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card,
.woofood-app-theme .woofood-item-product{
  border-radius: var(--woofood-card-radius) !important;
}

.woofood-app-theme .woocommerce ul.products li.product a img{
  border-radius: var(--border-radius-base) !important;
}

.woofood-app-theme .woofood-home-banner-shortcode-item,
.woofood-app-theme .woofood-promo-banners .woofood-dynamic-add-banner .card-body{
  border-radius: var(--woofood-card-radius) !important;
}

/* Home cards: imagem/ícone mais presente e alinhado */
.woofood-home-card{
  min-height: 126px !important;
  padding: 16px !important;
  gap: 9px !important;
  border-radius: var(--woofood-card-radius) !important;
}
.woofood-home-card::after{
  width: 88px !important;
  height: 88px !important;
  right: -28px !important;
  bottom: -34px !important;
}
.woofood-home-card__icon{
  width: 62px !important;
  height: 62px !important;
  flex: 0 0 62px !important;
  border-radius: var(--woofood-card-radius) !important;
}
.woofood-home-card__icon svg{
  width: 35px !important;
  height: 35px !important;
}
.woofood-home-card__icon img{
  width: 62px !important;
  height: 62px !important;
  border-radius: var(--woofood-card-radius) !important;
  object-fit: contain !important;
}
.woofood-home-card__title{
  font-size: 14px !important;
}
.woofood-home-card small{
  font-size: 11.75px !important;
}

/* Logo um pouco maior no topo do app */
.woofood-brand-logo img,
.woofood-app-theme .header .woofood-brand-logo img{
  max-width: 152px !important;
  max-height: 52px !important;
}
.woofood-app-theme .header .mid-content{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
}
.sidebar .author-box .woofood-brand-logo img{
  max-width: 112px !important;
  max-height: 46px !important;
}

@media(max-width:420px){
  .woofood-home-card{
    min-height: 120px !important;
    padding: 15px !important;
  }
  .woofood-home-card__icon{
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }
  .woofood-home-card__icon img{
    width: 58px !important;
    height: 58px !important;
  }
  .woofood-home-card__icon svg{
    width: 33px !important;
    height: 33px !important;
  }
  .woofood-brand-logo img,
  .woofood-app-theme .header .woofood-brand-logo img{
    max-width: 140px !important;
    max-height: 48px !important;
  }
}

/* WooFood v17 — faixa dinâmica de endereço/status e modal de informações */
.woofood-store-status{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  margin:4px 0 14px;
  padding:12px 14px;
  border:1px solid var(--woofood-border);
  border-radius:var(--woofood-card-radius);
  background:var(--woofood-surface);
  box-shadow:0 12px 28px rgba(31,40,72,.07);
}
.woofood-store-status__content{
  display:flex;
  align-items:center;
  min-width:0;
  gap:8px;
  color:var(--woofood-text);
  font-size:13px;
  line-height:1.25;
}
.woofood-store-status__badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
  font-weight:900;
  white-space:nowrap;
}
.woofood-store-status__badge.is-open{color:var(--woofood-success);}
.woofood-store-status__badge.is-closed{color:var(--woofood-danger);}
.woofood-store-status__dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 0 4px color-mix(in srgb,currentColor 14%,transparent);
}
.woofood-store-status__separator{
  color:var(--woofood-border);
  font-weight:900;
}
.woofood-store-status__address{
  display:inline-flex;
  align-items:center;
  min-width:0;
  gap:5px;
  color:var(--woofood-muted);
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.woofood-store-status__address svg{
  flex:0 0 auto;
  width:15px;
  height:15px;
  fill:currentColor;
}
.woofood-store-status__more{
  appearance:none;
  border:0;
  background:transparent;
  color:var(--woofood-primary);
  font-size:12.5px;
  font-weight:900;
  white-space:nowrap;
  padding:4px 0;
}
.woofood-store-status__more:hover,
.woofood-store-status__more:focus{
  color:var(--woofood-primary-hover);
  text-decoration:underline;
}
.woofood-modal-lock{overflow:hidden!important;}
.woofood-info-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.woofood-info-modal.is-open{display:flex;}
.woofood-info-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.56);
  backdrop-filter:blur(2px);
}
.woofood-info-modal__dialog{
  position:relative;
  width:min(560px,100%);
  max-height:min(82vh,720px);
  overflow:hidden;
  background:var(--woofood-surface);
  border-radius:var(--woofood-card-radius);
  box-shadow:0 28px 80px rgba(15,23,42,.28);
  color:var(--woofood-text);
}
.woofood-info-modal__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px 12px;
}
.woofood-info-modal__header h3{
  margin:0;
  color:var(--woofood-heading);
  font-size:20px;
  line-height:1.15;
  font-weight:900;
}
.woofood-info-modal__close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  border:0;
  border-radius:var(--woofood-button-radius);
  background:var(--woofood-modal-close-bg,color-mix(in srgb,var(--woofood-primary) 8%,var(--woofood-surface)));
  color:var(--woofood-primary-hover);
  padding:0;
}
.woofood-modal-close{
  transform:rotate(-4deg);
  transform-origin:center;
  transition:background-color .18s ease,color .18s ease,transform .18s ease;
}
.woofood-modal-close:hover{
  transform:rotate(0deg) scale(1.04);
}
.woofood-modal-close:focus-visible{
  outline:3px solid color-mix(in srgb,var(--woofood-primary-hover) 28%,transparent);
  outline-offset:2px;
}
.woofood-info-modal__close svg{
  display:block;
  width:20px;
  height:20px;
  fill:currentColor;
}
.woofood-info-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-bottom:1px solid var(--woofood-border,#edf0f5);
}
.woofood-info-tabs button{
  appearance:none;
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0!important;
  background:var(--woofood-surface);
  color:var(--woofood-muted,#7d8493);
  padding:14px 8px 12px;
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
}
.woofood-info-tabs button.is-active{
  color:var(--woofood-primary);
  border-bottom-color:var(--woofood-primary);
}
.woofood-info-panels{
  padding:22px;
  overflow:auto;
  max-height:calc(min(82vh,720px) - 112px);
}
.woofood-info-panel{display:none;}
.woofood-info-panel.is-active{display:block;}
.woofood-info-panel h4{
  margin:20px 0 10px;
  color:var(--secondary,#1f2848);
  font-size:16px;
  font-weight:900;
}
.woofood-info-about{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:18px;
}
.woofood-info-logo{
  width:min(220px,46vw);
  min-width:110px;
  min-height:72px;
  margin:0;
  padding:10px 12px;
  border-radius:var(--woofood-card-radius);
  overflow:hidden;
  background:color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg,#f8f8fb));
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--woofood-border);
}
.woofood-info-logo img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:76px;
  object-fit:contain;
}
.woofood-info-social{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--secondary,#2c406e);
  text-decoration:none;
  font-weight:800;
}
.woofood-info-social__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:9px;
  background:#fff0f5;
  color:#e1306c;
  font-size:20px;
  line-height:1;
}
.woofood-info-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.woofood-info-actions a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:10px 13px;
  border:1px solid var(--woofood-primary);
  border-radius:var(--woofood-button-radius);
  color:var(--woofood-primary);
  background:var(--woofood-surface);
  text-decoration:none;
  font-size:13px;
  font-weight:900;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.woofood-info-actions a:hover,
.woofood-info-actions a:focus-visible{
  border-color:var(--woofood-primary-hover);
  background:var(--woofood-primary-hover);
  color:var(--woofood-on-primary-hover);
  text-decoration:none;
  transform:translateY(-1px);
  box-shadow:0 8px 20px color-mix(in srgb,var(--woofood-primary-hover) 18%,transparent);
}
.woofood-info-actions a:focus-visible{
  outline:0;
  box-shadow:var(--woofood-focus-ring),0 8px 20px color-mix(in srgb,var(--woofood-primary-hover) 18%,transparent);
}
.woofood-info-address{
  margin:0;
  color:var(--woofood-muted,#657089);
  font-size:14px;
  line-height:1.55;
  font-weight:600;
}
.woofood-hours-list{
  display:grid;
  gap:8px;
}
.woofood-hours-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:center;
  padding:10px 12px;
  border-radius:var(--woofood-card-radius);
  color:var(--woofood-muted,#657089);
}
.woofood-hours-row:nth-child(odd){background:color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg,#f8f8fb));}
.woofood-hours-row strong{
  color:var(--secondary,#1f2848);
  font-weight:900;
}
.woofood-hours-row.is-closed strong{color:var(--woofood-danger);}
.woofood-payment-list{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.woofood-payment-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:10px 14px;
  border-radius:var(--woofood-card-radius);
  background:color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg,#f8f8fb));
  color:var(--woofood-text);
  font-weight:800;
}
.woofood-payment-pill svg{
  width:22px;
  height:22px;
  fill:currentColor;
}
@media(max-width:575px){
  .woofood-store-status{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
    padding:12px;
  }
  .woofood-store-status__content{
    width:100%;
    flex-wrap:wrap;
  }
  .woofood-store-status__more{
    align-self:flex-start;
  }
  .woofood-info-modal{
    align-items:flex-end;
    padding:0;
  }
  .woofood-info-modal__dialog{
    width:100%;
    max-height:88vh;
    border-radius:var(--border-radius-base) var(--border-radius-base) 0 0;
  }
  .woofood-info-panels{
    padding:20px;
    max-height:calc(88vh - 112px);
  }
  .woofood-info-about{
    align-items:flex-start;
    flex-direction:column;
  }
  .woofood-info-logo{
    width:min(220px,100%);
  }
  .woofood-info-modal__header h3{font-size:18px;}
}


/* WooFood v20 — refinamento global de UI/UX, header limpo e modal suave */
:root{
  --woofood-ease: cubic-bezier(.2,.8,.2,1);
}

/* Header: remove ruído visual do menu/cart duplicados e deixa a marca mais forte */
.woofood-app-theme .woofood-app-header{
  position: relative;
  z-index: 50;
  background: transparent !important;
}
.woofood-app-theme .woofood-app-header .main-bar{
  min-height: 76px;
  padding: 12px 0 8px;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}
.woofood-app-theme .woofood-header-content-clean{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 64px;
  padding: 0 !important;
}
.woofood-app-theme .woofood-header-brand-wrap{
  width: 100%;
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.woofood-app-theme .woofood-brand-logo{
  min-height: 58px;
  max-width: min(72vw, 220px);
  padding: 6px 12px;
  border-radius: calc(var(--border-radius-base) - 4px);
  transition: transform .22s var(--woofood-ease), filter .22s var(--woofood-ease);
}
.woofood-app-theme .woofood-brand-logo:hover{
  transform: translateY(-1px);
}
.woofood-app-theme .woofood-brand-logo img,
.woofood-app-theme .header .woofood-brand-logo img{
  max-width: min(72vw, 210px) !important;
  max-height: 68px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
.woofood-app-theme .woofood-brand-text{
  font-size: 18px !important;
  letter-spacing: -.02em;
}
.woofood-app-theme .header .menu-toggler,
.woofood-app-theme .header .notify-cart,
.woofood-app-theme .header .left-content,
.woofood-app-theme .header .right-content{
  display: none !important;
}

/* Banner de boas-vindas sem carrinho duplicado */
.woofood-app-theme .woofood-welcome-banner{
  margin: 0 0 4px;
}
.woofood-app-theme .woofood-welcome-banner .inner-wrapper{
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 2px;
  padding-bottom: 2px;
}
.woofood-app-theme .woofood-welcome-banner .dz-info{
  width: 100%;
}
.woofood-app-theme .woofood-welcome-banner .dz-info .name{
  color: var(--secondary,#1f2848) !important;
  font-weight: 900;
  letter-spacing: -.035em;
}

/* Espaçamentos mais consistentes entre páginas */
.woofood-app-theme .content-inner{
  padding-bottom: calc(82px + env(safe-area-inset-bottom, 0px));
}
.woofood-app-theme .title-bar{
  margin-top: 18px;
  margin-bottom: 12px;
}
.woofood-app-theme .title-bar .title{
  letter-spacing: -.025em;
}

/* Faixa de status mais premium */
.woofood-store-status{
  padding: 14px 15px !important;
  margin: 6px 0 16px !important;
  border-color: var(--woofood-border) !important;
  box-shadow: 0 14px 34px rgba(31,40,72,.075) !important;
}
.woofood-store-status__more{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 10px !important;
  border-radius: 999px;
  background: color-mix(in srgb, var(--woofood-primary) 10%, transparent) !important;
}

/* Modal: fade/slide suave no overlay e no painel */
.woofood-info-modal{
  display: flex !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .26s var(--woofood-ease), visibility .26s var(--woofood-ease);
}
.woofood-info-modal.is-open{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.woofood-info-modal__backdrop{
  opacity: 0;
  transition: opacity .26s var(--woofood-ease), backdrop-filter .26s var(--woofood-ease);
}
.woofood-info-modal.is-open .woofood-info-modal__backdrop{
  opacity: 1;
}
.woofood-info-modal__dialog{
  opacity: 0;
  transform: translateY(18px) scale(.985);
  transition: opacity .28s var(--woofood-ease), transform .28s var(--woofood-ease);
  will-change: opacity, transform;
}
.woofood-info-modal.is-open .woofood-info-modal__dialog{
  opacity: 1;
  transform: translateY(0) scale(1);
}
.woofood-info-modal__close{
  transition: background-color .18s ease, color .18s ease, transform .18s ease;
}
.woofood-info-modal__close:hover{
  background: color-mix(in srgb, var(--woofood-primary-hover) 12%, var(--woofood-surface)) !important;
  color: var(--woofood-primary) !important;
}
.woofood-info-tabs button{
  transition: color .18s ease, border-color .18s ease, background-color .18s ease;
  border-radius:0!important;
}
.woofood-info-tabs button:hover{
  background: color-mix(in srgb, var(--woofood-primary-hover) 5%, var(--woofood-surface));
  color: var(--woofood-primary-hover);
}

/* Cards e vitrines: microinterações suaves mantendo o layout Foodia */
.woofood-app-theme .woofood-home-card,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card,
.woofood-app-theme .woofood-item-product,
.woofood-app-theme .woocommerce ul.products li.product{
  transition: transform .22s var(--woofood-ease), box-shadow .22s var(--woofood-ease), border-color .22s ease;
}
.woofood-app-theme .woofood-home-card:hover,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card:hover,
.woofood-app-theme .woofood-item-product:hover,
.woofood-app-theme .woocommerce ul.products li.product:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(31,40,72,.115) !important;
}
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card .image-box,
.woofood-app-theme .woofood-item-product .item-media,
.woofood-app-theme .woocommerce ul.products li.product a img{
  background:var(--woofood-product-card-image-bg,var(--woofood-surface-soft));
}
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card .text-content{
  padding: 14px 14px 15px;
}
.woofood-product-card__price{
  font-size: 14px;
}

/* WooCommerce: refino visual geral para loja, produto, carrinho e checkout */
.woofood-app-theme .woofood-wc-box,
.woofood-app-theme .woocommerce .woocommerce-notices-wrapper,
.woofood-app-theme .woocommerce form.checkout,
.woofood-app-theme .woocommerce-cart-form,
.woofood-app-theme .woocommerce .cart-collaterals,
.woofood-app-theme .woocommerce-MyAccount-content,
.woofood-app-theme .woocommerce-MyAccount-navigation{
  background: var(--woofood-surface) !important;
  border: 1px solid rgba(31,40,72,.065);
  border-radius: var(--border-radius-base) !important;
  box-shadow: 0 16px 36px rgba(31,40,72,.08) !important;
}
.woofood-app-theme .woocommerce form .form-row input.input-text,
.woofood-app-theme .woocommerce form .form-row textarea,
.woofood-app-theme .woocommerce form .form-row select,
.woofood-app-theme .woocommerce div.product form.cart .variations select,
.woofood-app-theme .select2-container .select2-selection--single{
  min-height: 48px;
  border: 1px solid rgba(31,40,72,.11) !important;
  border-radius: calc(var(--border-radius-base) - 8px) !important;
  background: #fff !important;
  box-shadow: none !important;
}
.woofood-app-theme .woocommerce table.shop_table{
  border: 1px solid rgba(31,40,72,.075) !important;
  border-radius: var(--border-radius-base) !important;
  overflow: hidden;
}
.woofood-app-theme .woocommerce table.shop_table th{
  color: var(--secondary,#1f2848);
  font-weight: 900;
}
.woofood-app-theme .woocommerce table.shop_table td{
  color: rgba(31,40,72,.78);
}
.woofood-app-theme .woocommerce-message,
.woofood-app-theme .woocommerce-info,
.woofood-app-theme .woocommerce-error{
  border-radius: calc(var(--border-radius-base) - 8px) !important;
  border-top: 0 !important;
  box-shadow: 0 12px 28px rgba(31,40,72,.08);
}
.woofood-app-theme .woocommerce-message::before,
.woofood-app-theme .woocommerce-info::before{
  color: var(--woofood-primary) !important;
}
.woofood-app-theme .woocommerce div.product .product_title,
.woofood-app-theme .entry-title{
  letter-spacing: -.035em;
}
.woofood-app-theme .woocommerce div.product form.cart{
  border: 1px solid rgba(31,40,72,.065);
  border-radius: var(--border-radius-base) !important;
}
.woofood-app-theme .woocommerce a.button,
.woofood-app-theme .woocommerce button.button,
.woofood-app-theme .woocommerce input.button,
.woofood-app-theme .woocommerce #respond input#submit,
.woofood-app-theme .woocommerce button.button.alt,
.woofood-app-theme .woocommerce a.button.alt,
.woofood-app-theme .btn-primary{
  border-radius: calc(var(--border-radius-base) - 6px) !important;
  box-shadow: 0 12px 24px color-mix(in srgb, var(--woofood-primary) 25%, transparent) !important;
}

@media(max-width:575px){
  .woofood-app-theme .woofood-app-header .main-bar{
    min-height: 72px;
    padding: 10px 0 6px;
  }
  .woofood-app-theme .woofood-header-content-clean,
  .woofood-app-theme .woofood-header-brand-wrap{
    min-height: 60px !important;
  }
  .woofood-app-theme .woofood-brand-logo{
    min-height: 54px;
    padding: 4px 10px;
  }
  .woofood-app-theme .woofood-brand-logo img,
  .woofood-app-theme .header .woofood-brand-logo img{
    max-width: min(76vw, 178px) !important;
    max-height: 62px !important;
  }
  .woofood-store-status{
    border-radius: calc(var(--border-radius-base) - 4px) !important;
  }
  .woofood-info-modal__dialog{
    transform: translateY(28px) scale(1);
  }
  .woofood-info-modal.is-open .woofood-info-modal__dialog{
    transform: translateY(0) scale(1);
  }
}


/* WooFood v21 — restaura menubar original, carrinho visível e remove limite global da container */
.woofood-app-theme .woofood-icon-menubar{
  border-top: 0 !important;
  box-shadow: none !important;
}
.woofood-app-theme .woofood-icon-menubar .toolbar-inner{
  align-items: center;
  justify-content: space-around;
}
.woofood-app-theme .woofood-icon-menubar .nav-link{
  width: auto !important;
  height: auto !important;
  min-width: 44px;
  min-height: 44px;
  border-radius: 0 !important;
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
  position: relative;
}
.woofood-app-theme .woofood-icon-menubar .nav-link svg{
  width: 23px;
  height: 23px;
}
.woofood-app-theme .woofood-icon-menubar .nav-link.active,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover{
  background: transparent !important;
  transform: none !important;
  color: var(--woofood-primary) !important;
}
.woofood-app-theme .woofood-bottom-cart .woofood-cart-count{
  position: absolute;
  top: 2px;
  right: 4px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--woofood-primary);
  color: #fff;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  box-shadow: 0 6px 12px rgba(0,0,0,.16);
}

/* WooFood v24 — refinamento estrutural fluido, loja completa e mobile-first sem quebrar o Foodia */
.woofood-app-theme{
  --woofood-card-shadow: 0 10px 24px rgba(31,40,72,.075);
  --woofood-card-shadow-hover: 0 14px 32px rgba(31,40,72,.105);
  --woofood-line: var(--woofood-border);
}

/* Volta o arredondamento visual ao token base do template, evitando cards “bolha”. */
.woofood-app-theme :where(
  .woofood-wc-box,
  .woofood-shop-card,
  .woocommerce ul.products li.product,
  .woocommerce div.product form.cart,
  .woocommerce-cart-form,
  .woocommerce .cart-collaterals,
  .woocommerce form.checkout,
  .woocommerce-MyAccount-content,
  .woocommerce-MyAccount-navigation,
  .woofood-tracking-widget,
  .woofood-delivery-panel,
  .woofood-pizza-builder
){
  border-radius: var(--border-radius-base) !important;
}
.woofood-app-theme :where(.woofood-home-card__icon,.woofood-home-card__icon img,.woofood-category-icon,.woofood-payment-pill,.woofood-info-actions a,.woofood-hours-row){
  border-radius: var(--woofood-card-radius) !important;
}

/* Mais fluidez no container sem forçar largura pequena travada. */
.woofood-app-theme .page-content .container.fb{
  width: 100%;
  max-width: 100%;
  padding-inline: clamp(14px, 3.6vw, 28px);
}
.woofood-app-theme .content-inner{
  overflow-x: clip;
}
.woofood-app-theme img,
.woofood-app-theme svg,
.woofood-app-theme video{
  max-width: 100%;
}

/* Home: mantém layout, mas com cards menos duros e mais consistentes. */
.woofood-app-theme .woofood-home-card,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card,
.woofood-app-theme .woofood-item-product,
.woofood-app-theme .woofood-shop-card{
  border: 1px solid var(--woofood-line) !important;
  box-shadow: var(--woofood-card-shadow) !important;
}
.woofood-app-theme .woofood-home-card:hover,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card:hover,
.woofood-app-theme .woofood-item-product:hover,
.woofood-app-theme .woofood-shop-card:hover{
  transform: translateY(-1px);
  box-shadow: var(--woofood-card-shadow-hover) !important;
}
.woofood-app-theme .woofood-home-card__icon,
.woofood-app-theme .woofood-home-card__icon img{
  width: 56px !important;
  height: 56px !important;
  flex-basis: 56px !important;
}
.woofood-app-theme .woofood-home-card__icon svg{
  width: 32px !important;
  height: 32px !important;
}

/* Loja WooCommerce: remove o “caixote” geral e devolve visual de cardápio/app. */
.woofood-app-theme.post-type-archive-product .woofood-wc-box,
.woofood-app-theme.tax-product_cat .woofood-wc-box,
.woofood-app-theme.tax-product_tag .woofood-wc-box,
.woofood-app-theme.search .woofood-woocommerce-screen{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Toolbar moderna de busca/filtros da loja. */
.woofood-shop-toolbar{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin:2px 0 18px;
}
.woofood-shop-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-height: 54px;
  padding: 6px 7px 6px 16px;
  background: var(--woofood-surface);
  border: 1px solid var(--woofood-line);
  border-radius: var(--border-radius-base);
  box-shadow: var(--woofood-card-shadow);
}
.woofood-shop-search__icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--woofood-muted);
}
.woofood-shop-search__icon svg{
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
}
.woofood-shop-search input[type="search"]{
  width: 100%;
  min-width: 0;
  height: 42px;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--secondary,#1f2848);
  font-size: 14px;
  font-weight: 800;
}
.woofood-shop-search input[type="search"]::placeholder{
  color: rgba(44,64,110,.52);
}
.woofood-shop-search button{
  min-height: 40px;
  padding: 0 14px;
  border: 0;
  border-radius: var(--border-radius-base);
  background: var(--woofood-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--woofood-primary) 22%, transparent);
}
.woofood-shop-chips{
  display: flex;
  gap: 10px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  padding: 2px 2px 6px;
  margin-inline: -2px;
  scrollbar-width: none;
}
.woofood-shop-chips::-webkit-scrollbar{display:none;}
.woofood-shop-chip{
  flex: 0 0 auto;
  scroll-snap-align: start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--woofood-line);
  border-radius: var(--border-radius-base);
  background: var(--woofood-surface);
  color: var(--secondary,#1f2848);
  text-decoration: none !important;
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 8px 18px rgba(31,40,72,.045);
}
.woofood-shop-chip.is-active,
.woofood-shop-chip:hover,
.woofood-shop-chip:focus{
  background: var(--woofood-primary);
  border-color: var(--woofood-primary);
  color: #fff !important;
}
.woofood-shop-controls{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}
.woofood-shop-count,
.woofood-shop-count .woocommerce-result-count{
  margin: 0 !important;
  color: var(--woofood-muted);
  font-size: 12px;
  font-weight: 800;
}
.woofood-shop-ordering,
.woofood-shop-ordering .woocommerce-ordering{
  margin: 0 !important;
  float: none !important;
}
.woofood-shop-ordering select,
.woofood-woocommerce-screen .woocommerce-ordering select{
  min-height: 40px;
  max-width: min(48vw, 210px);
  border: 1px solid var(--woofood-line) !important;
  border-radius: var(--border-radius-base) !important;
  background: var(--woofood-surface) !important;
  color: var(--secondary,#1f2848);
  padding: 0 34px 0 12px;
  font-size: 12px;
  font-weight: 900;
}

/* Loops de produto WooCommerce: fallback em Flexbox.
   O Cardápio principal usa o mesmo wrapper/card da Home e não depende deste fallback. */
.woofood-app-theme .woocommerce ul.products,
.woofood-app-theme .woocommerce-page ul.products{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch;
  gap:clamp(12px,3vw,18px) !important;
  padding:0 !important;
  margin:0 !important;
}
.woofood-app-theme .woocommerce ul.products::before,
.woofood-app-theme .woocommerce ul.products::after,
.woofood-app-theme .woocommerce-page ul.products::before,
.woofood-app-theme .woocommerce-page ul.products::after{
  display:none !important;
  content:none !important;
}
.woofood-app-theme .woocommerce ul.products li.product,
.woofood-app-theme .woocommerce-page ul.products li.product{
  flex:1 1 178px;
  min-width:0;
  width:auto !important;
  float:none !important;
  clear:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  list-style:none !important;
}

/* Produto, carrinho e checkout: mais fluidez e menos rigidez visual. */
.woofood-app-theme.single-product .woofood-wc-box{
  padding: clamp(12px, 3vw, 20px) !important;
}
.woofood-app-theme .woocommerce div.product{
  display: flow-root;
}
.woofood-app-theme .woocommerce div.product div.images,
.woofood-app-theme .woocommerce div.product div.summary{
  min-width: 0;
}
.woofood-app-theme .woocommerce div.product div.images img{
  border-radius: var(--border-radius-base) !important;
  box-shadow: var(--woofood-card-shadow) !important;
}
.woofood-app-theme .woocommerce div.product .product_title{
  font-size: clamp(1.35rem, 5vw, 2rem);
  line-height: 1.08;
}
.woofood-app-theme .woocommerce div.product form.cart{
  padding: clamp(12px, 3vw, 18px) !important;
}
.woofood-app-theme .woocommerce-cart-form,
.woofood-app-theme .woocommerce .cart-collaterals,
.woofood-app-theme .woocommerce form.checkout,
.woofood-app-theme .woocommerce-MyAccount-content,
.woofood-app-theme .woocommerce-MyAccount-navigation{
  padding: clamp(14px, 3.6vw, 22px) !important;
}
.woofood-app-theme .woocommerce table.shop_table{
  border-radius: var(--border-radius-base) !important;
}

@media(max-width:575px){
  .woofood-app-theme .page-content .container.fb{
    padding-inline: 14px;
  }
  .woofood-shop-toolbar{
    gap: 12px;
    margin-bottom: 16px;
  }
  .woofood-shop-controls{
    align-items: flex-start;
  }
  .woofood-shop-count{
    max-width: 52%;
    line-height: 1.25;
  }
  .woofood-app-theme .woocommerce table.shop_table_responsive tr,
  .woofood-app-theme .woocommerce-page table.shop_table_responsive tr{
    border-radius: var(--border-radius-base);
    margin-bottom: 10px;
    border: 1px solid var(--woofood-line);
    overflow: hidden;
  }
}
/* WooFood v26 — largura máxima fluida sem alterar o shell original do Foodia.
   Mantém header/menu inferior no comportamento original e limita somente o conteúdo interno. */
.woofood-app-theme .page-content .container.fb{
  width: min(100%, 1024px);
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  padding-inline: clamp(14px, 3vw, 28px);
}
.woofood-app-theme .content-inner > .container,
.woofood-app-theme .banner-wrapper > .container{
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}
.woofood-app-theme .menubar-area .toolbar-inner{
  max-width: 1000px;
}
@media (max-width: 575px){
  .woofood-app-theme .page-content .container.fb{
    padding-inline: 14px;
  }
}


/* Cards inteiros executam sua ação principal: modal para produtos comuns ou link para launchers externos. */
.woofood-open-product-modal.recomended-list,
.woofood-open-product-modal.item-box,
.woofood-open-product-link.recomended-list,
.woofood-open-product-link.item-box{
  cursor:pointer;
}
.woofood-open-product-modal.recomended-list:focus-visible,
.woofood-open-product-modal.item-box:focus-visible,
.woofood-open-product-link.recomended-list:focus-visible,
.woofood-open-product-link.item-box:focus-visible{
  outline:3px solid color-mix(in srgb, var(--woofood-primary) 38%, transparent);
  outline-offset:3px;
}

/* Produto em modal estilo cardápio: leve, mobile-first e com fallback nos links. */
.woofood-open-product-modal{cursor:pointer;}
.woofood-product-modal{
  position:fixed;
  inset:0;
  z-index:1000000;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:18px;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transition:opacity .22s ease, visibility .22s ease;
}
.woofood-product-modal.is-open{
  pointer-events:auto;
  opacity:1;
  visibility:visible;
}
.woofood-product-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(12,18,32,.52);
  backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .22s ease;
}
.woofood-product-modal.is-open .woofood-product-modal__backdrop{opacity:1;}
.woofood-product-modal__dialog{
  position:relative;
  width:min(100%, 520px);
  max-height:min(86vh, 760px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:var(--woofood-surface);
  border-radius:var(--woofood-card-radius);
  box-shadow:0 30px 90px rgba(15,23,42,.28);
  transform:translateY(18px) scale(.985);
  opacity:0;
  transition:transform .26s cubic-bezier(.2,.8,.2,1), opacity .22s ease;
}
.woofood-product-modal.is-open .woofood-product-modal__dialog{
  transform:translateY(0) scale(1);
  opacity:1;
}
.woofood-product-modal__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border-bottom:1px solid var(--woofood-border);
  background:var(--woofood-surface);
}
.woofood-product-modal__header h3{
  margin:0;
  font-size:15px;
  line-height:1.2;
  font-weight:900;
  color:var(--woofood-heading);
}
.woofood-product-modal__close{
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:var(--woofood-button-radius);
  color:var(--woofood-primary-hover);
  background:var(--woofood-modal-close-bg,color-mix(in srgb,var(--woofood-primary) 8%,var(--woofood-surface)));
  transition:background .18s ease, transform .18s ease;
}
.woofood-product-modal__close:hover{background:color-mix(in srgb,var(--woofood-primary-hover) 10%,var(--woofood-surface));color:var(--woofood-primary-hover);}
.woofood-product-modal__close svg{width:18px;height:18px;fill:currentColor;}
.woofood-product-modal__content{
  min-height:0;
  flex:1 1 auto;
  display:flex;
  overflow:hidden;
  padding:0;
}
.woofood-product-modal__loading,
.woofood-product-modal__error{
  min-height:260px;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px;
  text-align:center;
  color:var(--woofood-text,var(--secondary,#1f2848));
}
.woofood-product-modal__spinner{
  width:34px;
  height:34px;
  border-radius:50%;
  border:3px solid rgba(148,163,184,.22);
  border-top-color:var(--woofood-primary);
  animation:woofoodSpin .8s linear infinite;
}
@keyframes woofoodSpin{to{transform:rotate(360deg)}}
.woofood-product-modal-card{
  min-width:0;
  min-height:0;
  width:100%;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.woofood-product-modal-card__scroll{
  min-width:0;
  min-height:0;
  flex:1 1 auto;
  overflow-y:auto;
  overflow-x:hidden;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.woofood-product-modal-card__media{
  margin:0;
  padding:18px 18px 0;
}
.woofood-product-modal-card__media img{
  width:100%;
  height:clamp(210px, 42vw, 320px);
  object-fit:contain;
  display:block;
  border-radius:var(--woofood-card-radius);
  background:var(--woofood-product-card-image-bg,#f7f8fb);
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.12);
}
.woofood-product-modal-card__body{
  padding:18px 18px 16px;
}
.woofood-product-modal-card__eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin-bottom:8px;
  padding:6px 10px;
  border-radius:999px;
  background:color-mix(in srgb, var(--woofood-primary) 12%, #fff);
  color:var(--woofood-primary);
  font-size:11px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.woofood-product-modal-card__body h3{
  margin:0 0 8px;
  font-size:clamp(22px, 4.5vw, 30px);
  line-height:1.05;
  color:var(--woofood-heading);
  font-weight:900;
  letter-spacing:-.03em;
}
.woofood-product-modal-card__price,
.woofood-product-modal-card__price .woocommerce-Price-amount,
.woofood-product-modal-card__price bdi{
  color:var(--woofood-product-card-price,var(--woofood-primary)) !important;
  font-size:20px;
  font-weight:900;
}
.woofood-product-modal-card__desc{
  margin-top:12px;
  color:var(--woofood-muted);
  font-size:14px;
  line-height:1.55;
}
.woofood-product-modal-card__desc p{margin:0 0 8px;}
.woofood-product-modal-form{
  position:relative;
  z-index:4;
  flex:0 0 auto;
  margin:0;
  border-top:1px solid var(--woofood-border);
  background:var(--woofood-surface);
  box-shadow:0 -10px 28px color-mix(in srgb,var(--woofood-heading) 8%,transparent);
}
.woofood-product-modal-actions{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0;
  padding:12px 18px calc(12px + env(safe-area-inset-bottom));
  background:var(--woofood-surface);
}
.woofood-product-modal-controls{
  display:flex;
  flex-wrap:nowrap;
  align-items:flex-end;
  gap:8px;
  width:100%;
  min-width:0;
}
.woofood-product-modal-fields{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  gap:8px;
}
.woofood-product-modal-field{
  min-width:0;
  flex:1 1 135px;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0;
  color:var(--woofood-text,var(--secondary,#1f2848));
  font-size:12px;
  line-height:1.15;
  font-weight:900;
}
.woofood-product-modal-field > span,
.woofood-product-modal-qty > span{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.woofood-product-modal-field select,
.woofood-product-modal-qty input{
  width:100%;
  height:46px;
  min-height:46px;
  min-width:0;
  border:1px solid var(--woofood-border);
  border-radius:var(--woofood-button-radius);
  background:var(--woofood-surface);
  color:var(--woofood-text,var(--secondary,#1f2848));
  font-weight:800;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.woofood-product-modal-field select{
  padding:0 34px 0 12px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.woofood-product-modal-qty{
  min-width:78px;
  flex:0 0 78px;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin:0;
  color:var(--woofood-text,var(--secondary,#1f2848));
  font-size:12px;
  line-height:1.15;
  font-weight:900;
}
.woofood-product-modal-qty input{
  padding:0 6px;
  text-align:center;
}
.woofood-product-modal-controls.is-simple .woofood-product-modal-qty{
  flex-basis:92px;
  min-width:92px;
}
.woofood-product-modal-field select:focus,
.woofood-product-modal-qty input:focus{
  border-color:var(--woofood-border-hover);
  box-shadow:var(--woofood-focus-ring);
}
.woofood-product-modal-note{
  min-width:0;
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}
.woofood-product-modal-note > summary{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0;
  padding:0 2px;
  border:0;
  border-radius:calc(var(--woofood-button-radius) * .55);
  background:transparent;
  list-style:none;
  cursor:pointer;
  user-select:none;
  color:var(--woofood-text,var(--secondary,#1f2848));
  outline:none;
  transition:color .18s ease,box-shadow .18s ease;
}
.woofood-product-modal-note > summary::-webkit-details-marker{display:none;}
.woofood-product-modal-note > summary:hover{color:var(--woofood-primary);}
.woofood-product-modal-note > summary:focus-visible{
  box-shadow:0 0 0 1px color-mix(in srgb,var(--woofood-border-hover) 45%,transparent);
}
.woofood-product-modal-note__summary{
  min-width:0;
  display:flex;
  align-items:baseline;
  gap:7px;
}
.woofood-product-modal-note__summary strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  line-height:1.2;
  font-weight:800;
}
.woofood-product-modal-note__summary small{
  flex:0 0 auto;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--woofood-muted);
  font-size:10px;
  line-height:1.2;
  font-weight:700;
}
.woofood-product-modal-note__chevron{
  width:16px;
  height:16px;
  flex:0 0 16px;
  fill:currentColor;
  color:var(--woofood-muted);
  transition:transform .18s ease,color .18s ease;
}
.woofood-product-modal-note[open] .woofood-product-modal-note__chevron{
  transform:rotate(180deg);
  color:var(--woofood-text,var(--secondary,#1f2848));
}
.woofood-product-modal-note__body{
  display:grid;
  gap:5px;
  padding:2px 0 1px;
}
.woofood-product-modal-note__body textarea{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:62px;
  max-height:78px;
  margin:0;
  padding:9px 11px;
  resize:none;
  overflow-y:auto;
  border:1px solid var(--woofood-border);
  border-radius:var(--woofood-button-radius);
  background:var(--woofood-surface);
  color:var(--woofood-text,var(--secondary,#1f2848));
  font:inherit;
  font-size:12px;
  line-height:1.4;
  font-weight:600;
  outline:none;
  appearance:none;
  box-shadow:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.woofood-product-modal-note__body textarea:hover{
  border-color:var(--woofood-border-hover);
}
.woofood-product-modal-note__body textarea::placeholder{
  color:var(--woofood-muted);
  opacity:.78;
}
.woofood-product-modal-note__body textarea:focus{
  border-color:var(--woofood-border-hover);
  box-shadow:var(--woofood-focus-ring);
  background:var(--woofood-surface);
}
.woofood-product-modal-note__meta{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-height:12px;
  padding-right:1px;
  color:var(--woofood-muted);
  font-size:9.5px;
  line-height:1.2;
  font-weight:600;
}
.woofood-product-modal-note__meta > span{
  flex:0 0 auto;
  font-variant-numeric:tabular-nums;
}
.woofood-product-modal-helper{
  margin:0;
  color:var(--woofood-muted,#8a94a6);
  font-size:12px;
  font-weight:700;
  line-height:1.3;
}
.woofood-product-modal-helper:empty{display:none;}
.woofood-product-modal-notice-slot:empty{display:none;}
.woofood-product-modal-submit{
  width:100%;
  min-width:0;
  height:48px;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:var(--woofood-button-radius);
  background:var(--woofood-primary);
  color:var(--woofood-on-primary,#fff) !important;
  font-size:14px;
  font-weight:900;
  text-decoration:none !important;
  box-shadow:0 10px 22px color-mix(in srgb, var(--woofood-primary) 18%, transparent);
  transition:transform .18s ease, opacity .18s ease, background .18s ease;
}
.woofood-product-modal-submit:hover{background:var(--woofood-primary-hover);transform:translateY(-1px);}
.woofood-product-modal-submit:disabled{opacity:.56;cursor:not-allowed;box-shadow:none;transform:none;}
.woofood-product-modal-submit.is-link{margin:0;}
.woofood-product-modal-notice{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:nowrap;
  gap:10px;
  min-width:0;
  padding:9px 10px;
  border:1px solid transparent;
  border-radius:var(--woofood-button-radius);
  font-size:12px;
  font-weight:900;
  line-height:1.25;
}
.woofood-product-modal-notice > span{
  min-width:0;
  flex:1 1 auto;
}
.woofood-product-modal-notice.is-success{
  color:var(--woofood-success,#047857);
  border-color:color-mix(in srgb,var(--woofood-success,#047857) 24%,transparent);
  background:color-mix(in srgb,var(--woofood-success,#047857) 9%,var(--woofood-surface));
}
.woofood-product-modal-notice.is-error{
  color:var(--woofood-danger);
  border-color:color-mix(in srgb,var(--woofood-danger) 22%,transparent);
  background:color-mix(in srgb,var(--woofood-danger) 8%,var(--woofood-surface));
}
.woofood-product-modal-notice__cart{
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:0 12px;
  border-radius:var(--woofood-button-radius);
  background:var(--woofood-primary);
  color:var(--woofood-on-primary,#fff)!important;
  text-decoration:none!important;
  white-space:nowrap;
  box-shadow:0 6px 14px color-mix(in srgb,var(--woofood-primary) 16%,transparent);
}
.woofood-product-modal-notice__cart:hover,
.woofood-product-modal-notice__cart:focus-visible{
  background:var(--woofood-primary-hover);
  color:var(--woofood-on-primary,#fff)!important;
}
@media (min-width:768px){
  .woofood-product-modal{align-items:center;}
  .woofood-product-modal__dialog{max-height:min(88vh,820px);max-height:min(88dvh,820px);}
}
@media (max-width:480px){
  .woofood-product-modal{padding:0;align-items:flex-end;}
  .woofood-product-modal__dialog{
    width:100%;
    max-height:94vh;
    max-height:94dvh;
    border-radius:var(--woofood-card-radius) var(--woofood-card-radius) 0 0;
  }
  .woofood-product-modal__header{padding:12px 14px;}
  .woofood-product-modal-card__media{padding:12px 14px 0;}
  .woofood-product-modal-card__media img{height:clamp(170px,48vw,220px);}
  .woofood-product-modal-card__body{padding:14px 14px 12px;}
  .woofood-product-modal-actions{
    gap:7px;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
  }
  .woofood-product-modal-controls{gap:7px;}
  .woofood-product-modal-fields{gap:7px;}
  .woofood-product-modal-field{flex-basis:120px;gap:5px;font-size:11px;}
  .woofood-product-modal-qty{flex-basis:72px;min-width:72px;gap:5px;font-size:11px;}
  .woofood-product-modal-field select,
  .woofood-product-modal-qty input{height:44px;min-height:44px;}
  .woofood-product-modal-field select{padding-left:10px;padding-right:30px;font-size:13px;}
  .woofood-product-modal-qty input{font-size:13px;}
  .woofood-product-modal-submit{height:46px;min-height:46px;}
}
@media (max-width:480px){
  .woofood-product-modal-note > summary{min-height:32px;padding-left:1px;padding-right:1px;}
  .woofood-product-modal-note__body{padding:1px 0 0;}
  .woofood-product-modal-note__body textarea{min-height:58px;max-height:68px;padding:8px 10px;}
  .woofood-product-modal-note__meta{font-size:9px;}
}
@media (max-width:340px){
  .woofood-product-modal-actions{padding-left:10px;padding-right:10px;}
  .woofood-product-modal-controls{gap:6px;}
  .woofood-product-modal-fields{gap:6px;}
  .woofood-product-modal-field{flex-basis:110px;}
  .woofood-product-modal-qty{flex-basis:68px;min-width:68px;}
  .woofood-product-modal-notice{gap:7px;padding:8px;}
  .woofood-product-modal-notice__cart{padding:0 9px;}
}


/* WooFood v30 — restaura lista de promoções ao padrão Foodia, com clique no card inteiro. */
.woofood-bottom-cart{position:relative;}
.woofood-cart-count:empty{display:none!important;}

.woofood-app-theme .woofood-item-product.item-box.woofood-open-product-modal{
  cursor:pointer;
}
.woofood-app-theme .woofood-item-product.item-box{
  border-radius:var(--woofood-card-radius) !important;
  background:var(--woofood-product-card-bg,var(--woofood-surface)) !important;
  border:1px solid var(--woofood-border);
  box-shadow:0 10px 24px color-mix(in srgb,var(--woofood-heading) 6%,transparent);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.woofood-app-theme .woofood-item-product.item-box:hover,
.woofood-app-theme .woofood-item-product.item-box:focus-within{
  transform:translateY(-1px);
  box-shadow:0 14px 34px color-mix(in srgb,var(--woofood-heading) 9%,transparent);
  border-color:var(--woofood-border-hover);
}
.woofood-app-theme .woofood-item-product.item-box .item-media{
  background:var(--woofood-product-card-image-bg,var(--woofood-surface-soft)) !important;
  overflow:hidden;
}
.woofood-app-theme .woofood-item-product.item-box .item-media img{
  object-fit:contain;
  padding:0;
}
.woofood-app-theme .woofood-item-product.item-box .item-content a{
  color:inherit!important;
}
.woofood-app-theme .woofood-item-product.item-box .item-content h6{
  color:var(--woofood-heading)!important;
}
.woofood-item-product__description{
  display:-webkit-box;
  margin:5px 0 8px!important;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  color:var(--woofood-product-card-color,var(--woofood-text))!important;
  font-size:12px;
  line-height:1.35;
}
.woofood-item-product__meta{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.woofood-app-theme .woofood-item-product.item-box .item-footer h6,
.woofood-app-theme .woofood-item-product.item-box .item-footer .woocommerce-Price-amount,
.woofood-app-theme .woofood-item-product.item-box .item-footer bdi{
  color:var(--woofood-product-card-price,var(--woofood-primary)) !important;
  font-weight:900;
}
.woofood-app-theme .woofood-item-product.item-box del h6,
.woofood-app-theme .woofood-item-product.item-box del .woocommerce-Price-amount,
.woofood-app-theme .woofood-item-product.item-box del bdi{
  color:color-mix(in srgb,var(--woofood-text) 42%,transparent) !important;
  font-weight:800;
}
.woofood-app-theme .woofood-item-product.item-box .item-bookmark{
  border-radius:var(--woofood-button-radius) !important;
  background:color-mix(in srgb,var(--woofood-product-card-price,var(--woofood-primary)) 10%,var(--woofood-surface)) !important;
  color:var(--woofood-product-card-price,var(--woofood-primary)) !important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--woofood-heading) 7%,transparent);
  transition:transform .18s ease, background .18s ease;
}
.woofood-app-theme .woofood-item-product.item-box .item-bookmark:hover{
  transform:scale(1.04);
  background:color-mix(in srgb,var(--woofood-product-card-price,var(--woofood-primary)) 15%,var(--woofood-surface)) !important;
}
@media(max-width:480px){
  .woofood-app-theme .woofood-item-product.item-box{
    margin-bottom:12px !important;
  }
  .woofood-app-theme .woofood-item-product.item-box .item-media{
    min-width:86px;
  }
  .woofood-app-theme .woofood-item-product.item-box .item-content h6,
  .woofood-app-theme .woofood-item-product.item-box .item-content .mb-0{
    font-size:14.5px !important;
    line-height:1.18 !important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .woofood-app-theme .woofood-item-product.item-box .item-footer{
    gap:8px;
  }
  .woofood-app-theme .woofood-item-product.item-box .item-footer .d-flex{
    min-width:0;
    flex-wrap:wrap;
    gap:4px 8px;
  }
}


/* Cart modal — v30: mini-carrinho limpo, atualizável e mobile-first */
.woofood-cart-modal{
  position:fixed;
  inset:0;
  z-index:1000001;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:16px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease, visibility .2s ease;
}
.woofood-cart-modal.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.woofood-cart-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(12,18,32,.52);
  backdrop-filter:blur(8px);
  opacity:0;
  transition:opacity .22s ease;
}
.woofood-cart-modal.is-open .woofood-cart-modal__backdrop{opacity:1;}
.woofood-cart-modal__dialog{
  position:relative;
  width:min(100%, 520px);
  max-height:min(88vh, 780px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:var(--woofood-card-radius) !important;
  background:var(--woofood-surface);
  box-shadow:0 28px 90px color-mix(in srgb,var(--woofood-heading) 22%,transparent);
  transform:translateY(18px) scale(.985);
  opacity:0;
  transition:transform .24s cubic-bezier(.2,.8,.2,1), opacity .2s ease;
}
.woofood-cart-modal.is-open .woofood-cart-modal__dialog{
  transform:translateY(0) scale(1);
  opacity:1;
}
.woofood-cart-modal__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border-bottom:1px solid var(--woofood-border);
  background:var(--woofood-surface);
}
.woofood-cart-modal__header span{
  display:block;
  margin-bottom:3px;
  color:var(--woofood-primary);
  font-size:10px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.woofood-cart-modal__header h3{
  margin:0;
  color:var(--woofood-heading);
  font-size:18px;
  line-height:1.1;
  font-weight:900;
  letter-spacing:-.02em;
}
.woofood-cart-modal__close{
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:var(--woofood-button-radius);
  color:var(--woofood-primary-hover);
  background:var(--woofood-modal-close-bg,color-mix(in srgb,var(--woofood-primary) 8%,var(--woofood-surface)));
  transition:background .18s ease, transform .18s ease, color .18s ease;
}
.woofood-cart-modal__close:hover,
.woofood-cart-modal__close:focus-visible{
  color:var(--woofood-primary-hover);
  background:color-mix(in srgb,var(--woofood-primary-hover) 10%,var(--woofood-surface));
}
.woofood-cart-modal__close:focus-visible{
  outline:0;
  box-shadow:var(--woofood-focus-ring);
}
.woofood-cart-modal__close svg,
.woofood-cart-modal-item__remove svg{width:18px;height:18px;fill:currentColor;}
.woofood-cart-modal__content{
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  background:var(--woofood-surface);
}
.woofood-cart-modal__loading,
.woofood-cart-modal__empty{
  min-height:280px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px;
  text-align:center;
  color:var(--woofood-text);
}
.woofood-cart-modal__spinner{
  width:34px;
  height:34px;
  border-radius:50%;
  border:3px solid color-mix(in srgb,var(--woofood-muted) 22%,transparent);
  border-top-color:var(--woofood-primary);
  animation:woofoodSpin .8s linear infinite;
}
.woofood-cart-modal__empty-icon{
  width:56px;
  height:56px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--woofood-card-radius);
  color:var(--woofood-primary);
  background:var(--woofood-primary-soft);
}
.woofood-cart-modal__empty-icon svg{width:26px;height:26px;fill:currentColor;}
.woofood-cart-modal__empty h4{margin:2px 0 0;font-size:20px;font-weight:900;letter-spacing:-.02em;}
.woofood-cart-modal__empty p{max-width:330px;margin:0;color:var(--woofood-muted);font-size:14px;line-height:1.45;}
.woofood-cart-modal__items{
  display:grid;
  gap:8px;
  padding:12px;
}
.woofood-cart-modal-item{
  display:grid;
  grid-template-columns:72px 1fr;
  gap:10px;
  align-items:center;
  padding:9px;
  border:1px solid var(--woofood-border);
  border-radius:var(--woofood-card-radius);
  background:var(--woofood-surface);
  box-shadow:var(--woofood-shadow-soft);
}
.woofood-cart-modal-item__image{
  width:72px;
  height:72px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--woofood-card-radius);
  background:color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg,#f8f8fb));
  overflow:hidden;
}
.woofood-cart-modal-item__image img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:7px;
}
.woofood-cart-modal-item__body{
  min-width:0;
  display:grid;
  gap:6px;
}
.woofood-cart-modal-item__top{
  display:grid;
  grid-template-columns:1fr 32px;
  gap:8px;
  align-items:start;
}
.woofood-cart-modal-item__top h5{
  margin:0;
  color:var(--woofood-heading);
  font-size:14px;
  line-height:1.18;
  font-weight:900;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.woofood-cart-modal-item__remove{
  width:32px;
  height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:var(--woofood-button-radius);
  color:var(--woofood-muted);
  background:var(--woofood-surface-soft);
  transition:color .18s ease,background-color .18s ease,box-shadow .18s ease;
}
.woofood-cart-modal-item__remove:hover,
.woofood-cart-modal-item__remove:focus-visible{
  color:var(--woofood-danger);
  background:color-mix(in srgb,var(--woofood-danger) 8%,var(--woofood-surface));
}
.woofood-cart-modal-item__remove:focus-visible{
  outline:0;
  box-shadow:var(--woofood-focus-ring);
}
.woofood-cart-modal-item__meta{
  color:var(--woofood-muted);
  font-size:12px;
  line-height:1.35;
}
.woofood-cart-modal-item__meta dl{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:2px 6px;
  margin:0;
}
.woofood-cart-modal-item__meta dt,
.woofood-cart-modal-item__meta dd{margin:0;min-width:0;}
.woofood-cart-modal-item__meta dt{color:var(--woofood-text);font-weight:800;}
.woofood-cart-modal-item__meta dd{overflow-wrap:anywhere;}
.woofood-cart-modal-item__meta dd p{margin:0;color:inherit;font:inherit;line-height:inherit;}
.woofood-cart-modal-item__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.woofood-cart-modal-item__qty{
  padding:5px 8px;
  border-radius:999px;
  background:var(--woofood-surface-soft);
  color:var(--woofood-muted);
  font-size:11px;
  font-weight:900;
}
.woofood-cart-modal-item__bottom strong,
.woofood-cart-modal-item__bottom .woocommerce-Price-amount,
.woofood-cart-modal-item__bottom bdi{
  color:var(--woofood-primary);
  font-weight:900;
}
.woofood-cart-modal__summary{
  position:sticky;
  bottom:0;
  z-index:2;
  display:grid;
  gap:10px;
  padding:13px 14px calc(13px + env(safe-area-inset-bottom));
  border-top:1px solid var(--woofood-border);
  background:var(--woofood-surface);
}
.woofood-cart-modal__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--woofood-text,var(--secondary,#1f2848));
}
.woofood-cart-modal__row span{font-weight:800;color:var(--woofood-muted);}
.woofood-cart-modal__row strong,
.woofood-cart-modal__row .woocommerce-Price-amount,
.woofood-cart-modal__row bdi{font-size:18px;font-weight:900;color:var(--woofood-heading);}
.woofood-cart-modal__summary p{margin:0;color:var(--woofood-muted,#8a94a6);font-size:12px;line-height:1.35;font-weight:700;}
.woofood-cart-modal__actions{
  display:grid;
  grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr);
  gap:10px;
}
.woofood-cart-modal__primary,
.woofood-cart-modal__secondary{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  border-radius:var(--woofood-button-radius);
  font-size:13px;
  font-weight:900;
  text-decoration:none !important;
  text-align:center;
  border:1px solid transparent;
  transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.woofood-cart-modal__primary{
  color:var(--woofood-on-primary) !important;
  background:var(--woofood-primary);
  border-color:var(--woofood-primary);
  box-shadow:0 12px 26px color-mix(in srgb,var(--woofood-primary) 20%,transparent);
}
.woofood-cart-modal__primary:hover,
.woofood-cart-modal__primary:focus-visible{
  color:var(--woofood-on-primary-hover) !important;
  background:var(--woofood-primary-hover);
  border-color:var(--woofood-primary-hover);
  transform:translateY(-1px);
}
.woofood-cart-modal__secondary{
  color:var(--woofood-primary) !important;
  background:var(--woofood-primary-soft);
  border-color:color-mix(in srgb,var(--woofood-primary) 16%,var(--woofood-border));
}
.woofood-cart-modal__secondary:hover,
.woofood-cart-modal__secondary:focus-visible{
  color:var(--woofood-primary-hover) !important;
  background:var(--woofood-primary-soft-strong);
  border-color:var(--woofood-border-hover);
  transform:translateY(-1px);
}
.woofood-cart-modal__primary:focus-visible,
.woofood-cart-modal__secondary:focus-visible{
  outline:0;
  box-shadow:var(--woofood-focus-ring);
}
@media (min-width:768px){
  .woofood-cart-modal{align-items:center;}
  .woofood-cart-modal__dialog{max-height:min(88vh, 820px);}
}
@media (max-width:767.98px){
  .woofood-cart-modal__dialog{
    border-radius:var(--woofood-card-radius) var(--woofood-card-radius) 0 0 !important;
  }
}
@media (max-width:480px){
  .woofood-cart-modal{padding:0;align-items:flex-end;}
  .woofood-cart-modal__dialog{
    width:100%;
    max-height:88vh;
    border-radius:var(--woofood-card-radius) var(--woofood-card-radius) 0 0 !important;
  }
  .woofood-cart-modal__items{padding:10px;}
  .woofood-cart-modal__actions{grid-template-columns:1fr 1fr;}
}

/* WooFood v32 — feedback claro para variações no modal e badge AJAX do carrinho. */
.woofood-product-modal-options-title{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:var(--woofood-card-radius);
  background:color-mix(in srgb,var(--woofood-primary) 9%,var(--woofood-surface));
  border:1px solid color-mix(in srgb, var(--woofood-primary) 18%, transparent);
  color:var(--woofood-text,var(--secondary,#1f2848));
}
.woofood-product-modal-options-title strong{
  font-size:13px;
  font-weight:900;
  line-height:1.2;
}
.woofood-product-modal-options-title span{
  color:var(--woofood-muted);
  font-size:12px;
  font-weight:700;
  line-height:1.35;
}
.woofood-product-modal-helper{
  min-height:0;
  color:var(--woofood-muted,#6b7280) !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.woofood-product-modal-helper:not(:empty)::before{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:6px;
  border-radius:999px;
  background:var(--woofood-primary);
  vertical-align:middle;
}
.woofood-bottom-cart .woofood-cart-count{
  transition:transform .18s ease, opacity .18s ease;
}
.woofood-bottom-cart .woofood-cart-count:not([hidden]){
  animation:woofoodCartBadgePop .26s ease both;
}
@keyframes woofoodCartBadgePop{
  0%{transform:scale(.7);opacity:.2;}
  100%{transform:scale(1);opacity:1;}
}


/* WooFood v35 — avisos WooCommerce, wishlist e cores globais de texto. */
.woofood-app-theme{
  color: var(--woofood-text, var(--secondary,#1f2848));
}
.woofood-app-theme h1,
.woofood-app-theme h2,
.woofood-app-theme h3,
.woofood-app-theme h4,
.woofood-app-theme h5,
.woofood-app-theme h6,
.woofood-app-theme .title,
.woofood-app-theme .name,
.woofood-app-theme .woofood-product-modal__header h3,
.woofood-app-theme .woofood-product-modal-card__body h3,
.woofood-app-theme .woofood-cart-modal__header h3,
.woofood-app-theme .woofood-cart-modal-item__top h5,
.woofood-app-theme .woocommerce-loop-product__title,
.woofood-app-theme .woocommerce div.product .product_title{
  color: var(--woofood-heading, var(--secondary,#1f2848)) !important;
}
.woofood-app-theme p,
.woofood-app-theme .woofood-product-modal-card__desc,
.woofood-app-theme .woofood-cart-modal-item__meta,
.woofood-app-theme .woofood-cart-modal__summary p,
.woofood-app-theme .woofood-info-modal p,
.woofood-app-theme .woofood-store-info__address,
.woofood-app-theme .woocommerce-result-count,
.woofood-app-theme .woocommerce .woocommerce-breadcrumb,
.woofood-app-theme .woocommerce form .form-row label{
  color: var(--woofood-muted);
}
.woofood-app-theme .woocommerce .woocommerce-notices-wrapper:empty,
.woocommerce .woocommerce-notices-wrapper:empty{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}
.woofood-app-theme .woocommerce .woocommerce-notices-wrapper:not(:empty){
  background: var(--woofood-surface) !important;
  border: 1px solid rgba(31,40,72,.065) !important;
  border-radius: var(--border-radius-base) !important;
  box-shadow: 0 16px 36px rgba(31,40,72,.08) !important;
  padding: 14px 16px !important;
  margin-bottom: 16px !important;
}
.woofood-wishlist-toggle,
.woofood-app-theme .item-bookmark.woofood-wishlist-toggle,
.woofood-app-theme .bookmark.woofood-wishlist-toggle{
  cursor:pointer;
  border:0;
  padding:0;
  color:var(--woofood-muted);
  transition: color .18s ease, transform .18s ease, background .18s ease;
}
.woofood-wishlist-toggle:hover,
.woofood-wishlist-toggle:focus-visible{
  color:var(--woofood-primary);
  transform:scale(1.04);
  outline:none;
}
.woofood-wishlist-toggle.is-active,
.woofood-wishlist-toggle[aria-pressed="true"]{
  color:var(--woofood-primary) !important;
}
.woofood-wishlist-toggle.is-active svg path,
.woofood-wishlist-toggle[aria-pressed="true"] svg path{
  stroke:currentColor;
  fill:none;
}
.woocommerce .woocommerce-notices-wrapper.is-empty,
.woofood-app-theme .woocommerce .woocommerce-notices-wrapper.is-empty{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

/* WooFood v36 — sincronização de carrinho, wishlist e cores globais refinadas. */
.woofood-app-theme,
.woofood-app-theme .page-content,
.woofood-app-theme .content-inner,
.woofood-app-theme .dz-info,
.woofood-app-theme .item-content,
.woofood-app-theme .text-content,
.woofood-app-theme .card,
.woofood-app-theme .form-control,
.woofood-app-theme .woocommerce,
.woofood-app-theme .woocommerce div.product,
.woofood-app-theme .woocommerce-page{
  color:var(--woofood-text,var(--secondary,#1f2848));
}
.woofood-app-theme .text-dark,
.woofood-app-theme .title-bar .title,
.woofood-app-theme .item-content h6,
.woofood-app-theme .text-content .title,
.woofood-app-theme .recomended-list .title,
.woofood-app-theme .woofood-item-product h6,
.woofood-app-theme .woofood-store-info__name,
.woofood-app-theme .woocommerce-loop-product__title,
.woofood-app-theme .product_title,
.woofood-app-theme .entry-title{
  color:var(--woofood-heading) !important;
}
.woofood-app-theme .subtitle,
.woofood-app-theme .text-muted,
.woofood-app-theme small,
.woofood-app-theme .woofood-store-status__meta,
.woofood-app-theme .woofood-product-card__excerpt,
.woofood-app-theme .woocommerce-product-details__short-description,
.woofood-app-theme .woocommerce .woocommerce-result-count{
  color:var(--woofood-muted) !important;
}
.woofood-app-theme .recomended-list{
  position:relative;
}
.woofood-wishlist-toggle--carousel{
  position:absolute;
  top:10px;
  right:10px;
  z-index:8;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:var(--woofood-button-radius);
  background:color-mix(in srgb,var(--woofood-surface) 94%,transparent) !important;
  box-shadow:0 8px 22px rgba(31,40,72,.12);
}
.woofood-wishlist-toggle--carousel svg{
  width:18px;
  height:18px;
}
.woofood-cart-count.is-updating{
  animation:woofoodCartBadgePop .26s ease both;
}


/* WooFood v37 — correções pontuais: wishlist clicável e herança de texto do bloco de boas-vindas. */
.woofood-app-theme .woofood-welcome-banner .dz-info span{
  color: inherit;
  font-weight: inherit;
}
.woofood-wishlist-toggle{
  pointer-events: auto;
  touch-action: manipulation;
  position: relative;
  z-index: 8;
}
.woofood-open-product-modal .woofood-wishlist-toggle{
  cursor: pointer;
}


/* WooFood v38 — carrinho ajax confiável e wishlist do carrossel alinhada. */
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card{
  position: relative !important;
}
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .woofood-wishlist-toggle--carousel,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .item-bookmark.woofood-wishlist-toggle--carousel,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .bookmark.woofood-wishlist-toggle--carousel{
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 30 !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: var(--woofood-button-radius) !important;
  background: rgba(255,255,255,.96) !important;
  color: var(--woofood-product-card-price,var(--woofood-primary)) !important;
  box-shadow:0 10px 26px color-mix(in srgb,var(--woofood-heading) 16%,transparent) !important;
  transform: none !important;
}
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .woofood-wishlist-toggle--carousel:hover,
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .woofood-wishlist-toggle--carousel:focus-visible{
  transform: translateY(-1px) scale(1.03) !important;
}
.woofood-app-theme .woofood-recommended-products .recomended-list.woofood-product-card > .woofood-wishlist-toggle--carousel svg{
  width: 18px !important;
  height: 18px !important;
  display: block !important;
}

/* ==========================================================
   WooFood v51 - polimento leve da home original
   Mantém a estrutura da v49: sem novo menu desktop, sem footer pesado.
   ========================================================== */
:root{
  --woofood-polish-radius:var(--woofood-card-radius);
  --woofood-polish-shadow:var(--woofood-shadow-strong);
  --woofood-polish-soft-shadow:var(--woofood-shadow-soft);
  --woofood-modal-close-bg:color-mix(in srgb,var(--woofood-primary) 8%,var(--woofood-surface));
  --woofood-polish-border:1px solid var(--woofood-border);
}

.woofood-app-theme .page-wraper{
  background:
    radial-gradient(circle at top left,color-mix(in srgb,var(--woofood-primary) 8%,transparent),transparent 34rem),
    linear-gradient(180deg,var(--woofood-surface) 0%,var(--woofood-home-bg) 42%,var(--woofood-surface) 100%);
}

.woofood-app-theme .content-inner > .container.fb{
  max-width:760px;
}

body.home.woofood-app-theme .content-inner > .container.fb{
  overflow:visible;
}

.woofood-app-theme .woofood-app-header .main-bar{
  background:color-mix(in srgb,var(--woofood-surface) 94%,transparent);
  border-bottom:var(--woofood-polish-border);
  box-shadow:0 10px 24px color-mix(in srgb,var(--woofood-heading) 5.5%,transparent);
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
}

.woofood-app-theme .woofood-header-content-clean{
  min-height:64px;
  justify-content:center;
}

.woofood-app-theme .woofood-header-brand-wrap{
  display:flex;
  justify-content:center;
  width:100%;
}

.woofood-app-theme .woofood-brand-logo,
.woofood-app-theme .woofood-brand-text,
.woofood-app-theme .custom-logo-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.woofood-app-theme .woofood-brand-logo img,
.woofood-app-theme .custom-logo{
  max-height:42px;
  width:auto;
  object-fit:contain;
}

.woofood-app-theme .woofood-brand-text{
  color:var(--woofood-heading);
  font-size:1.1rem;
  font-weight:900;
  letter-spacing:-.02em;
}

.woofood-app-theme .woofood-welcome-banner{
  margin-bottom:8px;
}

.woofood-app-theme .woofood-welcome-banner .inner-wrapper{
  padding-top:12px;
  padding-bottom:10px;
}

.woofood-app-theme .woofood-welcome-banner .dz-info{
  position:relative;
  overflow:hidden;
  border-radius:var(--woofood-card-radius);
  padding:18px 18px;
  background:
    linear-gradient(135deg,color-mix(in srgb,var(--woofood-primary) 13%,var(--woofood-surface)),var(--woofood-surface) 52%,color-mix(in srgb,var(--woofood-heading) 5.5%,var(--woofood-surface)));
  border:var(--woofood-polish-border);
  box-shadow:var(--woofood-polish-soft-shadow);
}

.woofood-app-theme .woofood-welcome-banner .dz-info:after{
  content:"";
  position:absolute;
  right:-38px;
  top:-42px;
  width:112px;
  height:112px;
  border-radius:999px;
  background:color-mix(in srgb,var(--woofood-primary) 12%,transparent);
  pointer-events:none;
}

.woofood-app-theme .woofood-welcome-banner .dz-info span{
  color:var(--woofood-muted)!important;
  font-weight:800;
}

.woofood-app-theme .woofood-welcome-banner .dz-info .name{
  color:var(--woofood-heading);
  font-weight:950;
  letter-spacing:-.035em;
}

.woofood-dynamic-home{
  padding-top:6px;
}

.woofood-dynamic-home .woofood-home-search{
  display:block;
  width:100%;
  margin:0 0 18px;
}

.woofood-dynamic-home .woofood-home-search__field{
  width:100%;
  max-width:100%;
  min-height:56px;
  flex-wrap:nowrap;
  align-items:center;
  border:var(--woofood-polish-border);
  border-radius:var(--woofood-card-radius)!important;
  background:var(--woofood-surface);
  box-shadow:var(--woofood-polish-soft-shadow);
  overflow:hidden;
  transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}

.woofood-dynamic-home .woofood-home-search__field:focus-within{
  border-color:var(--woofood-border-hover);
  box-shadow:var(--woofood-focus-ring),var(--woofood-polish-soft-shadow);
}

.woofood-dynamic-home .woofood-home-search__icon,
.woofood-dynamic-home .woofood-home-search__input{
  min-height:54px;
  background:transparent!important;
  border:0!important;
}

.woofood-dynamic-home .woofood-home-search__icon{
  flex:0 0 auto;
  width:52px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--woofood-muted);
}

.woofood-dynamic-home .woofood-home-search__submit{
  min-height:54px;
  margin:0;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer;
  transform:none!important;
  transition:color .18s ease;
}

.woofood-dynamic-home .woofood-home-search__submit:hover,
.woofood-dynamic-home .woofood-home-search__submit:focus-visible{
  color:var(--woofood-primary-hover)!important;
  background:transparent!important;
  transform:none!important;
}

.woofood-dynamic-home .woofood-home-search__submit:focus-visible{
  outline:2px solid color-mix(in srgb,var(--woofood-primary-hover) 38%,transparent);
  outline-offset:-6px;
}

.woofood-dynamic-home .woofood-home-search__submit svg{
  display:block;
  width:20px;
  height:20px;
}

.woofood-dynamic-home .woofood-home-search__input{
  min-width:0;
  width:1%;
  flex:1 1 auto;
  padding-left:18px!important;
  padding-right:8px!important;
  color:var(--woofood-text)!important;
  font-weight:750;
}

.woofood-dynamic-home .woofood-home-search__input::placeholder{
  color:var(--woofood-muted);
  opacity:.82;
}

.woofood-dynamic-home .woofood-home-search__input:focus{
  outline:0!important;
  box-shadow:none!important;
}

.woofood-store-status{
  border-radius:var(--woofood-card-radius)!important;
  border:var(--woofood-polish-border)!important;
  box-shadow:var(--woofood-polish-soft-shadow)!important;
  background:var(--woofood-surface)!important;
}

.woofood-store-status__more{
  border-radius:var(--woofood-button-radius)!important;
  font-weight:900!important;
}

.woofood-app-theme .title-bar{
  margin-top:18px;
  margin-bottom:12px;
}

.woofood-app-theme .title-bar .title{
  color:var(--woofood-heading);
  font-weight:950;
  letter-spacing:-.025em;
}

.woofood-app-theme .title-bar .btn-link{
  color:var(--woofood-primary);
  font-weight:900;
  text-decoration:none;
}

.woofood-category-slider .categore-box.style-1{
  border-radius:var(--woofood-card-radius);
  padding:12px 8px;
  background:var(--woofood-surface);
  border:var(--woofood-polish-border);
  box-shadow:var(--woofood-polish-soft-shadow);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.woofood-category-slider .categore-box.style-1:hover,
.woofood-category-slider .categore-box.style-1:focus-visible{
  transform:translateY(-2px);
  border-color:var(--woofood-border-hover);
  box-shadow:var(--woofood-polish-shadow);
}

.woofood-category-slider .categore-box.style-1 .title{
  color:var(--woofood-heading);
  font-weight:850;
}

.woofood-category-slider .woofood-category-icon{
  box-shadow:0 10px 20px color-mix(in srgb,var(--woofood-heading) 11%,transparent);
}

.woofood-promo-banners .add-banner{
  border-radius:var(--woofood-card-radius)!important;
  box-shadow:var(--woofood-polish-shadow);
}
.woofood-hero-banner,
.woofood-home-banner-shortcode-item{
  border-radius:var(--woofood-card-radius)!important;
}
.woofood-hero-banner__button,
.woofood-home-banner-shortcode-item .button{
  border-radius:var(--woofood-button-radius)!important;
}

.woofood-promo-banners .add-banner .card-info span{
  font-weight:900;
  letter-spacing:.01em;
}

.woofood-promo-banners .add-banner .title{
  text-shadow:0 8px 18px rgba(0,0,0,.12);
}

.woofood-home-cards{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.woofood-home-cards > .woofood-home-card{
  flex:1 1 calc((100% - 12px) / 2);
  min-width:0;
}
@media(max-width:575.98px){
  .woofood-home-cards > .woofood-home-card{
    flex-basis:100%;
  }
}

.woofood-home-card{
  border:var(--woofood-polish-border)!important;
  border-radius:var(--woofood-card-radius)!important;
  box-shadow:var(--woofood-polish-soft-shadow)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.woofood-home-card:hover,
.woofood-home-card:focus-visible{
  transform:translateY(-2px);
  border-color:var(--woofood-border-hover)!important;
  box-shadow:var(--woofood-polish-shadow)!important;
}

.woofood-home-card__title,
.woofood-home-card span:not(.woofood-home-card__icon){
  font-weight:900!important;
}
.woofood-home-card small{
  color:var(--woofood-card-color,var(--woofood-text))!important;
  font-size:12px;
  font-weight:400;
  line-height:1.35;
  opacity:1;
}

.woofood-recommended-products .recomended-list.woofood-product-card,
.woofood-item-product.item-box{
  border:var(--woofood-polish-border)!important;
  border-radius:var(--woofood-card-radius)!important;
  box-shadow:var(--woofood-polish-soft-shadow)!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.woofood-recommended-products .recomended-list.woofood-product-card:hover,
.woofood-recommended-products .recomended-list.woofood-product-card:focus-within,
.woofood-item-product.item-box:hover,
.woofood-item-product.item-box:focus-within{
  transform:translateY(-2px);
  border-color:var(--woofood-border-hover)!important;
  box-shadow:var(--woofood-polish-shadow)!important;
}

.woofood-recommended-products .recomended-list.woofood-product-card .image-box{
  border-radius:var(--woofood-card-radius) var(--woofood-card-radius) 0 0!important;
  background:linear-gradient(180deg,var(--woofood-surface) 0%,color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg)) 100%)!important;
}
.woofood-item-product.item-box .item-media{
  background:linear-gradient(180deg,var(--woofood-surface) 0%,color-mix(in srgb,var(--woofood-surface) 82%,var(--woofood-home-bg)) 100%)!important;
}
.woofood-item-product.item-box .item-content{
  border-radius:var(--woofood-card-radius)!important;
  background:var(--woofood-product-card-bg)!important;
}
.woofood-promo-banners .woofood-dynamic-add-banner .card-body{
  border-radius:var(--woofood-card-radius)!important;
}

.woofood-recommended-products .recomended-list.woofood-product-card .text-content .title,
.woofood-item-product.item-box .item-content h6{
  color:var(--woofood-heading)!important;
  font-weight:900!important;
}
.woofood-recommended-products .recomended-list.woofood-product-card .text-content a{
  color:inherit!important;
}

.woofood-recommended-products .recomended-list.woofood-product-card .price,
.woofood-item-product.item-box .item-footer h6,
.woofood-item-product.item-box .woocommerce-Price-amount{
  color:var(--woofood-product-card-price)!important;
  font-weight:950!important;
}

.woofood-app-theme .btn.btn-outline-primary.btn-rounded.btn-block{
  border-radius:var(--woofood-button-radius);
  min-height:48px;
  font-weight:950;
  box-shadow:0 12px 26px color-mix(in srgb,var(--woofood-primary) 11%,transparent);
}

.woofood-app-theme .woofood-icon-menubar{
  background:color-mix(in srgb,var(--woofood-surface) 96%,transparent);
  border-top:var(--woofood-polish-border);
  box-shadow:0 -12px 28px color-mix(in srgb,var(--woofood-heading) 9%,transparent);
  backdrop-filter:saturate(140%) blur(12px);
  -webkit-backdrop-filter:saturate(140%) blur(12px);
}

.woofood-app-theme .woofood-icon-menubar .nav-link{
  width:46px;
  height:46px;
  border-radius:var(--woofood-button-radius);
  transition:background-color .18s ease, transform .18s ease, color .18s ease;
}

.woofood-app-theme .woofood-icon-menubar .nav-link.active{
  background:color-mix(in srgb,var(--woofood-primary) 11%,transparent);
}

.woofood-app-theme .woofood-icon-menubar .nav-link:hover,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible{
  transform:translateY(-1px);
  background:color-mix(in srgb,var(--woofood-primary-hover) 9%,transparent);
}

@media (max-width:575px){
  .woofood-app-theme .content-inner > .container.fb{padding-left:14px;padding-right:14px;}
  .woofood-app-theme .woofood-welcome-banner .dz-info{padding:16px;}
  .woofood-dynamic-home .woofood-home-search__icon,
  .woofood-dynamic-home .woofood-home-search__input{min-height:50px;}
  .woofood-dynamic-home .woofood-home-search__field{min-height:52px;}
  .woofood-dynamic-home .woofood-home-search__submit{min-height:50px;width:50px;margin:0;padding:0;}
}

.woofood-foodia-product-grid{
  margin-top:0;
  margin-bottom:18px;
}
.woofood-foodia-product-grid > [class*="col-"]{
  min-width:0;
}
.woofood-foodia-product-grid .woofood-item-product.item-box{
  width:100%;
  height:100%;
  margin:0!important;
}
.woofood-foodia-product-grid .woofood-item-product.item-box .item-media{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 110px;
  min-width:110px;
}
.woofood-foodia-product-grid .woofood-item-product.item-box .item-content{
  min-width:0;
}
@media (prefers-reduced-motion:reduce){
  .woofood-app-theme *,
  .woofood-app-theme *::before,
  .woofood-app-theme *::after{
    transition:none!important;
    animation:none!important;
    scroll-behavior:auto!important;
  }
}
/* Acessibilidade base */
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.screen-reader-text:focus{position:fixed!important;top:12px!important;left:12px!important;width:auto!important;height:auto!important;margin:0!important;padding:12px 16px!important;clip:auto!important;z-index:100000;background:var(--woofood-surface);color:var(--woofood-heading);border-radius:var(--woofood-button-radius);box-shadow:var(--woofood-shadow-strong)}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.swiper-wrapper{transition-duration:0ms!important}}

/* WooFood Theme 3.3 — refinamento global sem alterar a composição da home */
.woofood-app-theme .content-inner>.container.fb{max-width:var(--woofood-container-width,1180px)}
.woofood-app-theme .woofood-wc-box{border:1px solid var(--woofood-border)!important;border-radius:var(--woofood-card-radius)!important;background:var(--woofood-surface)!important;color:var(--woofood-text,#27304d);box-shadow:0 16px 42px rgba(23,35,60,.07)!important}
.woofood-app-theme .woofood-wp-title,.woofood-app-theme .woocommerce h1,.woofood-app-theme .woocommerce h2,.woofood-app-theme .woocommerce h3{color:var(--woofood-heading,#1f2848);letter-spacing:-.025em}
.woofood-app-theme .button,.woofood-app-theme button:not([data-woofood-tab]):not(.woofood-home-search__submit),.woofood-app-theme input[type=submit]{border-radius:var(--woofood-button-radius)!important;font-weight:850;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}
.woofood-app-theme .button:hover,.woofood-app-theme button:not(.woofood-modal-close):not([data-woofood-tab]):not(.woofood-home-search__submit):hover,.woofood-app-theme input[type=submit]:hover{transform:translateY(-1px)}
.woofood-app-theme input:not([type=checkbox]):not([type=radio]):not(.woofood-home-search__input),.woofood-app-theme select,.woofood-app-theme textarea{border:1px solid var(--woofood-border)!important;background:var(--woofood-surface)}
.woofood-app-theme input:not(.woofood-home-search__input):focus,.woofood-app-theme select:focus,.woofood-app-theme textarea:focus{border-color:var(--woofood-border-hover)!important;box-shadow:var(--woofood-focus-ring)!important;outline:0}
.woofood-app-theme .woocommerce-message{border-top-color:var(--woofood-success,#16845b);border-radius:var(--woofood-button-radius);background:color-mix(in srgb,var(--woofood-success) 8%,var(--woofood-surface))}
.woofood-app-theme .woocommerce-info{border-top-color:var(--woofood-primary);border-radius:var(--woofood-button-radius);background:color-mix(in srgb,var(--woofood-primary) 7%,var(--woofood-surface))}
.woofood-app-theme .woocommerce-error{border-top-color:var(--woofood-danger);border-radius:var(--woofood-button-radius);background:color-mix(in srgb,var(--woofood-danger) 7%,var(--woofood-surface))}
.woofood-app-theme .woocommerce table.shop_table{overflow:hidden;border:1px solid var(--woofood-border);border-radius:var(--woofood-card-radius);background:var(--woofood-surface)}.woofood-app-theme .woocommerce table.shop_table th{color:var(--woofood-heading,#1f2848);background:var(--woofood-surface-soft)}.woofood-app-theme .woocommerce table.shop_table td,.woofood-app-theme .woocommerce table.shop_table th{padding:14px}
.woofood-app-theme .woocommerce-checkout #customer_details>div,.woofood-app-theme .woocommerce-checkout #order_review,.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-navigation,.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-content,.woofood-app-theme .cart_totals{padding:18px;border:1px solid var(--woofood-border);border-radius:var(--woofood-card-radius);background:var(--woofood-surface)}
.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:10px 12px;border-radius:10px;color:var(--woofood-heading,#1f2848);font-weight:800}.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--woofood-primary-soft);color:var(--woofood-primary)}
.woofood-app-theme .woocommerce-order-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0!important;padding:0!important}.woofood-app-theme .woocommerce-order-overview li{float:none!important;width:auto!important;margin:0!important;padding:13px!important;border:1px solid var(--woofood-border)!important;border-radius:12px;background:var(--woofood-surface)}.woofood-app-theme.woofood-order-without-email .woocommerce-order-overview__email{display:none!important}
.woofood-density-compact .woofood-wc-box{padding:16px!important}.woofood-density-comfortable .woofood-wc-box{padding:24px!important}.woofood-density-spacious .woofood-wc-box{padding:32px!important}
.woofood-app-theme .woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:6px}.woofood-app-theme .woocommerce nav.woocommerce-pagination ul li{border:0}.woofood-app-theme .woocommerce nav.woocommerce-pagination ul li a,.woofood-app-theme .woocommerce nav.woocommerce-pagination ul li span{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid var(--woofood-border);border-radius:10px;background:var(--woofood-surface)}.woofood-app-theme .woocommerce nav.woocommerce-pagination ul li span.current{border-color:var(--woofood-primary);background:var(--woofood-primary);color:var(--woofood-on-primary)}
@media(max-width:767px){.woofood-app-theme .woocommerce-order-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.woofood-app-theme .woocommerce-checkout #customer_details>div,.woofood-app-theme .woocommerce-checkout #order_review,.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-navigation,.woofood-app-theme .woocommerce-account .woocommerce-MyAccount-content{padding:14px}.woofood-density-spacious .woofood-wc-box{padding:20px!important}}
.woofood-shop-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:42px 20px;border:1px dashed var(--woofood-border);border-radius:var(--woofood-card-radius);text-align:center;background:var(--woofood-surface-soft)}.woofood-shop-empty>span{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:18px;background:var(--woofood-primary-soft);color:var(--woofood-primary)}.woofood-shop-empty h2,.woofood-shop-empty p{margin:0}.woofood-shop-empty p{color:var(--woofood-muted)}
.woofood-page-breadcrumbs{display:flex;align-items:center;gap:7px;margin:0 0 14px;color:var(--woofood-muted);font-size:.78rem;font-weight:750}.woofood-page-breadcrumbs a{color:var(--woofood-primary);text-decoration:none}.woofood-page-breadcrumbs span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ==========================================================
   WooFood Theme 3.5.25 — Checkout Block / controles nativos
   Mantém a anatomia do WooCommerce 11.x, mas substitui as
   bordas fixas pelo design system do WooFood.
   ========================================================== */

.woofood-app-theme .wp-block-woocommerce-checkout{
  --wc-form-border-color:var(--woofood-border);
  --wc-form-border-radius:var(--woofood-button-radius);
}

/*
 * Inputs do Checkout Block.
 * O WooCommerce usa dois componentes diferentes: TextInput e Combobox.
 * Ambos precisam receber o mesmo tratamento dos inputs dos modais/home.
 */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wc-block-components-text-input input:not([type="checkbox"]):not([type="radio"]),
  .wc-block-components-address-form input:not([type="checkbox"]):not([type="radio"]),
  .wc-block-components-address-form select,
  .wc-block-components-address-form textarea
),
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{
  border:1px solid var(--woofood-border) !important;
  border-radius:var(--woofood-button-radius) !important;
  background:var(--woofood-surface) !important;
  box-shadow:none !important;
  outline:0 !important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

/*
 * O seletor global legado dos inputs usa :not(...) com !important e tem
 * especificidade alta. Por isso hover/focus do Checkout usam seletores
 * explícitos (sem :where) para que o estado dinâmico realmente vença.
 */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-text-input input:not([type="checkbox"]):not([type="radio"]):hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form input:not([type="checkbox"]):not([type="radio"]):hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form select:hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form textarea:hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:hover{
  border-color:var(--woofood-border-hover) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-text-input input:not([type="checkbox"]):not([type="radio"]):focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-text-input input:not([type="checkbox"]):not([type="radio"]):focus-visible,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form input:not([type="checkbox"]):not([type="radio"]):focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form input:not([type="checkbox"]):not([type="radio"]):focus-visible,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form select:focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form textarea:focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus-visible{
  border-color:var(--woofood-border-hover) !important;
  box-shadow:var(--woofood-focus-ring) !important;
  background:var(--woofood-surface) !important;
  outline:0 !important;
}

/* Mantém a semântica visual de erro do WooCommerce dentro do design system. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-text-input.has-error input,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-combobox.has-error input.components-combobox-control__input,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form .has-error input,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form .has-error select,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-form .has-error textarea{
  border-color:var(--woofood-danger) !important;
}

/* País: usa o mesmo margin-top padrão dos TextInput do Checkout Block (12px). */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wc-block-components-address-form__country,
  .wc-block-components-country-input,
  .section-shipping.shipping.country,
  .section-billing.billing.country
){
  margin-top:12px !important;
}

/* Cards estruturais do checkout usam o raio de cards, não valores fixos do WooCommerce. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-card,
.woofood-app-theme .wp-block-woocommerce-checkout-order-summary-block{
  border:1px solid var(--woofood-border) !important;
  border-radius:var(--woofood-card-radius) !important;
  background:var(--woofood-surface);
  box-sizing:border-box;
  transition:border-color .18s ease,box-shadow .18s ease;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-address-card:focus-within,
.woofood-app-theme .wp-block-woocommerce-checkout-order-summary-block:focus-within{
  border-color:var(--woofood-border-hover) !important;
  box-shadow:var(--woofood-focus-ring);
}

/*
 * Anatomia nativa de Entrega/Pagamento (WooCommerce 11.x):
 * - .radio-control--highlight-checked::after = moldura externa do grupo;
 * - option::after / accordion-option::after = divisores de 1px entre opções;
 * - *--checked-option-highlighted = box-shadow interno do item selecionado.
 *
 * Para obter opções independentes com gap, removemos SOMENTE essas três
 * camadas visuais e colocamos a borda no elemento lógico real da opção.
 * Nenhum pseudo-elemento é transformado em "card".
 */

/* O grupo em si não representa um card no design WooFood. */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) > .wc-block-components-radio-control,
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Escopos das listas de entrega. */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked::after{
  content:none !important;
  display:none !important;
}

/* Escopo da lista de pagamento. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked::after{
  content:none !important;
  display:none !important;
}

/* Remove os divisores superiores nativos das opções de entrega. */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > .wc-block-components-radio-control__option::after,
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > .wc-block-components-radio-control-accordion-option::after{
  content:none !important;
  display:none !important;
}

/* Remove os divisores superiores nativos das opções de pagamento. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > .wc-block-components-radio-control__option::after,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > .wc-block-components-radio-control-accordion-option::after,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option::after{
  content:none !important;
  display:none !important;
}

/* Entrega: normalmente cada opção é o próprio label. */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
){
  margin:0 !important;
  border:1px solid var(--woofood-border) !important;
  border-radius:var(--woofood-button-radius) !important;
  background:var(--woofood-surface);
  box-sizing:border-box;
  box-shadow:none !important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
) + :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
){
  margin-top:8px !important;
}

/* Pagamento: o wrapper accordion é o card quando existe conteúdo expansível. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
){
  margin:0 !important;
  border:1px solid var(--woofood-border) !important;
  border-radius:var(--woofood-button-radius) !important;
  background:var(--woofood-surface);
  box-sizing:border-box;
  box-shadow:none !important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
) + :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
){
  margin-top:8px !important;
}

/* A label interna do accordion não pode virar um segundo card. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option,
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control-accordion-option > .wc-block-components-radio-control__option{
  margin:0 !important;
  border:0 !important;
  border-radius:inherit !important;
  background:transparent !important;
  box-shadow:none !important;
}

/* Remove o highlight preto/inset nativo da opção selecionada. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control--highlight-checked :where(
  .wc-block-components-radio-control-accordion-option--checked-option-highlighted,
  .wc-block-components-radio-control__option--checked-option-highlighted,
  .wc-block-components-radio-control__option-checked
){
  box-shadow:none !important;
}

/* Hover, seleção e foco usam a mesma borda dinâmica dos demais inputs WooFood. */
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
):hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
):hover,
.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option-checked,
  .wc-block-components-radio-control__option--checked-option-highlighted,
  .wc-block-components-radio-control-accordion-option--checked-option-highlighted
),
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option-checked,
  .wc-block-components-radio-control__option--checked-option-highlighted,
  .wc-block-components-radio-control-accordion-option--checked-option-highlighted
){
  border-color:var(--woofood-border-hover) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout :where(
  .wp-block-woocommerce-checkout-shipping-method-block,
  .wc-block-checkout__shipping-option,
  .wc-block-components-shipping-rates-control
) .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
):focus-within,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
  .wc-block-components-radio-control__option,
  .wc-block-components-radio-control-accordion-option
):focus-within{
  border-color:var(--woofood-border-hover) !important;
  box-shadow:var(--woofood-focus-ring) !important;
}

/* Radio interno: sem outline preto concorrente; o foco fica no card acima. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input{
  border-color:var(--woofood-border) !important;
  background:var(--woofood-surface) !important;
  box-shadow:none !important;
  outline:0 !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:hover,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked{
  border-color:var(--woofood-border-hover) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:focus-visible{
  outline:0 !important;
  box-shadow:none !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-radio-control .wc-block-components-radio-control__input:checked::before{
  background:var(--woofood-primary) !important;
}

@media (max-width:767.98px){
  .woofood-app-theme .wp-block-woocommerce-checkout :where(
    .wp-block-woocommerce-checkout-shipping-method-block,
    .wc-block-checkout__shipping-option,
    .wc-block-components-shipping-rates-control
  ) .wc-block-components-radio-control--highlight-checked > :is(
    .wc-block-components-radio-control__option,
    .wc-block-components-radio-control-accordion-option
  ) + :is(
    .wc-block-components-radio-control__option,
    .wc-block-components-radio-control-accordion-option
  ),
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control--highlight-checked > :is(
    .wc-block-components-radio-control__option,
    .wc-block-components-radio-control-accordion-option
  ) + :is(
    .wc-block-components-radio-control__option,
    .wc-block-components-radio-control-accordion-option
  ){
    margin-top:7px !important;
  }
}


/* ==========================================================
   WooFood Theme 3.5.28 — Resumo do pedido / sidebar do checkout
   - remove a dependência visual do @container interno do WooCommerce;
   - aplica o gutter do resumo em CSS desde o primeiro paint, sem classes injetadas por JavaScript;
   - usa sticky CSS nativo diretamente na sidebar em desktop;
   - mantém o resumo e o CTA presos ao design system dinâmico.
   ========================================================== */

/*
 * Gutter do resumo sem JavaScript.
 *
 * Os wrappers abaixo pertencem ao React do WooCommerce, portanto adicionar
 * `.px-3` depois da hidratação provoca layout shift. Aplicamos o mesmo valor
 * da utility Bootstrap `.px-3` (1rem) diretamente em CSS no desktop e um
 * gutter compacto no tablet/mobile. Assim o padding existe já no primeiro
 * paint e re-renderizações do Checkout Block não alteram o layout.
 */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar{
  --woofood-checkout-summary-gutter:.75rem;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .slot-wrapper .wc-block-components-panel,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-panel,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-coupon,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item{
  padding-left:var(--woofood-checkout-summary-gutter) !important;
  padding-right:var(--woofood-checkout-summary-gutter) !important;
}

/* Evita somar gutter quando o WooCommerce aninha panel/totals-item. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-panel .wc-block-components-totals-item,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item .wc-block-components-panel{
  padding-left:0 !important;
  padding-right:0 !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-checkout-order-summary__title{
  padding-left:var(--woofood-checkout-summary-gutter) !important;
  padding-right:var(--woofood-checkout-summary-gutter) !important;
}

@media (min-width:992px){
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar{
    --woofood-checkout-summary-gutter:1rem;
  }
}

/*
 * O checkout precisa de largura suficiente para a composição 65/35 nativa
 * do WooCommerce. A regra global de 760px continua nas demais páginas; só o
 * checkout volta a usar o container dinâmico configurado no WooFood.
 */
body.woocommerce-checkout.woofood-app-theme .content-inner > .container.fb{
  width:100%;
  max-width:var(--woofood-container-width,1180px);
}

/* O WooCommerce renderiza uma segunda instância do resumo no fill mobile. */
.woofood-app-theme .wp-block-woocommerce-checkout .checkout-order-summary-block-fill-wrapper{
  display:none !important;
}

/* Card único do resumo principal. */
.woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper){
  width:100%;
  max-width:100%;
  min-width:0;
  margin-inline:0;
  border:1px solid var(--woofood-border) !important;
  border-radius:var(--woofood-card-radius) !important;
  background:var(--woofood-surface) !important;
  box-sizing:border-box;
  overflow:clip;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__title{
  border-top:0 !important;
  border-bottom:0 !important;
  border-color:var(--woofood-border) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__content{
  border-bottom:0 !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__content.is-open{
  border-top:1px solid var(--woofood-border) !important;
  border-bottom:0 !important;
}

/* Bootstrap lg para composição compacta no tablet/mobile. */
@media (max-width:991.98px){
  body.woocommerce-checkout.woofood-app-theme .content-inner > .container.fb{
    max-width:100%;
  }

  /*
   * No layout compacto o WooCommerce retira o gutter do corpo da lista de
   * produtos. O order-summary recebe o mesmo gutter mobile da sidebar desde
   * o primeiro paint, sem JS e sem alterar os paddings dos totals/panels.
   */
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary{
    padding-left:var(--woofood-checkout-summary-gutter) !important;
    padding-right:var(--woofood-checkout-summary-gutter) !important;
    box-sizing:border-box;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper){
    margin:0 0 1rem !important;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__title{
    min-width:0;
    margin-top:0 !important;
    padding-top:14px !important;
    padding-bottom:14px !important;
    gap:10px;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__title-text{
    min-width:0;
    margin:0 !important;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__title-price{
    margin-inline-start:auto;
    white-space:nowrap;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block:not(.checkout-order-summary-block-fill-wrapper) .wc-block-components-checkout-order-summary__title-icon{
    flex:0 0 auto;
  }

}

/*
 * O WooCommerce 11 usa um container query de 699px para alternar o
 * SidebarLayout. Mantemos exatamente esse breakpoint: até 699px a sidebar
 * fica abaixo do formulário; a partir de 700px o formulário volta a 65% e
 * o resumo ocupa 35% à direita. Isso evita que a regra de tablet do tema
 * force a sidebar para 100% e faça a segunda coluna quebrar cedo demais.
 */
@container (max-width:699px){
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{
    flex-direction:column !important;
    margin:0 auto 16px;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-main{
    width:100% !important;
    padding:0 !important;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-sidebar{
    position:static !important;
    top:auto !important;
    width:100% !important;
    max-width:100% !important;
    padding:0 !important;
  }
}

@container (min-width:700px){
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:flex-start;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-main{
    flex:0 0 65%;
    width:65% !important;
    min-width:0;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout > .wc-block-components-sidebar{
    flex:0 0 35%;
    width:35% !important;
    max-width:35% !important;
    min-width:0;
  }
}

/*
 * Sticky real: não depende de .is-sticky. O shell atual do tema não possui
 * #main-wrapper, então liberamos apenas os ancestrais que existem de fato na
 * página de checkout e deixamos o browser controlar o acompanhamento.
 */
@media (min-width:700px){
  body.woocommerce-checkout.woofood-app-theme .content-inner,
  body.woocommerce-checkout.woofood-app-theme .content-inner > .container.fb,
  body.woocommerce-checkout.woofood-app-theme .woofood-wc-box,
  body.woocommerce-checkout.woofood-app-theme .woofood-wc-box > .entry-content,
  body.woocommerce-checkout.woofood-app-theme .wp-block-woocommerce-checkout,
  body.woocommerce-checkout.woofood-app-theme .wc-block-components-sidebar-layout{
    overflow:visible !important;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{
    align-items:flex-start;
  }

  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
    --woofood-checkout-sticky-top:calc(var(--headheight,55px) + 16px);
    position:sticky !important;
    top:var(--woofood-checkout-sticky-top) !important;
    align-self:flex-start !important;
    height:max-content;
    min-height:0;
    transform:translateZ(0);
    transition:top .24s var(--woofood-ease,ease);
  }
}

@media (prefers-reduced-motion:reduce){
  .woofood-app-theme .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
    transition:none !important;
  }
}

/* CTA final usa a cor semântica de sucesso configurada no WooFood. */
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button{
  border-color:var(--woofood-success) !important;
  background:var(--woofood-success) !important;
  color:var(--woofood-on-success) !important;
  border-radius:var(--woofood-button-radius) !important;
  box-shadow:none !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:not(:disabled):hover{
  border-color:color-mix(in srgb,var(--woofood-success) 86%,#000) !important;
  background:color-mix(in srgb,var(--woofood-success) 86%,#000) !important;
  color:var(--woofood-on-success) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:focus,
.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible{
  border-color:var(--woofood-success) !important;
  background:var(--woofood-success) !important;
  color:var(--woofood-on-success) !important;
  outline:0 !important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--woofood-success) 40%,transparent) !important;
}

.woofood-app-theme .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:disabled{
  border-color:var(--woofood-success) !important;
  background:var(--woofood-success) !important;
  color:var(--woofood-on-success) !important;
  opacity:.58;
  cursor:not-allowed;
}

/* ==========================================================
   WooFood 3.5.68 — shell vertical responsivo
   Mantém o menu inferior fixo e faz a página/fundo preencher
   toda a viewport mesmo quando o conteúdo é curto.
   ========================================================== */
html{
  min-height:100%;
  background:var(--woofood-home-bg,#f8f8fb);
}

body.woofood-app-theme{
  min-height:100vh;
  min-height:100svh;
  min-height:100dvh;
  background:var(--woofood-home-bg,#f8f8fb);
}

body.woofood-app-theme .page-wraper{
  width:100%;
  min-height:100vh;
  min-height:100svh;
  min-height:100dvh;
  display:flex;
  flex-direction:column;
  background:var(--woofood-home-bg,#f8f8fb);
}

body.woofood-app-theme .page-content{
  width:100%;
  min-height:0;
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
}

body.woofood-app-theme .content-inner{
  width:100%;
  min-height:0;
  flex:1 0 auto;
  display:flex;
  flex-direction:column;
}

body.woofood-app-theme .content-inner > .container.fb{
  width:100%;
  flex:1 0 auto;
}

/* ==========================================================
   WooFood 3.5.70 — Icon system v2
   All WooFood library icons remain outline/currentColor even
   when legacy Foodia selectors target svg paths on active UI.
   ========================================================== */
.woofood-app-theme svg.woofood-icon {
  display:block;
  flex:0 0 auto;
  fill:none !important;
  stroke:currentColor !important;
  color:inherit;
  shape-rendering:geometricPrecision;
}

.woofood-app-theme svg.woofood-icon :is(path,circle,ellipse,line,polyline,polygon,rect) {
  fill:none !important;
  stroke:currentColor !important;
}

.woofood-app-theme .woofood-icon-menubar .nav-link,
.woofood-app-theme .woofood-icon-menubar .nav-link.active,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible {
  color:var(--woofood-muted) !important;
}

.woofood-app-theme .woofood-icon-menubar .nav-link.active,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible {
  color:var(--woofood-primary) !important;
}

.woofood-app-theme .woofood-icon-menubar .nav-link.active {
  background:color-mix(in srgb,var(--woofood-primary) 11%,transparent) !important;
}

.woofood-app-theme .woofood-icon-menubar .nav-link.active svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link.active svg.woofood-icon *,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover svg.woofood-icon *,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible svg.woofood-icon,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible svg.woofood-icon * {
  fill:none !important;
  stroke:currentColor !important;
}

.woofood-app-theme .woofood-category-icon__svg,
.woofood-app-theme .woofood-home-card__icon,
.woofood-app-theme .woofood-home-search__icon,
.woofood-app-theme .woofood-shop-view-button,
.woofood-app-theme .woofood-wishlist-toggle {
  color:inherit;
}

.woofood-app-theme .woofood-home-card__icon img,
.woofood-app-theme .woofood-category-icon__image {
  object-fit:contain !important;
}


/* ==========================================================
   WooFood 3.5.71 — native WordPress Dashicons support
   Dashicons remain optional; Core enqueues their font only when
   a category/home card actually uses one.
   ========================================================== */
.woofood-app-theme .woofood-icon--dashicon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:inherit;
  font-family:dashicons !important;
  font-style:normal;
  font-weight:400;
  speak:never;
}

.woofood-app-theme .woofood-category-slider .woofood-category-icon__svg .woofood-icon--dashicon {
  width:28px !important;
  height:28px !important;
  font-size:28px !important;
  line-height:1 !important;
}

.woofood-app-theme .woofood-home-card__icon .woofood-icon--dashicon {
  width:32px !important;
  height:32px !important;
  font-size:32px !important;
  line-height:1 !important;
}

@media(max-width:420px){
  .woofood-app-theme .woofood-home-card__icon .woofood-icon--dashicon {
    width:28px !important;
    height:28px !important;
    font-size:28px !important;
  }
}

/* ==========================================================
   WooFood 3.5.72 — icon polish
   Restores the original bottom-menu treatment (active state is
   indicated by the existing ::after only) and ensures Home Card
   icons use their dedicated "Cor do ícone/imagem" token.
   ========================================================== */
.woofood-app-theme .woofood-icon-menubar .nav-link.active,
.woofood-app-theme .woofood-icon-menubar .nav-link:hover,
.woofood-app-theme .woofood-icon-menubar .nav-link:focus-visible {
  background:transparent !important;
}

.woofood-app-theme .woofood-home-card__icon {
  color:var(--woofood-card-icon) !important;
}

.woofood-app-theme .woofood-home-card__icon svg.woofood-icon,
.woofood-app-theme .woofood-home-card__icon .woofood-icon--dashicon {
  color:var(--woofood-card-icon) !important;
}


/* ==========================================================
   WooFood Theme 3.6.7 — carrosséis nativos sem dependência externa
   Mantém as classes legadas do markup para compatibilidade interna,
   mas scrolling, snap, touch e autoplay são controlados pelo WooFood.
   ========================================================== */
.woofood-app-theme .categorie-swiper,
.woofood-app-theme .recomand-swiper,
.woofood-app-theme .recomanded-swiper{
  position:relative;
  width:100%;
  max-width:100%;
  overflow:visible!important;
}
.woofood-app-theme .categorie-swiper>.swiper-wrapper,
.woofood-app-theme .recomand-swiper>.swiper-wrapper,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper{
  display:flex!important;
  align-items:stretch;
  width:100%!important;
  max-width:100%;
  box-sizing:border-box;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  -ms-overflow-style:none;
  transform:none!important;
  transition:none!important;
  touch-action:pan-x pan-y;
  padding-block:30px;
  margin-block:-30px;
}
.woofood-app-theme .categorie-swiper>.swiper-wrapper::-webkit-scrollbar,
.woofood-app-theme .recomand-swiper>.swiper-wrapper::-webkit-scrollbar,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}
.woofood-app-theme .categorie-swiper .swiper-slide,
.woofood-app-theme .recomand-swiper .swiper-slide,
.woofood-app-theme .recomanded-swiper .swiper-slide{
  height:auto;
  min-width:0;
  box-sizing:border-box;
  scroll-snap-stop:normal;
}

/* Categorias: largura intrínseca e o mesmo respiro de 15px. */
.woofood-app-theme .categorie-swiper>.swiper-wrapper{
  gap:15px;
  scroll-padding-inline:15px;
}
.woofood-app-theme .categorie-swiper .swiper-slide{
  flex:0 0 auto;
  width:auto!important;
  scroll-snap-align:start;
}
.woofood-app-theme .categorie-swiper .swiper-slide:first-child{
  margin-left:15px;
}
.woofood-app-theme .categorie-swiper .swiper-slide:last-child{
  margin-right:15px;
}

/* Banners: equivalente visual a 1.2 slides centralizados. */
.woofood-app-theme .recomand-swiper>.swiper-wrapper{
  gap:0;
  padding-inline:0;
  scroll-padding-inline:0;
}
.woofood-app-theme .recomand-swiper>.swiper-wrapper::before,
.woofood-app-theme .recomand-swiper>.swiper-wrapper::after{
  content:"";
  flex:0 0 calc(8.333333% + .833333px);
  width:calc(8.333333% + .833333px);
  pointer-events:none;
}
.woofood-app-theme .recomand-swiper .swiper-slide{
  /* Mesmo cálculo do Swiper 6: (container - .2*10px) / 1.2. */
  flex:0 0 calc(83.333333% - 1.666667px);
  width:auto!important;
  margin-right:10px!important;
  scroll-snap-align:center;
}
.woofood-app-theme .recomand-swiper .swiper-slide:last-child{
  margin-right:0!important;
}
.woofood-app-theme .recomand-swiper .swiper-slide.swiper-slide-active{
  transform:scaleY(1);
}

/* Produtos: 1.15 no mobile, 2 no tablet e 3 no desktop. */
.woofood-app-theme .recomanded-swiper>.swiper-wrapper{
  gap:14px;
  scroll-padding-inline:1px;
}
.woofood-app-theme .recomanded-swiper .swiper-slide{
  flex:0 0 86%;
  width:auto!important;
  max-width:none!important;
  scroll-snap-align:start;
}
@media(min-width:576px){
  .woofood-app-theme .recomanded-swiper>.swiper-wrapper{gap:16px}
  .woofood-app-theme .recomanded-swiper .swiper-slide{
    flex-basis:calc((100% - 16px) / 2);
  }
}
@media(min-width:992px){
  .woofood-app-theme .recomanded-swiper>.swiper-wrapper{gap:20px}
  .woofood-app-theme .recomanded-swiper .swiper-slide{
    flex-basis:calc((100% - 40px) / 3);
  }
}
@media(prefers-reduced-motion:reduce){
  .woofood-app-theme .categorie-swiper>.swiper-wrapper,
  .woofood-app-theme .recomand-swiper>.swiper-wrapper,
  .woofood-app-theme .recomanded-swiper>.swiper-wrapper{
    scroll-behavior:auto!important;
  }
}

/* Desktop pointer affordance: a carousel is still clickable while idle.
   Holding the primary mouse button changes the surface to grabbing (closed hand). We intentionally
   avoid pointer/hover media queries so hybrid Windows devices behave the same. */
.woofood-app-theme .categorie-swiper>.swiper-wrapper,
.woofood-app-theme .recomand-swiper>.swiper-wrapper,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper{
  cursor:pointer!important;
}

/* Every visual part of a slide follows the wrapper cursor. This wins over
   legacy cursor rules on cards, anchors and images without affecting semantics. */
.woofood-app-theme .categorie-swiper>.swiper-wrapper>.swiper-slide,
.woofood-app-theme .categorie-swiper>.swiper-wrapper>.swiper-slide *,
.woofood-app-theme .recomand-swiper>.swiper-wrapper>.swiper-slide,
.woofood-app-theme .recomand-swiper>.swiper-wrapper>.swiper-slide *,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper>.swiper-slide,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper>.swiper-slide *{
  cursor:inherit!important;
}

.woofood-app-theme .categorie-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .categorie-swiper>.swiper-wrapper.is-dragging,
.woofood-app-theme .recomand-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .recomand-swiper>.swiper-wrapper.is-dragging,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper.is-dragging{
  cursor:grabbing!important;
  user-select:none;
}

/* O drag por mouse precisa ser imediato. Smooth/snap permanecem ativos em
   repouso e voltam ao soltar; durante o gesto eles não podem disputar scrollLeft. */
.woofood-app-theme .categorie-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .categorie-swiper>.swiper-wrapper.is-dragging,
.woofood-app-theme .recomand-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .recomand-swiper>.swiper-wrapper.is-dragging,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper.is-pointer-down,
.woofood-app-theme .recomanded-swiper>.swiper-wrapper.is-dragging{
  scroll-behavior:auto!important;
  scroll-snap-type:none!important;
}

/* Independent controls keep their semantic pointer cursor. */
.woofood-app-theme .categorie-swiper .woofood-wishlist-toggle,
.woofood-app-theme .recomand-swiper .woofood-wishlist-toggle,
.woofood-app-theme .recomanded-swiper .woofood-wishlist-toggle{
  cursor:pointer!important;
}
