function analyzeSEO() {
var text = document.getElementById('content-body').value.trim();
var keyword = document.getElementById('target-keyword').value.trim().toLowerCase();
var resultsBox = document.getElementById('results-box');
if (!text) {
alert('Please enter some text to analyze.');
return;
}
var words = text.match(/\w+/g);
var wordCount = words ? words.length : 0;
var keywordCount = 0;
if (keyword && words) {
var regex = new RegExp('\\b' + keyword + '\\b', 'gi');
var matches = text.match(regex);
keywordCount = matches ? matches.length : 0;
}
var density = wordCount > 0 ? ((keywordCount / wordCount) * 100).toFixed(2) : 0;
document.getElementById('res-word-count').innerText = wordCount;
document.getElementById('res-density').innerText = density + '%';
var feedback = document.getElementById('res-feedback');
var msg = ";
var bgColor = ";
var textColor = ";
if (density > 0.5 && density < 2.5) {
msg = 'Excellent! Your keyword density is optimal for SEO (0.5% – 2.5%).';
bgColor = '#c6f6d5';
textColor = '#22543d';
} else if (density >= 2.5) {
msg = 'Warning: Keyword density is high. Watch out for keyword stuffing penalties.';
bgColor = '#fed7d7';
textColor = '#822727';
} else {
msg = 'Tip: Consider using your target keyword more naturally to improve relevance.';
bgColor = '#bee3f8';
textColor = '#2a4365';
}
feedback.innerHTML = msg;
feedback.style.backgroundColor = bgColor;
feedback.style.color = textColor;
resultsBox.style.display = 'block';
}