{
  "version": 2,
  "savedAt": "2026-05-13T22:38:09.605Z",
  "theme": "default-light",
  "viewport": [
    "2026-05-25T16:48:00.000Z",
    "2026-10-11T07:12:00.000Z"
  ],
  "nextId": 26,
  "nextTaskNum": 26,
  "tasks": [
    {
      "id": 1,
      "name": "Marathon Training",
      "startDate": "2026-06-01T00:00:00.000Z",
      "endDate": "2026-09-21T00:00:00.000Z",
      "color": "#22c55e",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "group",
      "parentId": null,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 2,
      "name": "Week 1 — 18mi total",
      "startDate": "2026-06-01T00:00:00.000Z",
      "endDate": "2026-06-08T00:00:00.000Z",
      "color": "#86efac",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 3,
      "name": "Week 2 — 20mi total",
      "startDate": "2026-06-08T00:00:00.000Z",
      "endDate": "2026-06-15T00:00:00.000Z",
      "color": "#86efac",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 4,
      "name": "Week 3 — 22mi total",
      "startDate": "2026-06-15T00:00:00.000Z",
      "endDate": "2026-06-22T00:00:00.000Z",
      "color": "#86efac",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 5,
      "name": "Week 4 — Recovery 16mi",
      "startDate": "2026-06-22T00:00:00.000Z",
      "endDate": "2026-06-29T00:00:00.000Z",
      "color": "#06b6d4",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 6,
      "name": "Week 5 — 25mi + tempo",
      "startDate": "2026-06-29T00:00:00.000Z",
      "endDate": "2026-07-06T00:00:00.000Z",
      "color": "#22c55e",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 7,
      "name": "Week 6 — 28mi + tempo",
      "startDate": "2026-07-06T00:00:00.000Z",
      "endDate": "2026-07-13T00:00:00.000Z",
      "color": "#22c55e",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 8,
      "name": "Week 7 — Recovery 22mi",
      "startDate": "2026-07-13T00:00:00.000Z",
      "endDate": "2026-07-20T00:00:00.000Z",
      "color": "#06b6d4",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 9,
      "name": "Week 8 — 32mi + 16mi long",
      "startDate": "2026-07-20T00:00:00.000Z",
      "endDate": "2026-07-27T00:00:00.000Z",
      "color": "#16a34a",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 10,
      "name": "Week 9 — 35mi + 18mi long",
      "startDate": "2026-07-27T00:00:00.000Z",
      "endDate": "2026-08-03T00:00:00.000Z",
      "color": "#16a34a",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 11,
      "name": "Week 10 — Recovery 25mi",
      "startDate": "2026-08-03T00:00:00.000Z",
      "endDate": "2026-08-10T00:00:00.000Z",
      "color": "#06b6d4",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 12,
      "name": "Week 11 — 40mi + 20mi long",
      "startDate": "2026-08-10T00:00:00.000Z",
      "endDate": "2026-08-17T00:00:00.000Z",
      "color": "#15803d",
      "priority": "high",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 13,
      "name": "Week 12 — 42mi + 18mi long",
      "startDate": "2026-08-17T00:00:00.000Z",
      "endDate": "2026-08-24T00:00:00.000Z",
      "color": "#15803d",
      "priority": "high",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 14,
      "name": "Week 13 — 38mi + 20mi long",
      "startDate": "2026-08-24T00:00:00.000Z",
      "endDate": "2026-08-31T00:00:00.000Z",
      "color": "#15803d",
      "priority": "high",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 15,
      "name": "Week 14 — Taper 28mi",
      "startDate": "2026-08-31T00:00:00.000Z",
      "endDate": "2026-09-07T00:00:00.000Z",
      "color": "#fbbf24",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 16,
      "name": "Week 15 — Taper 18mi",
      "startDate": "2026-09-07T00:00:00.000Z",
      "endDate": "2026-09-14T00:00:00.000Z",
      "color": "#f97316",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 17,
      "name": "Carb load",
      "startDate": "2026-09-17T00:00:00.000Z",
      "endDate": "2026-09-20T00:00:00.000Z",
      "color": "#a16207",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 18,
      "name": "Pre-race shakeout",
      "startDate": "2026-09-19T00:00:00.000Z",
      "endDate": "2026-09-20T00:00:00.000Z",
      "color": "#ef4444",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 19,
      "name": "Race Day",
      "startDate": "2026-09-20T00:00:00.000Z",
      "endDate": "2026-09-21T00:00:00.000Z",
      "color": "#dc2626",
      "priority": "high",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "milestone",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 20,
      "name": "Tempo runs (ongoing)",
      "startDate": "2026-06-29T00:00:00.000Z",
      "endDate": "2026-08-31T00:00:00.000Z",
      "color": "#a855f7",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 21,
      "name": "Intervals (ongoing)",
      "startDate": "2026-07-06T00:00:00.000Z",
      "endDate": "2026-08-31T00:00:00.000Z",
      "color": "#a855f7",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 22,
      "name": "Cross-train weekly",
      "startDate": "2026-06-01T00:00:00.000Z",
      "endDate": "2026-08-31T00:00:00.000Z",
      "color": "#06b6d4",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 23,
      "name": "Strength work weekly",
      "startDate": "2026-06-01T00:00:00.000Z",
      "endDate": "2026-08-31T00:00:00.000Z",
      "color": "#06b6d4",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 24,
      "name": "Fueling strategy test",
      "startDate": "2026-06-29T00:00:00.000Z",
      "endDate": "2026-08-17T00:00:00.000Z",
      "color": "#fbbf24",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    },
    {
      "id": 25,
      "name": "2 weeks recovery",
      "startDate": "2026-09-21T00:00:00.000Z",
      "endDate": "2026-10-05T00:00:00.000Z",
      "color": "#10b981",
      "priority": "medium",
      "notes": "",
      "barScale": 1,
      "progress": 0,
      "type": "task",
      "parentId": 1,
      "dependencies": [],
      "collapsed": false
    }
  ],
  "events": [],
  "nextEventId": 1
}