/* V22: geometria condivisa. Nessuna regolazione delle icone tramite font. */
:root{--ca102-top:calc(13px + env(safe-area-inset-top,0px));--ca102-side:15px;--ca102-diameter:52px;--ca102-content-top:calc(76px + env(safe-area-inset-top,0px))}
html body .food-wrap.ca96-catalog>.ca96-toolbar,html body .food-wrap.ca96-info>.ca96-toolbar,html body .food-wrap.ca80m-menu>.ca99-merchant-toolbar{top:var(--ca102-top)!important;left:var(--ca102-side)!important;right:var(--ca102-side)!important;grid-template-columns:52px minmax(0,1fr) 114px!important;min-height:58px!important;gap:8px!important}
html body .food-wrap.ca80m-menu .ca99-merchant-toolbar .ca-v82g-round{width:52px!important;height:52px!important;min-width:52px!important;border-radius:50%!important;padding:13px!important;color:#218dcc!important;background:#fff!important;border:1px solid #e5e7eb!important;box-shadow:0 3px 15px #0002!important;box-sizing:border-box!important}
html body .food-wrap.ca80m-menu .ca99-merchant-toolbar>.ca-v82g-round{color:#ed8124!important}
html body .food-wrap.ca80m-menu .ca99-merchant-toolbar .ca-v82g-round svg{width:100%!important;height:100%!important;fill:none!important;stroke:currentColor!important;stroke-width:2.5!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html body .food-wrap.ca80m-menu .ca99-merchant-toolbar .ca-v82g-heart[aria-pressed="true"] svg{fill:#e54b68!important;stroke:#e54b68!important}
html body .food-wrap.ca80m-menu .ca99-merchant-toolbar .ca-v82g-toolbar-right{display:flex!important;gap:10px!important}
@media(max-width:370px){:root{--ca102-diameter:44px}html body .food-wrap.ca80m-menu .ca99-merchant-toolbar .ca-v82g-round{width:44px!important;height:44px!important;min-width:44px!important;padding:11px!important}html body .food-wrap.ca96-catalog>.ca96-toolbar,html body .food-wrap.ca96-info>.ca96-toolbar,html body .food-wrap.ca80m-menu>.ca99-merchant-toolbar{grid-template-columns:44px minmax(0,1fr) 96px!important;gap:5px!important}}
/* Old hero/cover and header displacement: the first real merchant block starts immediately after toolbar. */
html body #root .food-wrap.ca80m-menu{padding-top:var(--ca102-content-top)!important;margin-top:0!important;transform:none!important;position:relative!important}
html body #root .food-wrap.ca80m-menu>.ca83-merchant-info{margin:0 0 3px!important;padding-top:0!important;position:static!important;transform:none!important;inset:auto!important}
html body #root .food-wrap.ca80m-menu>.ca81n-menu-tabs{margin:2px 0 4px!important;padding-top:0!important;position:static!important;transform:none!important;inset:auto!important}
html body #root .food-wrap.ca80m-menu::before,html body #root .food-wrap.ca80m-menu::after{display:none!important;content:none!important}
/* No legacy brand/header elements inside customer views; do not hide shop card logos. */
html body:has(#root .food-wrap) #root .ca80v-home-logo,html body:has(#root .food-wrap) #root .ca55-home-logo,html body:has(#root .food-wrap) #root .ca59-home-logo,html body:has(#root .food-wrap) #root .ca56-home-brand,html body:has(#root .food-wrap) #root .ca80v-home-wordmark,html body:has(#root .food-wrap) #root .ca57-brand-logo{display:none!important}
/* category content: reserve toolbar height without clipping address and heading */
html body #root .food-wrap.ca96-catalog,html body #root .food-wrap.ca96-info{padding-top:var(--ca102-content-top)!important;overflow-anchor:none!important}
html body #root .food-wrap.ca96-catalog>.ca82g-home-controls,html body #root .food-wrap.ca96-info>.ca80z-hero{margin-top:0!important;transform:none!important;position:relative!important;top:auto!important}
html body #root .food-wrap.ca96-info> :not(.ca96-toolbar){scroll-margin-top:var(--ca102-content-top)}
/* search field occupies precisely the centered category title slot. */
.ca96-toolbar.ca102-searching>.ca96-title{display:none!important}
.ca102-catalog-search{height:42px;width:100%;min-width:0;border:1px solid #aabaca;border-radius:11px;background:#fff;padding:0 7px;font-size:15px;outline-color:#218dcc;pointer-events:auto}
.ca102-results,.ca102-product-results{position:fixed!important;z-index:2147482002!important;top:calc(76px + env(safe-area-inset-top,0px))!important;left:70px!important;right:70px!important;max-height:44dvh;overflow-y:auto;background:#fff;border:1px solid #dae2e9;border-radius:13px;box-shadow:0 12px 30px #0003;padding:5px}
.ca102-results[hidden],.ca102-product-results[hidden]{display:none!important}
.ca102-result{display:block;width:100%;background:white;border:0;border-bottom:1px solid #eef0f2;text-align:left;color:#19334b;font-size:14px;padding:12px;cursor:pointer}
/* ESPLORA: remove huge legacy offset; let header start inside viewport. */
html body #root .food-wrap.ca89-offers.ca90-offers{box-sizing:border-box!important;margin-top:0!important;top:0!important;transform:none!important;padding:calc(75px + env(safe-area-inset-top,0px)) 14px 90px!important;height:calc(100dvh - 76px)!important;max-height:calc(100dvh - 76px)!important;overflow-y:auto!important;display:block!important}
html body #root .food-wrap.ca89-offers.ca90-offers>h1{display:block!important;margin:0 0 10px!important;position:static!important;transform:none!important}
/* Empty cart: use flex space available before footer, independent of initial position. */
html body #root .food-wrap.ca80b-empty-cart.ca-v82g-cart{height:calc(100dvh - 150px - env(safe-area-inset-bottom,0px))!important;min-height:400px!important;margin:0!important;padding:0 12px!important;display:flex!important;justify-content:center!important;align-items:center!important;flex-direction:column!important;position:relative!important;top:0!important;transform:none!important}
