@@ -71,82 +71,84 @@ export function Sidebar() {
7171 { /* Mobile Menu Button */ }
7272 < button
7373 onClick = { ( ) => setMobileOpen ( ! mobileOpen ) }
74- className = "lg:hidden fixed top-4 left-4 z-50 p-2 rounded-lg bg-white dark:bg-slate-800 shadow-md border border-slate-200 dark:border-slate-700 "
74+ className = "lg:hidden fixed top-4 left-4 z-50 p-2 rounded-lg bg-[var(--card-bg)] border border-[var(--color-border)] shadow-sm "
7575 >
76- { mobileOpen ? < X size = { 24 } /> : < Menu size = { 24 } /> }
76+ { mobileOpen ? < X size = { 20 } /> : < Menu size = { 20 } /> }
7777 </ button >
7878
7979 { /* Mobile Overlay */ }
8080 { mobileOpen && (
8181 < div
82- className = "lg:hidden fixed inset-0 bg-black/50 z-40"
82+ className = "lg:hidden fixed inset-0 bg-black/40 backdrop-blur-sm z-40"
8383 onClick = { ( ) => setMobileOpen ( false ) }
8484 />
8585 ) }
8686
8787 { /* Sidebar */ }
8888 < aside
8989 className = { `
90- fixed top-0 left-0 h-full bg-white/80 dark:bg-slate-900/80 backdrop-blur-xl border-r border-slate-200/50 dark:border-slate-700/50 shadow-xl
91- transition-all duration-300 z-40
90+ fixed top-0 left-0 h-full bg-[var(--card-bg)] border-r border-[var(--color-border)]
91+ transition-all duration-200 z-40
9292 ${ collapsed ? "w-20" : "w-64" }
9393 ${ mobileOpen ? "translate-x-0" : "-translate-x-full lg:translate-x-0" }
9494 ` }
9595 >
9696 { /* Logo Header */ }
97- < div className = "h-16 flex items-center justify-between px-4 border-b border-slate-200/50 dark:border-slate-700/50 bg-gradient-to-r from-slate-50/50 to-transparent dark:from-slate-800/50 " >
97+ < div className = "h-16 flex items-center justify-between px-4 border-b border-[var(--color-border)] " >
9898 < div className = "flex items-center gap-3" >
99- < div className = "w-10 h-10 bg-gradient-to-br from-blue-500 via-purple-500 to-purple-600 rounded-lg flex items-center justify-center shadow-lg animate-gradient " >
100- < BarChart3 size = { 24 } className = "text-white" />
99+ < div className = "w-9 h-9 bg-[var(--color-accent)] rounded-lg flex items-center justify-center" >
100+ < BarChart3 size = { 20 } className = "text-white" />
101101 </ div >
102102 { ! collapsed && (
103103 < div >
104- < h1 className = "font-bold bg-gradient-to-r from-slate-900 to-slate-700 dark:from-white dark:to-slate-300 bg-clip-text text-transparent " >
104+ < h1 className = "font-semibold text-sm tracking-tight " >
105105 Vibe
106106 </ h1 >
107- < p className = "text-xs text-slate-500 dark:text-slate-400" > Dashboard</ p >
107+ < p className = "text-[10px] text-[var(--color-text-muted)]" >
108+ Dashboard
109+ </ p >
108110 </ div >
109111 ) }
110112 </ div >
111113 < button
112114 onClick = { ( ) => setCollapsed ( ! collapsed ) }
113- className = "hidden lg:flex p-1.5 rounded-lg hover:bg-slate-100 dark:hover:bg-slate-800 transition-all hover:scale-110 "
115+ className = "hidden lg:flex p-1.5 rounded-md hover:bg-[var(--color-surface)] transition-colors "
114116 >
115117 < ChevronLeft
116- size = { 18 }
117- className = { `text-slate-600 dark:text-slate-300 transition-transform ${ collapsed ? "rotate-180" : "" } ` }
118+ size = { 16 }
119+ className = { `text-[var(--color-text-muted)] transition-transform duration-200 ${ collapsed ? "rotate-180" : "" } ` }
118120 />
119121 </ button >
120122 </ div >
121123
122124 { /* Navigation */ }
123125 < nav className = "flex-1 px-3 py-4" >
124- < ul className = "space-y-1 " >
126+ < ul className = "space-y-0.5 " >
125127 { navItems . map ( ( item ) => (
126128 < li key = { item . path } >
127129 < Link
128130 to = { item . path }
129131 onClick = { ( ) => setMobileOpen ( false ) }
130132 className = { `
131- flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all duration-200 relative overflow-hidden group
133+ flex items-center gap-3 px-3 py-2.5 rounded-lg transition-all duration-150 relative
132134 ${
133135 isActive ( item . path )
134- ? "bg-gradient-to-r from-blue-500/10 to-purple-500/10 dark:from-blue-500/20 dark:to-purple-500/20 text-blue-600 dark:text-blue-400 font-medium shadow-sm "
135- : "text-slate-600 dark:text-slate-300 hover:bg-slate-100 dark:hover:bg-slate-800 hover:scale-105 "
136+ ? "bg-[var(--color-accent-soft)] text-[var(--color-accent)] font-medium"
137+ : "text-[var(--color-text-muted)] hover:bg-[var(--color-surface)] hover:text-[var(--color-text)] "
136138 }
137139 ${ collapsed ? "justify-center" : "" }
138140 ` }
139141 title = { collapsed ? item . label : undefined }
140142 >
141143 { isActive ( item . path ) && (
142- < span className = "absolute left-0 top-0 bottom-0 w-1 bg-gradient-to-b from-blue-500 to-purple-600 rounded-r-full" > </ span >
144+ < span className = "absolute left-0 top-1/2 -translate-y-1/2 w-[3px] h-5 bg-[var(--color-accent)] rounded-r-full" > </ span >
143145 ) }
144146 < span className = "flex-shrink-0" > { item . icon } </ span >
145147 { ! collapsed && (
146148 < >
147- < span className = "flex-1" > { item . label } </ span >
149+ < span className = "flex-1 text-sm " > { item . label } </ span >
148150 { item . badge && (
149- < span className = "px-2 py-0.5 text-xs bg-slate-200 dark:bg-slate-700 rounded-full " >
151+ < span className = "px-2 py-0.5 text-[10px] font-mono bg-[var(--color-surface)] border border-[var(--color-border)] rounded" >
150152 { item . badge }
151153 </ span >
152154 ) }
@@ -158,7 +160,14 @@ export function Sidebar() {
158160 </ ul >
159161 </ nav >
160162
161- { /* Bottom area - can be used for other actions in future */ }
163+ { /* Version indicator */ }
164+ { ! collapsed && (
165+ < div className = "px-4 py-3 border-t border-[var(--color-border)]" >
166+ < span className = "text-[10px] text-[var(--color-text-muted)]" >
167+ v0.1.0
168+ </ span >
169+ </ div >
170+ ) }
162171 </ aside >
163172 </ >
164173 ) ;
0 commit comments