main.html
<!DOCTYPE html>
<html lang="en" data-theme="dark" style="scroll-behavior: smooth;">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{block "title" .}}ReadySite Hosting{{end}}</title>
<meta name="description" content="Deploy and manage ReadySite instances in the cloud. Free preview sites, instant setup.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/daisyui@5" rel="stylesheet" type="text/css" />
<link href="/static/styles/main.css" rel="stylesheet" type="text/css" />
<script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4"></script>
<script src="https://cdn.jsdelivr.net/npm/htmx.org@2.0.8/dist/htmx.min.js"></script>
{{block "head_extra" .}}{{end}}
</head>
<body class="min-h-screen bg-[#111] text-[#e5e5e5] flex flex-col">
{{template "nav.html" .}}
<main class="flex-1">
{{block "content" .}}{{end}}
</main>
{{template "footer.html" .}}
{{block "body_scripts" .}}{{end}}
<!-- Cookie Consent -->
<div id="cookie-banner" class="hidden fixed bottom-0 left-0 right-0 z-50 p-4">
<div class="max-w-xl mx-auto flex flex-col sm:flex-row items-center gap-3 sm:gap-4 px-5 py-4 rounded-2xl border border-white/10" style="background: rgba(26,26,26,0.95); backdrop-filter: blur(16px);">
<p class="text-sm text-[#ccc] text-center sm:text-left flex-1">We use cookies for authentication and to improve your experience. By continuing, you agree to our use of cookies.</p>
<button onclick="document.getElementById('cookie-banner').remove();localStorage.setItem('cookie-consent','1')" class="btn btn-sm bg-white text-black hover:bg-[#e5e5e5] border-0 shrink-0">Got it</button>
</div>
</div>
<script>if(!localStorage.getItem('cookie-consent'))document.getElementById('cookie-banner').classList.remove('hidden');</script>
</body>
</html>