diff --git a/index.html b/index.html
index fa7f658..6b20ed6 100644
--- a/index.html
+++ b/index.html
@@ -3,8 +3,9 @@
+
- EventHub Admin
+ CalenTIQ Admin
diff --git a/public/brand/mark-white.svg b/public/brand/mark-white.svg
new file mode 100644
index 0000000..2270bfc
--- /dev/null
+++ b/public/brand/mark-white.svg
@@ -0,0 +1,15 @@
+
diff --git a/public/brand/mark.svg b/public/brand/mark.svg
new file mode 100644
index 0000000..699253f
--- /dev/null
+++ b/public/brand/mark.svg
@@ -0,0 +1,15 @@
+
diff --git a/public/favicon.ico b/public/favicon.ico
new file mode 100644
index 0000000..5712ba8
Binary files /dev/null and b/public/favicon.ico differ
diff --git a/public/favicon.svg b/public/favicon.svg
index 6893eb1..699253f 100644
--- a/public/favicon.svg
+++ b/public/favicon.svg
@@ -1 +1,15 @@
-
\ No newline at end of file
+
diff --git a/src/components/BrandWordmark.tsx b/src/components/BrandWordmark.tsx
new file mode 100644
index 0000000..69c96a1
--- /dev/null
+++ b/src/components/BrandWordmark.tsx
@@ -0,0 +1,75 @@
+import React from 'react';
+import { cn } from '@/lib/utils';
+
+type Size = 'sm' | 'md' | 'lg';
+
+type Props = {
+ size?: Size;
+ className?: string;
+ /** Show Time Arc mark next to wordmark (default true). */
+ withMark?: boolean;
+ /** Append muted "Admin" after the brand (sidebar / login). */
+ withAdmin?: boolean;
+};
+
+const sizeMap: Record = {
+ sm: { mark: 'h-5 w-5', text: 'text-sm', admin: 'text-[11px]' },
+ md: { mark: 'h-7 w-7', text: 'text-2xl', admin: 'text-sm' },
+ lg: { mark: 'h-10 w-10', text: 'text-4xl', admin: 'text-base' },
+};
+
+/**
+ * Public brand lockup: Time Arc + CalenTIQ (Admin).
+ * Uses currentColor so the mark follows theme foreground.
+ */
+const BrandWordmark: React.FC = ({
+ size = 'md',
+ className,
+ withMark = true,
+ withAdmin = false,
+}) => {
+ const s = sizeMap[size];
+ return (
+
+ {withMark && (
+
+ )}
+
+ CalenTIQ
+ {withAdmin && (
+ Admin
+ )}
+
+
+ );
+};
+
+export default BrandWordmark;
diff --git a/src/layouts/ControlCenterLayout.tsx b/src/layouts/ControlCenterLayout.tsx
index fb0ce5c..8504fb7 100644
--- a/src/layouts/ControlCenterLayout.tsx
+++ b/src/layouts/ControlCenterLayout.tsx
@@ -38,6 +38,7 @@ import {
} from '@/config/adminAccess';
import { notify } from '@/lib/notify';
import { cn } from '@/lib/utils';
+import BrandWordmark from '@/components/BrandWordmark';
import { testid } from '@/lib/testid';
import { getTableDensity, toggleTableDensity, type TableDensity } from '@/lib/density';
import { Button } from '@/components/ui/button';
@@ -251,11 +252,13 @@ const ControlCenterLayout: React.FC = () => {
collapsed ? 'w-16' : 'w-60'
)}
>
-
+
{!collapsed && (
-
- {import.meta.env.VITE_APP_TITLE || t('common.appTitle')}
-
+
)}