## 1. MainLayout: Add Drawer and Hamburger Toggle - [x] 1.1 Add a `_drawerOpen` bool field (default `true`) and a `ToggleDrawer` method to MainLayout.razor - [x] 1.2 Add a `MudIconButton` with `Icons.Material.Filled.Menu` as the first element in the MudAppBar, wired to `ToggleDrawer` - [x] 1.3 Add a `MudDrawer` with `Open="@_drawerOpen"`, `ClipMode="DrawerClipMode.Always"`, `Elevation="2"` inside the MudLayout, before MudMainContent - [x] 1.4 Reference `` inside the MudDrawer ## 2. NavMenu Component - [x] 2.1 Create `Layout/NavMenu.razor` with a `MudNavMenu` containing a single `MudNavLink` — text "Sales Assistant", icon `Icons.Material.Filled.SmartToy`, href `/sales-assistant` - [x] 2.2 Add inline tutorial comments explaining MudNavMenu, MudNavLink, and how href-based navigation works in Blazor ## 3. Chat Page Route Change - [x] 3.1 Change `Chat.razor` route from `@page "/"` to `@page "/sales-assistant"` - [x] 3.2 Update the page title from "Chat Agent" to "Sales Assistant" ## 4. Root Redirect - [x] 4.1 Create a `Pages/Index.razor` component at `@page "/"` that redirects to `/sales-assistant` on initialization using `NavigationManager.NavigateTo` (Home.razor already exists as health check page at /health) ## 5. Chat Container Height Adjustment - [x] 5.1 Verify `Chat.razor.css` height calc still works with the drawer layout — Dense AppBar is 48px, drawer does not affect vertical space. Adjust if needed. ## 6. Verification - [x] 6.1 Build the client project (`dotnet build`) and confirm no compilation errors - [x] 6.2 Run existing tests (`dotnet test`) and confirm they pass