cai-exos-systems/daveadmin-exos-demo:exosneeds/render-doc.php
exosneeds/render-doc.php
```text
<?php
declare(strict_types=1);
function exosNeedsDocPage(string $title, string $sourceFile): void
{
$path = __DIR__ . '/' . $sourceFile;
$body = is_file($path) ? (string)file_get_contents($path) : 'Document not found.';
?><!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="noindex, nofollow">
<title><?= htmlspecialchars($title, ENT_QUOTES, 'UTF-8') ?> - EXOS Needs</title>
<style>
:root { --bg:#0b111c; --panel:#121b2a; --ink:#f5f7fb; --muted:#aeb9ca; --cyan:#31c7df; --line:rgba(255,255,255,.12); }
* { box-sizing: border-box; }
body { margin:0; color:var(--ink); background:var(--bg); font-family:"Segoe UI",system-ui,sans-serif; }
main { width:min(1120px, calc(100vw - 28px)); margin:0 auto; padding:28px 0 48px; }
nav { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:18px; }
a { color:var(--cyan); }
.btn { border:1px solid var(--line); background:#172234; color:var(--ink); text-decoration:none; padding:10px 12px; font-weight:750; }
article { border:1px solid var(--line); background:var(--panel); padding:22px; }
h1 { margin:0 0 14px; font-size:clamp(1.8rem, 4vw, 3.2rem); line-height:1; }
pre { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--muted); font:15px/1.65 "Segoe UI",system-ui,sans-serif; }
</style>
</head>
<body>
<main>
<nav>
<a class="btn" href="./">Interactive Summary</a>
<a class="btn" href="overview.php">Overview</a>
<a class="btn" href="architecture.php">Architecture</a>
<a class="btn" href="infrastructure.php">Infrastructure</a>
<a class="btn" href="pricing.php">Pricing</a>
<a class="btn" href="questions.php">Questions</a>
</nav>
<article>
<h1><?= htmlspecialchars($title, ENT_QUOTES, 'UTF-8') ?></h1>
<pre><?= htmlspecialchars($body, ENT_QUOTES, 'UTF-8') ?></pre>
</article>
</main>
</body>
</html><?php
}
```