diff --git a/server.js b/server.js
index fffc1b1..0381364 100644
--- a/server.js
+++ b/server.js
@@ -1377,7 +1377,7 @@ app.delete('/api/poesias/:id', requireAuth, async (req, res) => {
// ROTAS DO CRIAR CARTAZES
// ============================================================
app.post('/api/cartazes/generate', requireAuth, async (req, res) => {
- const { titulo, tema, corFundo, corTexto, layout, promptImagem } = req.body;
+ const { titulo, tema, corFundo, corTexto, layout, promptImagem, tamanho, orientacao } = req.body;
const usuarioId = req.user?.id || '00000000-0000-0000-0000-000000000000';
if (!titulo || !tema || !layout) {
@@ -1396,17 +1396,19 @@ Detalhes do Cartaz:
- Título: "${titulo}"
- Tema / Foco Pedagógico: "${tema}"
- Layout Selecionado: "${layout}" (Opções: regras, mural, calendario, livre)
+- Tamanho: "${tamanho || 'A4'}"
+- Orientação: "${orientacao === 'paisagem' ? 'Paisagem/Horizontal' : 'Retrato/Vertical'}"
-Por favor, gere o CONTEÚDO textual estruturado do cartaz.
-REGRAS:
-- Deve ser acolhedor, lúdico e muito bem estruturado.
+Por favor, gere o CONTEÚDO textual e estrutural do cartaz em HTML.
+REGRAS FUNDAMENTAIS E ESTÉTICAS:
+- Distribua a informação em CARDS (pequenos cartões ou blocos curtos) bem espaçados, parecidos com pôsteres infantis modernos, onde o texto NÃO ocupa uma folha corrida.
+- Os textos devem ser extremamente curtos, visuais e fáceis de ler.
- Use emojis apropriados para crianças.
-- Se for layout "regras", crie uma lista de combinados da sala (max 5) de forma positiva (ex: "Cuidar dos nossos brinquedos" ao invés de "Não quebrar os brinquedos").
-- Se for "calendario", estruture áreas para o dia da semana, ajudante do dia e tempo (ensolarado, chuvoso).
-- Se for "mural", crie seções de recados e novidades da semana.
-- Se for "livre", crie um texto poético ou explicativo baseado no tema.
-- Mantenha os textos curtos, visuais e fáceis de ler para crianças ou pais.
-- Retorne apenas o conteúdo em formato HTML simples (use tags como
,
,
,
, , e estilos inline simples se necessário) para renderizarmos no preview do cartaz. Não adicione tags ou , apenas o bloco de conteúdo interno.`;
+- Se for layout "regras", crie os combinados (max 5) de forma positiva, colocando cada regra em um card
separado.
+- Se for "calendario", estruture áreas para o dia da semana, ajudante e clima.
+- Considere a orientação ${orientacao === 'paisagem' ? 'Paisagem (horizontal)' : 'Retrato (vertical)'} ao organizar o fluxo: para paisagem, use \`display: flex; flex-wrap: wrap; gap: 20px;\` para os cards ficarem lado a lado; para retrato, de cima para baixo.
+- Não use textos que extrapolem o tamanho de 1 página de ${tamanho || 'A4'}.
+- Retorne apenas o formato HTML (use
,
,
,
, , ). Não adicione ou , retorne apenas o conteúdo interno. Não inclua o título
pois ele já é colocado no topo pela interface.`;
let conteudoHtml = '';