// Papeles Para Todos - Sistema de logros

function checkLogros() {
    if (!gameState) return;
    if (!gameState.logrosDesbloqueados) gameState.logrosDesbloqueados = [];

    for (const logro of logrosData) {
        if (gameState.logrosDesbloqueados.includes(logro.id)) continue;
        if (logro.condicion(gameState)) {
            gameState.logrosDesbloqueados.push(logro.id);
            mostrarLogroToast(logro);
        }
    }
}

function mostrarLogroToast(logro) {
    const container = document.getElementById('logros-container');
    if (!container) return;

    const el = document.createElement('div');
    el.className = 'logro-toast';
    el.innerHTML = `
        <div class="logro-toast-icon">${logro.icono}</div>
        <div class="logro-toast-body">
            <div class="logro-toast-header">🏆 LOGRO DESBLOQUEADO</div>
            <div class="logro-toast-title">${logro.titulo}</div>
            <div class="logro-toast-desc">${logro.desc}</div>
        </div>
    `;
    container.appendChild(el);

    requestAnimationFrame(() => el.classList.add('visible'));

    audioSystem.playDing();

    setTimeout(() => {
        el.classList.remove('visible');
        setTimeout(() => el.remove(), 400);
    }, 3600);
}

function getLogrosDesbloqueados() {
    return (gameState && gameState.logrosDesbloqueados) || [];
}

function mostrarLogrosModal() {
    const modal = document.getElementById('logros-modal');
    const body = document.getElementById('logros-modal-body');
    if (!modal || !body) return;

    const desbloqueados = new Set(getLogrosDesbloqueados());
    const total = logrosData.length;

    const items = logrosData.map(l => {
        if (desbloqueados.has(l.id)) {
            return `
                <div class="logro-item">
                    <span class="logro-icono">${l.icono}</span>
                    <div class="logro-info">
                        <div class="logro-titulo">${l.titulo}</div>
                        <div class="logro-desc">${l.desc}</div>
                    </div>
                </div>`;
        }
        return `
            <div class="logro-item logro-bloqueado">
                <span class="logro-icono">❔</span>
                <div class="logro-info">
                    <div class="logro-titulo">???</div>
                    <div class="logro-desc">Logro por desbloquear</div>
                </div>
            </div>`;
    }).join('');

    body.innerHTML = `
        <div class="logros-contador">${desbloqueados.size} / ${total} desbloqueados</div>
        <div class="logros-grid">${items}</div>
    `;

    modal.classList.add('active');
    if (typeof audioSystem !== 'undefined') audioSystem.playClick();
}

function cerrarLogrosModal() {
    const modal = document.getElementById('logros-modal');
    if (modal) modal.classList.remove('active');
    if (typeof audioSystem !== 'undefined') audioSystem.playClick();
}
