/* Complementos da loja ao neco.css do layout aprovado */
picture{display:contents}
.thumb picture img,.gallery-main picture img{width:100%;height:100%;object-fit:contain}
.listitem picture img{width:84px;height:84px;object-fit:contain;border-radius:10px;background:var(--grey-50)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Menu de categorias */
header{position:relative}
.megamenu{position:absolute;left:0;right:0;top:100%;z-index:30;background:#fff;border-top:1px solid var(--grey-200);box-shadow:var(--shadow-pop)}
.megamenu .wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px 28px;padding-top:24px;padding-bottom:28px;max-height:70vh;overflow:auto}
.mm-col{display:grid;gap:6px;align-content:start}
.mm-col a{font:400 13.5px/1.4 var(--body);color:var(--grey-500)}
.mm-col a:hover{color:var(--brand)}
.mm-col .mm-topo{font:600 15px/1.3 var(--display);color:var(--ink-800);margin-bottom:4px}
[data-abrir-categorias]{cursor:pointer}

/* Listagem */
.listing-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin:16px 0 20px;flex-wrap:wrap}
.listing-head h1{margin:0}
.listing-head p{margin:4px 0 0}
.ordem select{min-width:190px}
.subcats{margin-bottom:24px;flex-wrap:wrap}
.subcats .chip small{color:var(--grey-400);margin-left:4px}
.listing-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start}
.filters{position:sticky;top:16px}
.filters-inner{display:grid;gap:24px}
.fgroup h3{font:600 14px/1.3 var(--display);margin:0 0 10px;color:var(--ink-800)}
.fscroll{max-height:320px;overflow:auto;display:grid;gap:2px;padding-right:6px}
.fopt{display:flex;align-items:center;gap:10px;padding:6px 0;font:400 14px/1.3 var(--body);color:var(--ink-700,#3F2C2E)}
.fopt small{color:var(--grey-400);margin-left:auto}
.fopt .box{width:16px;height:16px;border:1.5px solid var(--grey-300);border-radius:4px;flex:none}
.fopt.on .box{background:var(--brand);border-color:var(--brand);box-shadow:inset 0 0 0 3px #fff}
.fopt:hover{color:var(--brand)}
.only-mobile{display:none}
.paginacao{display:flex;gap:8px;justify-content:center;margin:36px 0 8px;flex-wrap:wrap}
.paginacao a,.paginacao b{min-width:40px;height:40px;padding:0 12px;display:grid;place-items:center;border:1px solid var(--grey-200);border-radius:10px;font:600 14px/1 var(--display)}
.paginacao b{background:var(--brand);border-color:var(--brand);color:#fff}
.paginacao a:hover{border-color:var(--brand);color:var(--brand)}
.vazio{text-align:center;padding:56px 16px;display:grid;gap:14px;justify-items:center}
.vazio h2{margin:0}
.pagina-erro{min-height:50vh;align-content:center}
.search.grande{max-width:520px;width:100%}

/* Produto */
.parcel-lg{font-size:14px;margin-top:-8px}
.buy .actions button,.buy .actions a{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
.buy .actions button:hover,.buy .actions a:hover{color:var(--brand)}
.buy .actions button.on{color:var(--brand)}
.callout.receita{display:flex;gap:12px;padding:16px 18px;align-items:flex-start}
.callout.receita b{display:block;font:600 14px/1.35 var(--display);color:var(--ink-800);margin-bottom:4px}
.callout.receita p{margin:0;font-size:13.5px}
.callout.receita .ic{flex:none;margin-top:2px;color:var(--amber-600,#B45309)}
.ship .opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--grey-200);border-radius:10px}
.ship .opt b{font:600 14px/1.3 var(--display);color:var(--ink-800)}
.ship .opt small{display:block;color:var(--grey-500);font-size:12.5px}
.ship .opt .v{margin-left:auto;font:600 14px/1 var(--display);white-space:nowrap}
.ship .opt .v.gratis{color:var(--green-600,#1A9E5C)}
.panel h2,.panel h3{margin:8px 0 0}

/* WhatsApp flutuante */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:35;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.wa-float:hover{transform:scale(1.05)}
.is-pdp .wa-float{bottom:92px}

@media (max-width:900px){
  .listing-body{grid-template-columns:1fr}
  .filters{position:static}
  .only-mobile{display:inline-flex}
  .filters-inner{display:none;margin-top:16px}
  .filters.aberto .filters-inner{display:grid}
  .megamenu .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:901px){.is-pdp .wa-float{bottom:18px}}
@media (max-width:640px){.wa-float{display:none}}
.card .btn.add{padding:0 10px;font-size:13.5px;overflow:hidden;text-overflow:ellipsis}
.cep-form{display:grid;gap:8px}
.cep-form label{font:500 13px/1.4 var(--body);color:var(--ink-800)}
.cep-form div{display:flex;gap:8px}
.cep-form .input{flex:1;height:40px}
.cep-form .btn{height:40px}
.trocar-cep{margin-top:8px;background:none;border:0;padding:0;font:500 12px/1 var(--body);color:var(--grey-500);text-decoration:underline;cursor:pointer}

/* Checkout e pedido */
.checkout h1{margin:12px 0 20px}
.co-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}
.co-steps{display:grid;gap:18px}
.co-box{background:#fff;border:1px solid var(--grey-200);border-radius:16px;padding:22px}
.co-box h2{font-size:18px;margin:0 0 16px;display:flex;align-items:center;gap:10px}
.co-n{width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font:700 13px/1 var(--display)}
.co-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.co-f{display:grid;gap:6px;font:500 13px/1.3 var(--body);color:var(--ink-800)}
.co-f.full,.co-check.full{grid-column:1/-1}
.co-f textarea.input{height:auto;padding:10px 12px;resize:vertical}
.co-check{display:flex;gap:8px;align-items:center;font-size:13.5px}
.co-cep-info{align-self:end;padding-bottom:12px;color:var(--grey-500)}
.co-opcoes{display:grid;gap:10px;margin-top:14px}
.co-op{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--grey-200);border-radius:12px;cursor:pointer}
.co-op:has(input:checked){border-color:var(--brand);background:#FFF8F8}
.co-op span{display:grid;gap:2px}
.co-op b{font:600 14.5px/1.3 var(--display);color:var(--ink-800)}
.co-op small{color:var(--grey-500);font-size:12.5px}
.co-op em{margin-left:auto;font:600 14px/1 var(--display);font-style:normal;white-space:nowrap}
.co-op em.gratis{color:var(--green-600,#1A9E5C)}
.co-op.desativado{opacity:.5;cursor:not-allowed}
.co-op input{accent-color:var(--brand);width:18px;height:18px;flex:none}
.co-resumo{position:sticky;top:16px}
.co-itens{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:12px}
.co-itens li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-size:13.5px}
.co-itens li:not(:has(img)){grid-template-columns:1fr auto}
.co-itens img{border-radius:8px;background:var(--grey-50);object-fit:contain}
.co-itens small{display:block;color:var(--grey-500)}
.co-itens b{font:600 13.5px/1 var(--display);white-space:nowrap}
.co-linha{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--grey-200);font-size:14px}
.co-linha.verde{color:var(--green-600,#1A9E5C)}
.co-linha.total{font:700 18px/1.3 var(--display);color:var(--ink-800);margin-bottom:14px}
.co-erro{background:#FFF2F2;color:#9B1C1F;border-radius:10px;padding:10px 12px;font-size:13.5px;margin-bottom:12px}
.co-nota{display:flex;gap:6px;align-items:flex-start;font-size:12px;color:var(--grey-500);margin:12px 0 0}
.co-nota a{text-decoration:underline}
.input.invalido{border-color:var(--brand);box-shadow:0 0 0 3px #F6C9CB}
.is-checkout .wa-float{display:none}
.pd-topo{margin:24px 0}
.pd-topo h1{margin:6px 0}
.pd-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;margin-bottom:48px}
.pix{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}
.pix-qr{border:1px solid var(--grey-200);border-radius:12px;padding:8px;background:#fff}
.pix-info{flex:1;min-width:240px;display:grid;gap:12px}
.pix-valor{font:700 28px/1 var(--display);color:var(--ink-800)}
.pix-info ol{margin:0;padding-left:18px;display:grid;gap:4px;font-size:14px}
.pix-cc{display:flex;gap:8px}
.pix-cc .input{flex:1;font-size:12px}
.pix-exp{font-size:13px;margin:0}
.pd-hist{margin:0;padding-left:18px;display:grid;gap:8px}
.pd-hist small{display:block;color:var(--grey-500)}
.pd-ent{border-top:1px solid var(--grey-200);padding-top:12px;font-size:13.5px}
.pd-ent p{margin:4px 0}
@media (max-width:900px){.co-grid,.pd-grid{grid-template-columns:1fr}.co-resumo{position:static}.co-fields{grid-template-columns:1fr}}
[hidden]{display:none!important}
.co-nota{display:block}
.co-nota .ic{vertical-align:-2px;margin-right:4px}
