@@ -51,9 +51,9 @@ export const Layout: React.FC = () => {
5151 const [ rootPath , setRootPath ] = useState < string > ( '' ) ;
5252 const [ sidebarView , setSidebarView ] = useState < SidebarView > ( 'explorer' ) ;
5353 const [ sidebarVisible , setSidebarVisible ] = useState ( true ) ;
54- const [ sidebarWidth , setSidebarWidth ] = useState ( 260 ) ;
54+ const [ sidebarWidth , setSidebarWidth ] = useState ( 240 ) ;
5555 const [ chatVisible , setChatVisible ] = useState ( true ) ;
56- const [ chatWidth , setChatWidth ] = useState ( 340 ) ;
56+ const [ chatWidth , setChatWidth ] = useState ( 320 ) ;
5757 const [ terminalVisible , setTerminalVisible ] = useState ( true ) ;
5858 const [ terminalHeight , setTerminalHeight ] = useState ( 250 ) ;
5959 const [ _editorHasOpenTabs , setEditorHasOpenTabs ] = useState ( false ) ;
@@ -216,13 +216,13 @@ export const Layout: React.FC = () => {
216216 rafId = null ;
217217 if ( type === 'sidebar' ) {
218218 // Cap sidebar so center panel always keeps MIN_CENTER_WIDTH
219- // 48px activity bar + 4px handle + chatWidth + 4px handle = right-side overhead
220- const maxSidebar = window . innerWidth - 48 - 8 - chatWidth - MIN_CENTER_WIDTH ;
221- setSidebarWidth ( Math . max ( 180 , Math . min ( 500 , maxSidebar , e . clientX - 48 ) ) ) ;
219+ // 40px activity bar + 4px handle + chatWidth + 4px handle = right-side overhead
220+ const maxSidebar = window . innerWidth - 40 - 8 - chatWidth - MIN_CENTER_WIDTH ;
221+ setSidebarWidth ( Math . max ( 180 , Math . min ( 500 , maxSidebar , e . clientX - 40 ) ) ) ;
222222 } else if ( type === 'chat' ) {
223223 // Cap chat so the center panel always keeps MIN_CENTER_WIDTH
224- // 48px activity bar + sidebarWidth + 8px handles
225- const maxChatBySpace = Math . max ( 280 , window . innerWidth - 48 - sidebarWidth - 8 - MIN_CENTER_WIDTH ) ;
224+ // 40px activity bar + sidebarWidth + 8px handles
225+ const maxChatBySpace = Math . max ( 280 , window . innerWidth - 40 - sidebarWidth - 8 - MIN_CENTER_WIDTH ) ;
226226 setChatWidth ( Math . max ( 280 , Math . min ( 600 , maxChatBySpace , window . innerWidth - e . clientX ) ) ) ;
227227 }
228228 else if ( type === 'terminal' ) setTerminalHeight ( Math . max ( 100 , Math . min ( 600 , window . innerHeight - e . clientY - 24 ) ) ) ;
@@ -376,11 +376,11 @@ export const Layout: React.FC = () => {
376376 return (
377377 < div className = "flex flex-col h-screen overflow-hidden" style = { { backgroundColor : 'var(--theme-bg)' , color : 'var(--theme-foreground)' } } >
378378 { /* Title Bar with Menu */ }
379- < div className = "h-[34px ] flex items-center select-none flex-shrink-0 relative z-50"
379+ < div className = "h-[28px ] flex items-center select-none flex-shrink-0 relative z-50"
380380 style = { { backgroundColor : 'var(--theme-title-bar)' , WebkitAppRegion : 'drag' } as any } >
381- < div className = "flex items-center text-[12px ]" style = { { color : 'var(--theme-foreground)' , opacity : 0.8 , WebkitAppRegion : 'no-drag' } as any } >
382- < span className = "px-2 flex items-center" title = "guIDE by Brendan Gray" >
383- < img src = "zzz.png" alt = "guIDE" className = "w-5 h-5 " style = { { filter : 'brightness(1.2)' } } />
381+ < div className = "flex items-center text-[11px ]" style = { { color : 'var(--theme-foreground)' , opacity : 0.8 , WebkitAppRegion : 'no-drag' } as any } >
382+ < span className = "px-1.5 flex items-center" title = "guIDE by Brendan Gray" >
383+ < img src = "zzz.png" alt = "guIDE" className = "w-4 h-4 " style = { { filter : 'brightness(1.2)' } } />
384384 </ span >
385385 < MenuBar onAction = { handleMenuAction } />
386386 </ div >
@@ -390,12 +390,12 @@ export const Layout: React.FC = () => {
390390 style = { { WebkitAppRegion : 'no-drag' } as any }
391391 >
392392 < button
393- className = "flex items-center gap-2 h-[22px ] rounded transition-all px-3 hover:opacity-100"
393+ className = "flex items-center gap-2 h-[20px ] rounded-[3px] transition-all px-2.5 hover:opacity-100"
394394 style = { {
395395 backgroundColor : 'var(--theme-input-bg, rgba(255,255,255,0.06))' ,
396396 border : '1px solid var(--theme-border, rgba(255,255,255,0.10))' ,
397397 color : 'var(--theme-foreground-muted)' ,
398- width : 'clamp(220px, 30vw, 440px )' ,
398+ width : 'clamp(200px, 28vw, 400px )' ,
399399 opacity : 0.75 ,
400400 } }
401401 onClick = { ( ) => handleMenuAction ( 'command-palette' ) }
@@ -413,43 +413,43 @@ export const Layout: React.FC = () => {
413413 { /* VS Code–style layout toggle buttons */ }
414414 < div className = "flex items-center gap-0.5 mr-2" style = { { WebkitAppRegion : 'no-drag' } as any } >
415415 < button
416- className = "w-[28px ] h-[28px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
416+ className = "w-[24px ] h-[24px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
417417 style = { { color : sidebarVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' } }
418418 onClick = { ( ) => setSidebarVisible ( v => ! v ) }
419419 title = "Toggle Primary Sidebar (Ctrl+B)"
420420 >
421- < PanelLeft size = { 14 } />
421+ < PanelLeft size = { 13 } />
422422 </ button >
423423 < button
424- className = "w-[28px ] h-[28px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
424+ className = "w-[24px ] h-[24px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
425425 style = { { color : terminalVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' } }
426426 onClick = { ( ) => setTerminalVisible ( v => ! v ) }
427427 title = "Toggle Panel (Ctrl+J)"
428428 >
429- < PanelBottom size = { 14 } />
429+ < PanelBottom size = { 13 } />
430430 </ button >
431431 < button
432- className = "w-[28px ] h-[28px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
432+ className = "w-[24px ] h-[24px ] flex items-center justify-center rounded hover:bg-[#ffffff15] transition-colors"
433433 style = { { color : chatVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' } }
434434 onClick = { ( ) => setChatVisible ( v => ! v ) }
435435 title = "Toggle Secondary Sidebar (Ctrl+L)"
436436 >
437- < PanelRight size = { 14 } />
437+ < PanelRight size = { 13 } />
438438 </ button >
439439 </ div >
440440 { currentFile && < span className = "text-[12px] mr-2 truncate max-w-[150px] flex-shrink" style = { { color : 'var(--theme-foreground)' , opacity : 0.4 } } > { currentFile . split ( / [ / \\ ] / ) . pop ( ) } </ span > }
441- < span className = "text-[10px ] mr-[140px] select-none brand-font flex-shrink-0" style = { { color : 'var(--theme-foreground)' , opacity : 0.2 } } title = "guIDE by Brendan Gray" > guIDE</ span >
441+ < span className = "text-[9px ] mr-[140px] select-none brand-font flex-shrink-0" style = { { color : 'var(--theme-foreground)' , opacity : 0.15 } } title = "guIDE by Brendan Gray" > guIDE</ span >
442442 </ div >
443443
444444 { /* Main */ }
445445 < div className = "flex flex-1 min-h-0" >
446446 { /* Activity Bar */ }
447- < div className = "w-[48px ] flex flex-col items-center py-0 flex-shrink-0" style = { { backgroundColor : 'var(--theme-activity-bar)' , borderRight : '1px solid var(--theme-sidebar-border)' , overflow : 'visible' , position : 'relative' , zIndex : 10 } } >
447+ < div className = "w-[40px ] flex flex-col items-center py-0 flex-shrink-0" style = { { backgroundColor : 'var(--theme-activity-bar)' , borderRight : '1px solid var(--theme-sidebar-border)' , overflow : 'visible' , position : 'relative' , zIndex : 10 } } >
448448 { /* Primary icons */ }
449449 { primaryBarItems . map ( item => (
450450 < button
451451 key = { item . id }
452- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-all duration-150 flex-shrink-0 relative"
452+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-all duration-150 flex-shrink-0 relative"
453453 style = { {
454454 color : sidebarView === item . id && sidebarVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' ,
455455 backgroundColor : 'transparent' ,
@@ -464,13 +464,13 @@ export const Layout: React.FC = () => {
464464 { sidebarView === item . id && sidebarVisible && (
465465 < div className = "absolute left-0 top-[25%] w-[2px] h-[50%] rounded-r" style = { { backgroundColor : 'var(--theme-accent)' } } />
466466 ) }
467- < item . icon size = { 22 } />
467+ < item . icon size = { 18 } />
468468 </ button >
469469 ) ) }
470470 { /* More Tools button */ }
471471 < div className = "relative flex-shrink-0" >
472472 < button
473- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-all duration-150 relative"
473+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-all duration-150 relative"
474474 style = { {
475475 color : isMoreToolActive || moreToolsOpen ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' ,
476476 } }
@@ -479,13 +479,13 @@ export const Layout: React.FC = () => {
479479 aria-label = "More Tools"
480480 >
481481 { ( isMoreToolActive || moreToolsOpen ) && < div className = "absolute left-0 top-[25%] w-[2px] h-[50%] rounded-r" style = { { backgroundColor : 'var(--theme-accent)' } } /> }
482- < MoreHorizontal size = { 22 } />
482+ < MoreHorizontal size = { 18 } />
483483 </ button >
484484 { /* More Tools popover */ }
485485 { moreToolsOpen && (
486486 < >
487487 < div className = "fixed inset-0 z-40" onClick = { ( ) => { setMoreToolsOpen ( false ) ; notifyBrowserOverlay ( false ) ; } } />
488- < div className = "absolute left-[48px ] top-0 z-50 py-1 rounded-r-lg shadow-xl min-w-[180px] glass"
488+ < div className = "absolute left-[40px ] top-0 z-50 py-1 rounded-r-lg shadow-xl min-w-[180px] glass"
489489 style = { { backgroundColor : 'color-mix(in srgb, var(--theme-bg-secondary) 85%, transparent)' , border : '1px solid color-mix(in srgb, var(--theme-border) 60%, transparent)' } } >
490490 { moreToolsItems . map ( item => (
491491 < button
@@ -514,16 +514,16 @@ export const Layout: React.FC = () => {
514514 </ div >
515515 < div className = "flex-1" />
516516 < button
517- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-colors"
517+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-colors"
518518 style = { { color : 'var(--theme-foreground-muted)' , borderLeft : '2px solid transparent' } }
519519 onClick = { ( ) => editorRef . current ?. openBrowserTab ( ) }
520520 title = "Browser"
521521 aria-label = "Browser"
522522 >
523- < Globe size = { 24 } />
523+ < Globe size = { 18 } />
524524 </ button >
525525 < button
526- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-all duration-150 relative"
526+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-all duration-150 relative"
527527 style = { {
528528 color : chatVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' ,
529529 } }
@@ -532,10 +532,10 @@ export const Layout: React.FC = () => {
532532 aria-label = "AI Chat"
533533 >
534534 { chatVisible && < div className = "absolute left-0 top-[25%] w-[2px] h-[50%] rounded-r" style = { { backgroundColor : 'var(--theme-accent)' } } /> }
535- < MessageSquare size = { 22 } />
535+ < MessageSquare size = { 18 } />
536536 </ button >
537537 < button
538- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-all duration-150 relative"
538+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-all duration-150 relative"
539539 style = { {
540540 color : sidebarView === 'benchmark' && sidebarVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' ,
541541 } }
@@ -547,19 +547,19 @@ export const Layout: React.FC = () => {
547547 aria-label = "Model Benchmark"
548548 >
549549 { sidebarView === 'benchmark' && sidebarVisible && < div className = "absolute left-0 top-[25%] w-[2px] h-[50%] rounded-r" style = { { backgroundColor : 'var(--theme-accent)' } } /> }
550- < BarChart3 size = { 22 } />
550+ < BarChart3 size = { 18 } />
551551 </ button >
552552 < button
553- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-colors"
553+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-colors"
554554 style = { { color : showThemePicker ? 'var(--theme-accent)' : 'var(--theme-foreground-muted)' , borderLeft : '2px solid transparent' } }
555555 onClick = { ( ) => { setShowThemePicker ( v => { const next = ! v ; notifyBrowserOverlay ( next ) ; return next ; } ) ; } }
556556 title = "Theme"
557557 aria-label = "Theme"
558558 >
559- < Palette size = { 22 } />
559+ < Palette size = { 18 } />
560560 </ button >
561561 < button
562- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-all duration-150 relative group"
562+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-all duration-150 relative group"
563563 style = { {
564564 color : sidebarView === 'account' && sidebarVisible ? 'var(--theme-foreground)' : 'var(--theme-foreground-muted)' ,
565565 } }
@@ -572,12 +572,12 @@ export const Layout: React.FC = () => {
572572 >
573573 { sidebarView === 'account' && sidebarVisible && < div className = "absolute left-0 top-[25%] w-[2px] h-[50%] rounded-r" style = { { backgroundColor : 'var(--theme-accent)' } } /> }
574574 < div className = "relative" >
575- < UserCircle size = { 24 } />
575+ < UserCircle size = { 18 } />
576576 < span className = "absolute -top-1 -right-1 w-3 h-3 rounded-full animate-pulse" style = { { backgroundColor : 'var(--theme-accent)' , boxShadow : '0 0 8px var(--theme-accent)' } } />
577577 </ div >
578578 </ button >
579579 < button
580- className = "w-[48px ] h-[48px ] flex items-center justify-center transition-colors"
580+ className = "w-[40px ] h-[40px ] flex items-center justify-center transition-colors"
581581 style = { {
582582 color : 'var(--theme-foreground-muted)' ,
583583 borderRadius : '8px' ,
@@ -586,7 +586,7 @@ export const Layout: React.FC = () => {
586586 title = "Advanced Settings (Ctrl+,)"
587587 aria-label = "Advanced Settings"
588588 >
589- < Settings size = { 22 } />
589+ < Settings size = { 18 } />
590590 </ button >
591591 </ div >
592592
@@ -596,7 +596,7 @@ export const Layout: React.FC = () => {
596596 < >
597597 { /* Sidebar — always mounted so panels stay alive; width animates open/close */ }
598598 < div className = "flex flex-col flex-shrink-0 overflow-hidden" style = { { width : sidebarVisible ? sidebarWidth : 0 , backgroundColor : 'var(--theme-sidebar)' , borderRight : sidebarVisible ? '1px solid var(--theme-sidebar-border)' : 'none' , transition : 'width 200ms cubic-bezier(0.4,0,0.2,1)' , boxShadow : sidebarVisible ? '2px 0 8px rgba(0,0,0,0.28)' : 'none' } } >
599- < div className = "h-[30px ] flex items-center px-4 text-[11px ] font-semibold uppercase tracking-wider flex-shrink-0" style = { { color : 'var(--theme-foreground-subtle)' , borderBottom : '1px solid var(--theme-sidebar-border)' } } >
599+ < div className = "h-[28px ] flex items-center px-4 text-[10px ] font-semibold uppercase tracking-wider flex-shrink-0" style = { { color : 'var(--theme-foreground-subtle)' , borderBottom : '1px solid var(--theme-sidebar-border)' } } >
600600 { sidebarView === 'explorer' && 'Explorer' }
601601 { sidebarView === 'search' && 'Search' }
602602 { sidebarView === 'git' && 'Source Control' }
0 commit comments