diff --git a/frontend/src/lib/components/sidebar/nav-main.svelte b/frontend/src/lib/components/sidebar/nav-main.svelte
index 809ab499..0ecc6740 100644
--- a/frontend/src/lib/components/sidebar/nav-main.svelte
+++ b/frontend/src/lib/components/sidebar/nav-main.svelte
@@ -1,7 +1,9 @@
@@ -26,43 +87,105 @@
{#each items as item (item.title)}
{#if item.items && item.items.length > 0}
-
-
- {#snippet child({ props })}
-
-
+ {#if sidebar.state === "collapsed"}
+
+
+ onOpenChange(v, item.title)}
+ modal={false}
+ >
+
{#snippet child({ props })}
-
- {#if item.icon}
-
- {/if}
- {item.title}
-
-
+ handleTriggerEnter(item.title)}
+ onmouseleave={handleTriggerLeave}
+ >
+
+
+
+
+ {#if item.icon}
+
+ {:else}
+
+ {/if}
+ {item.title}
+
+
{/snippet}
-
-
-
- {#each item.items as subItem (subItem.title)}
-
-
- {#snippet child({ props })}
-
- {subItem.title}
-
- {/snippet}
-
-
- {/each}
-
-
-
- {/snippet}
-
+
+
+
+
+ {item.title}
+
+ {#each item.items as subItem (subItem.title)}
+
+
+ {subItem.title}
+
+
+ {/each}
+
+
+
+
+
+ {:else}
+
+
+ {#snippet child({ props })}
+
+
+ {#snippet child({ props })}
+
+ {#if item.icon}
+
+ {/if}
+ {item.title}
+
+
+ {/snippet}
+
+
+
+ {#each item.items as subItem (subItem.title)}
+
+
+ {#snippet child({ props })}
+
+ {subItem.title}
+
+ {/snippet}
+
+
+ {/each}
+
+
+
+ {/snippet}
+
+ {/if}
{:else}
-
+
{#snippet child({ props })}
@@ -79,3 +202,4 @@
{/each}
+
diff --git a/frontend/src/lib/components/ui/sidebar/sidebar.svelte b/frontend/src/lib/components/ui/sidebar/sidebar.svelte
index 3e9eba99..ff6db698 100644
--- a/frontend/src/lib/components/ui/sidebar/sidebar.svelte
+++ b/frontend/src/lib/components/ui/sidebar/sidebar.svelte
@@ -80,7 +80,7 @@