// JammSanté Dermatologie — données (Sénégal). Modèle clinique = (zone corporelle, lésion, date).

// ---- Zones de la carte corporelle ----
const BM_ZONES = {
  front: [
    { id:'scalp-f', label:'Cuir chevelu', x:150, y:26 },
    { id:'visage', label:'Visage', x:150, y:58 },
    { id:'cou-f', label:'Cou', x:150, y:92 },
    { id:'epaule-d', label:'Épaule droite', x:103, y:112 },
    { id:'epaule-g', label:'Épaule gauche', x:197, y:112 },
    { id:'thorax', label:'Thorax', x:150, y:150 },
    { id:'abdomen', label:'Abdomen', x:150, y:205 },
    { id:'bras-d', label:'Bras droit', x:84, y:170 },
    { id:'bras-g', label:'Bras gauche', x:216, y:170 },
    { id:'avantbras-d', label:'Avant-bras droit', x:72, y:230 },
    { id:'avantbras-g', label:'Avant-bras gauche', x:228, y:230 },
    { id:'main-d', label:'Main droite', x:62, y:285 },
    { id:'main-g', label:'Main gauche', x:238, y:285 },
    { id:'cuisse-d', label:'Cuisse droite', x:126, y:290 },
    { id:'cuisse-g', label:'Cuisse gauche', x:174, y:290 },
    { id:'jambe-d', label:'Jambe droite', x:128, y:375 },
    { id:'jambe-g', label:'Jambe gauche', x:172, y:375 },
    { id:'pied-d', label:'Pied droit', x:126, y:440 },
    { id:'pied-g', label:'Pied gauche', x:174, y:440 },
  ],
  back: [
    { id:'scalp-b', label:'Cuir chevelu (post.)', x:150, y:26 },
    { id:'nuque', label:'Nuque', x:150, y:88 },
    { id:'dos-haut', label:'Dos (haut)', x:150, y:145 },
    { id:'lombes', label:'Lombes', x:150, y:205 },
    { id:'fesse-d', label:'Fesse droite', x:130, y:250 },
    { id:'fesse-g', label:'Fesse gauche', x:170, y:250 },
    { id:'bras-post-d', label:'Bras post. droit', x:216, y:170 },
    { id:'bras-post-g', label:'Bras post. gauche', x:84, y:170 },
    { id:'mollet-d', label:'Mollet droit', x:172, y:375 },
    { id:'mollet-g', label:'Mollet gauche', x:128, y:375 },
    { id:'talon-d', label:'Talon droit', x:174, y:440 },
    { id:'talon-g', label:'Talon gauche', x:126, y:440 },
  ],
};

// ---- Types de lésions ----
const BM_TYPES = [
  { code:'naevus', label:'Nævus / suspect', color:'#B91C1C' },
  { code:'cheloide', label:'Chéloïde', color:'#8B5CF6' },
  { code:'eczema', label:'Eczéma / dermatite', color:'#F59E0B' },
  { code:'psoriasis', label:'Psoriasis', color:'#DB2777' },
  { code:'vitiligo', label:'Vitiligo', color:'#0EA5E9' },
  { code:'mycose', label:'Mycose / teigne', color:'#10B981' },
  { code:'xessal', label:'Compl. dépigmentation', color:'#7C3AED' },
  { code:'autre', label:'Autre lésion', color:'#64748B' },
];
const BMT = Object.fromEntries(BM_TYPES.map(t => [t.code, t]));

// ---- Lésions de la patiente démo (Adama Cissé) ----
const SEED_LESIONS = [
  { id:'L1', side:'back', zone:'dos-haut', code:'naevus', label:'Nævus dos - 6 mm', date:'2026-07-02', status:'surveillance',
    abcde:{ A:true, B:true, C:false, D:false, E:true }, size:'6 mm',
    note:'Asymétrie + bords irréguliers + évolution rapportée sur 4 mois. Dermoscopie : réseau atypique. Exérèse-biopsie programmée.',
    photos:[{ d:'02 juil 2026', k:'dermoscopie' },{ d:'12 mars 2026', k:'clinique' }] },
  { id:'L2', side:'front', zone:'epaule-g', code:'cheloide', label:'Chéloïde épaule G', date:'2026-05-15', status:'traitement',
    size:'22 × 8 mm', note:'Post-vaccinale, prurigineuse. Infiltrations corticoïdes ×2, affaissement partiel. Prochaine infiltration à J21.',
    photos:[{ d:'15 mai 2026', k:'clinique' },{ d:'26 juin 2026', k:'clinique' }] },
  { id:'L3', side:'front', zone:'avantbras-d', code:'eczema', label:'Eczéma chronique avant-bras', date:'2026-04-10', status:'chronique',
    size:'plaque 4 cm', note:'Lichénifié, poussées saisonnières. SCORAD suivi trimestriel, dermocorticoïde classe III en cure courte.',
    photos:[{ d:'10 avr 2026', k:'clinique' },{ d:'02 juil 2026', k:'clinique' }] },
  { id:'L4', side:'front', zone:'visage', code:'xessal', label:'Ochronose exogène - joues', date:'2026-06-20', status:'traitement',
    size:'bilatéral', note:'Dépigmentants (hydroquinone + corticoïdes forts) depuis 6 ans. Ochronose débutante + atrophie. Protocole de sevrage engagé.',
    photos:[{ d:'20 juin 2026', k:'clinique' },{ d:'02 juil 2026', k:'lumière de Wood' }] },
  { id:'L5', side:'front', zone:'pied-d', code:'mycose', label:'Intertrigo inter-orteils', date:'2026-07-02', status:'nouveau',
    size:'—', note:'Prurit + fissuration 3e espace. Antifongique topique 3 semaines, contrôle à J21.',
    photos:[{ d:'02 juil 2026', k:'clinique' }] },
];

// ---- Patients ----
const DM_PATIENTS = [
  { id:'p1', name:'Adama Cissé', age:38, sexe:'F', tel:'+221 77 604 22 18', dmn:'DER-1042', assurance:'IPM Sonatel', phototype:'VI',
    motif:'Nævus dos évolutif + suivi dépigmentation', tags:['Suspect','Xessal'], statut:'actif', heure:'09:00', solde:-30000, prochain:'Exérèse-biopsie · 24 juil',
    alertes:[
      { t:'crit', code:'naevus', label:'Lésion suspecte - exérèse programmée', detail:'Nævus dos 6 mm, ABCDE 3/5, évolution 4 mois. Biopsie-exérèse le 24/07.', act:'Ne pas retarder, consentement signé.' },
      { t:'warn', code:'xessal', label:'Dépigmentation cosmétique (6 ans)', detail:'Hydroquinone + clobétasol au long cours, ochronose débutante, atrophie cutanée.', act:'Sevrage progressif en cours, pas de corticoïde surajouté.' },
    ],
    med:['Sevrage dermocorticoïdes (protocole)','Photoprotection SPF50+'] },
  { id:'p2', name:'Moussa Ndour', age:24, sexe:'M', tel:'+221 76 118 43 90', dmn:'DER-2210', assurance:'CSS', phototype:'VI',
    motif:'Acné nodulaire - bilan isotrétinoïne', tags:['Acné'], statut:'actif', heure:'10:00', solde:0, prochain:'Bilan lipidique · 28 juil',
    alertes:[{ t:'warn', code:'iso', label:'Isotrétinoïne - bilan requis', detail:'Transaminases + lipides avant renouvellement.', act:'Vérifier bilan avant ordonnance.' }], med:['Isotrétinoïne 20 mg'] },
  { id:'p3', name:'Khady Sarr', age:7, sexe:'F', tel:'+221 70 302 77 51', dmn:'DER-0871', assurance:'Mutuelle', phototype:'V',
    motif:'Teigne du cuir chevelu - contrôle', tags:['Pédiatrie','Teigne'], statut:'actif', heure:'11:00', solde:0, prochain:'Contrôle mycologique · 8 août',
    alertes:[], med:['Griséofulvine (poids)'] },
  { id:'p4', name:'Cheikh Mbaye', age:52, sexe:'M', tel:'+221 77 555 09 33', dmn:'DER-1533', assurance:'ASKIA', phototype:'VI',
    motif:'Psoriasis en plaques - évaluation PASI', tags:['Psoriasis'], statut:'actif', heure:'12:00', solde:-15000, prochain:'PASI + photothérapie · 30 juil',
    alertes:[], med:['Calcipotriol/bétaméthasone'] },
  { id:'p5', name:'Ndèye Fall', age:31, sexe:'F', tel:'+221 78 220 64 12', dmn:'DER-1980', assurance:'SUNU', phototype:'V',
    motif:'Vitiligo visage - suivi repigmentation', tags:['Vitiligo'], statut:'actif', heure:'15:00', solde:0, prochain:'Photothérapie UVB · mardi',
    alertes:[{ t:'warn', code:'grossesse', label:'Grossesse - 1er trimestre', detail:'Adapter les topiques, pas de traitement systémique.', act:'Tacrolimus à discuter après T1.' }], med:[] },
  { id:'p6', name:'Ibrahima Sy', age:64, sexe:'M', tel:'+221 76 890 12 44', dmn:'DER-0455', assurance:'Aucune', phototype:'VI',
    motif:'Urgence - zona thoracique douloureux', tags:['Urgence'], statut:'urgence', heure:'—', solde:0, prochain:'Aujourd\u2019hui - walk-in',
    alertes:[{ t:'warn', code:'diabete', label:'Diabète type 2', detail:'Risque de surinfection, surveiller cicatrisation.', act:'Contrôle glycémique + antalgie adaptée.' }], med:['Metformine'] },
];

// ---- Scores chroniques (Adama : SCORAD eczéma / suivi) ----
const DM_SCORES = {
  scorad: { label:'SCORAD - eczéma avant-bras', unit:'', target:'< 25',
    pts:[{ d:'Oct 25', v:52 },{ d:'Janv 26', v:44 },{ d:'Avr 26', v:31 },{ d:'Juil 26', v:24 }] },
  pasi: { label:'PASI - Cheikh Mbaye', unit:'', target:'< 10',
    pts:[{ d:'Janv 26', v:18.4 },{ d:'Mars 26', v:14.2 },{ d:'Mai 26', v:9.8 },{ d:'Juil 26', v:7.6 }] },
};

// ---- Module xessal (dépigmentation cosmétique) ----
const DM_XESSAL = {
  produits:['Hydroquinone > 4 % (marché informel)','Clobétasol propionate (détourné)','Mélanges artisanaux (« khessal fort »)'],
  complications:[
    { c:'Ochronose exogène', s:'installée - joues', tone:'red' },
    { c:'Atrophie cutanée', s:'débutante - pommettes', tone:'amber' },
    { c:'Vergetures', s:'bras, absentes', tone:'green' },
    { c:'Dermatophytie profuse', s:'non', tone:'green' },
    { c:'HTA / diabète cortico-induits', s:'TA 13/8 - surveillée', tone:'amber' },
  ],
  sevrage:[
    { etape:'S0 - Arrêt clobétasol, relais hydrocortisone 1 %', fait:true, date:'20 juin' },
    { etape:'S2 - Hydrocortisone 1 j/2 + émollient', fait:true, date:'04 juil' },
    { etape:'S4 - Arrêt corticoïde, émollient seul', fait:false, date:'18 juil' },
    { etape:'S8 - Réévaluation ochronose + photos comparatives', fait:false, date:'15 août' },
    { etape:'Éducation : photoprotection, estime de soi, alternatives sûres', fait:false, date:'continu' },
  ],
};

// ---- Actes & petite chirurgie ----
const DM_ACTES = [
  { acte:'Exérèse-biopsie nævus dos', patient:'Adama Cissé', date:'24 juil · 09:00', statut:'programme', consent:true, anesth:'Locale - lidocaïne 1 %', envoi:'Anapath - Hôpital Le Dantec' },
  { acte:'Infiltration chéloïde (3e)', patient:'Adama Cissé', date:'24 juil · 09:30', statut:'programme', consent:true, anesth:'—', envoi:'—' },
  { acte:'Cryothérapie verrues plantaires', patient:'Omar Guèye', date:'22 juil · 11:00', statut:'programme', consent:false, anesth:'—', envoi:'—' },
  { acte:'Biopsie punch plaque lombaire', patient:'Cheikh Mbaye', date:'17 juil · 10:30', statut:'fait', consent:true, anesth:'Locale', envoi:'Anapath - résultat attendu 31/07' },
];

// ---- Agenda ----
const DM_PRATICIENS = [
  { id:'dr1', name:'Dr. Mariama Diop', role:'Dermatologue', color:'#0D9488', salle:'Salle 1' },
  { id:'dr2', name:'Dr. Alioune Ndao', role:'Dermatologue (vacataire)', color:'#BE185D', salle:'Salle 2 · lun/mer/ven' },
];
const DM_RDV = [
  { h:'09:00', dur:45, salle:0, patient:'Adama Cissé', acte:'Suivi nævus + sevrage xessal', tone:'teal', confirm:true },
  { h:'09:00', dur:30, salle:1, patient:'Fatim Diagne', acte:'Photothérapie UVB', tone:'rose', confirm:true },
  { h:'10:00', dur:30, salle:0, patient:'Moussa Ndour', acte:'Acné - renouvellement iso', tone:'teal', confirm:true },
  { h:'10:00', dur:45, salle:1, patient:'Téléderm - poste de Fatick', acte:'Avis photo à distance ×4', tone:'violet', confirm:true },
  { h:'11:00', dur:30, salle:0, patient:'Khady Sarr', acte:'Teigne - contrôle', tone:'teal', confirm:false },
  { h:'12:00', dur:45, salle:0, patient:'Cheikh Mbaye', acte:'PASI + plan photothérapie', tone:'teal', confirm:true },
  { h:'14:00', dur:60, salle:1, patient:'Petite chirurgie', acte:'Cryo + biopsies (3 patients)', tone:'rose', confirm:true },
  { h:'15:00', dur:30, salle:0, patient:'Ndèye Fall', acte:'Vitiligo - suivi', tone:'teal', confirm:true },
  { h:'15:30', dur:45, salle:0, patient:'Walk-in urgence', acte:'Zona thoracique - Ibrahima Sy', tone:'red', confirm:true },
];

// ---- Transcription Jamm IA ----
const DM_TRANSCRIPT = [
  { who:'praticien', t:'Bonjour Adama. On regarde d\u2019abord ce grain de beauté dans le dos, il a changé depuis mars ?' },
  { who:'patient', t:'Oui docteur, il me semble plus large, et parfois ça gratte un peu.' },
  { who:'praticien', t:'À la dermoscopie le réseau est atypique, les bords sont irréguliers. On programme une exérèse avec analyse, rien d\u2019alarmant à ce stade, mais on ne laisse pas évoluer.' },
  { who:'patient', t:'D\u2019accord. Et pour mes joues, j\u2019ai arrêté la crème forte comme vous avez dit.' },
  { who:'praticien', t:'Très bien. La peau est moins fine qu\u2019en juin. On passe à l\u2019étape suivante du sevrage : hydrocortisone un jour sur deux, émollient tous les jours, écran solaire chaque matin.' },
];

Object.assign(window, { BM_ZONES, BM_TYPES, BMT, SEED_LESIONS, DM_PATIENTS, DM_SCORES, DM_XESSAL, DM_ACTES, DM_PRATICIENS, DM_RDV, DM_TRANSCRIPT });
