diff --git a/app/modules/managers/templates/managers/_manager_tabs.html b/app/modules/managers/templates/managers/_manager_tabs.html
index 21fc760..d11f914 100644
--- a/app/modules/managers/templates/managers/_manager_tabs.html
+++ b/app/modules/managers/templates/managers/_manager_tabs.html
@@ -1,12 +1,2 @@
-{% set manager_path = request.url.path %}
-
+{# UI/UX V2 Phase 1D — Manager pilot. Existing URLs and route protection are preserved in the shared component. #}
+{% include "ui/templates/components/manager_navigation_v2.html" %}
diff --git a/app/modules/partners/templates/partners/_partner_tabs.html b/app/modules/partners/templates/partners/_partner_tabs.html
index 5d9a71c..10d475d 100644
--- a/app/modules/partners/templates/partners/_partner_tabs.html
+++ b/app/modules/partners/templates/partners/_partner_tabs.html
@@ -1,12 +1,2 @@
-{% set path = request.url.path %}
-
+{# UI/UX V2 Phase 1D — Partner pilot. Existing URLs and route protection are preserved in the shared component. #}
+{% include "ui/templates/components/partner_navigation_v2.html" %}
diff --git a/app/ui/templates/components/manager_navigation_v2.html b/app/ui/templates/components/manager_navigation_v2.html
new file mode 100644
index 0000000..ff07a74
--- /dev/null
+++ b/app/ui/templates/components/manager_navigation_v2.html
@@ -0,0 +1,59 @@
+{#
+ UI/UX V2 Phase 1D — Manager pilot navigation
+
+ Presentation-only replacement for the existing manager tab strip.
+ Existing URLs, route protection, dashboard content, forms and page actions
+ are unchanged.
+#}
+{% set _manager_path = request.url.path %}
+{% set navigation_aria_label_v2 = 'Manager workspace navigation' %}
+{% set navigation_items_v2 = [
+ {
+ 'label': 'Dashboard',
+ 'url': '/manager/dashboard',
+ 'visible': true,
+ 'active': _manager_path == '/manager/dashboard'
+ },
+ {
+ 'label': 'Team Work Board',
+ 'url': '/manager/work',
+ 'visible': true,
+ 'active': _manager_path.startswith('/manager/work')
+ },
+ {
+ 'label': 'Detailed Allocation',
+ 'url': '/employees/work',
+ 'visible': true,
+ 'active': _manager_path.startswith('/employees/work')
+ },
+ {
+ 'label': 'Engagement Progress',
+ 'url': '/employees/progress',
+ 'visible': true,
+ 'active': _manager_path.startswith('/employees/progress')
+ },
+ {
+ 'label': 'Team Attendance',
+ 'url': '/employees/attendance',
+ 'visible': true,
+ 'active': _manager_path.startswith('/employees/attendance')
+ },
+ {
+ 'label': 'Team Leave',
+ 'url': '/employees/leave',
+ 'visible': true,
+ 'active': _manager_path.startswith('/employees/leave')
+ },
+ {
+ 'label': 'Alerts',
+ 'url': '/alerts',
+ 'visible': true,
+ 'active': _manager_path.startswith('/alerts'),
+ 'badge': unread_alert_count if unread_alert_count is defined and unread_alert_count > 0 else none
+ }
+] %}
+
+
+ {% include "ui/templates/components/navigation_v2.html" %}
+ {% include "ui/templates/components/mobile_navigation_v2.html" %}
+
diff --git a/app/ui/templates/components/partner_navigation_v2.html b/app/ui/templates/components/partner_navigation_v2.html
new file mode 100644
index 0000000..c91fa74
--- /dev/null
+++ b/app/ui/templates/components/partner_navigation_v2.html
@@ -0,0 +1,59 @@
+{#
+ UI/UX V2 Phase 1D — Partner pilot navigation
+
+ Presentation-only replacement for the existing partner tab strip.
+ Existing URLs, route protection, dashboard content, forms and page actions
+ are unchanged.
+#}
+{% set _partner_path = request.url.path %}
+{% set navigation_aria_label_v2 = 'Partner workspace navigation' %}
+{% set navigation_items_v2 = [
+ {
+ 'label': 'Dashboard',
+ 'url': '/partner/dashboard',
+ 'visible': true,
+ 'active': _partner_path == '/partner/dashboard'
+ },
+ {
+ 'label': 'Review Board',
+ 'url': '/partner/reviews',
+ 'visible': true,
+ 'active': _partner_path.startswith('/partner/reviews')
+ },
+ {
+ 'label': 'My Clients',
+ 'url': '/partner/clients',
+ 'visible': true,
+ 'active': _partner_path.startswith('/partner/clients')
+ },
+ {
+ 'label': 'Engagements',
+ 'url': '/services/engagements',
+ 'visible': true,
+ 'active': _partner_path.startswith('/services/engagements')
+ },
+ {
+ 'label': 'Documents',
+ 'url': '/documents',
+ 'visible': true,
+ 'active': _partner_path.startswith('/documents')
+ },
+ {
+ 'label': 'Billing',
+ 'url': '/billing',
+ 'visible': true,
+ 'active': _partner_path.startswith('/billing')
+ },
+ {
+ 'label': 'Alerts',
+ 'url': '/alerts',
+ 'visible': true,
+ 'active': _partner_path.startswith('/alerts'),
+ 'badge': unread_alert_count if unread_alert_count is defined and unread_alert_count > 0 else none
+ }
+] %}
+
+
+ {% include "ui/templates/components/navigation_v2.html" %}
+ {% include "ui/templates/components/mobile_navigation_v2.html" %}
+