:root{
  --vermelho:#e30613;
  --vermelho-escuro:#b0050f;
  --azul:#0054a6;
  --verde:#25d366;
  --cinza:#f4f6f9;
  --texto:#222;
  --borda:#e5e7eb;
  --sombra:0 5px 18px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--texto)}
a{color:inherit}.oculto{display:none!important}
.topo{position:sticky;top:0;background:#fff;padding:10px;border-bottom:1px solid #ddd;z-index:1000}
.topo-linha{max-width:1200px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:12px}
.menu-btn{border:0;background:transparent;font-size:24px;cursor:pointer;padding:6px}
.logo{color:var(--vermelho);font-size:22px;font-weight:800;text-align:center}.logo small{display:block;font-size:11px;color:#666;font-weight:600;margin-top:2px}
.carrinho-link{text-decoration:none;font-size:24px;position:relative;padding:6px}.carrinho-link span{position:absolute;right:-3px;top:-1px;background:var(--vermelho);color:#fff;min-width:20px;height:20px;padding:0 5px;border-radius:12px;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:700}
.busca{max-width:1200px;margin:10px auto 0;display:flex}.busca input{flex:1;padding:11px 12px;border:1px solid #ccc;border-radius:8px 0 0 8px;font-size:15px}.busca button{background:var(--azul);color:#fff;border:0;padding:10px 16px;border-radius:0 8px 8px 0}
.tabs{position:sticky;top:103px;display:flex;overflow-x:auto;background:var(--vermelho);z-index:900;scrollbar-width:thin}.tab{border:0;background:transparent;padding:12px 18px;color:#fff;font-weight:700;cursor:pointer;white-space:nowrap}.tab.active{background:var(--vermelho-escuro)}
.container{max-width:1200px;margin:auto;padding:14px}.status-catalogo{padding:12px 14px;margin:0 0 12px;border-radius:10px;background:#fff3cd;color:#6b5200;border:1px solid #ffe69c}.status-catalogo.erro{background:#f8d7da;color:#842029;border-color:#f5c2c7}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{background:#fff;border:1px solid #eee;border-radius:12px;padding:10px;display:flex;flex-direction:column;min-width:0;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.produto-imagem{height:145px;display:flex;align-items:center;justify-content:center;margin-bottom:4px}.produto-imagem img{max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-in}.card h3{font-size:14px;line-height:1.25;margin:6px 0;min-height:35px;overflow-wrap:anywhere}.preco{color:var(--vermelho);font-size:19px;font-weight:800}.estoque-info{font-size:11px;color:#666;margin-top:3px}.controle-qtd{display:flex;align-items:center;gap:5px;margin:9px 0}.controle-qtd button{width:32px;height:32px;border:0;background:var(--vermelho);color:#fff;font-size:19px;border-radius:6px;cursor:pointer}.controle-qtd input{width:64px;height:32px;text-align:center;font-size:15px;border:1px solid #ccc;border-radius:6px}.btn-add{margin-top:auto;background:var(--azul);color:#fff;text-align:center;padding:9px;border:0;border-radius:7px;text-decoration:none;font-weight:700;cursor:pointer}.btn-add:disabled{opacity:.45;cursor:not-allowed}
.menu-lateral{position:fixed;top:0;left:-280px;width:280px;height:100%;background:#fff;box-shadow:2px 0 14px rgba(0,0,0,.2);transition:left .25s ease;z-index:5000}.menu-lateral.aberto{left:0}.menu-topo{background:var(--vermelho);color:#fff;padding:16px;display:flex;justify-content:space-between}.menu-lateral a{display:block;padding:15px;text-decoration:none;border-bottom:1px solid #eee}.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:4000}.overlay.aberto{display:block}
.toast{position:fixed;bottom:20px;right:20px;max-width:calc(100% - 40px);background:#333;color:#fff;padding:12px 18px;border-radius:8px;opacity:0;transform:translateY(20px);transition:.25s;z-index:9999}.toast.show{opacity:1;transform:none}.carrinho-link.animar{animation:bounce .4s}@keyframes bounce{30%{transform:scale(1.2)}60%{transform:scale(.95)}}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.68);z-index:99999;align-items:center;justify-content:center;padding:18px}.modal.aberto{display:flex}.modal-box{width:min(92vw,520px);background:#fff;border-radius:16px;padding:20px;text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.3)}.modal-box img{max-width:100%;max-height:65vh;object-fit:contain}.modal-fechar{float:right;border:0;background:#eee;width:38px;height:38px;border-radius:50%;font-size:24px;cursor:pointer}.modal-nome{font-weight:700;margin-top:10px}
.rodape{padding:28px 12px;text-align:center;margin-top:36px;border-top:1px solid #eee;color:var(--vermelho)}.rodape p{margin:6px 0}.copyright{font-size:13px;color:#777}
.pagina{min-height:70vh;background:var(--cinza);padding:18px}.painel{max-width:960px;margin:auto;background:#fff;border-radius:16px;padding:18px;box-shadow:var(--sombra)}.painel h1{font-size:24px;margin:0 0 18px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:9px;padding:11px 14px;text-decoration:none;font-weight:700;cursor:pointer}.btn-voltar{background:#ffd000}.btn-azul{background:#0d6efd;color:#fff}.btn-verde{background:var(--verde);color:#fff}.btn-vermelho{background:#dc3545;color:#fff}.acoes-topo{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:16px}
.carrinho-vazio{text-align:center;padding:42px 15px;color:#666}.cart-list{display:grid;gap:12px}.cart-item{border:1px solid var(--borda);border-radius:12px;padding:12px;display:grid;grid-template-columns:72px 1fr;gap:12px}.cart-item img{width:72px;height:72px;object-fit:contain}.cart-item h3{font-size:15px;margin:0 0 5px}.cart-item .linha{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.cart-item .subtotal{font-weight:800;color:var(--vermelho)}.cart-qtd{display:flex;align-items:center;gap:5px}.cart-qtd button{border:0;background:#eee;width:32px;height:32px;border-radius:6px;font-size:18px}.cart-qtd input{width:70px;height:32px;border:1px solid #ccc;border-radius:6px;text-align:center}.resumo{margin-top:18px;display:flex;justify-content:flex-end}.total{background:var(--vermelho);color:#fff;padding:14px 18px;border-radius:12px;font-size:22px;font-weight:800}.finalizar{width:100%;margin-top:16px;font-size:17px}
.form-box{max-width:560px;margin:auto}.campo{margin:13px 0}.campo label{display:block;font-weight:700;margin-bottom:6px}.campo input,.campo textarea,.campo select{width:100%;padding:12px;border:1px solid #ccc;border-radius:8px;font:inherit}.aviso{background:#fff3cd;color:#856404;padding:11px;border-radius:8px;margin:12px 0}.resumo-pedido{background:#f8f9fa;border:1px solid #eee;border-radius:10px;padding:12px;margin:14px 0}.resumo-pedido div{display:flex;justify-content:space-between;gap:12px;padding:5px 0}.resumo-pedido .total-linha{border-top:1px solid #ddd;margin-top:6px;padding-top:10px;font-weight:800}
@media(min-width:720px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.produto-imagem{height:180px}.card h3{font-size:15px}.cart-item{grid-template-columns:90px 1fr}.cart-item img{width:90px;height:90px}}
@media(min-width:1050px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:520px){.logo{font-size:19px}.tabs{top:100px}.pagina{padding:10px}.painel{padding:14px}.acoes-topo{align-items:stretch}.acoes-topo .btn{font-size:13px}.cart-item{grid-template-columns:60px 1fr}.cart-item img{width:60px;height:60px}.cart-item .linha{align-items:flex-start}.rodape{font-size:13px}}

/* RENOVO FAST */
.card{contain:layout paint}
.produto-imagem img{content-visibility:auto}
.load-more-wrap{text-align:center;padding:20px 0 8px}
.btn-load-more{border:0;border-radius:10px;background:#0054a6;color:#fff;font-weight:700;padding:12px 22px;cursor:pointer;font-size:15px}
.btn-load-more:disabled{opacity:.55;cursor:wait}
.skeleton-card{min-height:320px}
.skeleton{position:relative;overflow:hidden;background:#eef0f3;border-radius:8px}
.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:renovoShimmer 1.15s infinite}
.skeleton-img{height:160px;margin-bottom:14px}
.skeleton-line{height:16px;width:86%;margin:8px 0}
.skeleton-price{height:24px;width:45%;margin:12px 0}
.skeleton-button{height:38px;margin-top:auto}
@keyframes renovoShimmer{100%{transform:translateX(100%)}}
