/* Modelos especiais A1/A3 — carregado por último para não alterar a gôndola A4. */
.seletor-modelos-varejo {
    padding: 16px;
    border: 1px solid var(--borda, #d9dee7);
    border-radius: 16px;
    background: var(--painel, #fff);
}
.titulo-modelos-varejo > div { display:flex; align-items:center; gap:8px; }
.titulo-modelos-varejo h3 { margin:0; font-size:16px; }
.titulo-modelos-varejo p { margin:7px 0 14px; color:var(--texto-secundario,#667085); font-size:12px; line-height:1.45; }
.rotulo-novo { padding:4px 7px; border-radius:999px; background:#ef1010; color:#fff; font-size:9px; font-weight:900; letter-spacing:.08em; }
.grade-modelos-varejo { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.cartao-modelo-varejo { padding:8px; display:flex; gap:9px; align-items:center; border:2px solid transparent; border-radius:13px; background:var(--campo,#f5f6f8); color:var(--texto,#151515); text-align:left; cursor:pointer; transition:.2s ease; }
.cartao-modelo-varejo:hover { border-color:#f0b400; transform:translateY(-2px); box-shadow:0 8px 18px rgba(0,0,0,.1); }
.cartao-modelo-varejo.ativo { border-color:#ef1010; background:rgba(239,16,16,.06); box-shadow:0 0 0 3px rgba(239,16,16,.1); }
.miniatura-modelo { width:48px; height:68px; flex:0 0 48px; position:relative; overflow:hidden; border-radius:7px; background:#fff; box-shadow:0 2px 7px rgba(0,0,0,.2); }
.miniatura-modelo img { width:100%; height:100%; display:block; object-fit:cover; }
.miniatura-modelo em { width:19px; height:19px; position:absolute; right:3px; bottom:3px; display:none; place-items:center; border-radius:50%; background:#0a9f50; color:#fff; font-style:normal; font-size:11px; }
.cartao-modelo-varejo.ativo .miniatura-modelo em { display:grid; }
.miniatura-padrao { height:100%; padding:5px; display:flex; flex-direction:column; justify-content:space-around; align-items:center; background:#fff; color:#111; font-family:Impact,"Arial Black",sans-serif; }
.miniatura-padrao b { width:100%; background:#ffe500; color:#e60000; text-align:center; font-size:10px; }
.miniatura-padrao i { font-size:8px; font-style:normal; }
.miniatura-padrao strong { color:#e60000; font-size:17px; }
.miniatura-cartazista { font-family:"Oferta do Dia",Impact,sans-serif; border:2px solid #e10b16; }
.miniatura-cartazista-amarelo { background:#fff34d; }
.miniatura-cartazista-branco { background:#fff; }
.miniatura-cartazista b { background:transparent; color:#e10b16; font-size:13px; line-height:.9; }
.miniatura-cartazista i { color:#111; font-size:10px; }
.miniatura-cartazista strong { color:#e10b16; font-size:20px; }
.texto-cartao-modelo { min-width:0; display:flex; flex-direction:column; gap:3px; }
.texto-cartao-modelo strong { font-size:12px; line-height:1.15; }
.texto-cartao-modelo small { color:var(--texto-secundario,#667085); font-size:9px; line-height:1.3; }
.aviso-modelos-formato { margin:12px 0 0; padding:10px; border-radius:9px; background:#fff4d6; color:#7a4d00; font-size:11px; font-weight:700; }
.modelos-indisponiveis .grade-modelos-varejo { opacity:.42; pointer-events:none; filter:grayscale(1); }

/* Fundamentos compartilhados pelos quatro layouts. */
.cartaz[data-modelo-varejo] {
    isolation:isolate;
    padding:0;
    border:0;
    color:#090909;
    font-family:Arial,Helvetica,sans-serif;
}
.cartaz[data-modelo-varejo]::before { content:""; position:absolute; inset:0; z-index:-2; pointer-events:none; }
.cartaz[data-modelo-varejo] .faixa-oferta,
.cartaz[data-modelo-varejo] .area-textos,
.cartaz[data-modelo-varejo] .faixa-preco,
.cartaz[data-modelo-varejo] .rodape-cartaz { position:relative; z-index:1; box-sizing:border-box; }
.cartaz[data-modelo-varejo] .faixa-oferta { width:auto; flex:none; display:flex; align-items:center; justify-content:center; background-image:none; }
.cartaz[data-modelo-varejo] .texto-oferta { max-width:100%; text-align:center; white-space:nowrap; }
.cartaz[data-modelo-varejo] .area-textos { width:100%; flex:1 1 auto; display:flex; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; }
.cartaz[data-modelo-varejo] .nome-produto { max-width:100%; color:var(--cartaz-cor-texto,#080808); text-align:center; text-wrap:balance; }
.cartaz[data-modelo-varejo] .descricao-produto { color:var(--cartaz-cor-texto,#080808); text-align:center; }
.cartaz[data-modelo-varejo] .faixa-preco { width:auto; flex:none; display:flex; align-items:center; justify-content:center; overflow:visible; background-image:none; }
.cartaz[data-modelo-varejo] .preco-completo { max-width:100%; justify-content:center; filter:none; }
.cartaz[data-modelo-varejo] .preco-inteiro,
.cartaz[data-modelo-varejo] .preco-centavos { color:var(--cartaz-cor-preco,#ed0b0b); }
.cartaz[data-modelo-varejo] .unidade-preco { color:var(--cartaz-cor-cifrao,#fff); }
.cartaz[data-modelo-varejo] .rodape-cartaz { width:100%; margin-top:auto; flex:none; text-align:center; }

/* 1 — Varejo amarelo. */
.cartaz.modelo-varejo-amarelo { background:#ffca10; box-shadow:inset 0 0 0 4px #e90808; }
.cartaz.modelo-varejo-amarelo .faixa-oferta { min-height:145px; margin:14px 14px 0; padding:8px 16px; border-radius:25px 25px 18px 18px; background:#ed0b0b; }
.cartaz.modelo-varejo-amarelo .texto-oferta { color:#fff; font-family:var(--fonte-oferta,"FonteCartaz",Impact,"Arial Black",sans-serif); text-shadow:5px 6px 0 #000; transform:none; }
.cartaz.modelo-varejo-amarelo .area-textos { min-height:215px; padding:18px 30px 6px; }
.cartaz.modelo-varejo-amarelo .nome-produto { font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); text-shadow:2px 3px 0 rgba(0,0,0,.1); }
.cartaz.modelo-varejo-amarelo .descricao-produto { border:0; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-varejo-amarelo .faixa-preco { min-height:275px; margin:0 25px 8px; }
.cartaz.modelo-varejo-amarelo .preco-inteiro,
.cartaz.modelo-varejo-amarelo .preco-centavos { font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); text-shadow:5px 7px 0 #000; }
.cartaz.modelo-varejo-amarelo .unidade-preco { color:#fff; font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); text-shadow:3px 4px 0 #000; }
.cartaz.modelo-varejo-amarelo .rodape-cartaz { min-height:30px; padding:6px 22px 10px; border:0; background:transparent; color:#7c0909; }

/* 2 — Varejo branco. */
.cartaz.modelo-varejo-branco { background:#fff; box-shadow:inset 0 0 0 4px #e90808; }
.cartaz.modelo-varejo-branco .faixa-oferta { min-height:145px; margin:14px 14px 0; padding:8px 16px; border-radius:25px 25px 18px 18px; background:#ed0b0b; }
.cartaz.modelo-varejo-branco .texto-oferta { color:#ffd119; font-family:var(--fonte-oferta,"FonteCartaz",Impact,"Arial Black",sans-serif); text-shadow:5px 6px 0 #000; transform:none; }
.cartaz.modelo-varejo-branco .area-textos { min-height:215px; padding:18px 30px 6px; }
.cartaz.modelo-varejo-branco .nome-produto,
.cartaz.modelo-varejo-branco .descricao-produto { font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-varejo-branco .descricao-produto { border:0; }
.cartaz.modelo-varejo-branco .faixa-preco { min-height:275px; margin:0 25px 8px; }
.cartaz.modelo-varejo-branco .preco-inteiro,
.cartaz.modelo-varejo-branco .preco-centavos { font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); text-shadow:5px 7px 0 #000; }
.cartaz.modelo-varejo-branco .unidade-preco { color:#ffd119; font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); text-shadow:3px 4px 0 #000; }
.cartaz.modelo-varejo-branco .rodape-cartaz { min-height:30px; padding:6px 22px 10px; border:0; background:transparent; color:#b20c0c; }

/* 3 — Oferta do dia tradicional. */
.cartaz.modelo-oferta-dia { background:linear-gradient(#ffc413,#ffb310); }
.cartaz.modelo-oferta-dia .faixa-oferta { min-height:245px; margin:0; padding:52px 32px 25px; flex-direction:column; background:linear-gradient(135deg,#da0000,#970000); clip-path:polygon(0 0,100% 0,100% 70%,82% 100%,18% 100%,0 70%); }
.cartaz.modelo-oferta-dia .faixa-oferta::before { content:"PROMOÇÃO"; color:#fff; font-family:Arial,Helvetica,sans-serif; font-size:18px; font-weight:900; letter-spacing:9px; }
.cartaz.modelo-oferta-dia .texto-oferta { color:#fff; font-family:var(--fonte-oferta,Impact,"Arial Black",sans-serif); line-height:.9; text-shadow:none; transform:none; }
.cartaz.modelo-oferta-dia .texto-oferta::after { content:"DO DIA"; display:block; margin-top:5px; color:#ffc512; font-size:.58em; letter-spacing:0; }
.cartaz.modelo-oferta-dia .area-textos { min-height:180px; padding:18px 34px 5px; }
.cartaz.modelo-oferta-dia .nome-produto { color:#b10000; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); font-style:italic; }
.cartaz.modelo-oferta-dia .descricao-produto { border:0; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); font-style:italic; }
.cartaz.modelo-oferta-dia .faixa-preco { min-height:255px; margin:0 24px; }
.cartaz.modelo-oferta-dia .preco-inteiro,
.cartaz.modelo-oferta-dia .preco-centavos { color:var(--cartaz-cor-preco,#080808); font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-oferta-dia .unidade-preco { color:var(--cartaz-cor-cifrao,#080808); }
.cartaz.modelo-oferta-dia .rodape-cartaz { width:auto; min-height:52px; margin:0 55px 35px; padding:10px 15px; border:0; border-radius:4px; background:#b80000; color:#fff; font-size:15px; }

/* 4 — Oferta neon. */
.cartaz.modelo-oferta-neon { background:#ffc628; }
.cartaz.modelo-oferta-neon .faixa-oferta { min-height:275px; margin:0; padding:72px 38px 48px; background:#c90000; clip-path:polygon(0 0,100% 0,100% 70%,50% 100%,0 70%); }
.cartaz.modelo-oferta-neon .faixa-oferta::before { content:"🛒"; position:absolute; top:14px; left:50%; transform:translateX(-50%); color:#fff; font-size:43px; filter:drop-shadow(0 0 7px #ffb800); }
.cartaz.modelo-oferta-neon .texto-oferta { padding:7px 22px; border:3px solid #fff; border-radius:13px; color:#fff; font-family:var(--fonte-oferta,Impact,"Arial Black",sans-serif); text-shadow:0 0 9px #ffb000,0 0 18px #ff7b00; box-shadow:0 0 8px #ffb000,inset 0 0 8px #ffb000; transform:none; }
.cartaz.modelo-oferta-neon .area-textos { min-height:185px; padding:18px 34px 0; }
.cartaz.modelo-oferta-neon .nome-produto { font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-oferta-neon .descricao-produto { border:0; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-oferta-neon .faixa-preco { min-height:235px; margin:0 30px; }
.cartaz.modelo-oferta-neon .preco-completo::before,
.cartaz.modelo-oferta-neon .preco-completo::after { content:""; width:65px; height:5px; margin:0 12px 28px; align-self:center; border-radius:10px; background:var(--cartaz-cor-preco,#e60000); }
.cartaz.modelo-oferta-neon .preco-inteiro,
.cartaz.modelo-oferta-neon .preco-centavos { font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-oferta-neon .unidade-preco { color:var(--cartaz-cor-preco,#e60000); }
.cartaz.modelo-oferta-neon .rodape-cartaz { width:auto; min-height:42px; margin:0 95px 24px; padding:9px 15px; border:2px solid #111; border-radius:20px; background:transparent; color:#111; }

/* Atacado — composição verdadeira de preço DE/POR. */
.cartaz.modelo-atacado { background:linear-gradient(155deg,#ffd91a 0 68%,#ffbd00 68% 100%); box-shadow:inset 0 0 0 5px #a80000; }
.cartaz.modelo-atacado .faixa-oferta { min-height:150px; margin:0; padding:15px 25px; background:linear-gradient(180deg,#c90000,#970000); border-bottom:9px solid #191919; }
.cartaz.modelo-atacado .texto-oferta { color:#fff; font-family:var(--fonte-oferta,Impact,"Arial Black",sans-serif); font-size:105px; line-height:.9; letter-spacing:1px; text-shadow:5px 6px 0 #111; transform:none; }
.cartaz.modelo-atacado .area-textos { min-height:205px; padding:18px 30px 3px; }
.cartaz.modelo-atacado .nome-produto { color:#111; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-atacado .descricao-produto { border:0; color:#9d0000; font-family:var(--fonte-produto,Impact,"Arial Black",sans-serif); }
.cartaz.modelo-atacado .faixa-preco { min-height:315px; margin:0 22px 4px; padding:7px 12px 12px; flex-direction:column; gap:0; border-radius:22px; background:#fff; box-shadow:inset 0 0 0 5px #b60000,0 8px 0 rgba(120,0,0,.18); }
.cartaz.modelo-atacado .preco-anterior-atacado { display:flex; align-items:center; justify-content:center; gap:10px; color:#333; font-family:Arial,Helvetica,sans-serif; line-height:1; }
.cartaz.modelo-atacado .preco-anterior-atacado span { padding:6px 9px; border-radius:6px; background:#222; color:#fff; font-size:20px; font-weight:900; }
.cartaz.modelo-atacado .preco-anterior-atacado strong { position:relative; font-size:41px; font-weight:900; }
.cartaz.modelo-atacado .preco-anterior-atacado strong::after { content:""; position:absolute; left:-3px; right:-3px; top:50%; height:5px; background:#d00000; transform:rotate(-6deg); border-radius:4px; }
.cartaz.modelo-atacado .rotulo-por-atacado { margin-top:2px; color:#b90000; font:900 25px/1 Arial,Helvetica,sans-serif; letter-spacing:5px; }
.cartaz.modelo-atacado .preco-completo { margin-top:1px; }
.cartaz.modelo-atacado .preco-inteiro,
.cartaz.modelo-atacado .preco-centavos { color:#d00000; font-family:var(--fonte-preco,Impact,"Arial Black",sans-serif); text-shadow:4px 5px 0 #ffc400; }
.cartaz.modelo-atacado .unidade-preco { color:#8f0000; text-shadow:none; }
.cartaz.modelo-atacado .rodape-cartaz { min-height:32px; padding:5px 18px 9px; border:0; background:transparent; color:#7d0000; }
.cartaz.modelo-atacado .faixa-preco:not(:has(.preco-anterior-atacado))::before { content:"PREENCHA O PREÇO DE NA REVISÃO"; margin-bottom:8px; color:#8f0000; font:900 13px/1.2 Arial,Helvetica,sans-serif; letter-spacing:1px; }

/* Cartazista — duas cores, um único desenho e nenhum título fixo. */
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) {
    padding:14px;
    border:7px solid #e10b16;
    outline:3px solid #111;
    outline-offset:-14px;
    background-image:repeating-linear-gradient(2deg,rgba(95,72,0,.025) 0 1px,transparent 1px 7px);
    box-shadow:none;
}
.cartaz.modelo-cartazista-amarelo { background-color:#fff34d; }
.cartaz.modelo-cartazista-branco { background-color:#fff; }
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco)::before,
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco)::after { display:none; }
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .faixa-oferta {
    min-height:132px; margin:14px 30px 0; padding:0 12px; overflow:visible; border:0; background:transparent; box-shadow:none; transform:rotate(-2deg);
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .texto-oferta {
    color:#e10b16; font:400 130px/.82 "Oferta do Dia",Impact,sans-serif; letter-spacing:-4px; text-shadow:2px 2px 0 rgba(80,0,0,.12); transform:none;
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .area-textos { min-height:238px; padding:8px 30px 4px; }
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .nome-produto {
    color:#111; font-family:"Oferta do Dia",Impact,sans-serif; font-weight:400; line-height:.82; letter-spacing:-3px; text-shadow:2px 2px 0 rgba(0,0,0,.08); transform:rotate(.7deg);
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .descricao-produto {
    width:fit-content; max-width:92%; margin:8px auto 0; padding:1px 16px 5px; border:0; border-bottom:4px solid #111; color:#111; font-family:"Oferta do Dia",Impact,sans-serif; font-weight:400; letter-spacing:-1px;
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .faixa-preco {
    min-height:245px; margin:0 20px; padding:20px 16px 8px 54px; overflow:visible; border:0; background:transparent; box-shadow:none; transform:rotate(-1deg);
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .faixa-preco::before {
    content:"R$"; position:absolute; left:8px; top:45px; color:#e10b16; font:400 52px/.9 "Oferta do Dia",Impact,sans-serif; transform:rotate(-8deg);
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) :is(.preco-inteiro,.preco-centavos,.unidade-preco) {
    color:#e10b16; font-family:"Oferta do Dia",Impact,sans-serif; font-weight:400; text-shadow:2px 3px 0 rgba(100,0,0,.1);
}
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .preco-inteiro { letter-spacing:-15px; line-height:.73; }
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .preco-centavos { letter-spacing:-5px; line-height:.72; }
.cartaz:is(.modelo-cartazista-amarelo,.modelo-cartazista-branco) .rodape-cartaz {
    min-height:43px; border:0; background:transparent; color:#111; font:400 15px/1 "Oferta do Dia",Impact,sans-serif; letter-spacing:.5px;
}

@media (max-width:520px) {
    .grade-modelos-varejo { grid-template-columns:1fr; }
}

@media print {
    .seletor-modelos-varejo { display:none !important; }
    .cartaz[data-modelo-varejo] { -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; }
}
