/*
|--------------------------------------------------------------------------
| Agência PSI — paleta de cores da agenda
|--------------------------------------------------------------------------
| Mapping (tipo, status, isOccurrence) → hex color. Usado pelo card do
| FullCalendar (borderColor/backgroundColor) e popovers de evento.
|
| Status manda mais do que tipo: realizado/faltou/cancelado têm cores
| dedicadas (emerald/red/slate) independentes do tipo.
|
| Extraído de useMelissaAgenda.js (Fase A) pra reuso em Rail/Clínica.
|--------------------------------------------------------------------------
*/

export function pickColor(tipo, status, isOccurrence) {
    const s = String(status || '').toLowerCase();
    if (s === 'realizado' || s === 'realizada') return '#10b981'; // emerald-500
    if (s === 'faltou') return '#ef4444';                          // red-500
    if (s === 'cancelado' || s === 'cancelada') return '#94a3b8';  // slate-400

    const t = String(tipo || '').toLowerCase();
    if (t === 'bloqueio') return '#64748b';                        // slate-500
    if (t === 'supervisao' || t === 'supervisão') return '#a855f7'; // purple-500
    if (t === 'reuniao' || t === 'reunião') return '#0ea5e9';      // sky-500

    // Sessão default — distingue virtual (violet-500) vs real (indigo-500)
    return isOccurrence ? '#8b5cf6' : '#6366f1';
}
