// prototype-data.jsx — Mock-data: prosjekter, protokoller, tiltak, grupper

const TEAM = {
  KS: { i: 'KS', n: 'Kari Solberg', r: 'Daglig leder', c: '#f2545c' },
  MR: { i: 'MR', n: 'Marius Røed', r: 'Prosjektleder · Lambertseter', c: '#586ba4' },
  HM: { i: 'HM', n: 'Hanne Myhre', r: 'HR-leder', c: '#08605f' },
  ØS: { i: 'ØS', n: 'Øystein Sand', r: 'Økonomisjef', c: '#11183d' },
  KK: { i: 'KK', n: 'Kristin Krogh', r: 'Kvalitetsansvarlig', c: '#f2cc8f' },
  TM: { i: 'TM', n: 'Tone Moen', r: 'Avd.leder · Holmlia', c: '#bbe8ff' },
  HE: { i: 'HE', n: 'Håkon Eide', r: 'Avd.leder · Vulkan', c: '#fcddde' },
  JN: { i: 'JN', n: 'Jonas Nilsen', r: 'Jobbspesialist', c: '#cedfdf' },
  AN: { i: 'AN', n: 'Astrid Nyhus', r: 'Veileder · Skullerud', c: '#dee1ed' },
  RB: { i: 'RB', n: 'Ruben Bø', r: 'Leder OK:sykkel', c: '#fcddde' },
  IH: { i: 'IH', n: 'Ida Holm', r: 'Leder OK:bistro', c: '#f2cc8f' },
};

const GROUPS = [
  'Ledergruppen',
  'Lambertseter veilederteam',
  'Holmlia veilederteam',
  'Skullerud kvalitetsteam',
  'Vulkan IT-team',
  'OK:bistro · Lambertseter',
  'OK:sykkel · Vulkan',
  'OK:data',
  'HR-stab',
  'Økonomi-stab',
];

const PROJECTS = [
  {
    id: 'aft26',
    name: 'AFT 2026 – vårkohort',
    desc: 'Arbeidsforberedende trening, NAV-oppdrag',
    owner: 'MR',
    team: ['MR', 'AN', 'JN'],
    avd: 'Lambertseter',
    phase: 'Gjennomføring',
    status: 'track',
    progress: 65,
    start: '2026-01-15', end: '2026-08-15',
    budget: { plan: 2_400_000, spent: 1_540_000 },
    openTiltak: 4,
    nextMilestone: 'Halvtidsevaluering · 12. juni',
  },
  {
    id: 'ipsh',
    name: 'IPS Holmlia',
    desc: 'Individual Placement and Support, langsiktig program',
    owner: 'TM',
    team: ['TM', 'AN'],
    avd: 'Holmlia',
    phase: 'Gjennomføring',
    status: 'delay',
    progress: 40,
    start: '2025-09-01', end: '2026-06-30',
    budget: { plan: 1_800_000, spent: 1_100_000 },
    openTiltak: 7,
    nextMilestone: 'Rapport NAV · 30. mai · FORSINKET',
  },
  {
    id: 'vta',
    name: 'VTA – varig tilrettelagt 2026',
    desc: 'Varig tilrettelagt arbeid, alle avdelinger',
    owner: 'HE',
    team: ['HE', 'IH', 'RB'],
    avd: 'Alle',
    phase: 'Gjennomføring',
    status: 'track',
    progress: 78,
    start: '2026-01-01', end: '2026-12-31',
    budget: { plan: 5_200_000, spent: 3_900_000 },
    openTiltak: 2,
    nextMilestone: 'Kvartalsrapport Q2 · 30. juni',
  },
  {
    id: 'kar26',
    name: 'Karriereveiledning H-26',
    desc: 'Veiledningsprogram for høsten, ny målgruppe',
    owner: 'TM',
    team: ['TM', 'JN'],
    avd: 'Holmlia',
    phase: 'Planlegging',
    status: 'draft',
    progress: 8,
    start: '2026-09-01', end: '2027-01-31',
    budget: { plan: 920_000, spent: 18_000 },
    openTiltak: 5,
    nextMilestone: 'Konseptdokument · 14. juni',
  },
  {
    id: 'okssykvekst',
    name: 'OK:sykkel · vekstprogram',
    desc: 'Skalering av OK:sykkel — flere arbeidsplasser i Oslo Øst',
    owner: 'RB',
    team: ['RB', 'HE', 'ØS'],
    avd: 'Vulkan',
    phase: 'Gjennomføring',
    status: 'track',
    progress: 52,
    start: '2025-11-01', end: '2026-10-31',
    budget: { plan: 1_600_000, spent: 850_000 },
    openTiltak: 3,
    nextMilestone: 'Åpning ny verkstedhall · 1. august',
  },
  {
    id: 'anbud27',
    name: 'Anbud NAV Oslo 2027',
    desc: 'Stort anbud — rammeavtale for arbeidsinkludering',
    owner: 'KS',
    team: ['KS', 'ØS', 'KK', 'HM'],
    avd: 'Stab',
    phase: 'Tilbud',
    status: 'risk',
    progress: 35,
    start: '2026-04-01', end: '2026-06-12',
    budget: { plan: 320_000, spent: 110_000 },
    openTiltak: 9,
    nextMilestone: 'Frist innsending · 12. juni',
  },
  {
    id: 'iso',
    name: 'Sertifisering ISO 9001',
    desc: 'Re-sertifisering av kvalitetssystem',
    owner: 'KK',
    team: ['KK', 'HM'],
    avd: 'Stab',
    phase: 'Revisjon',
    status: 'track',
    progress: 60,
    start: '2026-02-01', end: '2026-11-30',
    budget: { plan: 280_000, spent: 165_000 },
    openTiltak: 2,
    nextMilestone: 'Internrevisjon Lambertseter · 4. juni',
  },
  {
    id: 'hrdig',
    name: 'Digitalisering HR',
    desc: 'Innføring av nytt HR-system, integrasjon m. Visma',
    owner: 'HM',
    team: ['HM', 'ØS'],
    avd: 'Stab',
    phase: 'Planlegging',
    status: 'draft',
    progress: 12,
    start: '2026-06-01', end: '2027-02-28',
    budget: { plan: 1_100_000, spent: 30_000 },
    openTiltak: 4,
    nextMilestone: 'Leverandørvalg · 21. juni',
  },
  {
    id: 'sommer',
    name: 'Sommerprogram aktivitetspark',
    desc: 'Aktivitetstilbud uke 26–32, samarbeid Bydel Søndre Nordstrand',
    owner: 'AN',
    team: ['AN', 'JN'],
    avd: 'Skullerud',
    phase: 'Forberedelse',
    status: 'track',
    progress: 70,
    start: '2026-04-01', end: '2026-08-15',
    budget: { plan: 410_000, spent: 220_000 },
    openTiltak: 1,
    nextMilestone: 'Bemanningsplan klar · 28. mai',
  },
  {
    id: 'okbistro',
    name: 'OK:bistro – utvidelse Holmlia',
    desc: 'Nytt utsalg på Holmlia, oppstart høst 26',
    owner: 'IH',
    team: ['IH', 'TM', 'ØS'],
    avd: 'Holmlia',
    phase: 'Etablering',
    status: 'risk',
    progress: 30,
    start: '2026-01-01', end: '2026-09-30',
    budget: { plan: 2_100_000, spent: 1_320_000 },
    openTiltak: 6,
    nextMilestone: 'Byggetillatelse · venter siden 19/5',
  },
  {
    id: 'opplaring',
    name: 'Internopplæring veiledere 2026',
    desc: 'Kompetanseheving alle veiledere, 6 moduler',
    owner: 'HM',
    team: ['HM', 'KK', 'AN'],
    avd: 'Alle',
    phase: 'Gjennomføring',
    status: 'track',
    progress: 45,
    start: '2026-02-01', end: '2026-12-15',
    budget: { plan: 380_000, spent: 170_000 },
    openTiltak: 1,
    nextMilestone: 'Modul 4 (motiverende intervju) · 4. juni',
  },
  {
    id: 'barekraft',
    name: 'Bærekraftsrapport 2026',
    desc: 'Rapportering iht. nye krav fra Kopano-konsernet',
    owner: 'ØS',
    team: ['ØS', 'KK'],
    avd: 'Stab',
    phase: 'Datainnsamling',
    status: 'track',
    progress: 55,
    start: '2026-03-01', end: '2026-12-01',
    budget: { plan: 180_000, spent: 95_000 },
    openTiltak: 2,
    nextMilestone: 'Datainnsamling Q2 · 30. juni',
  },
];

// ────────────────────────────────────────────────────────────────────────
// MØTESERIER — protokoller grupperes i serier med egen tilgangsstyring
// ────────────────────────────────────────────────────────────────────────
const MEETING_SERIES = [
  {
    id: 's-leder',
    name: 'Ledergruppen',
    desc: 'Ukentlig ledermøte – portefølje, økonomi, HR, kvalitet, risiko',
    cadence: 'Hver torsdag · 14:30 – 16:00',
    cadenceShort: 'Ukentlig',
    nextDate: '2026-05-28', nextTime: '14:30 – 16:00',
    location: 'Lambertseter · møterom Fjellveggen + Teams',
    chair: 'KS', secretary: 'KS',
    confidentiality: 'fortrolig', // åpen | begrenset | fortrolig
    accent: '#f2545c',
    icon: 'crown',
    members: ['KS', 'MR', 'TM', 'HE', 'ØS', 'HM', 'KK'],
    writers: ['KS', 'HM'],
    accessGroups: ['Ledergruppen'],
    standardAgenda: [
      'Behandling av forrige tiltaksplan',
      'Status anbud & store prosjekter',
      'Økonomi, HR, kvalitet',
      'Avvik & risiko',
      'Eventuelt',
    ],
  },
  {
    id: 's-iso',
    name: 'Kvalitet & ISO-revisjon',
    desc: 'Månedlig revisjonsmøte, ISO 9001-resertifisering',
    cadence: 'Tredje mandag i måneden · 10:00 – 11:30',
    cadenceShort: 'Månedlig',
    nextDate: '2026-06-15', nextTime: '10:00 – 11:30',
    location: 'Stab · møterom Hardanger',
    chair: 'KK', secretary: 'KK',
    confidentiality: 'begrenset',
    accent: '#f2cc8f',
    icon: 'shield',
    members: ['KK', 'HM', 'MR', 'AN'],
    writers: ['KK'],
    accessGroups: ['Skullerud kvalitetsteam', 'HR-stab'],
    standardAgenda: [
      'Status åpne funn',
      'Behandling av tiltaksplan',
      'Nye avvik',
      'Forberedelse ekstern revisjon',
    ],
  },
  {
    id: 's-aft',
    name: 'AFT-team Lambertseter',
    desc: 'Ukestatus arbeidsforberedende trening',
    cadence: 'Hver tirsdag · 09:00 – 09:45',
    cadenceShort: 'Ukentlig',
    nextDate: '2026-05-26', nextTime: '09:00 – 09:45',
    location: 'Lambertseter · veilederrom 2',
    chair: 'MR', secretary: 'AI',
    confidentiality: 'begrenset',
    accent: '#586ba4',
    icon: 'users',
    members: ['MR', 'AN', 'JN'],
    writers: ['MR'],
    accessGroups: ['Lambertseter veilederteam'],
    standardAgenda: [
      'Behandling av tiltak fra forrige uke',
      'Status pr. deltaker',
      'Samarbeidsbedrifter & praksisplasser',
      'Eventuelt',
    ],
  },
  {
    id: 's-allmote',
    name: 'Allmøte Lambertseter',
    desc: 'Månedlig allmøte for hele avdelingen',
    cadence: 'Første fredag · 14:00 – 15:00',
    cadenceShort: 'Månedlig',
    nextDate: '2026-06-05', nextTime: '14:00 – 15:00',
    location: 'Lambertseter · kantina',
    chair: 'MR', secretary: 'MR',
    confidentiality: 'åpen',
    accent: '#08605f',
    icon: 'msg',
    members: ['MR', 'AN', 'JN', 'IH'],
    writers: ['MR'],
    accessGroups: ['Alle ansatte Lambertseter'],
    standardAgenda: ['Praktisk info', 'Aktuelle prosjekter', 'Ord fra avd.leder'],
  },
];

// Protokoller — hver med tiltakspunkter koblet til grupper
const PROTOCOLS = [
  // ── Ledergruppen · uke 21 (denne uka) ────────────────────────────────
  {
    id: 'ledgr-21-5',
    seriesId: 's-leder',
    title: 'Ledergruppemøte · uke 21',
    date: '2026-05-21',
    time: '14:30 – 15:42',
    duration: 72,
    attendees: ['KS', 'MR', 'TM', 'HE', 'ØS', 'HM', 'KK'],
    chair: 'KS',
    minutes: 'KS',
    status: 'draft', // draft | review | approved
    projectIds: ['anbud27', 'ipsh', 'okbistro'],
    summary: 'Tre saker behandlet: NAV-anbud 2027 (kritisk frist), IPS Holmlia status (forsinkelse), OK:bistro Holmlia (byggetillatelse stoppet). Tre vedtak fattet, syv tiltak fordelt på fem grupper.',
    decisions: [
      'Forsterke anbudsteamet for NAV Oslo 2027 med to ekstra ressurser fra HR-stab og Kvalitet frem til 12. juni.',
      'IPS Holmlia får forlenget rapporteringsfrist til 8. juni etter dialog med NAV; intern handlingsplan revideres.',
      'OK:bistro Holmlia: prosjektet pauses i 2 uker mens vi avklarer byggetillatelsen; full status 4. juni.',
    ],
    tiltak: [
      { id: 't1', title: 'Hente inn 2 ekstra ressurser til anbudsteamet (HR + Kvalitet)', ansvarlig: 'HM', gruppe: 'HR-stab', frist: '2026-05-26', status: 'in_progress', kilde: 'd1' },
      { id: 't2', title: 'Justere anbudstidsplan og fordele oppgaver', ansvarlig: 'KS', gruppe: 'Ledergruppen', frist: '2026-05-27', status: 'open', kilde: 'd1' },
      { id: 't3', title: 'Sende formell forespørsel NAV om forlenget rapport-frist IPS', ansvarlig: 'TM', gruppe: 'Holmlia veilederteam', frist: '2026-05-22', status: 'done', kilde: 'd2' },
      { id: 't4', title: 'Revidere intern handlingsplan IPS Holmlia', ansvarlig: 'TM', gruppe: 'Holmlia veilederteam', frist: '2026-06-04', status: 'open', kilde: 'd2' },
      { id: 't5', title: 'Status møte med kommunen om byggetillatelse OK:bistro', ansvarlig: 'IH', gruppe: 'OK:bistro · Lambertseter', frist: '2026-05-28', status: 'open', kilde: 'd3' },
      { id: 't6', title: 'Vurdere alternativ lokasjon OK:bistro Holmlia', ansvarlig: 'HE', gruppe: 'Ledergruppen', frist: '2026-06-04', status: 'open', kilde: 'd3' },
      { id: 't7', title: 'Informere OK:bistro-staben om midlertidig pause', ansvarlig: 'IH', gruppe: 'OK:bistro · Lambertseter', frist: '2026-05-23', status: 'in_progress', kilde: 'd3' },
    ],
    transcript: [
      { who: 'KS', t: 'Vi starter med anbudet. Marius, hva er status?' },
      { who: 'MR', t: 'Vi er bak skjema. Frist er 12. juni, og det er fortsatt fire kapitler som ikke er skrevet.' },
      { who: 'ØS', t: 'Det her er kritisk, Kari. Det er 24 millioner over fire år.' },
      { who: 'KS', t: 'Jeg vet. Vi må forsterke teamet. Hanne, kan du frigjøre to fra HR?' },
      { who: 'HM', t: 'Jeg kan frigjøre én HR-ressurs og én fra Kvalitet hvis Kristin er enig.' },
      { who: 'KK', t: 'Det er greit, vi flytter ISO-arbeidet to uker frem.' },
      { who: 'KS', t: 'Da er det vedtatt. Tone, IPS Holmlia — hvor er vi?' },
      { who: 'TM', t: 'Vi får ikke inn rapporten innen 30. mai. Jeg har snakket uformelt med NAV og de er fleksible.' },
      { who: 'KS', t: 'Send dem en formell forespørsel i morgen. Vi flytter intern frist til 8. juni.' },
      { who: 'TM', t: 'Mottatt. Jeg sender i morgen tidlig.' },
      { who: 'KS', t: 'Og OK:bistro Holmlia — Håkon, byggetillatelsen?' },
      { who: 'HE', t: 'Kommunen sitter på den siden 19. mai. Ida har prøvd å få svar uten hell.' },
      { who: 'KS', t: 'Vi pauser prosjektet i to uker. Ida må snakke med kommunen direkte, og vi tar full status 4. juni.' },
      { who: 'HE', t: 'Bør vi vurdere alternativ lokasjon parallelt?' },
      { who: 'KS', t: 'Ja, det er en god idé. Du tar det.' },
    ],
  },
  // ── Ledergruppen · uke 20 (forrige uke) ──────────────────────────────
  {
    id: 'ledgr-14-5',
    seriesId: 's-leder',
    title: 'Ledergruppemøte · uke 20',
    date: '2026-05-14', time: '14:30 – 15:55', duration: 85,
    attendees: ['KS', 'MR', 'TM', 'HE', 'ØS', 'HM'], chair: 'KS', minutes: 'KS',
    status: 'approved',
    projectIds: ['anbud27', 'ipsh', 'okbistro', 'hrdig'],
    summary: 'Innledende drøfting av NAV-anbud — bemanning og ressursbehov. IPS Holmlia rapporterer mulig forsinkelse. OK:bistro venter fortsatt på byggetillatelse. Digitalisering HR — leverandørvalg flyttet to uker.',
    decisions: [
      'Marius leder anbudsteamet; bemanning besluttes 21/5.',
      'Tone gir foreløpig statusvarsel til NAV om IPS Holmlia.',
      'Leverandørvalg HR-digitalisering flyttes fra 7/6 til 21/6.',
    ],
    tiltak: [
      { id: 't1', title: 'Bemanne anbudsteamet — minst 4 personer fast', ansvarlig: 'MR', gruppe: 'Ledergruppen', frist: '2026-05-21', status: 'done', kilde: 'd1' },
      { id: 't2', title: 'Foreløpig statusvarsel NAV om IPS Holmlia', ansvarlig: 'TM', gruppe: 'Holmlia veilederteam', frist: '2026-05-19', status: 'done', kilde: 'd2' },
      { id: 't3', title: 'Vurdere konsekvens av forskyvning HR-digitalisering', ansvarlig: 'HM', gruppe: 'HR-stab', frist: '2026-05-28', status: 'in_progress', kilde: 'd3' },
      { id: 't4', title: 'Følge opp kommunen om byggetillatelse OK:bistro', ansvarlig: 'IH', gruppe: 'OK:bistro · Lambertseter', frist: '2026-05-19', status: 'open', kilde: 'd1', carryReason: 'Ikke svar fra kommunen' },
      { id: 't5', title: 'Oppdatere risikoregister med 3 nye risiki anbud', ansvarlig: 'KK', gruppe: 'Skullerud kvalitetsteam', frist: '2026-05-21', status: 'in_progress', kilde: 'd1' },
    ],
    transcript: [],
  },
  // ── Ledergruppen · uke 19 ────────────────────────────────────────────
  {
    id: 'ledgr-7-5',
    seriesId: 's-leder',
    title: 'Ledergruppemøte · uke 19',
    date: '2026-05-07', time: '14:30 – 15:40', duration: 70,
    attendees: ['KS', 'MR', 'TM', 'HE', 'ØS', 'HM', 'KK'], chair: 'KS', minutes: 'HM',
    status: 'approved',
    projectIds: ['anbud27', 'iso', 'okbistro'],
    summary: 'Oppstart av forberedelser til NAV-anbud 2027. ISO-revisjon Q1 gjennomgått, ingen alvorlige funn. OK:bistro forberedelser før byggesøknad.',
    decisions: [
      'Kari leder anbudsarbeidet inntil videre.',
      'Internrevisjon ISO startes i Lambertseter først.',
      'Ida sender inn byggesøknad senest 12. mai.',
    ],
    tiltak: [
      { id: 't1', title: 'Sende inn byggesøknad OK:bistro Holmlia', ansvarlig: 'IH', gruppe: 'OK:bistro · Lambertseter', frist: '2026-05-12', status: 'done', kilde: 'd3' },
      { id: 't2', title: 'Starte internrevisjon ISO i Lambertseter', ansvarlig: 'KK', gruppe: 'Skullerud kvalitetsteam', frist: '2026-05-18', status: 'done', kilde: 'd2' },
      { id: 't3', title: 'Skissere kapittelstruktur anbudsdokument', ansvarlig: 'KS', gruppe: 'Ledergruppen', frist: '2026-05-14', status: 'done', kilde: 'd1' },
    ],
    transcript: [],
  },
  {
    id: 'iso-rev-Q1',
    seriesId: 's-iso',
    title: 'ISO-revisjon Q1',
    date: '2026-05-18', time: '10:00 – 11:15', duration: 75,
    attendees: ['KK', 'HM', 'MR'], chair: 'KK', minutes: 'KK',
    status: 'approved',
    projectIds: ['iso'],
    summary: 'Internrevisjon gjennomgått for Lambertseter og Skullerud. To mindre funn, ingen avvik. Forberedelser til ekstern revisjon november.',
    decisions: ['Lukke funn KS-2026-037 før 1/6.', 'Internopplæring veiledere fortsetter som planlagt.'],
    tiltak: [
      { id: 't1', title: 'Lukke funn KS-2026-037', ansvarlig: 'KK', gruppe: 'Skullerud kvalitetsteam', frist: '2026-06-01', status: 'done', kilde: 'd1' },
      { id: 't2', title: 'Oppdatere prosedyre P-12 etter funn', ansvarlig: 'AN', gruppe: 'Skullerud kvalitetsteam', frist: '2026-06-15', status: 'in_progress', kilde: 'd1' },
    ],
    transcript: [],
  },
  {
    id: 'aft-uke20',
    seriesId: 's-aft',
    title: 'AFT 2026 · ukestatus uke 20', date: '2026-05-19', time: '09:00 – 09:45', duration: 45,
    attendees: ['MR', 'AN', 'JN'], chair: 'MR', minutes: 'AI', status: 'review',
    projectIds: ['aft26'],
    summary: 'Vårkohort på sporet. Tre praksisplasser bekreftet, fire under forhandling. Halvtidsevaluering planlagt.',
    decisions: ['Halvtidsevaluering legges til 12. juni.', 'Astrid tar kontakt med tre nye samarbeidsbedrifter denne uka.'],
    tiltak: [
      { id: 't1', title: 'Bekrefte dato halvtidsevaluering med alle deltakere', ansvarlig: 'JN', gruppe: 'Lambertseter veilederteam', frist: '2026-05-23', status: 'in_progress', kilde: 'd1' },
      { id: 't2', title: 'Kontakte tre nye samarbeidsbedrifter', ansvarlig: 'AN', gruppe: 'Lambertseter veilederteam', frist: '2026-05-26', status: 'open', kilde: 'd2' },
    ],
    transcript: [],
  },
];

// Live-transkripsjon: simulert kø som spilles av når man trykker "start opptak"
const LIVE_TRANSCRIPT_SCRIPT = [
  { who: 'KS', t: 'Velkommen til ukens ledergruppemøte. Tre saker på agendaen.', delay: 1800 },
  { who: 'KS', t: 'Først, status på anbudet til NAV. Marius?', delay: 2000 },
  { who: 'MR', t: 'Vi ligger fortsatt etter, men har gjort fremgang denne uka.', delay: 2200 },
  { who: 'MR', t: 'Tre av syv kapitler er nå klare. Fire gjenstår.', delay: 2000 },
  { who: 'ØS', t: 'Frist er 12. juni. Vi har 22 dager.', delay: 1800 },
  { who: 'KS', t: 'Det betyr ett kapittel hver fjerde dag. Trenger vi flere folk?', delay: 2200 },
  { who: 'HM', t: 'Jeg kan frigjøre to fra HR og Kvalitet midlertidig.', delay: 2400 },
  { who: 'KS', t: 'Bra. Da gjør vi det. Hanne setter opp.', delay: 1800 },
  { who: 'AI', t: '✦ Forslag: Tiltak — Hanne frigjør 2 ressurser, frist 26/5. Skal jeg legge til?', isBot: true, delay: 1600 },
];

// Carryover-relasjoner: åpne tiltak fra uke 20 som nå må behandles i uke 21.
// Brukes av Protocol-skjermen ("Fra forrige møte").
const CARRYOVER = {
  'ledgr-21-5': {
    prevId: 'ledgr-14-5',
    // Tiltak-IDer fra forrige møte som behandles på nytt
    items: ['t3', 't4', 't5'],
  },
  'ledgr-14-5': {
    prevId: 'ledgr-7-5',
    items: [],
  },
};

// ────────────────────────────────────────────────────────────────────────
// ORGANISASJON — hierarki + ansatte (vi gjenbruker TEAM for navn/farger)
// ────────────────────────────────────────────────────────────────────────
const ORG_UNITS = [
  {
    id: 'styret',
    name: 'Styret',
    type: 'styre',
    leader: null,
    headcount: 7,
    parent: null,
    desc: 'Styreleder Petter Aaslund, eierrepresentant fra Kopano-konsernet',
  },
  {
    id: 'dgl',
    name: 'Daglig leder',
    type: 'leder',
    leader: 'KS',
    headcount: 1,
    parent: 'styret',
    desc: 'Strategi, drift og resultatansvar for OsloKollega',
  },
  // STAB
  {
    id: 'stab-okonomi',
    name: 'Økonomi & administrasjon',
    type: 'stab',
    leader: 'ØS',
    headcount: 6,
    parent: 'dgl',
    desc: 'Regnskap, lønn, fakturering, controlling',
    systems: ['Visma Business', 'Visma Lønn'],
  },
  {
    id: 'stab-hr',
    name: 'HR & organisasjon',
    type: 'stab',
    leader: 'HM',
    headcount: 5,
    parent: 'dgl',
    desc: 'Personal, rekruttering, kompetanseutvikling, vernetjeneste',
    systems: ['Simployer', 'AD'],
  },
  {
    id: 'stab-kval',
    name: 'Kvalitet & utvikling',
    type: 'stab',
    leader: 'KK',
    headcount: 4,
    parent: 'dgl',
    desc: 'ISO 9001, avvikssystem, prosjekt­utvikling, anbud',
    systems: ['KS-modul', 'SharePoint'],
  },
  // AVDELINGER
  {
    id: 'avd-lamb',
    name: 'Avdeling Lambertseter',
    type: 'avdeling',
    leader: 'MR',
    headcount: 38,
    parent: 'dgl',
    desc: 'Hovedavdeling — AFT, karriereveiledning, kantine, bistro',
    location: 'Cecilie Thoresens vei 13, 1153 Oslo',
  },
  {
    id: 'avd-holm',
    name: 'Avdeling Holmlia',
    type: 'avdeling',
    leader: 'TM',
    headcount: 24,
    parent: 'dgl',
    desc: 'IPS, karriereveiledning, NAV-samarbeid Søndre Nordstrand',
    location: 'Ravnåsveien 5, 1254 Oslo',
  },
  {
    id: 'avd-vulk',
    name: 'Avdeling Vulkan',
    type: 'avdeling',
    leader: 'HE',
    headcount: 19,
    parent: 'dgl',
    desc: 'OK:sykkel, OK:data, sentrumsnære arbeidsplasser',
    location: 'Maridalsveien 17, 0175 Oslo',
  },
  {
    id: 'avd-skul',
    name: 'Avdeling Skullerud',
    type: 'avdeling',
    leader: 'AN',
    headcount: 16,
    parent: 'dgl',
    desc: 'VTA, aktivitetspark, samarbeid Bydel Østensjø',
    location: 'Olaf Helsets vei 6, 0694 Oslo',
  },
  // SOSIALE ENTREPRISER (under avdelinger)
  {
    id: 'ent-bistro',
    name: 'OK:bistro',
    type: 'entreprise',
    leader: 'IH',
    headcount: 11,
    parent: 'avd-lamb',
    desc: 'Sosial entreprise — kafé, catering, kantinedrift',
  },
  {
    id: 'ent-sykkel',
    name: 'OK:sykkel',
    type: 'entreprise',
    leader: 'RB',
    headcount: 8,
    parent: 'avd-vulk',
    desc: 'Sykkelverksted og resirkulering',
  },
  {
    id: 'ent-data',
    name: 'OK:data',
    type: 'entreprise',
    leader: 'HE',
    headcount: 5,
    parent: 'avd-vulk',
    desc: 'IT-tjenester, refurbishment av bærbart utstyr',
  },
];

// ────────────────────────────────────────────────────────────────────────
// AVTALER — rammeavtaler, leieavtaler, leverandøravtaler, kundeavtaler
// ────────────────────────────────────────────────────────────────────────
const AGREEMENTS = [
  {
    id: 'av-nav-aft',
    name: 'Rammeavtale AFT — NAV Oslo',
    type: 'rammeavtale',
    motpart: 'NAV Oslo',
    motpartType: 'offentlig',
    eier: 'KS',
    avdeling: 'Stab',
    enhet: 'dgl',
    lokasjon: 'Alle avdelinger',
    start: '2024-01-01',
    slutt: '2027-12-31',
    optionTo: '2029-12-31',
    arsverdi: 18_500_000,
    totalverdi: 74_000_000,
    valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'opsjon',
    varsel: '6 mnd før utløp',
    risiko: 'høy',
    desc: 'Arbeidsforberedende trening, 45 plasser, fire avdelinger',
    docId: 'D-2023-NAV-AFT-001',
  },
  {
    id: 'av-nav-ips',
    name: 'Rammeavtale IPS — NAV Søndre Nordstrand',
    type: 'rammeavtale',
    motpart: 'NAV Søndre Nordstrand',
    motpartType: 'offentlig',
    eier: 'TM',
    avdeling: 'Holmlia',
    enhet: 'avd-holm',
    lokasjon: 'Holmlia',
    start: '2025-09-01', slutt: '2026-08-31',
    arsverdi: 2_400_000, totalverdi: 2_400_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'reforhandles',
    varsel: 'utløper om 99 dgr',
    risiko: 'høy',
    desc: 'IPS — Individual Placement and Support, 20 deltakere',
    docId: 'D-2025-NAV-IPS-014',
  },
  {
    id: 'av-nav-vta',
    name: 'Tilskuddsavtale VTA — NAV Oslo',
    type: 'tilskudd',
    motpart: 'NAV Oslo',
    motpartType: 'offentlig',
    eier: 'HE',
    avdeling: 'Alle',
    enhet: 'dgl',
    lokasjon: 'Vulkan, Skullerud, Holmlia',
    start: '2026-01-01', slutt: '2026-12-31',
    arsverdi: 9_200_000, totalverdi: 9_200_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'årlig',
    varsel: 'fornyes automatisk',
    risiko: 'lav',
    desc: 'Varig tilrettelagt arbeid — 34 plasser i tre avdelinger',
    docId: 'D-2026-NAV-VTA-007',
  },
  {
    id: 'av-bydel-sn',
    name: 'Samarbeidsavtale aktivitetspark',
    type: 'samarbeid',
    motpart: 'Bydel Søndre Nordstrand',
    motpartType: 'offentlig',
    eier: 'AN',
    avdeling: 'Skullerud',
    enhet: 'avd-skul',
    lokasjon: 'Skullerud',
    start: '2025-05-01', slutt: '2026-08-31',
    arsverdi: 410_000, totalverdi: 615_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'reforhandles',
    risiko: 'lav',
    desc: 'Drift av aktivitetspark uke 26–32, sommerprogram',
    docId: 'D-2025-BSN-AP-002',
  },
  // LEIEAVTALER
  {
    id: 'av-leie-lamb',
    name: 'Leieavtale Cecilie Thoresens vei 13',
    type: 'leie',
    motpart: 'Oslo kommune Eiendom',
    motpartType: 'offentlig',
    eier: 'ØS',
    avdeling: 'Lambertseter',
    enhet: 'avd-lamb',
    lokasjon: 'Lambertseter',
    start: '2020-01-01', slutt: '2029-12-31',
    arealM2: 2_100,
    arsverdi: 3_150_000, totalverdi: 31_500_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'opsjon (5 år)',
    risiko: 'lav',
    desc: 'Hovedlokaler Lambertseter — kontor, verksted, kantine',
    docId: 'D-2020-OKE-LB-001',
  },
  {
    id: 'av-leie-holm',
    name: 'Leieavtale Ravnåsveien 5',
    type: 'leie',
    motpart: 'Ravnås Eiendom AS',
    motpartType: 'privat',
    eier: 'ØS',
    avdeling: 'Holmlia',
    enhet: 'avd-holm',
    lokasjon: 'Holmlia',
    start: '2022-08-01', slutt: '2027-07-31',
    arealM2: 780,
    arsverdi: 1_280_000, totalverdi: 6_400_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'reforhandles',
    risiko: 'middels',
    desc: 'Kontor og veilederrom Holmlia',
    docId: 'D-2022-RAVN-001',
  },
  {
    id: 'av-leie-vulk',
    name: 'Leieavtale Maridalsveien 17',
    type: 'leie',
    motpart: 'Vulkan Eiendom AS',
    motpartType: 'privat',
    eier: 'ØS',
    avdeling: 'Vulkan',
    enhet: 'avd-vulk',
    lokasjon: 'Vulkan',
    start: '2021-03-01', slutt: '2026-08-31',
    arealM2: 540,
    arsverdi: 1_650_000, totalverdi: 9_075_000, valuta: 'NOK',
    status: 'utløper',
    fornyelse: 'under forhandling',
    varsel: 'utløper om 99 dgr — REFORHANDLES NÅ',
    risiko: 'høy',
    desc: 'Verkstedlokaler OK:sykkel + OK:data — utvidelsesbehov',
    docId: 'D-2021-VULK-001',
  },
  {
    id: 'av-leie-skul',
    name: 'Leieavtale Olaf Helsets vei 6',
    type: 'leie',
    motpart: 'Skullerud Næringspark',
    motpartType: 'privat',
    eier: 'ØS',
    avdeling: 'Skullerud',
    enhet: 'avd-skul',
    lokasjon: 'Skullerud',
    start: '2023-01-01', slutt: '2028-12-31',
    arealM2: 420,
    arsverdi: 720_000, totalverdi: 4_320_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'opsjon',
    risiko: 'lav',
    desc: 'VTA-lokaler + aktivitetspark',
    docId: 'D-2023-SKUL-001',
  },
  // LEVERANDØRAVTALER
  {
    id: 'av-visma',
    name: 'Visma Business + Lønn',
    type: 'leverandør',
    motpart: 'Visma Software AS',
    motpartType: 'privat',
    eier: 'ØS',
    avdeling: 'Stab',
    enhet: 'stab-okonomi',
    lokasjon: 'Alle',
    start: '2022-01-01', slutt: '2027-12-31',
    arsverdi: 480_000, totalverdi: 2_880_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'årlig',
    risiko: 'middels',
    desc: 'Regnskap, lønn, fakturering — 110 brukere',
    docId: 'D-2022-VISMA-001',
  },
  {
    id: 'av-ms365',
    name: 'Microsoft 365 + Teams',
    type: 'leverandør',
    motpart: 'Microsoft Ireland Ops',
    motpartType: 'privat',
    eier: 'HM',
    avdeling: 'Stab',
    enhet: 'stab-hr',
    lokasjon: 'Alle',
    start: '2023-06-01', slutt: '2026-05-31',
    arsverdi: 320_000, totalverdi: 960_000, valuta: 'NOK',
    status: 'utløper',
    fornyelse: 'reforhandles',
    varsel: 'utløper om 8 dgr — KRITISK',
    risiko: 'høy',
    desc: 'M365 E3 × 142 lisenser + Teams Premium',
    docId: 'D-2023-MS-001',
  },
  {
    id: 'av-simployer',
    name: 'Simployer HR-system',
    type: 'leverandør',
    motpart: 'Simployer AS',
    motpartType: 'privat',
    eier: 'HM',
    avdeling: 'Stab',
    enhet: 'stab-hr',
    lokasjon: 'Alle',
    start: '2024-09-01', slutt: '2026-08-31',
    arsverdi: 145_000, totalverdi: 290_000, valuta: 'NOK',
    status: 'reforhandles',
    fornyelse: 'erstattes',
    varsel: 'avløses av nytt HR-system fra Q3 2026',
    risiko: 'middels',
    desc: 'Personalmappe, fravær, sykefraværsoppfølging',
    docId: 'D-2024-SIMP-001',
  },
  // KUNDEAVTALER
  {
    id: 'av-bistro-1',
    name: 'Kantine-leveranse Lambertseter sykehjem',
    type: 'kunde',
    motpart: 'Sykehjemsetaten Oslo',
    motpartType: 'offentlig',
    eier: 'IH',
    avdeling: 'Lambertseter',
    enhet: 'ent-bistro',
    lokasjon: 'Lambertseter',
    start: '2025-04-01', slutt: '2028-03-31',
    arsverdi: 2_850_000, totalverdi: 8_550_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'opsjon',
    risiko: 'middels',
    desc: 'Daglig matlevering 120 porsjoner — opplæringsarena',
    docId: 'D-2025-SYK-001',
  },
  {
    id: 'av-sykkel-pkdir',
    name: 'Sykkelvedlikehold Pakkedirektoratet',
    type: 'kunde',
    motpart: 'Pakkedirektoratet',
    motpartType: 'offentlig',
    eier: 'RB',
    avdeling: 'Vulkan',
    enhet: 'ent-sykkel',
    lokasjon: 'Vulkan',
    start: '2025-01-01', slutt: '2026-12-31',
    arsverdi: 380_000, totalverdi: 760_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'reforhandles',
    risiko: 'lav',
    desc: 'Service og reparasjon — bedriftssyklene (40 stk)',
    docId: 'D-2025-PD-001',
  },
  {
    id: 'av-data-bydel',
    name: 'Refurb bærbart utstyr — Bydel Grünerløkka',
    type: 'kunde',
    motpart: 'Bydel Grünerløkka',
    motpartType: 'offentlig',
    eier: 'HE',
    avdeling: 'Vulkan',
    enhet: 'ent-data',
    lokasjon: 'Vulkan',
    start: '2026-02-01', slutt: '2026-12-31',
    arsverdi: 540_000, totalverdi: 540_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'reforhandles',
    risiko: 'lav',
    desc: 'Klargjøring og resirkulering av PCer (250/år)',
    docId: 'D-2026-BG-001',
  },
  // SERTIFISERING
  {
    id: 'av-iso',
    name: 'ISO 9001 sertifisering — DNV',
    type: 'sertifisering',
    motpart: 'DNV Business Assurance',
    motpartType: 'privat',
    eier: 'KK',
    avdeling: 'Stab',
    enhet: 'stab-kval',
    lokasjon: 'Alle',
    start: '2023-11-15', slutt: '2026-11-14',
    arsverdi: 95_000, totalverdi: 285_000, valuta: 'NOK',
    status: 'resertifiseres',
    fornyelse: 'resertifisering pågår',
    varsel: 'ekstern revisjon november',
    risiko: 'middels',
    desc: 'ISO 9001 — re-sertifisering pågår, sertifikat utløper 14/11',
    docId: 'D-2023-DNV-001',
  },
  {
    id: 'av-aap',
    name: 'Equass-akkreditering',
    type: 'sertifisering',
    motpart: 'Equass Norge',
    motpartType: 'privat',
    eier: 'KK',
    avdeling: 'Stab',
    enhet: 'stab-kval',
    lokasjon: 'Alle',
    start: '2024-06-01', slutt: '2027-05-31',
    arsverdi: 62_000, totalverdi: 186_000, valuta: 'NOK',
    status: 'aktiv',
    fornyelse: 'opsjon',
    risiko: 'lav',
    desc: 'Kvalitetsstandard for arbeidsinkluderingstjenester',
    docId: 'D-2024-EQ-001',
  },
];

Object.assign(window, { TEAM, GROUPS, PROJECTS, PROTOCOLS, MEETING_SERIES, CARRYOVER, ORG_UNITS, AGREEMENTS, LIVE_TRANSCRIPT_SCRIPT });
