{group.items.map((item) => {
const route = routeMap[item.id] || '/dashboard';
const isActive = activeView === item.id;
return (
{
handleMobileNav();
if (onNavigate) onNavigate(item.id);
}}
className={cn(
'w-full flex items-center px-4 py-2.5 rounded-xl text-sm font-medium transition-all duration-300 group relative overflow-hidden',
'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-kodo-cyan focus-visible:ring-offset-2 focus-visible:ring-offset-kodo-void',
// Styles Actifs "Vibrant"
isActive
? 'bg-gradient-to-r from-kodo-cyan/20 to-transparent text-white shadow-[0_0_20px_rgba(var(--kodo-cyan),0.15)] border-l-2 border-kodo-cyan'
: 'text-kodo-secondary hover:text-white hover:bg-white/5 border-l-2 border-transparent',
!sidebarOpen && "justify-center px-2"
)}
>
{/* Active Glow Overlay */}
{isActive && (
)}
{item.icon}
{item.label}
{item.badge && sidebarOpen && (
{item.badge}
)}
{/* Dot for collapsed state */}
{item.badge && !sidebarOpen && (
)}
);
})}