/*
 * Tema Eatz do storefront (padrão eatz.pt, validado nas 5 lojas ativas em 2026-10-18).
 * Carregado por defeito em todas as lojas; o CSS personalizado da loja vem depois e pode sobrepor qualquer regra.
 * Depende do bloco de informação renderizado em store/index.blade.php (.ezh-*) e de public/storefront/eatz-theme.js.
 * Mantém media queries clássicas e sem CSS nesting (iOS 14+).
 */
@import "https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,300..800&display=swap";
*,:before,:after{font-variation-settings:"opsz" 24}
:root{--color-primary:#1654f4;--button-radius:999px;--font-weight-title:800;--font-size-category:22px;--font-weight-category:800;--font-size-product:15px;--font-weight-product:600;--font-size-description:13px;--font-weight-description:400;--ezb:#1654f4;--ezy:#facd39;--ezk:#15171c;--ezm:#5c6270;--ezl:#dddedd;--ezp:#eff0ef;--ezs:0 1px 2px #15171c14,0 4px 12px #15171c0f;--ez-logo-bg:#fff}
html body{-webkit-font-smoothing:antialiased;background:#fff;color:var(--ezk)!important;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif!important}
body .font-description,body .product-description,body .font-sans{font-family:inherit}

/* Navbar */
#navbar_bg{height:80px}
#navbar{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-bottom:1px solid var(--ezl);z-index:40;min-height:64px;margin-bottom:0;background:#fff!important}
#navbar a,#navbar p,#navbar span,#navbar button,#navbar svg{color:var(--ezk)!important}
#navbar img[alt=logo]{object-fit:contain;background:var(--ez-logo-bg);border:1px solid var(--ezl);border-radius:50%;width:40px;height:40px;padding:3px}
#navbar li .border-black-300{border:1px solid var(--ezl);background:var(--ezp);border-radius:999px;gap:8px;height:40px;padding:0 16px 0 14px;transition:background .2s,border-color .2s,box-shadow .2s}
#navbar li .border-black-300 svg{flex:none;width:16px;height:16px;color:var(--ezb)!important}
#navbar li .border-black-300 p{color:var(--ezk);text-align:left;margin:0;font-size:13px;font-weight:500}
#navbar li>div.shadow-md{background:var(--ezp);box-shadow:none;border:0;border-radius:999px;padding:3px}
#navbar li>div.shadow-md a{background:0 0;border-radius:999px;font-size:13px;font-weight:600;color:var(--ezm)!important}
#navbar li>div.shadow-md a.pointer-events-none{color:var(--ezk)!important;background:#fff!important;box-shadow:0 1px 2px #15171c1f!important}
@media (max-width:1023px){#navbar a[href=\/]{display:none}}

/* Banner + bloco de informação */
#home-header{max-width:1760px;margin:16px auto 188px;padding:0 16px}
#home-header>div.bg-cover{background-color:var(--ezp);border-radius:12px;height:260px;overflow:visible}
#home-header .ezh-logo{box-shadow:var(--ezs);z-index:2;background:var(--ez-logo-bg);border-radius:50%;justify-content:center;align-items:center;width:88px;height:88px;padding:4px;display:flex;position:absolute;bottom:-44px;left:16px;overflow:hidden}
#home-header .ezh-logo img{object-fit:contain;border-radius:50%;width:100%;height:100%;margin:0}
#home-header .ezh-info{text-align:left;color:var(--ezk);position:absolute;top:calc(100% + 56px);left:0;right:0}
#home-header .ezh-info h1{letter-spacing:-.02em;color:var(--ezk);margin:0;font-size:32px;font-weight:800;line-height:40px}
#home-header .ezh-meta{color:var(--ezm);margin-top:2px;font-size:14px}
#home-header .ezh-row{color:var(--ezm);flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:8px;font-size:13px;display:flex}
#home-header .ezh-row a,#home-header .ezh-row b{color:var(--ezk);font-weight:600;text-decoration:none}
#home-header .bottom-3.right-3{color:var(--ezk);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--ezs);background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}
#home-header .top-1{z-index:3;width:auto;max-width:none;top:18px;left:16px;right:16px;transform:none}
#home-header .top-1>div{justify-content:stretch}
#home-header .top-1>div>div{-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid var(--ezl);box-shadow:var(--ezs);color:var(--ezk);background:#fff;border-radius:999px;justify-content:flex-start;gap:8px;width:100%;height:36px;padding:0 14px;font-size:13px;font-weight:500}
#home-header .top-1 svg{color:var(--ezb);width:16px;height:16px}
#home-header .top-1 p{text-align:left;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block!important}
@media (max-width:639px){#home-header{margin:0 0 216px;padding:0}#home-header>div.bg-cover{border-radius:0;height:150px}#home-header .ezh-logo{width:72px;height:72px;bottom:-36px}#home-header .ezh-info{padding:0 16px;top:calc(100% + 44px)}#home-header .ezh-info h1{font-size:26px;line-height:32px}}
@media (min-width:640px) and (max-width:1023px){#home-header>div.bg-cover{height:220px}}

/* Menu lateral + tabs */
section.aaa{width:100%;max-width:1760px;margin:0 auto;padding:0 16px;position:relative}
@media (min-width:1024px){section.aaa{grid-template-columns:200px minmax(0,1fr);gap:0 32px;display:grid}section.aaa>#all_categories,section.aaa>#all_categories.fixed{grid-area:1/1!important;width:auto!important;position:sticky!important;left:auto!important}section.aaa>#products{grid-area:1/2}}
#all_categories{z-index:30;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;position:sticky!important;top:80px!important}
#all_categories .menuscroll{border-bottom:1px solid var(--ezl);scrollbar-width:none;gap:20px;padding:0!important}
#all_categories .menuscroll::-webkit-scrollbar{display:none}
#all_categories .menu-item a{border-bottom:2px solid #0000;color:var(--ezm)!important;padding:12px 0!important;font-size:14px!important;font-weight:600!important}
#all_categories .menu-item a:hover,#all_categories .active:not(.active~*) a{border-color:var(--ezk);color:var(--ezk)!important}
@media (min-width:1024px){#all_categories{align-self:start;top:80px!important}#all_categories>h2{letter-spacing:.06em;line-height:20px;color:var(--ezm)!important;padding:0 12px 8px!important;font-size:13px!important;font-weight:700!important}#all_categories .menuscroll{border:0;gap:2px}#all_categories .menu-item{width:100%}#all_categories .menu-item a{border-radius:6px;justify-content:space-between;gap:8px;width:100%;line-height:20px;transition:background .15s,color .15s;border:0!important;padding:8px 12px!important;font-weight:400!important;display:flex!important}#all_categories .menu-item a:hover,#all_categories .active:not(.active~*) a{background:var(--ezp);color:var(--ezk)!important}#all_categories .active:not(.active~*) a{font-weight:700!important}#all_categories .ezc{color:var(--ezm);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;display:inline!important}}
/* Menu lateral: nomes longos quebram em várias linhas (o .menuscroll tem whitespace-nowrap para o scroll horizontal no telemóvel) e o contador fica alinhado com a primeira linha. */
@media (min-width:1024px){#all_categories .menu-item a{white-space:normal;overflow-wrap:anywhere;align-items:flex-start!important;text-align:left}#all_categories .ezc{flex:none;line-height:20px}}
.ezc{display:none}
@media (hover:none){#all_categories .menu-item:not(.active) a:hover{border-color:#0000;background:0 0;color:var(--ezm)!important}}

/* Cartões de produto */
.category-group{margin:0;padding-top:24px}
.category-group>div.flex{margin:0 0 12px}
.category-group h2{letter-spacing:-.01em;color:var(--ezk)}
.category-group>div.grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));display:grid;gap:12px!important;padding:10px 0 0!important}
.category-group>div.grid>div{border:1px solid var(--ezl);box-shadow:none;background:#fff;border-radius:16px;order:0;max-width:none;min-height:112px;overflow:visible;transition:border-color .15s,box-shadow .15s}
.category-group>div.grid>div>.grid{height:100%;display:flex}
.category-group .col-span-5{flex-direction:column;flex:1;min-width:0;padding:12px;display:flex}
.category-group .col-span-5>div.line-clamp-2{color:var(--ezk);filter:none;white-space:normal;line-height:20px}
.category-group .product-card-description{color:var(--ezm);white-space:normal;margin-top:4px;line-height:18px}
.category-group .col-span-5>div.flex-col{margin-top:auto}
.category-group p.font-black{color:var(--ezk);font-size:14px;font-weight:700!important}
.category-group p.line-through{color:var(--ezm);order:2;font-size:12px!important;font-weight:400!important}
.category-group .col-span-3{flex:0 0 116px;align-items:center;display:flex;position:relative;padding:12px 12px 12px 0!important}
.category-group .col-span-3>div:first-child{background-color:var(--ezp);border-radius:10px;flex:none;height:104px;width:104px!important}
.category-group .col-span-3>div.absolute{height:32px;bottom:18px!important;right:18px!important}
.category-group .col-span-3>div.absolute>div{border:1px solid var(--ezl);box-shadow:var(--ezs);color:var(--ezk);background:#fff;width:auto;min-width:32px;height:32px}
[style*=noimage]{display:none!important}
@media (max-width:639px){section.aaa{padding:0}#all_categories .menuscroll{scroll-snap-type:x mandatory;scroll-padding:0 16px;padding:0 16px!important}#all_categories .menu-item{scroll-snap-align:start}.category-group{padding:16px 16px 0}.category-group>div.grid{grid-template-columns:1fr;gap:0!important}.category-group>div.grid>div{border:0;border-bottom:1px solid var(--ezl);border-radius:0}.category-group>div.grid>div:hover{box-shadow:none!important}.category-group .col-span-5{padding:12px 0}.category-group .col-span-3{flex-basis:100px;justify-content:flex-end;padding:12px 0!important}.category-group .col-span-3>div:first-child{height:88px;width:88px!important}.category-group .col-span-3>div.absolute{bottom:18px!important;right:6px!important}}

/* Produtos em destaque: carrossel no topo do menu */
.category-group.ezhl>div.grid{scroll-snap-type:x mandatory;scrollbar-width:none;display:flex;overflow-x:auto;gap:12px!important;padding:12px 10px 10px 2px!important}
.category-group.ezhl>div.grid::-webkit-scrollbar{display:none}
.category-group.ezhl>div.grid>div{scroll-snap-align:start;flex:0 0 176px;min-height:0}
.category-group.ezhl>div.grid>div>.grid{flex-direction:column-reverse}
.category-group.ezhl .col-span-3{flex:none;padding:8px 8px 0!important}
.category-group.ezhl .col-span-3>div:first-child{height:160px;width:100%!important}
.category-group.ezhl .col-span-5{padding:8px 10px 12px}
.category-group.ezhl .col-span-5>div.line-clamp-2{-webkit-line-clamp:1;font-size:14px!important}
.category-group.ezhl .product-card-description{line-height:16px;font-size:12px!important}
.category-group.ezhl .col-span-3>div.absolute{bottom:8px!important;right:14px!important}
/* Sem foto: o "+" fica no canto inferior do cartão em vez de sair por cima dele */
.category-group.ezhl>div.grid>div{position:relative}
/* Produto sem foto: quadrado cinzento com talheres, do tamanho da foto, para os cartões ficarem alinhados */
.category-group.ezhl [style*=noimage],.category-group.ez2 [style*=noimage]{background:var(--ezp) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23a3a7b0' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 2v7c0 1.1.9 2 2 2h4a2 2 0 0 0 2-2V2'/%3E%3Cpath d='M7 2v20'/%3E%3Cpath d='M21 15V2a5 5 0 0 0-5 5v6c0 1.1.9 2 2 2h3Zm0 0v7'/%3E%3C/svg%3E") center/32px no-repeat!important;display:block!important}
@media (max-width:639px){.category-group.ezhl>div.grid{padding:12px 0 10px!important}.category-group.ezhl>div.grid>div{border:1px solid var(--ezl);border-radius:14px;flex-basis:150px}.category-group.ezhl .col-span-3>div:first-child{height:134px}}

/* Tags ("Mais Vendido", "Popular"…) */
.category-group>div.grid>div>.absolute.top-0{z-index:3;max-width:none;top:-10px;left:auto;right:-8px}
.category-group>div.grid>div>.absolute.top-0 span{white-space:nowrap;border:2px solid #fff;border-radius:999px;max-width:none;padding:2px 9px;font-size:11px;font-weight:700;line-height:16px;display:inline-block;box-shadow:0 3px 10px #facd3973,0 1px 2px #15171c26;background:var(--ezy)!important;color:var(--ezk)!important}
@media (max-width:639px){.category-group>div.grid>div>.absolute.top-0{right:-4px}.category-group:not(.ezhl)>div.grid>div>.absolute.top-0{top:4px;right:0}}

/* Seletor Delivery / Take away e idioma */
@media (min-width:768px){#navbar li>div.shadow-md{position:relative}#navbar li>div.shadow-md:before{content:"";--f:100%;background:#fff;border-radius:999px;width:calc(50% - 3px);animation:.45s ezt;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 2px #15171c1f}#navbar li>div.shadow-md:has(a:last-child.pointer-events-none):before{--f:0%;transform:translate(100%)}#navbar li>div.shadow-md>a{z-index:1;box-shadow:none;background:0 0;justify-content:center;width:50%;min-width:112px;height:34px;position:relative}#navbar li>div>p{transition:width .3s}#navbar li:hover>div>p{width:clamp(190px,100vw - 640px,480px)!important}}
@keyframes ezt{0%{transform:translateX(var(--f))}}
#navbar li.language-switcher button{border:1px solid var(--ezl);background:#fff;border-radius:999px;padding:6px 10px}
#navbar li.language-switcher>div>button{height:40px;padding:0 12px}
#navbar li.language-switcher button img{display:none}
#navbar li.language-switcher>div>button:before{content:"";background:currentColor;flex:none;width:16px;height:16px;--m:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='10'/><path d='M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20'/><path d='M2 12h20'/></svg>") 50%/contain no-repeat;-webkit-mask:var(--m);mask:var(--m)}
#navbar .language-switcher .absolute{padding:6px!important;min-width:200px;border-radius:16px!important;border:1px solid var(--ezl)!important;box-shadow:0 12px 32px #15171c1f!important;margin-top:8px!important;display:flex;flex-direction:column;gap:2px}
#navbar .language-switcher .absolute button{border:0!important;border-radius:10px!important;padding:12px 14px!important;background:0 0!important;width:100%;height:auto!important;font-size:15px!important;font-weight:500!important;justify-content:flex-start;gap:10px}
#navbar .language-switcher .absolute button:hover,#navbar .language-switcher .absolute .text-primary{background:var(--ezp)!important}
#navbar .language-switcher .absolute .text-primary{font-weight:700!important}
#navbar .language-switcher .absolute svg{color:var(--ezb)!important;margin-left:auto}
#navbar .bg-red-500{color:#fff!important;background:var(--ezcb,#16a34a)!important}
#navbar li>div>p{white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:unset;display:block;overflow:hidden}

/* Estado aberto / fechado */
#home-header .ezh-status{align-items:center;gap:8px;display:inline-flex}
#home-header .ezh-status b{background:var(--ezp);color:var(--ezk);border-radius:999px;padding:2px 9px 2px 19px;font-size:11px;font-weight:700;position:relative}
#home-header .ezh-status b:empty{display:none}
#home-header .ezh-status b:before{content:"";background:#9aa0aa;border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:50%;left:8px}
#home-header .ezh-status.off b{color:#fff;background:#dc2626}
#home-header .ezh-status.on b{color:#fff;background:#16a34a}
#home-header :is(.ezh-status.on,.ezh-status.off) b:before{background:#fff}
#home-header .ezh-row :is(.ezh-status.on,.ezh-status.off) b{color:#fff}
#home-header .ezh-status em{color:var(--ezm);font-style:normal}
#home-header:has(.ezh-status.on,.ezh-status.off) :is(.bottom-3.right-3,.bottom-1){display:none!important}

/* Ícones na linha de contactos */
#home-header .ezh-row>:is(b,a,.ezh-addr){align-items:center;gap:6px;display:inline-flex}
#home-header .ezh-row>:is(b,a,.ezh-addr):before{content:"";background:var(--ezm);-webkit-mask:var(--i)center/contain no-repeat;mask:var(--i)center/contain no-repeat;flex:none;width:16px;height:16px}
#home-header .ezh-row>:is(b,.ezh-addr){--i:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'><path d='M12 21s-6.5-5.4-6.5-11a6.5 6.5 0 0 1 13 0c0 5.6-6.5 11-6.5 11ZM12 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5Z'/></svg>")}
#home-header .ezh-row>a[href^=tel]{--i:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'><path d='M5 4h4l2 5-2.5 1.5a11 11 0 0 0 5 5L15 13l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2Z'/></svg>")}
#home-header .ezh-row>a[href*=instagram]{--i:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'><rect x='3' y='3' width='18' height='18' rx='5'/><circle cx='12' cy='12' r='4'/><circle cx='17.3' cy='6.7' r='.6' fill='black'/></svg>")}
#home-header .ezh-row>a[href*=instagram]:before{background:var(--ezk)}

/* Taxa de entrega */
.ezfee{display:none}
#home-header .ezfee.on{vertical-align:-2px;align-items:center;gap:5px;margin-left:10px;line-height:20px;display:inline-flex}
#home-header .ezfee:before{content:"";background:var(--ezm);-webkit-mask:var(--i);mask:var(--i);--i:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='18.5' cy='17.5' r='3.5'/><circle cx='5.5' cy='17.5' r='3.5'/><circle cx='15' cy='5' r='1'/><path d='M12 17.5V14l-3-3 4-3 2 3h2'/></svg>") center/contain no-repeat;width:15px;height:15px}
.ezfee i{color:var(--ezm);font-style:normal;font-weight:600}
#home-header .ezfee.free{background:#16a34a;border-radius:999px;padding:1px 10px 1px 8px;box-shadow:0 0 0 3px #16a34a26}
#home-header .ezfee.free i{color:#fff;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800}
#home-header .ezfee.free:before{background:#fff}
#home-header .ezf2{margin-left:0}
@media (max-width:639px){#home-header .ezh-meta .ezfee{display:none!important}}
@media (min-width:640px){.ezf2{display:none!important}}

/* Pesquisa (lupa que expande) */
#products .p-2.mb-4{z-index:5;flex-direction:row;justify-content:flex-end;margin:0;padding:0;position:absolute;top:-140px;right:16px}
#products .p-2.mb-4>:not(.relative){display:none!important}
#products .p-2.mb-4>.relative{flex:none;width:44px;max-width:none;margin-left:auto;transition:width .3s}
#products .p-2.mb-4 input{border:1px solid var(--ezl);background:var(--ezp);box-shadow:none;cursor:pointer;border-radius:999px;width:100%;height:44px;padding:0 0 0 42px;font-size:16px}
#products .p-2.mb-4 input::placeholder{opacity:0;transition:opacity .2s}
#products .p-2.mb-4 svg{left:12px!important}
@media (max-width:639px){#products .p-2.mb-4{padding:0;top:-172px;right:16px}}
#products .p-2.mb-4>.relative:is(:hover,:focus-within){width:min(360px,calc(100vw - 32px))}
#products .p-2.mb-4>.relative:is(:hover,:focus-within) input{background:#fff;cursor:text}
#products .p-2.mb-4>.relative:is(:hover,:focus-within) input::placeholder{opacity:1}
#products .p-2.mb-4>.relative:has(input:not(:placeholder-shown)){width:min(360px,calc(100vw - 32px))}
@media (min-width:768px){#products .p-2.mb-4{right:48px}}

/* Larguras e margens (web) */
@media (min-width:768px){#home-header,section.aaa,section.border-t>.container{padding:0 48px}#navbar .md\:container{max-width:1664px;padding:0}}

/* Rodapé */
section.border-t{color:#fff;border:0;margin-top:24px;background:var(--ezk)!important}
section.border-t>.container{max-width:1760px;padding:0 16px}
section.border-t .pt-6{padding:32px 0 4px}
section.border-t .grid{text-align:center;grid-template-columns:1fr;gap:22px;display:grid}
section.border-t .grid:before{content:"";background:#fff url(/getimage/logo) 50%/84% no-repeat;border-radius:50%;justify-self:center;width:64px;height:64px;box-shadow:0 0 0 1px #ffffff26}
section.border-t .grid>div *{color:#c9ccd3!important;font-size:14px;line-height:1.55;text-decoration:none}
section.border-t .grid h4{margin:0 0 10px;font-size:0;line-height:0}
section.border-t .grid h4:before{letter-spacing:.12em;text-transform:uppercase;color:#fff;background:linear-gradient(var(--ezy),var(--ezy))bottom center/24px 2px no-repeat;padding-bottom:10px;font:700 12px/1 Inter,sans-serif;display:block;content:attr(data-title)}
section.border-t .mt-10{color:#8b909b;border-top:1px solid #ffffff1a;gap:6px;margin-top:24px;padding:14px 0 18px;font-size:12px}
section.border-t .mt-10:before{content:attr(data-copy)}
section.border-t .mt-10 img{filter:brightness(0)invert();opacity:.7;flex:none;width:auto;max-width:none;height:12px}
@media (min-width:768px){section.border-t .grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:40px}section.border-t .grid:before{display:none}section.border-t .grid h4:before{background-position:0 100%}}

/* Cookies */
#cookies-policy{background:0 0;width:min(300px,100vw - 24px);height:auto;top:auto!important;bottom:12px!important;left:12px!important;right:auto!important}
#cookies-policy>div{border:1px solid var(--ezl);box-shadow:var(--ezs);width:auto;background:#fff!important;border-radius:16px!important;padding:12px!important}
#cookies-policy .cookies__title,#cookies-policy svg,#cookies-policy hr{display:none}
#cookies-policy :is(.cookies__wrapper,.cookies__container){padding:0!important}
#cookies-policy .cookies__intro{max-height:4.4em;font:400 12px/1.45 Inter,sans-serif;overflow:hidden}
#cookies-policy .cookies__intro *{margin:0;color:var(--ezm)!important}
#cookies-policy .cookies__actions{flex-direction:row!important;gap:6px!important;margin-top:10px!important}
#cookies-policy .cookiesBtn{flex:1;margin:0}
#cookies-policy .cookiesBtn__link{height:32px;border:1px solid var(--ezl)!important;color:var(--ezk)!important;background:#fff!important;border-radius:999px!important;padding:0!important;font-size:12px!important;font-weight:600!important}
#cookies-policy .cookiesBtn--accept .cookiesBtn__link{background:var(--ezb)!important;border-color:var(--ezb)!important;color:#fff!important}
#cookies-policy .cookies__btn{color:var(--ezm)!important;justify-content:center!important;padding:6px 0 0!important;font:500 12px Inter,sans-serif!important}
#cookies-policy :is(.cookies__btn,.cookies__actions,.cookies__wrapper,.cookies__container){box-shadow:none!important;border:0!important}
#cookies-policy *{font-family:Inter,sans-serif!important}

/* Popup de produto */
.pac-container{border:1px solid var(--ezl);box-shadow:var(--ezs);border-radius:14px;font-family:Inter,sans-serif}
#modal-product-addon{padding:0!important}
#modal-product-addon>div.absolute{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15171c99!important}
#modal-product-addon>div.relative{max-width:560px;max-height:88svh;overflow:hidden;border-radius:20px!important;height:auto!important;box-shadow:0 20px 60px #15171c40!important}
#modal-product-addon>div.relative>div.overflow-y-auto{max-height:88svh}
#modal-product-addon>div.relative>svg{z-index:5;box-shadow:var(--ezs);cursor:pointer;background:#fff;border-radius:50%;padding:9px;position:absolute;top:12px;right:12px;width:36px!important;height:36px!important}
#modal-product-addon .h-60{height:240px!important}
#modal-product-addon .h-60>div{border-radius:0!important}
#modal-product-addon .p-4.pb-0{text-align:left;padding:16px 20px 8px!important}
#modal-product-addon h2.product-card-title{text-align:left;color:var(--ezk)!important;font-size:22px!important;font-weight:800!important}
#modal-product-addon .product-card-description{text-align:left;margin-top:4px;color:var(--ezm)!important;font-size:14px!important}
#modal-product-addon .p-4.pb-0>.absolute.top-0 span{margin:-28px 16px 0 0;background:var(--ezy)!important;color:var(--ezk)!important;border-radius:4px!important;font-size:11px!important}
#modal-product-addon .bg-slate-200{text-align:left;background:var(--ezp)!important;padding:10px 20px!important}
#modal-product-addon .bg-red-100{color:#b42318!important;background:#fde8e8!important;border-color:#f5b5b5!important;border-radius:999px!important}
#modal-product-addon .bg-gray-100{border-color:var(--ezl)!important;background:#fff!important;border-radius:999px!important}
#modal-product-addon .bg-teal-100{background:var(--ezk)!important;border-color:var(--ezk)!important;color:#fff!important;border-radius:999px!important}
#modal-product-addon .bg-slate-100{background:#fff!important;padding:12px 20px!important}
#modal-product-addon input[type=checkbox]{accent-color:var(--ezb)}
#modal-product-addon textarea{border:1px solid var(--ezl)!important;border-radius:12px!important;font-size:16px!important}
#modal-product-addon .pb-10{padding-bottom:0!important}
#modal-product-addon .text-center.mt-4{border-top:1px solid var(--ezl);background:#fff;padding:12px 20px 16px;position:sticky;bottom:0;margin:0!important}
#modal-product-addon .text-center.mt-4 button{width:100%;background:var(--ezb)!important;border-radius:999px!important;padding:14px!important;font-size:15px!important;font-weight:700!important}
@media (max-width:639px){#modal-product-addon{align-items:flex-end!important}#modal-product-addon>div.relative{max-height:92svh!important;animation:.3s ezup;border-radius:24px 24px 0 0!important;margin:auto 0 0!important}}
@keyframes ezup{0%{opacity:0;transform:translateY(40px)}}

/* Popup de morada */
#modal-id,#modal-product-addon{height:100svh;min-height:0}
#modal-id>div.absolute,#modal-product-addon>div.absolute{bottom:-40vh}
#modal-id>div.absolute{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15171c99}
#modal-id>div.relative{border-radius:20px;max-width:520px;overflow:hidden;box-shadow:0 20px 60px #15171c40}
#modal-id>div.relative>div.border-b{border:0;padding:20px 20px 8px}
#modal-id h2{color:var(--ezk);gap:12px;font-size:18px;font-weight:800}
#modal-id h2 svg{color:var(--ezb);background:#e6edfe;border-radius:50%;width:40px;height:40px;padding:10px}
#modal-id>div.relative>div.border-b button{background:var(--ezp);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}
#modal-id .p-4{padding:8px 20px 20px}
#modal-id .space-y-4>.relative>.absolute{padding-left:18px}
#modal-id input{border:1px solid var(--ezl);background:var(--ezp);box-shadow:none;color:var(--ezk);border-radius:999px;height:56px;padding-left:48px;font-size:16px}
#modal-id input:focus{border-color:var(--ezb)!important;background:#fff!important;box-shadow:0 0 0 3px #1654f41f!important}
#modal-id .bg-blue-50{background:0 0;border:0;padding:4px 0 0}
#modal-id .bg-blue-50 p{color:var(--ezm);font-size:13px}
#modal-id .bg-blue-50 a{border:1.5px solid var(--ezk);color:var(--ezk);border-radius:999px;justify-content:center;margin:10px 0 0;padding:14px;font:700 14px Inter,sans-serif;text-decoration:none;transition:background .2s,color .2s;display:flex}
#modal-id .bg-blue-50 a:hover{background:var(--ezk);color:#fff}
@media (max-width:639px){#modal-id{align-items:flex-end;padding:0}#modal-id>div.relative{border-radius:24px 24px 0 0;max-width:none;margin:auto 0 0;animation:.3s ezup}#modal-id>div.relative:before{content:"";background:var(--ezl);border-radius:2px;width:40px;height:4px;margin:10px auto 0;display:block}}

/* Carrinho e checkout */
section.container.min-h-80{max-width:1100px}
section.container.min-h-80 h1{letter-spacing:-.02em;font-size:26px!important;font-weight:800!important}
section.container.min-h-80 .border.rounded-lg{border-color:var(--ezl)!important;background:#fff!important;border-radius:16px!important}
section.container.min-h-80 .bg-amber-50{background:#fff8e1!important;border:1px solid #f5d77a!important;border-radius:16px!important}
section.container.min-h-80 a.btn{font-weight:600;border:1px solid var(--ezl)!important;color:var(--ezk)!important;background:#fff!important;border-radius:999px!important}
section.container :is(button[class*=bg-gradient],.bg-primary,.bg-black){white-space:nowrap;background:var(--ezb)!important;box-shadow:none!important;border-radius:999px!important}
section.container input{border-color:var(--ezl)!important;border-radius:12px!important;font-size:16px!important}

/* Movimento */
@supports (animation-timeline:view()){.category-group{animation:linear both ezin;animation-timeline:view();animation-range:entry 0% entry 30%}}
@keyframes ezin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* Pacote de interação mobile (barra inferior, pesquisa, popups, toast) */
#ezbn{display:none}
@media (max-width:767px){
#ezbn{position:fixed;left:0;right:0;bottom:0;z-index:45;display:flex;justify-content:space-around;align-items:flex-start;padding:8px 4px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--ezl);box-shadow:0 -4px 16px rgba(21,23,28,.06);font:600 11px Inter,sans-serif;color:var(--ezm)}
#ezbn>a,#ezbn>button{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:60px;padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
#ezbn>[data-ezbn=menu]{color:var(--ezb)}
#ezbn span{white-space:nowrap}
.ezbn-badge{position:absolute;top:-5px;right:10px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--ezcb,#16a34a);color:#fff;font-size:10px;font-weight:800;display:none;align-items:center;justify-content:center}
.ezbn-badge.on{display:flex}
html.ezbn-on body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
html.ezbn-on #navbar [data-hs-overlay="#mobile-menu"],html.ezbn-on #navbar .ezbn-hide,html.ezbn-on .animate-bounce-subtle{display:none!important}
html.ezbn-on #cookies-policy{bottom:calc(88px + env(safe-area-inset-bottom))!important}
html.ezso #products .p-2.mb-4{z-index:60!important}
html.ezso #products .p-2.mb-4>.relative{position:fixed!important;top:0;left:0;right:0;width:auto!important;max-width:none!important;height:var(--ezsh,64px);z-index:60;background:#fff;padding:0 16px;display:flex;align-items:center;box-shadow:0 1px 0 var(--ezl)}
html.ezso #products .p-2.mb-4>.relative svg{left:28px!important}
html.ezso #products .p-2.mb-4 .ezcx{display:flex}
#modal-id.ezmt{align-items:flex-start!important}
#modal-id.ezmt>div.relative{margin:max(10px,env(safe-area-inset-top)) 0 auto!important;border-radius:20px!important;max-height:calc(100svh - 20px)!important}
}
.ezcx{display:none;position:absolute;right:24px;top:50%;transform:translateY(-50%);width:30px;height:30px;align-items:center;justify-content:center;background:#eceef1;border:0;border-radius:50%;color:var(--ezm);padding:0;z-index:2}
@media (max-width:639px){
#modal-id>div.relative{max-height:92svh!important}
#modal-product-addon>div.relative,#modal-id>div.relative{touch-action:pan-y}
#modal-product-addon .overflow-y-auto,#modal-id .overflow-y-auto{overscroll-behavior:contain}
html.ezlock{overscroll-behavior:none}
html.ezlock body{overflow:hidden!important}
}
#eztoast{position:fixed;left:50%;bottom:24px;z-index:10001;padding:10px 16px;border-radius:999px;background:var(--ezk);color:#fff;font:600 13px Inter,sans-serif;white-space:nowrap;box-shadow:0 8px 24px rgba(21,23,28,.25);opacity:0;transform:translate(-50%,8px);pointer-events:none;transition:opacity .2s,transform .25s}
#eztoast.on{opacity:1;transform:translate(-50%,0)}
@media (max-width:767px){html.ezbn-on #eztoast{bottom:calc(88px + env(safe-area-inset-bottom))}}

/* Morada no bloco de informação: abre a escolha da app de mapas */
#home-header .ezh-addr{background:none;border:0;padding:0;margin:0;font:inherit;color:var(--ezk);font-weight:600;cursor:pointer;text-align:left}
#home-header .ezh-addr b{font-weight:inherit}
#home-header .ezh-addr:hover b{text-decoration:underline;text-underline-offset:3px}

#ezmaps{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}
#ezmaps[hidden]{display:none}
#ezmaps>.absolute{position:absolute;inset:0;background:#15171c99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
#ezmaps>.relative{position:relative;width:100%;max-width:400px;background:#fff;border-radius:20px;padding:20px;box-shadow:0 20px 60px #15171c40;font-family:Inter,sans-serif;animation:.25s ezup}
#ezmaps h2{display:flex;align-items:center;gap:12px;margin:0 44px 4px 0;font-size:18px;font-weight:800;color:var(--ezk)}
#ezmaps h2 svg{flex:none;width:40px;height:40px;padding:10px;border-radius:50%;background:#e6edfe;color:var(--ezb)}
#ezmaps p{margin:0 0 14px 52px;color:var(--ezm);font-size:13px;line-height:18px}
#ezmaps a{display:flex;align-items:center;justify-content:center;height:52px;margin-top:8px;border:1px solid var(--ezl);border-radius:999px;color:var(--ezk);font-size:15px;font-weight:700;text-decoration:none;transition:background .2s,border-color .2s}
#ezmaps a:hover{background:var(--ezp);border-color:var(--ezk)}
#ezmaps [data-ezx]{position:absolute;top:18px;right:18px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:var(--ezp);color:var(--ezk);cursor:pointer}

/* Mobile: grupos de cartões pequenos em 2 colunas (cartão vertical, foto quadrada em cima) */
@media (max-width:639px){
.category-group.ez2>div.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;padding-top:10px!important}
.category-group.ez2>div.grid>div{border:1px solid var(--ezl);border-radius:14px;min-height:0;position:relative}
.category-group.ez2>div.grid>div>.grid{flex-direction:column-reverse}
.category-group.ez2 .col-span-3{flex:none;justify-content:stretch;padding:8px 8px 0!important}
.category-group.ez2 .col-span-3>div:first-child{width:100%!important;height:auto;aspect-ratio:1/1}
.category-group.ez2 .col-span-3>div.absolute{bottom:8px!important;right:14px!important}
.category-group.ez2 .col-span-5{padding:8px 10px 12px}
.category-group.ez2 .col-span-5>div.line-clamp-2{-webkit-line-clamp:2;font-size:14px!important;line-height:18px}
.category-group.ez2 .product-card-description{-webkit-line-clamp:2;font-size:12px!important;line-height:16px}
.category-group.ez2:not(.ezhl)>div.grid>div>.absolute.top-0{top:-10px;right:-4px}
}

/* Popup de anúncio: arrastar para fechar no mobile */
@media (max-width:639px){
#modal-ad>div.relative,#ezmaps>.relative{touch-action:pan-y}
#modal-ad .overflow-y-auto{overscroll-behavior:contain}
#ezmaps{align-items:flex-end;padding:0}
#ezmaps>.relative{max-width:none;border-radius:24px 24px 0 0;padding:14px 16px calc(16px + env(safe-area-inset-bottom))}
#ezmaps>.relative:before{content:"";display:block;width:40px;height:4px;margin:0 auto 14px;border-radius:2px;background:var(--ezl)}
#ezmaps [data-ezx]{top:30px}
}
/* Botão "Finalizar pedido" no desktop: redondo, preto, ícone do saco e contador verde (canto inferior direito) */
@media (min-width:768px){
.ez-cart-fab{left:auto!important;right:24px;bottom:24px!important;transform:none!important;animation:none!important}
.ez-cart-fab>a{position:relative;width:56px;height:56px;padding:0!important;gap:0!important;border:0!important;border-radius:50%!important;justify-content:center;background:var(--ezk)!important;box-shadow:0 6px 20px #15171c40!important}
.ez-cart-fab>a:hover{transform:scale(1.06)}
.ez-cart-fab>a>div:first-child{width:auto;height:auto;background:none!important}
.ez-cart-fab>a>div:first-child svg{width:22px;height:22px}
.ez-cart-fab>a>div:nth-child(2),.ez-cart-fab>a>svg{display:none!important}
.ez-cart-fab-count{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--ezcb,#16a34a);color:#fff;font-size:12px;font-weight:800;line-height:22px;text-align:center;box-shadow:0 0 0 2px #fff;display:block!important}
}
/* Topo mobile: menu à esquerda, Delivery/Take away ao centro e carrinho à direita, em botões redondos.
   --eznf (texto do menu) e --ezno (fundo do topo) vêm da Aparência da loja quando configurados. */
:root{--eznf:var(--ezk);--ezno:#fff;--ezcb:#16a34a}
@media (max-width:767px){
html.ezbn-on #navbar [data-hs-overlay="#mobile-menu"],html.ezbn-on #navbar li.ezbn-hide{display:flex!important}
#navbar .md\:container{width:100%}
#navbar .md\:container>.grid{grid-template-columns:auto 1fr;gap:12px}
#navbar ul.right{justify-content:space-between;gap:12px}
#navbar ul.right>li:not(.menu-item){margin:0 auto}
#navbar [data-hs-overlay="#mobile-menu"],#navbar li.ezbn-hide>a{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid color-mix(in srgb,var(--eznf) 22%,transparent);background:transparent!important;align-items:center;justify-content:center;color:var(--eznf)!important}
#navbar [data-hs-overlay="#mobile-menu"] svg,#navbar li.ezbn-hide>a svg{width:20px;height:20px;color:var(--eznf)!important}
#navbar li.ezbn-hide>a>span{top:-2px!important;right:-2px;left:auto;transform:none!important;min-width:20px;width:auto;height:20px;padding:0 5px;box-shadow:0 0 0 2px var(--ezno)}
html.ezbn-on #navbar li>div.shadow-md{background:color-mix(in srgb,var(--eznf) 6%,transparent)!important;border:1px solid color-mix(in srgb,var(--eznf) 22%,transparent)!important;padding:3px!important}
html.ezbn-on #navbar li>div.shadow-md a{flex-direction:row!important;gap:6px;padding:0 14px!important;height:36px;font-size:14px!important;font-weight:500!important;color:var(--eznf)!important;background:transparent!important}
html.ezbn-on #navbar li>div.shadow-md a.pointer-events-none{background:var(--ezna,var(--ezb))!important;color:var(--eznat,var(--ezno))!important;box-shadow:none!important}
html.ezbn-on #navbar li>div.shadow-md a svg{width:16px;height:16px}
}
