Se faccio 20’000 passi al giorno per un mese, evito dolci, mangio poco e sano. Bevo 2 litri. Quanto riesco a smagrire viso, gambe, braccia, coscie, glutei, braccia?

Searching the Web

20000 steps a day weight loss results 1 month calorie burn

Searching the Web

dimagrire localizzato gambe coscie glutei viso passi camminata risultati

Ecco una risposta completa e realistica, zona per zona.

Quanto puoi dimagrire in un mese con 20.000 passi/giorno + dieta sana?

Il calcolo base

20.000 passi = circa 10 km (uomo medio) / 8 km (donna media)
Calorie bruciate camminando (solo dalla camminata):
Peso corporeoCalorie/giorno (20k passi)
55-60 kg~600-650 kcal
70-75 kg~750-830 kcal
85-90 kg~900-1000 kcal
In un mese (30 giorni), solo dalla camminata: 18.000 - 30.000 kcal in più bruciate rispetto alla sedentarietà.
Aggiungendo la dieta ipocalorica (evitare dolci + mangiare poco) puoi facilmente creare un deficit calorico totale di 1.000-1.500 kcal/giorno, il che porta a:
Perdita realistica di grasso puro: 3-5 kg in 30 giorni Più una riduzione della ritenzione idrica di 0,5-1,5 kg nelle prime settimane grazie ai 2 litri d'acqua e all'eliminazione degli zuccheri.

Zona per zona - cosa aspettarsi

😊 Viso

  • Tra le prime zone a rispondere, soprattutto se tendi alla ritenzione idrica.
  • Risultati visibili già in 2-3 settimane: zigomi più definiti, mascella più marcata.
  • Dimagrisce grazie alla riduzione del sodio/zuccheri e alla migliore idratazione.

🦵 Gambe e coscie

  • La camminata lavora direttamente i muscoli di cosce e polpacci (quadricipiti, bicipiti femorali, gastrocnemi).
  • Si tende a perdere prima il grasso superficiale della gamba, poi quello interno della coscia (zona più resistente, specialmente nelle donne).
  • Aspettati una riduzione di 1-3 cm di circonferenza della coscia in un mese, più tono muscolare visibile.

🍑 Glutei

  • La camminata a passo svelto attiva molto i glutei: li tonifica, li solleva visivamente e ne riduce il grasso.
  • Non perderai massa muscolare (anzi potresti guadagnarne un po'), ma il gluteo apparirà più compatto e meno "molle".
  • Camminare in salita o con passi ampi amplifica l'effetto sui glutei.

💪 Braccia

  • Le braccia NON vengono allenate direttamente dalla camminata.
  • Dimagriranno proporzionalmente alla perdita di grasso generale, ma più lentamente.
  • Se vuoi accelerare su braccia: aggiungi elastici o piccoli pesi durante la camminata.

🫃 Pancia/addome (bonus)

  • Spesso la prima zona a rispondere alla dieta, soprattutto se elimini zuccheri e riduci carboidrati raffinati.
  • Con 20k passi + dieta sana, aspettati -2 a -5 cm di girovita in un mese.

Fattori che influenzano i risultati

FattoreImpatto
SessoLe donne perdono più lentamente nelle cosce/glutei (depositi di estrogeni)
EtàSopra i 40 anni il metabolismo è più lento, i risultati sono leggermente meno rapidi
Punto di partenzaChi ha più grasso da perdere vede risultati più rapidi all'inizio
GeneticaDetermina l'ordine con cui il corpo "smonta" il grasso da ogni zona
Qualità del sonnoDormire poco eleva il cortisolo e blocca il dimagrimento

Stima riassuntiva in un mese

ZonaPerdita stimata
Peso totale-3 a -5 kg (grasso + acqua)
Girovita-3 a -6 cm
Coscia-1 a -3 cm
VisoNotevolmente più definito
BracciaLeggermente più sottili
GluteiPiù tonici, forma migliorata
⚠️ Nota importante: Il "dimagrimento localizzato" (scegliere dove dimagrire) non esiste scientificamente - il corpo brucia il grasso in modo sistemico, seguendo un ordine determinato dalla genetica e dagli ormoni. Però certi esercizi tonificano muscoli specifici, rendendo quella zona visivamente più definita.

Consigli per massimizzare i risultati

  1. Cammina svelto (almeno 5-6 km/h) - bruci molto di più che a passo lento.
  2. Varia il percorso con salite quando possibile - glutei e cosce lavorano di più.
  3. Non saltare pasti - mangiare poco non significa digiunare, altrimenti il corpo rallenta il metabolismo.
  4. Privilegia proteine (uova, legumi, pesce, pollo) - preservano la massa muscolare durante il dimagrimento.
  5. Riduci il sale - aiuta moltissimo a sgonfiare viso, gambe e caviglie.
  6. Allunga dopo la camminata - riduce il rischio di gambe pesanti e migliora la circolazione.
Con costanza, in 30 giorni vedrai risultati concreti e visibili - specialmente su viso, pancia e gambe.
attachment
attachment
attachment
attachment

Corpo attuale. Voglio raggiungere una cosa simile alla seconda foto. Integrami esercizi e tutto necessario

analyse_media
analyse_media
Ho analizzato entrambe le foto. Ecco la tua situazione attuale e il piano completo.

📊 Analisi del tuo punto di partenza vs obiettivo

Situazione attuale (foto 1):
  • Forma a pera/clessidra morbida
  • Distribuzione del grasso tipicamente femminile concentrata su cosce, fianchi, glutei
  • Tono muscolare naturale/soft, poco definito
  • Coscie che si toccano all'interno
  • Parte superiore relativamente snella
  • Caviglie e polpacci ben proporzionati
Obiettivo (foto 2) - "Lean Hourglass / corpo Pilates":
  • Vita molto stretta e piatta
  • Addome flat con definizione centrale
  • Cosce slanciate, tono senza volume
  • Braccia magre e toniche
  • Silhouette a clessidra marcata

🗓 Piano completo - Struttura mensile

⚠️ Onestà importante: il corpo della foto 2 ha probabilmente corpo fat intorno al 18-20% con una struttura ossea favorevole. Il tuo obiettivo realistico in 60-90 giorni è avvicinarti molto a quella forma, non necessariamente replicarla esattamente (la genetica delle ossa del bacino è fissa). Ma la trasformazione sarà molto visibile.

🏃‍♀️ Programma settimanale completo

CARDIO BASE (già hai i 20.000 passi - mantienili)

Aggiungi questi dettagli:
  • Cammina svelto (5,5-6 km/h minimo) - bruci 40% in più rispetto al passo lento
  • Almeno 3 volte a settimana in salita (scale, colline, tapis roulant inclinato al 5-8%) - attiva direttamente glutei e coscie

💪 SCHEDA ALLENAMENTO - 4 giorni/settimana (senza palestra)

LUNEDÌ + GIOVEDÌ - "Lower Body + Glutei" (35-40 min)

EsercizioSerie x RipNote
Squat classico4 x 15Piedi a larghezza spalle, scendi fino a 90°
Sumo squat3 x 15Piedi larghi, punta fuori - mira all'interno coscia
Hip thrust (con zaino pesante o borsa)4 x 12Schiena sul bordo del letto, spingi i fianchi in alto
Reverse lunge (affondi indietro)3 x 12 per gambaPiù sicuro del lunge classico per le ginocchia
Donkey kick (a 4 zampe)3 x 20 per gambaCalcio indietro e in alto, strizza il gluteo in cima
Abductor raise (in piedi)3 x 20 per gambaGamba a lato, lenta e controllata
Wall sit3 x 45 secSchiena al muro, coscie parallele al pavimento

MARTEDÌ + VENERDÌ - "Core + Upper Body Lean" (30-35 min)

EsercizioSerie x RipNote
Plank frontale3 x 40 sec → arriva a 60 secCore, non inarcare la schiena
Plank laterale3 x 30 sec per latoVita + obliqui - chiave per la "clessidra"
Crunch bicicletta3 x 20Obliqui + addome completo
Dead bug3 x 12 per latoPerfetto per pianare la pancia bassa
Leg raise3 x 15Pancia bassa, le più difficili da perdere
Push up modificati3 x 12Sulle ginocchia se necessario - braccia + petto
Tricep dips (su sedia)3 x 12Elimina la "carne in eccesso" sotto il braccio
Shoulder tap3 x 15 per latoSpalle + core contemporaneamente

MERCOLEDÌ + SABATO → Riposo attivo o camminata tranquilla

DOMENICA → Riposo completo o stretching/yoga 20 min


🥗 PIANO ALIMENTARE - Quello che fa la differenza

Obiettivo calorico

  • Deficit moderato di 400-600 kcal/giorno (non di più, sennò perdi muscolo)
  • Con 20k passi + allenamento bruci probabilmente 2.000-2.300 kcal/giorno
  • Mangia 1.400-1.700 kcal/giorno (dipende dal tuo peso attuale)

Macros prioritari

MacroQuantitàPerché
Proteine100-130g/giornoPreserva e costruisce il muscolo mentre bruci grasso
Carboidrati100-150g/giornoEnergia per gli allenamenti, preferire integrali
Grassi50-60g/giornoOrmoni, pelle, sazietà

Cosa mangiare (praticamente)

✅ SÌ - ogni giorno:
  • Albumi d'uovo + 1-2 uova intere (colazione proteica)
  • Pollo, tacchino, pesce bianco, tonno, salmone
  • Yogurt greco 0% (massimo 150g)
  • Legumi (lenticchie, ceci, fagioli) 3 volte/settimana
  • Verdure a volontà (zucchine, insalata, broccoli, pomodori, cetrioli)
  • Frutta (2 pezzi/giorno max, mattina)
  • Riso integrale/avena/farro (1 porzione da 60-80g crudi a pasto)
  • Olio EVO (2 cucchiai/giorno max)
❌ NO - da eliminare completamente:
  • Dolci, biscotti, merendine, succhi
  • Pane bianco e pasta bianca (sostituire con versioni integrali, moderata)
  • Alcol
  • Salumi grassi (prosciutto cotto ok in piccole quantità)
  • Formaggi grassi
  • Salse (ketchup, maionese)
  • Cibi fritti
🟡 Limitare (1-2 volte/settimana):
  • Pizza (1 fetta, non un'intera)
  • Pasta integrale (porzione da 60g)
  • Pane integrale (1-2 fette)

💧 IDRATAZIONE - Ottimizza i 2 litri

  • Bevi 500ml appena sveglia prima di colazione
  • 1 bicchiere prima di ogni pasto (riduce la fame)
  • Aggiungi tè verde o tè bianco senza zucchero (accelera leggermente il metabolismo)
  • Riduci il sale al minimo (sgonfia coscie e viso in 5-7 giorni)

📅 TIMELINE REALISTICA

TempoRisultati attesi
Settimana 1-2Meno gonfiore, viso più definito, -1-2 kg (acqua + inizio grasso)
Settimana 3-4Coscie visibilmente meno piene, vita che inizia a definirsi, -2-3 kg totali
Mese 2Glutei tonificati e sollevati, addome più piatto, coscie con gap iniziale visibile
Mese 3Silhouette notevolmente cambiata, -5-8 kg di grasso, fisico vicino all'obiettivo

🔑 I 3 segreti che fanno la differenza per il TUO corpo

  1. Hip thrust ogni volta - il tuo gluteo è l'ancora estetica dell'obiettivo. Senza hip thrust non si raggiunge quella forma.
  2. Plank laterale 3x/settimana - è l'esercizio numero uno per creare la strozzatura della vita su un corpo a pera.
  3. Proteine ad ogni pasto - senza proteine adeguate perdi muscolo insieme al grasso e il risultato finale sarà "skinny fat" invece del corpo tonico che vuoi.

Generare un PDF con il programma di allenamento stampabile

Reading File
Running Command

ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && echo "created"

Running Command

mkdir -p /tmp/workspace/fitness-plan && python3 << 'EOF' from reportlab.lib.pagesizes import A4 from reportlab.lib import colors from reportlab.lib.units import cm, mm from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, HRFlowable, KeepTogether from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_RIGHT from reportlab.platypus import PageBreak doc = SimpleDocTemplate( "/tmp/workspace/fitness-plan/programma_allenamento.pdf", pagesize=A4, rightMargin=1.8*cm, leftMargin=1.8*cm, topMargin=2*cm, bottomMargin=2*cm, title="Programma di Allenamento Personalizzato", author="Piano Fitness Personalizzato" ) # Colors PINK = colors.HexColor('#E8A0B0') PINK_DARK = colors.HexColor('#C96A85') PINK_LIGHT = colors.HexColor('#FDF0F3') GREY = colors.HexColor('#4A4A4A') LIGHT_GREY = colors.HexColor('#F5F5F5') MEDIUM_GREY = colors.HexColor('#9E9E9E') BLACK = colors.HexColor('#222222') GREEN = colors.HexColor('#6DB47E') GREEN_LIGHT = colors.HexColor('#EEF7F0') ORANGE = colors.HexColor('#E8955A') ORANGE_LIGHT = colors.HexColor('#FFF4EE') BLUE = colors.HexColor('#5A8AB4') BLUE_LIGHT = colors.HexColor('#EEF4FA') styles = getSampleStyleSheet() # Custom styles title_style = ParagraphStyle('Title', fontName='Helvetica-Bold', fontSize=22, textColor=PINK_DARK, alignment=TA_CENTER, spaceAfter=4, leading=26) subtitle_style = ParagraphStyle('Sub', fontName='Helvetica', fontSize=11, textColor=GREY, alignment=TA_CENTER, spaceAfter=2) section_title = ParagraphStyle('SecTitle', fontName='Helvetica-Bold', fontSize=13, textColor=PINK_DARK, spaceBefore=10, spaceAfter=6, leading=16) day_title = ParagraphStyle('DayTitle', fontName='Helvetica-Bold', fontSize=11, textColor=colors.white, alignment=TA_CENTER, leading=14) body_style = ParagraphStyle('Body', fontName='Helvetica', fontSize=9, textColor=BLACK, leading=13, spaceAfter=3) note_style = ParagraphStyle('Note', fontName='Helvetica-Oblique', fontSize=8, textColor=MEDIUM_GREY, leading=11, spaceAfter=2) table_header = ParagraphStyle('TH', fontName='Helvetica-Bold', fontSize=9, textColor=colors.white, alignment=TA_CENTER, leading=12) table_cell = ParagraphStyle('TC', fontName='Helvetica', fontSize=8.5, textColor=BLACK, leading=11, alignment=TA_LEFT) table_cell_center = ParagraphStyle('TCC', fontName='Helvetica', fontSize=8.5, textColor=BLACK, leading=11, alignment=TA_CENTER) table_note = ParagraphStyle('TN', fontName='Helvetica-Oblique', fontSize=7.5, textColor=MEDIUM_GREY, leading=10, alignment=TA_LEFT) label_style = ParagraphStyle('Label', fontName='Helvetica-Bold', fontSize=9, textColor=PINK_DARK, leading=11, spaceAfter=1) check_style = ParagraphStyle('Check', fontName='Helvetica', fontSize=9, textColor=BLACK, leading=14, spaceAfter=0) story = [] W = A4[0] - 3.6*cm # usable width # ─── HEADER ───────────────────────────────────────────────────────────────── story.append(Spacer(1, 0.3*cm)) story.append(Paragraph("💪 PROGRAMMA DI ALLENAMENTO", title_style)) story.append(Paragraph("Piano personalizzato · 3 mesi · Corpo lean hourglass", subtitle_style)) story.append(Spacer(1, 0.2*cm)) story.append(HRFlowable(width="100%", thickness=2, color=PINK_DARK, spaceAfter=10)) # ─── OVERVIEW BOX ──────────────────────────────────────────────────────────── overview_data = [ [Paragraph("<b>🗓 Durata</b>", table_cell_center), Paragraph("<b>🏃 Passi/giorno</b>", table_cell_center), Paragraph("<b>💪 Sessioni/sett.</b>", table_cell_center), Paragraph("<b>💧 Acqua</b>", table_cell_center)], [Paragraph("3 mesi", table_cell_center), Paragraph("20.000", table_cell_center), Paragraph("4 + cardio", table_cell_center), Paragraph("2+ litri", table_cell_center)], ] overview_table = Table(overview_data, colWidths=[W/4]*4) overview_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), PINK_DARK), ('BACKGROUND', (0,1), (-1,1), PINK_LIGHT), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 9), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [PINK_LIGHT]), ('BOX', (0,0), (-1,-1), 1, PINK_DARK), ('INNERGRID', (0,0), (-1,-1), 0.5, PINK), ('TOPPADDING', (0,0), (-1,-1), 6), ('BOTTOMPADDING', (0,0), (-1,-1), 6), ('ROUNDEDCORNERS', [4]), ])) story.append(overview_table) story.append(Spacer(1, 0.5*cm)) # ─── SETTIMANA TIPO ────────────────────────────────────────────────────────── story.append(Paragraph("📅 STRUTTURA SETTIMANALE", section_title)) week_data = [ [Paragraph("LUN", day_title), Paragraph("MAR", day_title), Paragraph("MER", day_title), Paragraph("GIO", day_title), Paragraph("VEN", day_title), Paragraph("SAB", day_title), Paragraph("DOM", day_title)], [Paragraph("Lower Body\n+ Glutei", table_cell_center), Paragraph("Core +\nUpper Body", table_cell_center), Paragraph("Riposo\nattivo 🚶", table_cell_center), Paragraph("Lower Body\n+ Glutei", table_cell_center), Paragraph("Core +\nUpper Body", table_cell_center), Paragraph("Cammino\n+ salita 🏔", table_cell_center), Paragraph("Riposo\ncompleto 🧘", table_cell_center)], ] week_colors = [PINK_DARK, BLUE, GREEN, PINK_DARK, BLUE, ORANGE, MEDIUM_GREY] week_table = Table(week_data, colWidths=[W/7]*7, rowHeights=[22, 38]) week_ts = TableStyle([ ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 8), ('BOX', (0,0), (-1,-1), 1, colors.HexColor('#CCCCCC')), ('INNERGRID', (0,0), (-1,-1), 0.5, colors.HexColor('#DDDDDD')), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('TEXTCOLOR', (0,1), (-1,1), BLACK), ('ROWBACKGROUNDS', (0,1), (-1,1), [LIGHT_GREY]), ]) for i, c in enumerate(week_colors): week_ts.add('BACKGROUND', (i,0), (i,0), c) week_ts.add('TEXTCOLOR', (i,0), (i,0), colors.white) week_table.setStyle(week_ts) story.append(week_table) story.append(Spacer(1, 0.5*cm)) # ─── ALLENAMENTO A: LOWER BODY ─────────────────────────────────────────────── story.append(Paragraph("🍑 ALLENAMENTO A — LOWER BODY + GLUTEI (Lunedì & Giovedì · 35-40 min)", section_title)) lower_data = [ [Paragraph("ESERCIZIO", table_header), Paragraph("SERIE", table_header), Paragraph("REPS", table_header), Paragraph("TECNICA / FOCUS", table_header)], [Paragraph("Squat classico", table_cell), Paragraph("4", table_cell_center), Paragraph("15", table_cell_center), Paragraph("Piedi larghezza spalle, scendi a 90°, ginocchia in linea con le punte", table_note)], [Paragraph("Sumo squat", table_cell), Paragraph("3", table_cell_center), Paragraph("15", table_cell_center), Paragraph("Piedi larghi, punte verso l'esterno — mira all'interno coscia", table_note)], [Paragraph("Hip thrust", table_cell), Paragraph("4", table_cell_center), Paragraph("12", table_cell_center), Paragraph("Schiena sul bordo del letto/divano, spingi i fianchi in alto, strizza gluteo in cima", table_note)], [Paragraph("Reverse lunge", table_cell), Paragraph("3", table_cell_center), Paragraph("12 × gamba", table_cell_center), Paragraph("Affondo all'indietro, ginocchio posteriore sfiora terra, petto dritto", table_note)], [Paragraph("Donkey kick", table_cell), Paragraph("3", table_cell_center), Paragraph("20 × gamba", table_cell_center), Paragraph("A 4 zampe, calcio indietro e in alto, schiena neutra, strizza gluteo", table_note)], [Paragraph("Abductor raise", table_cell), Paragraph("3", table_cell_center), Paragraph("20 × gamba", table_cell_center), Paragraph("In piedi, gamba a lato lenta e controllata, tensione continua", table_note)], [Paragraph("Wall sit", table_cell), Paragraph("3", table_cell_center), Paragraph("45-60 sec", table_cell_center), Paragraph("Schiena al muro, coscie parallele al pavimento, respira regolarmente", table_note)], ] col_w = [W*0.28, W*0.1, W*0.14, W*0.48] lower_table = Table(lower_data, colWidths=col_w, repeatRows=1) lower_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), PINK_DARK), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('ALIGN', (0,1), (0,-1), 'LEFT'), ('ALIGN', (3,1), (3,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, PINK_LIGHT]), ('BOX', (0,0), (-1,-1), 1, PINK), ('INNERGRID', (0,0), (-1,-1), 0.3, colors.HexColor('#E8D0D8')), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(lower_table) # Tip box story.append(Spacer(1, 0.25*cm)) tip_a = Table([[Paragraph("💡 <b>Tip chiave:</b> L'hip thrust è l'esercizio N°1 per sollevare e tonificare il gluteo. Non saltarlo mai! Aggiungi peso progressivamente (borsa, zaino).", note_style)]], colWidths=[W]) tip_a.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),PINK_LIGHT),('BOX',(0,0),(-1,-1),1,PINK), ('LEFTPADDING',(0,0),(-1,-1),8),('TOPPADDING',(0,0),(-1,-1),5),('BOTTOMPADDING',(0,0),(-1,-1),5)])) story.append(tip_a) story.append(Spacer(1, 0.5*cm)) # ─── ALLENAMENTO B: CORE + UPPER ───────────────────────────────────────────── story.append(Paragraph("🔥 ALLENAMENTO B — CORE + UPPER BODY LEAN (Martedì & Venerdì · 30-35 min)", section_title)) upper_data = [ [Paragraph("ESERCIZIO", table_header), Paragraph("SERIE", table_header), Paragraph("REPS / TEMPO", table_header), Paragraph("TECNICA / FOCUS", table_header)], [Paragraph("Plank frontale", table_cell), Paragraph("3", table_cell_center), Paragraph("40 → 60 sec", table_cell_center), Paragraph("Core duro, no inarcamento, respira — progressione settimanale", table_note)], [Paragraph("Plank laterale", table_cell), Paragraph("3", table_cell_center), Paragraph("30 sec × lato", table_cell_center), Paragraph("Obliqui + vita — chiave per creare la strozzatura a clessidra", table_note)], [Paragraph("Crunch bicicletta", table_cell), Paragraph("3", table_cell_center), Paragraph("20", table_cell_center), Paragraph("Obliqui + addome completo, gomito verso ginocchio opposto", table_note)], [Paragraph("Dead bug", table_cell), Paragraph("3", table_cell_center), Paragraph("12 × lato", table_cell_center), Paragraph("Sdraiata, abbassa braccio/gamba opposti mantenendo schiena a terra", table_note)], [Paragraph("Leg raise", table_cell), Paragraph("3", table_cell_center), Paragraph("15", table_cell_center), Paragraph("Pancia bassa, gambe dritte, sali lentamente, scendi senza toccare terra", table_note)], [Paragraph("Push up (anche sulle ginocchia)", table_cell), Paragraph("3", table_cell_center), Paragraph("12", table_cell_center), Paragraph("Petto + braccia, corpo diritto, gomiti a 45° dal busto", table_note)], [Paragraph("Tricep dips su sedia", table_cell), Paragraph("3", table_cell_center), Paragraph("12", table_cell_center), Paragraph("Mani sul bordo della sedia, gomiti dietro — elimina la carne sotto il braccio", table_note)], [Paragraph("Shoulder tap", table_cell), Paragraph("3", table_cell_center), Paragraph("15 × lato", table_cell_center), Paragraph("Da plank, tocca spalla opposta alternando — spalle + core stabilizzatori", table_note)], ] upper_table = Table(upper_data, colWidths=col_w, repeatRows=1) upper_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), BLUE), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('ALIGN', (0,1), (0,-1), 'LEFT'), ('ALIGN', (3,1), (3,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, BLUE_LIGHT]), ('BOX', (0,0), (-1,-1), 1, BLUE), ('INNERGRID', (0,0), (-1,-1), 0.3, colors.HexColor('#C8D8E8')), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(upper_table) story.append(Spacer(1, 0.25*cm)) tip_b = Table([[Paragraph("💡 <b>Tip chiave:</b> Il plank laterale è l'esercizio N°1 per creare la vita a clessidra. Tienilo sempre nella routine anche quando ti sembra facile — aumenta il tempo.", note_style)]], colWidths=[W]) tip_b.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),BLUE_LIGHT),('BOX',(0,0),(-1,-1),1,BLUE), ('LEFTPADDING',(0,0),(-1,-1),8),('TOPPADDING',(0,0),(-1,-1),5),('BOTTOMPADDING',(0,0),(-1,-1),5)])) story.append(tip_b) # ─── PAGE BREAK → PAGINA 2 ─────────────────────────────────────────────────── story.append(PageBreak()) # ─── CARDIO ────────────────────────────────────────────────────────────────── story.append(Paragraph("🚶 CARDIO GIORNALIERO — 20.000 PASSI", section_title)) cardio_data = [ [Paragraph("TIPO", table_header), Paragraph("FREQUENZA", table_header), Paragraph("INTENSITÀ", table_header), Paragraph("DETTAGLIO", table_header)], [Paragraph("Camminata base", table_cell), Paragraph("Ogni giorno", table_cell_center), Paragraph("5.5-6 km/h", table_cell_center), Paragraph("Bruci 40% in più rispetto al passo lento", table_note)], [Paragraph("Camminata in salita", table_cell), Paragraph("3x/settimana min.", table_cell_center), Paragraph("5% inclinazione+", table_cell_center), Paragraph("Attiva glutei e coscie direttamente — scale, colline, tapis inclinato", table_note)], [Paragraph("Sprint brevi (opz.)", table_cell), Paragraph("2x/settimana", table_cell_center), Paragraph("30 sec ogni 5 min", table_cell_center), Paragraph("Accelera il metabolismo — bruciagrassi anche a riposo", table_note)], ] cardio_table = Table(cardio_data, colWidths=[W*0.22, W*0.2, W*0.18, W*0.4], repeatRows=1) cardio_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), GREEN), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('ALIGN', (0,1), (0,-1), 'LEFT'), ('ALIGN', (3,1), (3,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, GREEN_LIGHT]), ('BOX', (0,0), (-1,-1), 1, GREEN), ('INNERGRID', (0,0), (-1,-1), 0.3, colors.HexColor('#BCD8C4')), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(cardio_table) story.append(Spacer(1, 0.5*cm)) # ─── ALIMENTAZIONE ─────────────────────────────────────────────────────────── story.append(Paragraph("🥗 LINEE GUIDA ALIMENTARI", section_title)) # Macros table macro_data = [ [Paragraph("MACRO", table_header), Paragraph("QUANTITÀ/GIORNO", table_header), Paragraph("PERCHÉ", table_header)], [Paragraph("🥩 Proteine", table_cell), Paragraph("100-130 g", table_cell_center), Paragraph("Preserva il muscolo durante il dimagrimento — fondamentale", table_note)], [Paragraph("🌾 Carboidrati", table_cell), Paragraph("100-150 g", table_cell_center), Paragraph("Energia per gli allenamenti — solo integrali e non raffinati", table_note)], [Paragraph("🥑 Grassi buoni", table_cell), Paragraph("50-60 g", table_cell_center), Paragraph("Ormoni, pelle sana, sazietà duratura", table_note)], [Paragraph("🔥 Deficit calorico", table_cell), Paragraph("400-600 kcal/giorno", table_cell_center), Paragraph("Con 20k passi + allenamento: mangia 1.400-1.700 kcal/giorno", table_note)], ] macro_table = Table(macro_data, colWidths=[W*0.22, W*0.22, W*0.56], repeatRows=1) macro_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), ORANGE), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('ALIGN', (0,1), (0,-1), 'LEFT'), ('ALIGN', (2,1), (2,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, ORANGE_LIGHT]), ('BOX', (0,0), (-1,-1), 1, ORANGE), ('INNERGRID', (0,0), (-1,-1), 0.3, colors.HexColor('#E8C8B0')), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(macro_table) story.append(Spacer(1, 0.3*cm)) # SI / NO food half = (W - 0.4*cm) / 2 si_items = [ "✅ Albumi d'uovo + uova intere", "✅ Pollo, tacchino, pesce bianco, salmone", "✅ Yogurt greco 0% (max 150g)", "✅ Legumi 3x/settimana", "✅ Verdure a volontà", "✅ Frutta 2 pezzi/giorno (mattina)", "✅ Riso integrale/avena/farro (60-80g crudi)", "✅ Olio EVO (2 cucchiai/giorno)", "✅ Tè verde / tè bianco senza zucchero", ] no_items = [ "❌ Dolci, biscotti, merendine", "❌ Succhi di frutta e bevande zuccherate", "❌ Pane bianco e pasta bianca", "❌ Alcol", "❌ Salumi grassi e formaggi grassi", "❌ Salse (ketchup, maionese)", "❌ Cibi fritti", "⚠️ Pizza, pasta integrale: max 1-2x/settimana", "⚠️ Pane integrale: max 1-2 fette/giorno", ] si_content = [Paragraph("✅ ALIMENTI CONSIGLIATI", ParagraphStyle('SH', fontName='Helvetica-Bold', fontSize=9, textColor=GREEN, alignment=TA_CENTER, spaceAfter=4))] si_content += [Paragraph(x, check_style) for x in si_items] no_content = [Paragraph("❌ DA ELIMINARE / LIMITARE", ParagraphStyle('NH', fontName='Helvetica-Bold', fontSize=9, textColor=colors.HexColor('#C0392B'), alignment=TA_CENTER, spaceAfter=4))] no_content += [Paragraph(x, check_style) for x in no_items] food_table = Table( [[si_content, no_content]], colWidths=[half, half] ) food_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (0,0), GREEN_LIGHT), ('BACKGROUND', (1,0), (1,0), colors.HexColor('#FEF0F0')), ('BOX', (0,0), (0,0), 1, GREEN), ('BOX', (1,0), (1,0), 1, colors.HexColor('#C0392B')), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('LEFTPADDING', (0,0), (-1,-1), 8), ('RIGHTPADDING', (0,0), (-1,-1), 8), ('TOPPADDING', (0,0), (-1,-1), 7), ('BOTTOMPADDING', (0,0), (-1,-1), 7), ])) story.append(food_table) story.append(Spacer(1, 0.3*cm)) # Hydration tip hydra = Table([[Paragraph("💧 <b>IDRATAZIONE:</b> 500ml appena sveglia · 1 bicchiere prima di ogni pasto · 2+ litri totali · Riduci il sale (sgonfia viso e gambe in 5-7 giorni)", note_style)]], colWidths=[W]) hydra.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),BLUE_LIGHT),('BOX',(0,0),(-1,-1),1,BLUE), ('LEFTPADDING',(0,0),(-1,-1),8),('TOPPADDING',(0,0),(-1,-1),5),('BOTTOMPADDING',(0,0),(-1,-1),5)])) story.append(hydra) story.append(Spacer(1, 0.4*cm)) # ─── TIMELINE ──────────────────────────────────────────────────────────────── story.append(Paragraph("📈 RISULTATI ATTESI MESE PER MESE", section_title)) timeline_data = [ [Paragraph("PERIODO", table_header), Paragraph("RISULTATI ATTESI", table_header), Paragraph("KG PERSI", table_header)], [Paragraph("Settimane 1-2", table_cell_center), Paragraph("Meno gonfiore, viso più definito, gambe meno pesanti, più energia", table_note), Paragraph("-1 / -2 kg", table_cell_center)], [Paragraph("Settimane 3-4", table_cell_center), Paragraph("Coscie visibilmente meno piene, vita che inizia a definirsi, glutei più sodi", table_note), Paragraph("-2 / -3 kg tot.", table_cell_center)], [Paragraph("Mese 2", table_cell_center), Paragraph("Silhouette cambiata, addome più piatto, glutei tonificati e sollevati, braccia toniche", table_note), Paragraph("-4 / -6 kg tot.", table_cell_center)], [Paragraph("Mese 3", table_cell_center), Paragraph("Fisico vicino all'obiettivo — vita a clessidra visibile, cosce snelle, forza migliorata", table_note), Paragraph("-5 / -8 kg tot.", table_cell_center)], ] timeline_table = Table(timeline_data, colWidths=[W*0.2, W*0.6, W*0.2], repeatRows=1) timeline_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), PINK_DARK), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('ALIGN', (1,1), (1,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, PINK_LIGHT]), ('BOX', (0,0), (-1,-1), 1, PINK_DARK), ('INNERGRID', (0,0), (-1,-1), 0.3, PINK), ('TOPPADDING', (0,0), (-1,-1), 6), ('BOTTOMPADDING', (0,0), (-1,-1), 6), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(timeline_table) story.append(Spacer(1, 0.3*cm)) # ─── 3 SEGRETI ─────────────────────────────────────────────────────────────── secrets = Table([[Paragraph( "🔑 <b>3 SEGRETI CHE FANNO LA DIFFERENZA:</b> " "1) Hip thrust ad ogni sessione lower body. " "2) Plank laterale 3x/settimana per creare la vita. " "3) Almeno 100g di proteine al giorno — senza proteine perdi muscolo invece di grasso.", note_style)]], colWidths=[W]) secrets.setStyle(TableStyle([('BACKGROUND',(0,0),(-1,-1),PINK_LIGHT),('BOX',(0,0),(-1,-1),1.5,PINK_DARK), ('LEFTPADDING',(0,0),(-1,-1),10),('TOPPADDING',(0,0),(-1,-1),7),('BOTTOMPADDING',(0,0),(-1,-1),7)])) story.append(secrets) story.append(Spacer(1, 0.3*cm)) # ─── FOOTER ────────────────────────────────────────────────────────────────── story.append(HRFlowable(width="100%", thickness=1, color=PINK, spaceAfter=4)) footer_style = ParagraphStyle('Footer', fontName='Helvetica', fontSize=7.5, textColor=MEDIUM_GREY, alignment=TA_CENTER) story.append(Paragraph("Piano personalizzato generato il 18 Luglio 2026 · Consult a healthcare professional before starting any new exercise programme", footer_style)) doc.build(story) print("PDF created successfully!") EOF

Running Command

ls -lh /tmp/workspace/fitness-plan/

Il PDF è pronto! Ecco il tuo programma di allenamento completo e stampabile:

programma allenamento

PDF Document · PDF


Il PDF contiene (2 pagine formato A4):
Pagina 1:
  • Riepilogo overview (durata, passi, sessioni, acqua)
  • Struttura settimanale colorata (Lun-Dom)
  • Scheda completa Allenamento A - Lower Body + Glutei (Lun & Gio)
  • Scheda completa Allenamento B - Core + Upper Body (Mar & Ven)
  • Tips chiave per ogni allenamento
Pagina 2:
  • Piano cardio (20.000 passi + varianti)
  • Tabella macros e calorie
  • Lista cibi SI / NO affiancati
  • Linee guida idratazione
  • Timeline risultati mese per mese
  • I 3 segreti fondamentali
È ottimizzato per la stampa su A4, con colori e tabelle chiare. Puoi stamparlo e tenerlo appeso o portarlo con te.
This is a shared conversation. Sign in to Orris to start your own chat.