{
    "program": {
        "id": "jurnal_2026-05-11",
        "title": "Jurnal Antrenamente",
        "week_start": "2026-05-11",
        "week_no": 3,
        "subtitle": "Săptămâna 3",
        "params": "4 serii · piramidă 12–15 / 10–12 / 8–10 / 6–8 rep · RPE 6–7 · tempo coborâre 3 sec",
        "progression": "+4 kg la seria urm. dacă ai atins limita sup. de rep; +2 kg dacă ai atins limita inf."
    },
    "schedule": {
        "days": [
            {
                "day_no": 1,
                "label": "Ziua 1",
                "planned_weekday": "Luni",
                "actual_date": "2026-05-11",
                "status": "planned"
            },
            {
                "day_no": 2,
                "label": "Ziua 2",
                "planned_weekday": "Marți",
                "actual_date": "2026-05-12",
                "status": "planned"
            },
            {
                "day_no": 3,
                "label": "Ziua 3",
                "planned_weekday": "Miercuri",
                "actual_date": "2026-05-13",
                "status": "planned"
            },
            {
                "day_no": 4,
                "label": "Ziua 4",
                "planned_weekday": "Joi",
                "actual_date": "2026-05-14",
                "status": "planned"
            }
        ]
    },
    "days": [
        {
            "day_no": 1,
            "date": "2026-05-11",
            "weekday": "Luni",
            "title": "Picioare (quad-dominant) · gambe · core",
            "note": "Hack squat e exercițiu relativ nou — dacă greutatea din săpt. 2 a părut ușoară la seriile 3–4, crești cu 5 kg la pornire.",
            "exercises": [
                {
                    "id": "z1e1",
                    "order": 1,
                    "name_ro": "Extensia gambei standard",
                    "name_en": "Standard Leg Extension",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23/c/6a0073eb-7800-8327-937d-187fb9ebe66d",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/leg-extension_400px.jpeg",
                    "setup": "Sprijin pe tibie (poziția L); spătar poziția 4.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 55,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 60,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 65,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 70,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 55,
                            "actual_reps": 12,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 60,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/leg-extension.jpeg"
                },
                {
                    "id": "z1e2",
                    "order": 2,
                    "name_ro": "Hack squat standard",
                    "name_en": "Shoulder-Width Stance Hack Squat",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a005548-fc28-8325-bc2f-d78b07b6b85c",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/hack-squat_400px.jpeg",
                    "setup": "Picioarele la lățimea umerilor pe platformă; spate lipit de suport. Verifică că genunchii urmăresc direcția vârfurilor pe toată amplitudinea.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "De calibrat — greutate din săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "plates",
                        "step": 10,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/hack-squat.jpeg"
                },
                {
                    "id": "z1e3",
                    "order": 3,
                    "name_ro": "Fandare bulgărească",
                    "name_en": "Bulgarian Split Squat",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff7673-0a04-8328-afd2-a86369e6844c",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/adjustable-bench_400px.jpeg",
                    "setup": "Piciorul din spate pe bancă; trunchi ușor aplecat înainte.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": true,
                        "bodyweight": false,
                        "dumbbell": true
                    },
                    "weight_system": {
                        "type": "dumbbell",
                        "step": null,
                        "has_half_step": false,
                        "custom_values": [
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            10,
                            12,
                            14,
                            16,
                            18,
                            20,
                            22,
                            24,
                            26,
                            28,
                            35
                        ]
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 6,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 2,
                            "target_weight": 8,
                            "rep_min": 8,
                            "rep_max": 8
                        },
                        {
                            "set_no": 3,
                            "target_weight": 10,
                            "rep_min": 8,
                            "rep_max": 8
                        },
                        {
                            "set_no": 4,
                            "target_weight": 10,
                            "rep_min": 8,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/adjustable-bench.jpeg"
                },
                {
                    "id": "z1e4",
                    "order": 4,
                    "name_ro": "Extensia gambei din șezut",
                    "name_en": "Seated Calf Extension",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff96ec-8604-8330-afb3-11494a781e50",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/calf-extension_400px.jpeg",
                    "setup": "Genunchii sub pernă; amplitudine completă sus și jos; pauză 1 sec în vârf.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform calibrare săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 15,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 10
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/calf-extension.jpeg"
                },
                {
                    "id": "z1e5",
                    "order": 5,
                    "name_ro": "Rotație standard a trunchiului",
                    "name_en": "Machine Torso Rotation",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a009529-51b0-832c-8f8d-d108057bc679",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/torso-rotation_400px.jpeg",
                    "setup": "Rotație controlată; nu bloca mișcarea la capăt de amplitudine.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 55,
                            "rep_min": 15,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 75,
                            "rep_min": 12,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 95,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 95,
                            "rep_min": 10,
                            "rep_max": 10
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/torso-rotation.jpeg"
                }
            ]
        },
        {
            "day_no": 2,
            "date": "2026-05-12",
            "weekday": "Marți",
            "title": "Piept + umeri · triceps",
            "note": "Piept și umeri pe aparat — greutățile din săpt. 2 sunt baza. Crești doar dacă RPE a fost sub 6 la seriile finale.",
            "exercises": [
                {
                    "id": "z2e1",
                    "order": 1,
                    "name_ro": "Presă pentru piept standard",
                    "name_en": "Standard Chest Press",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff982a-b20c-8329-b401-f598b5484eb7",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/chest-press-2_400px.jpeg",
                    "setup": "Reglează scaunul astfel încât brațul superior să fie orizontal față de podea.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 55,
                            "actual_reps": 15,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 65,
                            "actual_reps": 12,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 75,
                            "actual_reps": 10,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 85,
                            "actual_reps": 8,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/chest-press-2.jpeg"
                },
                {
                    "id": "z2e2",
                    "order": 2,
                    "name_ro": "Zbor pectoral standard",
                    "name_en": "Standard Pec Deck Fly",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a005337-ae48-8333-acc4-8db9f387e2d4",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/fly_400px.jpeg",
                    "setup": "Coatele ușor flexate; coboară până la nivelul umerilor, nu mai jos.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 55,
                            "actual_reps": 15,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 65,
                            "actual_reps": 12,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 75,
                            "actual_reps": 10,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 85,
                            "actual_reps": 8,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/fly.jpeg"
                },
                {
                    "id": "z2e3",
                    "order": 3,
                    "name_ro": "Împins la umeri standard",
                    "name_en": "Machine Shoulder Press",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a0091a8-aca4-8330-a084-b3ccef7ab952",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/shoulder-press_400px.jpeg",
                    "setup": "Reglează scaunul astfel încât coatele să fie la 90° în poziția de start.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/shoulder-press.jpeg"
                },
                {
                    "id": "z2e4",
                    "order": 4,
                    "name_ro": "Ridicări frontale",
                    "name_en": "Front Raises",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a004dc8-0cf8-8332-87a6-43586cb8e361",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/dumbbell-rack_400px.jpeg",
                    "setup": "Din picioare sau din șezut; mișcare controlată până la nivelul umerilor.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": true
                    },
                    "weight_system": {
                        "type": "dumbbell",
                        "step": null,
                        "has_half_step": false,
                        "custom_values": [
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            10,
                            12,
                            14,
                            16,
                            18,
                            20,
                            22,
                            24,
                            26,
                            28,
                            35
                        ]
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 8,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 10,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 12,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 14,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/dumbbell-rack.jpeg"
                },
                {
                    "id": "z2e5",
                    "order": 5,
                    "name_ro": "Extensie triceps",
                    "name_en": "Triceps Pushdown",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff9f15-6af4-8384-8fa2-cf0279440afa",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/dual-adjustable-pulley_400px.jpeg",
                    "setup": "Scripetele sus; coatele fixe pe lângă corp; extensie completă cu funie.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/dual-adjustable-pulley.jpeg"
                }
            ]
        },
        {
            "day_no": 3,
            "date": "2026-05-13",
            "weekday": "Miercuri",
            "title": "Spate · biceps · lombar",
            "note": "Spate consecutiv cu săpt. anterioară — dacă ramat bilateral a părut prea ușor la seriile 3–4, crești pornirea cu 5 kg.",
            "exercises": [
                {
                    "id": "z3e1",
                    "order": 1,
                    "name_ro": "Tracțiune verticală standard",
                    "name_en": "Standard Lat Pull Down",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a006ec8-4010-8328-b0d4-4543bca3dcdd",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/lat-pull-down_400px.jpeg",
                    "setup": "Priză la limita curburii barei; trage spre piept cu coatele în jos și înapoi.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 45,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 55,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 65,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 70,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 45,
                            "actual_reps": 12,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 55,
                            "actual_reps": 10,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 65,
                            "actual_reps": 8,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 70,
                            "actual_reps": 6,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/lat-pull-down.jpeg"
                },
                {
                    "id": "z3e2",
                    "order": 2,
                    "name_ro": "Ramat bilateral",
                    "name_en": "Bilateral Lying Cable Row",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a002893-c104-8328-bc60-878accadfd99",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/dual-pulley-row_400px.jpeg",
                    "setup": "Scripetele la înălțimea mijlocului; trage spre coaste, strânge omoplații.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/dual-pulley-row.jpeg"
                },
                {
                    "id": "z3e3",
                    "order": 3,
                    "name_ro": "Ramat unilateral",
                    "name_en": "Single-Arm Dumbbell Row",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff738b-2fd4-8333-b51a-f3bcddf4686a",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/adjustable-bench_400px.jpeg",
                    "setup": "Un genunchi pe bancă, spatele paralel cu solul; trage gantera spre șold.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": true,
                        "bodyweight": false,
                        "dumbbell": true
                    },
                    "weight_system": {
                        "type": "dumbbell",
                        "step": null,
                        "has_half_step": false,
                        "custom_values": [
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            10,
                            12,
                            14,
                            16,
                            18,
                            20,
                            22,
                            24,
                            26,
                            28,
                            35
                        ]
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 16,
                            "rep_min": 12,
                            "rep_max": 12
                        },
                        {
                            "set_no": 2,
                            "target_weight": 20,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 3,
                            "target_weight": 24,
                            "rep_min": 8,
                            "rep_max": 8
                        },
                        {
                            "set_no": 4,
                            "target_weight": 28,
                            "rep_min": 6,
                            "rep_max": 6
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/adjustable-bench.jpeg"
                },
                {
                    "id": "z3e4",
                    "order": 4,
                    "name_ro": "Curl biceps cu bara",
                    "name_en": "Barbell Curl",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff9623-5e04-8391-a37a-778370f588be",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/barbell-rack_400px.jpeg",
                    "setup": "Priză la lățimea umerilor; mișcare controlată, fără balans.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "plates",
                        "step": 10,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/barbell-rack.jpeg"
                },
                {
                    "id": "z3e5",
                    "order": 5,
                    "name_ro": "Hiperextensia standard",
                    "name_en": "45-Degree Back Extension",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a006672-a00c-8333-ba55-8545dd327c7e",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/hyper-extension-bench_400px.jpeg",
                    "setup": "Șoldurile sprijinite pe pernă; coborâre controlată; extensie până la linia corpului. Dacă simți lombarul, rămâi fără greutate la toate seriile.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 15,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 10,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 10,
                            "rep_min": 10,
                            "rep_max": 10
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/hyper-extension-bench.jpeg"
                }
            ]
        },
        {
            "day_no": 4,
            "date": "2026-05-14",
            "weekday": "Joi",
            "title": "Picioare (hip-dominant) · fesieri · echilibru · core",
            "note": "Leg press și step-up sunt grele după seated leg curl. Dacă oboseala e mare, elimini step-up și păstrezi restul. Recuperare completă weekend.",
            "exercises": [
                {
                    "id": "z4e1",
                    "order": 1,
                    "name_ro": "Flexia gambelor din șezut",
                    "name_en": "Seated Leg Curl",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a008aa4-1f40-832b-8573-bf232fc230f9",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/seated-leg-curl_400px.jpeg",
                    "setup": "Genunchii ușor peste marginea suportului; vârfurile trase spre tibie.",
                    "flags": {
                        "calibration": true,
                        "calibration_note": "Conform jurnal săpt. 2",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/seated-leg-curl.jpeg"
                },
                {
                    "id": "z4e2",
                    "order": 2,
                    "name_ro": "Presă cu tălpile sus pe platformă",
                    "name_en": "High Foot Placement Leg Press",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a007795-6d4c-832c-9501-d937560aec79",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/leg-press-45-degree_400px.jpeg",
                    "setup": "Tălpile în treimea superioară a platformei; accent fesieri și ischiogambieri.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "plates",
                        "step": 10,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 160,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 190,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 220,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 250,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/leg-press-45-degree.jpeg"
                },
                {
                    "id": "z4e3",
                    "order": 3,
                    "name_ro": "Step-up cu ridicare de genunchi",
                    "name_en": "Step-Up to Knee Drive",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/6a007c4c-f430-8332-851d-b33293712384",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/plyo-boxes_400px.jpeg",
                    "setup": "Cutie sau bancă; urcă prin călcâi, ridici genunchiul opus sus la final.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": true,
                        "bodyweight": false,
                        "dumbbell": true
                    },
                    "weight_system": {
                        "type": "dumbbell",
                        "step": null,
                        "has_half_step": false,
                        "custom_values": [
                            1,
                            2,
                            3,
                            4,
                            5,
                            6,
                            7,
                            8,
                            10,
                            12,
                            14,
                            16,
                            18,
                            20,
                            22,
                            24,
                            26,
                            28,
                            35
                        ]
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 6,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 2,
                            "target_weight": 8,
                            "rep_min": 8,
                            "rep_max": 8
                        },
                        {
                            "set_no": 3,
                            "target_weight": 10,
                            "rep_min": 8,
                            "rep_max": 8
                        },
                        {
                            "set_no": 4,
                            "target_weight": 10,
                            "rep_min": 8,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/plyo-boxes.jpeg"
                },
                {
                    "id": "z4e4",
                    "order": 4,
                    "name_ro": "Face Pull",
                    "name_en": "Face Pull",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff9ece-82cc-8331-bb1d-6687edc7d91a",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/dual-adjustable-pulley_400px.jpeg",
                    "setup": "Scripetele la nivelul feței; trage coarda spre față cu coatele sus.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": false,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "pin",
                        "step": 5,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 17.5,
                            "rep_min": 12,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 28,
                            "rep_min": 10,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 35,
                            "rep_min": 8,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 42,
                            "rep_min": 6,
                            "rep_max": 8
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/dual-adjustable-pulley.jpeg"
                },
                {
                    "id": "z4e5",
                    "order": 5,
                    "name_ro": "Ridicarea genunchilor",
                    "name_en": "Bent Knee Leg Raise",
                    "guide_url": "https://chatgpt.com/g/g-p-67dd8166f96481918165088684058b23-sport-and-nutrition/c/69ff9c1f-0788-832a-bd62-f59240e01c97",
                    "image": "app/jurnal-antrenamente/assets/images/equipment/scaled/chin-dip-leg-raise_400px.jpeg",
                    "setup": "Sprijinit pe pernele de cot; genunchii îndoiți la 90°; ridici spre piept.",
                    "flags": {
                        "calibration": false,
                        "calibration_note": "",
                        "per_side": false,
                        "bodyweight": true,
                        "dumbbell": false
                    },
                    "weight_system": {
                        "type": "bodyweight",
                        "step": 0,
                        "has_half_step": false,
                        "custom_values": []
                    },
                    "planned_sets": [
                        {
                            "set_no": 1,
                            "target_weight": 0,
                            "rep_min": 15,
                            "rep_max": 15
                        },
                        {
                            "set_no": 2,
                            "target_weight": 0,
                            "rep_min": 12,
                            "rep_max": 12
                        },
                        {
                            "set_no": 3,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 10
                        },
                        {
                            "set_no": 4,
                            "target_weight": 0,
                            "rep_min": 10,
                            "rep_max": 10
                        }
                    ],
                    "performed_sets": [
                        {
                            "set_no": 1,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 2,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 3,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        },
                        {
                            "set_no": 4,
                            "actual_weight": 0,
                            "actual_reps": 0,
                            "done": false,
                            "notes": ""
                        }
                    ],
                    "image_full": "app/jurnal-antrenamente/assets/images/equipment/full/chin-dip-leg-raise.jpeg"
                }
            ]
        }
    ]
}
