Files
CMS/resources/views/documents/layout.php
2025-10-28 13:56:54 +01:00

103 lines
2.7 KiB
PHP

<?php
$brand = [
'company' => config('branding.company'),
'domain' => config('branding.domain'),
'logo' => config('branding.logo_path'),
'email_signature' => config('branding.email_signature'),
];
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title><?= htmlspecialchars($title ?? $brand['company'] . ' Document') ?></title>
<style>
:root {
color-scheme: dark;
font-family: 'Inter', system-ui, sans-serif;
}
body {
margin: 0;
padding: 48px 64px;
background-color: #0f172a;
color: #e2e8f0;
}
header {
display: flex;
align-items: center;
gap: 24px;
margin-bottom: 48px;
}
header img {
height: 72px;
width: auto;
border-radius: 16px;
background: rgba(15, 23, 42, 0.55);
padding: 0.45rem 0.65rem;
}
header h1 {
margin: 0;
font-size: 2.15rem;
}
header p {
margin: 0;
color: rgba(148, 163, 184, 0.9);
}
main {
background: rgba(30, 41, 59, 0.7);
border: 1px solid rgba(148, 163, 184, 0.18);
border-radius: 18px;
padding: 32px;
box-shadow: 0 24px 48px rgba(15, 23, 42, 0.45);
}
footer {
margin-top: 48px;
font-size: 0.85rem;
color: rgba(148, 163, 184, 0.75);
text-align: center;
}
table.meta {
width: 100%;
border-collapse: collapse;
margin-bottom: 32px;
}
table.meta th, table.meta td {
text-align: left;
padding: 8px 0;
border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}
.totals {
display: flex;
justify-content: flex-end;
margin-top: 32px;
}
.totals table {
border-collapse: collapse;
min-width: 240px;
}
.totals td {
padding: 8px 0;
}
.totals td.label {
color: rgba(148, 163, 184, 0.8);
padding-right: 24px;
}
</style>
</head>
<body>
<header>
<img src="<?= htmlspecialchars($brand['logo']) ?>" alt="<?= htmlspecialchars($brand['company']) ?> logo">
<div>
<h1><?= htmlspecialchars($brand['company']) ?></h1>
<p><?= htmlspecialchars($brand['domain']) ?></p>
</div>
</header>
<main>
<?= $content ?? '' ?>
</main>
<footer>
<?= nl2br(htmlspecialchars($brand['email_signature'])) ?>
</footer>
</body>
</html>