ThinklySEO / templates /report.html
yashgori20's picture
yup
5bd6119
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SEO Report - {{ url }}</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
background: #0a0a0a;
color: #ffffff;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
min-height: 100vh;
}
.header {
padding: 20px 0;
position: relative;
}
.header-content {
max-width: 1200px;
margin: 0 auto;
padding: 0 20px;
display: flex;
justify-content: space-between;
align-items: center;
}
.header-title {
font-size: 18px;
font-weight: 600;
color: #000;
position: absolute;
left: 50%;
transform: translateX(-50%);
display: flex;
align-items: center;
}
.action-buttons {
display: flex;
gap: 12px;
}
.action-btn {
padding: 8px 16px;
border: none;
background: transparent;
color: #666;
text-decoration: none;
font-weight: 500;
font-size: 14px;
transition: all 0.3s ease;
display: flex;
align-items: center;
gap: 6px;
cursor: pointer;
font-family: inherit;
}
.action-btn:hover {
color: #000;
font-size: 15px;
}
/* Print-friendly styles */
@media print {
.header,
.action-buttons,
.action-btn {
display: none !important;
}
body {
background: white !important;
color: black !important;
}
.report-container {
background: white !important;
color: black !important;
box-shadow: none !important;
padding: 0 !important;
margin-top: 0 !important;
}
.section {
break-inside: avoid;
page-break-inside: avoid;
}
}
.report-container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
.report-content {
background: #fff;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}
/* Override any purple/blue styling in the report */
.report-content :global(.card) {
border: 1px solid #e5e7eb !important;
background: #fff !important;
}
.report-content :global(.bg-primary) {
background-color: #374151 !important;
}
.report-content :global(.text-primary) {
color: #374151 !important;
}
.report-content :global(.border-primary) {
border-color: #d1d5db !important;
}
/* Clean professional styling for report content */
.report-content h1,
.report-content h2,
.report-content h3 {
color: #111827;
font-weight: 600;
}
.report-content .card {
background: #f9fafb;
border: 1px solid #e5e7eb;
border-radius: 8px;
margin-bottom: 20px;
}
@media (max-width: 768px) {
.header-content {
flex-direction: column;
gap: 16px;
text-align: center;
}
.download-buttons {
flex-wrap: wrap;
justify-content: center;
}
.report-container {
padding: 16px;
}
}
</style>
</head>
<body>
<div class="header">
<div class="header-content">
<div class="action-buttons">
<a href="/" class="action-btn">← Back to Generator</a>
</div>
<div class="header-title">
<img src="/static/logo.svg" alt="Thinkly Logo"
style="width: 16px; height: 16px; margin-right: 6px;">
Thinkly Labs SEO
</div>
<div class="action-buttons">
<button onclick="window.print()" class="action-btn primary">
πŸ“‘ Print to PDF
</button>
</div>
</div>
</div>
<div class="report-container">
<div class="report-content">
{{ report_html|safe }}
</div>
</div>
<script>
// Clean up any unwanted styling from the injected HTML
document.addEventListener('DOMContentLoaded', function () {
// Remove any purple/blue backgrounds or borders that might be in the report
const elements = document.querySelectorAll('[style*="purple"], [style*="blue"], [style*="#667eea"], [style*="#764ba2"]');
elements.forEach(el => {
if (el.style.backgroundColor) {
el.style.backgroundColor = '#f9fafb';
}
if (el.style.borderColor) {
el.style.borderColor = '#e5e7eb';
}
if (el.style.color && (el.style.color.includes('purple') || el.style.color.includes('blue'))) {
el.style.color = '#374151';
}
});
// Ensure all cards have clean styling
const cards = document.querySelectorAll('.card, [class*="card"]');
cards.forEach(card => {
card.style.backgroundColor = '#f9fafb';
card.style.border = '1px solid #e5e7eb';
card.style.borderRadius = '8px';
});
});
</script>
</body>
</html>