/* Club FRESH — data layer (Design Brief) */

const PILLARS = [
  { key:'fitness',       short:'Fitness',       letter:'F' },
  { key:'relationships', short:'Relationships', letter:'R' },
  { key:'environment',   short:'Environment',   letter:'E' },
  { key:'self',          short:'Self',          letter:'S' },
  { key:'hustle',        short:'Hustle',        letter:'H' },
];

/* anchor index: Mon=0 … Sun=6 */
const DAYS = [
  { i:0, dow:'Monday',    anchor:'fitness',       letter:'F', name:'Fitness & Nutrition', accent:'#c07152', ink:'#ffffff', deck:true,
    line:'Your body is the room you run the business from. Make it a good one to be in today.',
    action:'Move for five minutes before you open the laptop. Walk, stretch, breathe.' },
  { i:1, dow:'Tuesday',   anchor:'relationships', letter:'R', name:'Relationships',       accent:'#d7ad82', ink:'#2a241d', deck:false,
    line:'Business is just relationships with a spreadsheet attached. Tend one today.',
    action:'Send one honest message to a woman you have been meaning to reach. No agenda.' },
  { i:2, dow:'Wednesday', anchor:'environment',   letter:'E', name:'Environment',         accent:'#c69b8b', ink:'#2a241d', deck:false,
    line:'You cannot think clearly in a cluttered room. Clear one surface, clear one tab.',
    action:'Reset one small space. One drawer, one desktop, one corner. Five minutes.' },
  { i:3, dow:'Thursday',  anchor:'self',          letter:'S', name:'Self + Hustle',       accent:'#748d78', ink:'#ffffff', deck:true,
    line:'Self-leadership first, hustle second. Decide who is running the day before the day runs you.',
    action:'Name the one thing that, done today, makes the rest lighter. Start it now.' },
  { i:4, dow:'Friday',    anchor:'freedom', letter:'·', name:'Freedom Friday',     accent:'#1a1714', ink:'#ffffff', deck:false, freedom:true,
    line:'Close the laptop with me. The freedom is the point, not the prize for later.',
    action:'Do the freedom-filled thing. Then post it on the wall so the others remember they can too.' },
  { i:5, dow:'Saturday',  anchor:'rest', letter:'', name:'Rest', accent:'#b0a99c', ink:'#ffffff', deck:false, rest:true,
    line:'The rhythm rests on weekends. So do you.', action:'' },
  { i:6, dow:'Sunday',    anchor:'rest', letter:'', name:'Rest', accent:'#b0a99c', ink:'#ffffff', deck:false, rest:true,
    line:'Still resting. Back in the rhythm on Monday, lovely.', action:'' },
];

const SEASON = {
  name:'Steady Season', dates:'1 Sep – 30 Nov 2026',
  line:'clean, stable and grounded',
  sessions:[
    { anchor:'fitness',       title:'Energy that lasts the week', len:'12 min' },
    { anchor:'relationships', title:'The conversations that grow it', len:'14 min' },
    { anchor:'environment',   title:'A calm room, a clear head', len:'10 min' },
    { anchor:'self',          title:'Lead yourself first', len:'15 min' },
    { anchor:'hustle',        title:'Hustle without the burnout', len:'13 min' },
  ],
  guide:{ title:'September Rhythm Guide', sub:'This month, in one beautiful page', size:'PDF · 1.4 MB' },
  call:{ title:'Steady Season activation call', date:'Thu 18 Sep · 11:00 AM AEST', tz:'your time', live:false, replay:true },
  party:{ title:'Progress Party', date:'27 Nov', note:'Bring one win. Any size.' },
};

const DECK_CARDS = [
  { anchor:'self',          prompt:'Where are you performing instead of leading?' },
  { anchor:'fitness',       prompt:'What would today feel like with ten percent more space in it?' },
  { anchor:'relationships', prompt:'Name the boundary you keep almost setting.' },
  { anchor:'hustle',        prompt:'What is the smallest brave thing available to you right now?' },
  { anchor:'environment',   prompt:'What in your space is quietly draining you?' },
];

const ME = { name:'Tracy Harris', anchor:'self', founding:true };
const LEAD = { name:'Danielle Cole', anchor:'relationships', lead:true };

const PEOPLE = [
  { name:'Priya Nair',     anchor:'fitness' },
  { name:'Mara Lindqvist', anchor:'relationships' },
  { name:'Steph Okafor',   anchor:'environment' },
  { name:'Bec Turner',     anchor:'self' },
  { name:'Nadia Haddad',   anchor:'hustle' },
  { name:'Joze Marin',     anchor:'fitness' },
  { name:'Harriet Bell',   anchor:'self' },
];

/* today's thread — pinned prompt + grouped messages */
const THREAD = {
  inToday: 47,
  pinned:{ who:'Tracy Harris', tracy:true, text:'Today’s anchor is up. Do your five minutes, then come tell me you did. The rhythm is better with you in it. Xx', },
  messages:[
    { who:'Danielle Cole', lead:true, anchor:'relationships', group:['Morning lovelies. I am up and walking before the inbox today.','Who is moving with me?'], time:'7:02', react:[{e:'🙌',n:6}] },
    { who:'Priya Nair', anchor:'fitness', group:['Ten minutes on the mat done. Small but I showed up.'], time:'7:14', react:[{e:'❤️',n:9},{e:'✓',n:4}] },
    { who:'Mara Lindqvist', anchor:'relationships', group:['This is the first morning in months I have not opened email first 🙏'], time:'7:21', react:[{e:'🔥',n:7}] },
    { who:'Bec Turner', anchor:'self', reply:{ who:'Priya Nair', text:'Ten minutes on the mat done. Small but…' }, group:['Small is the whole point Priya. Proud of you.'], time:'7:26', react:[{e:'❤️',n:3}] },
    { who:'You', me:true, group:['Walked the dog, did not check my phone. In the rhythm today ✓'], time:'7:31', react:[{e:'🙌',n:5}] },
    { who:'Nadia Haddad', anchor:'hustle', group:['Needed this nudge. Stretching now then a calm start.'], time:'7:38' },
  ],
  typing:'Steph',
};

const WINS = [
  { who:'Joze Marin', anchor:'fitness', text:'Signed my first retainer client. Cried a little. Showed up anyway.', react:[{e:'🙌',n:24},{e:'❤️',n:18},{e:'🔥',n:11}], time:'2h' },
  { who:'Mara Lindqvist', anchor:'relationships', text:'Finally said no to a project that was not mine to carry. Felt like freedom.', react:[{e:'🙏',n:31},{e:'❤️',n:14}], time:'5h' },
  { who:'Bec Turner', anchor:'self', text:'Three weeks in the rhythm. I have not done three weeks of anything in a year.', react:[{e:'✓',n:22},{e:'🙌',n:19}], time:'Yesterday' },
  { who:'Nadia Haddad', anchor:'hustle', text:'Raised my prices. Nobody flinched. Why did I wait so long.', react:[{e:'🔥',n:28},{e:'❤️',n:9}], time:'Yesterday' },
];

const FREEDOM = [
  { who:'Priya Nair', anchor:'fitness', img:'assets/img/pillar-environment.jpg', cap:'Friday office today. Ocean, no notifications.', react:[{e:'❤️',n:33}] },
  { who:'Steph Okafor', anchor:'environment', img:'assets/img/community.jpg', cap:'Long lunch with my daughter. The business survived.', react:[{e:'🙌',n:21}] },
  { who:'Harriet Bell', anchor:'self', img:'assets/img/pillar-fitness.jpg', cap:'Pilates at 11am on a workday. This is the whole point.', react:[{e:'🔥',n:17}] },
];

/* Rhythm */
const RHYTHM = {
  week:[
    { letter:'F', anchor:'fitness',       done:true },
    { letter:'R', anchor:'relationships', done:true },
    { letter:'E', anchor:'environment',   done:false, today:true },
    { letter:'S', anchor:'self',          done:false },
    { letter:'·', anchor:'freedom',       done:false },
  ],
  cluster:[
    { marks:[{a:'fitness',max:true},{a:'self'},{a:'relationships'}] },
    { marks:[{a:'environment'},{a:'self'}] },
    { today:true },
    { marks:[{a:'fitness'},{a:'relationships'},{a:'environment'},{a:'self'},{a:'hustle'}] },
    { freedom:true },
  ],
  weeksInRhythm:6,
  tiers:[
    { at:4,  name:'Settling In' },
    { at:12, name:'In Rhythm' },
    { at:26, name:'Anchored' },
    { at:52, name:'A Year of Rhythm' },
  ],
  deckCount:12, deckTotal:52,
  freedomFridays:23,
  fresh:{ headline:71, delta:9,
    bars:[
      { anchor:'fitness',       label:'Fitness',       score:68 },
      { anchor:'relationships', label:'Relationships', score:79 },
      { anchor:'environment',   label:'Environment',   score:62 },
      { anchor:'self',          label:'Self',          score:74 },
      { anchor:'hustle',        label:'Hustle',        score:72 },
    ],
  },
};

/* Shop */
const SHOP = {
  door:{ title:'Freedom Filled® Business', kicker:'By application',
    line:'The biggest upgrade is not a product. It is a room.',
    story:'“FFB is the reason my business funds my actual life now.” Jess R, graduate', cta:'Apply' },
  physical:[
    { id:'mat',     name:'The FRESH Mat',      anchor:'fitness', price:'$120', blurb:'Onyx mat, copper wordmark. The Fitness anchor, made tangible.', img:'assets/img/pillar-fitness.jpg' },
    { id:'deck',    name:'The FRESH Deck',     anchor:'self',    price:'$49',  blurb:'The card deck for women in business. The daily draw, in your hands.', img:'assets/img/pillar-environment.jpg' },
    { id:'journal', name:"Tracy's FRESH Journal", anchor:'relationships', price:'$38', blurb:'Linen hardcover with the weekly rhythm printed in.', img:'assets/img/community.jpg' },
  ],
  digital:[
    { id:'full-deck', name:'The full FRESH Deck, in-app', price:'$19', blurb:'Draw any day, plus journaling space on every card.', icon:'spark' },
    { id:'journaling', name:"Tracy's FRESH Journaling", price:'$15', blurb:'Guided journaling in Tracy’s voice. Private to you.', icon:'compass' },
    { id:'morsel-boundaries', name:'Mini-training · Boundaries', price:'$29', blurb:'A calm 30 minutes on protecting your week.', icon:'leaf', morsel:true },
    { id:'morsel-week', name:'Mini-training · A calm week', price:'$29', blurb:'Plan a week that does not flatten you.', icon:'clock', morsel:true },
  ],
};

/* §12 — Minimums + Maximums (her trackable per anchor) */
const TRACKABLES = {
  fitness:       { name:'Move my body',     unit:'',          min:10, max:30, lastMin:10, lastMax:30, hitMaxStreak:3 },
  relationships: { name:'Real conversation', unit:'',         min:1,  max:3,  lastMin:1,  lastMax:3 },
  environment:   { name:'Reset a space',    unit:'surfaces',  min:1,  max:4,  lastMin:1,  lastMax:4 },
  self:          { name:'Quiet planning',   unit:'min',       min:5,  max:20, lastMin:5,  lastMax:20 },
  hustle:        { name:'Move the needle',  unit:'task',      min:1,  max:3,  lastMin:1,  lastMax:3 },
};
/* floor-rise series for one anchor (self) — min line climbing over the season */
const FLOOR = {
  anchor:'self',
  weeks:['W1','W2','W3','W4','W5','W6'],
  minLine:[5, 5, 8, 8, 10, 12],
  maxLine:[20, 20, 22, 25, 25, 28],
  done:[12, 8, 18, 14, 24, 22],
};

/* §14 — The Well (Tracy's audio bank) */
const WELL = {
  moments:[
    { t:'Morning start', len:'4 min', anchor:'self', rail:'lift' },
    { t:'Midday reset', len:'3 min', anchor:'environment', rail:'lift' },
    { t:'Freedom Friday wind-down', len:'5 min', anchor:'relationships', rail:'lift' },
    { t:'Before the scary thing', len:'4 min', anchor:'hustle', rail:'push' },
  ],
  byAnchor:[
    { anchor:'fitness',       lift:'Be gentle with your body today', push:'Ten minutes is not nothing' },
    { anchor:'relationships', lift:'You are allowed to need people', push:'Have the brave conversation' },
    { anchor:'environment',   lift:'A soft place to land',           push:'Clear it, then begin' },
    { anchor:'self',          lift:'You are not behind',             push:'Lead yourself first' },
    { anchor:'hustle',        lift:'Rest is part of the work',       push:'Do the hard thing first' },
  ],
};

/* §13 — FRESH Foundations */
const FOUNDATIONS = {
  orientation:{ t:'What FRESH is', len:'6 min',
    line:'The system that holds the woman who carries the business, so the business does not carry her.' },
  primers:[
    { anchor:'fitness',       t:'Fitness & Nutrition', len:'4 min', why:'Monday, because the body runs the business.', line:'Your body is the room you work from.' },
    { anchor:'relationships', t:'Relationships',       len:'4 min', why:'Tuesday, because business is relationships.', line:'Tend one, and the rest follows.' },
    { anchor:'environment',   t:'Environment',         len:'3 min', why:'Wednesday, because a clear room is a clear head.', line:'Clear one surface, clear one tab.' },
    { anchor:'self',          t:'Self-leadership',     len:'5 min', why:'Thursday, because you decide the day.', line:'Lead yourself before you lead anything.' },
    { anchor:'hustle',        t:'Hustle',              len:'4 min', why:'Thursday too, because effort has its place.', line:'Hustle without the burnout.' },
  ],
  reset:{ t:'The 5-day FRESH Reset', line:'Foundations teaches what FRESH is. The Reset is five guided days of living it, with me.' },
};

/* Tracy as a lens (rotates across anchors, never owns a weekday) */
const LENSES = {
  fitness:       { anchor:'fitness',       name:'Fitness & Nutrition', color:'#c07152', ink:'#ffffff',
    line:'Your body is the room you run the business from. Make it a good one to be in today.',
    action:'Move for five minutes before you open the laptop. Walk, stretch, breathe.' },
  relationships: { anchor:'relationships', name:'Relationships',       color:'#d7ad82', ink:'#2a241d',
    line:'Business is just relationships with a spreadsheet attached. Tend one today.',
    action:'Send one honest message to a woman you have been meaning to reach. No agenda.' },
  environment:   { anchor:'environment',   name:'Environment',         color:'#c69b8b', ink:'#2a241d',
    line:'You cannot think clearly in a cluttered room. Clear one surface, clear one tab.',
    action:'Reset one small space. One drawer, one desktop, one corner. Five minutes.' },
  self:          { anchor:'self',          name:'Self-leadership',     color:'#748d78', ink:'#ffffff',
    line:'Self-leadership first, hustle second. Decide who is running the day before the day runs you.',
    action:'Name the one thing that, done today, makes the rest lighter. Start it now.' },
  hustle:        { anchor:'hustle',        name:'Hustle',              color:'#1a1714', ink:'#ffffff',
    line:'Effort has its place. Choose the one task that actually moves the business, and do only that.',
    action:'Pick the single needle-mover. Protect twenty-five minutes for it before noon.' },
};
const FREEDOM_DAY = {
  name:'Freedom day',
  line:'Close the laptop with me. The freedom is the point, not the prize for later.',
  action:'Do the freedom-filled thing. Then post it on the wall so the others remember they can too.',
  audio:'Freedom Friday wind-down',
};

Object.assign(window, {
  CF_DAYS: DAYS, CF_SEASON: SEASON, CF_DECK_CARDS: DECK_CARDS,
  CF_ME: ME, CF_LEAD: LEAD, CF_PEOPLE: PEOPLE,
  CF_THREAD: THREAD, CF_WINS: WINS, CF_FREEDOM: FREEDOM,
  CF_RHYTHM: RHYTHM, CF_SHOP: SHOP,
  CF_TRACKABLES: TRACKABLES, CF_FLOOR: FLOOR, CF_WELL: WELL, CF_FOUNDATIONS: FOUNDATIONS,
  CF_PILLARS: PILLARS, CF_LENSES: LENSES, CF_FREEDOM_DAY: FREEDOM_DAY,
});
