{/* V7.4: Browser mode tabs — bigger, better active state */}
{[{k:"nav",l:"Nav"},{k:"browser",l:"Browser"},{k:"notes",l:"Notes"},{k:"bookmarks",l:"Web"}].map(m=>setBrowserMode(m.k)} style={{flex:1,padding:"8px 0 7px",border:"none",cursor:"pointer",backgroundColor:browserMode===m.k?c.bgPanel:c.bgPanelAlt,color:browserMode===m.k?c.accentBtn:c.textTer,fontSize:11.5,fontWeight:browserMode===m.k?700:450,fontFamily:font.sans,borderBottom:browserMode===m.k?`2.5px solid ${c.accentBtn}`:"2.5px solid transparent",borderTop:browserMode===m.k?`1px solid ${c.border}`:"1px solid transparent",borderLeft:browserMode===m.k?`1px solid ${c.borderLight}`:"1px solid transparent",borderRight:browserMode===m.k?`1px solid ${c.borderLight}`:"1px solid transparent",borderRadius:browserMode===m.k?"4px 4px 0 0":"0",margin:browserMode===m.k?"-1px 0 0":0}}>{m.l} )}
{/* ─── NAV MODE ─── */}
{browserMode==="nav"&&
{/* Conversations */}
Conversations
{recentConvos.filter(cv=>cv.starred).map(cv=>
openTab("chat",cv.name,"💬")} style={{display:"flex",alignItems:"center",gap:6,padding:"4px 10px",cursor:"pointer",fontSize:11.5,borderRadius:R.sm,margin:"0 4px"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{cv.name} {cv.time}
)}
{recentConvos.filter(cv=>!cv.starred).slice(0,3).map(cv=>
openTab("chat",cv.name,"💬")} style={{display:"flex",alignItems:"center",gap:6,padding:"4px 10px",cursor:"pointer",fontSize:11.5,borderRadius:R.sm,margin:"0 4px"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{cv.name} {cv.time}
)}
openTab("utility","Chats","💬")} style={{fontSize:10,color:c.accentBtn,cursor:"pointer",fontWeight:500}}>See all →
{/* Pages */}
Pages
{navPages.map(p=>
openTab("utility",p.label,p.icon)} style={{display:"flex",alignItems:"center",gap:7,padding:"5px 10px",cursor:"pointer",fontSize:12,borderRadius:R.sm,margin:"0 4px"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{p.icon}{p.label}
)}
{/* V7.4: Tab Groups — collapsed by default */}
setNavTabGroupsOpen(!navTabGroupsOpen)} style={{display:"flex",alignItems:"center",gap:6,padding:"5px 10px",cursor:"pointer",fontSize:12,margin:"0 4px"}}>
{navTabGroupsOpen?:}
Tab Groups
{tabGroups.length}
{navTabGroupsOpen&&tabGroups.map(g=>
{setTabGroups(gs=>gs.map(x=>x.id===g.id?{...x,collapsed:false}:x));const first=tabs.find(t=>t.group===g.id);if(first)setActiveTabId(first.id)}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{g.label} {tabs.filter(t=>t.group===g.id).length} tabs
)}
{/* Open Tabs */}
Open Tabs
{tabs.map(t=>
setActiveTabId(t.id)} style={{display:"flex",alignItems:"center",gap:5,padding:"3px 10px",cursor:"pointer",fontSize:11,borderRadius:R.sm,margin:"0 4px",backgroundColor:t.id===activeTabId?c.accentBtn+"08":"transparent",fontWeight:t.id===activeTabId?600:400}} onMouseEnter={e=>{if(t.id!==activeTabId)e.currentTarget.style.backgroundColor=c.bgInput}} onMouseLeave={e=>{e.currentTarget.style.backgroundColor=t.id===activeTabId?c.accentBtn+"08":"transparent"}}>{t.icon} {t.title}
)}
}
{/* ─── BROWSER MODE ─── (compact — preserved from V7.3) */}
{browserMode==="browser"&&<>
{scopeFams.map(s=>selectScope(s)} style={{padding:"2px 7px",borderRadius:R.full,border:`1px solid ${activeScope===s?c.accentBtn:c.border}`,backgroundColor:activeScope===s?c.accentBtn+"10":"transparent",fontSize:9.5,cursor:"pointer",fontFamily:font.sans,color:activeScope===s?c.accentBtn:c.textSec,fontWeight:activeScope===s?600:400}}>{s} )}
{activeScope==="Project"&&
{projects.map((p,i)=>{setActiveProjIdx(i);setNoProject(false)}} style={{padding:"2px 7px",borderRadius:R.full,border:`1px solid ${!noProject&&activeProjIdx===i?p.color:c.border}`,backgroundColor:!noProject&&activeProjIdx===i?p.color+"10":"transparent",fontSize:9.5,cursor:"pointer",fontFamily:font.sans,color:!noProject&&activeProjIdx===i?p.color:c.textSec,fontWeight:!noProject&&activeProjIdx===i?600:400}}>{p.name.split(" v.")[0]} )}setNoProject(true)} style={{padding:"2px 7px",borderRadius:R.full,border:`1px solid ${noProject?c.neutral:c.border}`,backgroundColor:noProject?c.neutral+"10":"transparent",fontSize:9.5,cursor:"pointer",fontFamily:font.sans,color:noProject?c.neutral:c.textSec}}>No Project
}
{activeScope==="Collection"&&
{collections.map(col=>toggleCollection(col.name)} style={{padding:"2px 7px",borderRadius:R.full,border:`1px solid ${selectedCollections.has(col.name)?col.color:c.border}`,backgroundColor:selectedCollections.has(col.name)?col.color+"12":"transparent",fontSize:9.5,cursor:"pointer",fontFamily:font.sans,color:selectedCollections.has(col.name)?col.color:c.textSec,fontWeight:selectedCollections.has(col.name)?600:400}}> {col.name} )}
}
{typeChips.slice(0,8).map(t=>toggleType(t)} style={{padding:"1px 5px",borderRadius:3,border:`1px solid ${activeTypes.has(t)?c.accentBtn+"50":c.borderLight}`,backgroundColor:activeTypes.has(t)?c.accentBtn+"08":"transparent",fontSize:8.5,cursor:"pointer",fontFamily:font.sans,color:activeTypes.has(t)?c.accentBtn:c.textTer,fontWeight:activeTypes.has(t)?600:400}}>{t} )}
{filtered.length} items {e.stopPropagation();setSortDrop(!sortDrop)}}>{sortKey} ▾ {sortDrop&&
e.stopPropagation()} style={{position:"absolute",top:16,right:0,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 4px 12px rgba(0,0,0,0.1)",zIndex:50,minWidth:100,padding:3}}>{sortOptions.map(s=>{setSortKey(s);setSortDrop(false)}} style={{display:"block",width:"100%",padding:"4px 8px",border:"none",cursor:"pointer",backgroundColor:s===sortKey?c.accentBtn+"08":"transparent",fontSize:10.5,color:s===sortKey?c.accentBtn:c.textPri,textAlign:"left",borderRadius:R.sm,fontFamily:font.sans,fontWeight:s===sortKey?600:400}}>{s} )}
}
{filtered.map((it,i)=>
setDragItem(it)} style={{display:"flex",alignItems:"center",gap:6,padding:"5px 10px",borderBottom:`1px solid ${c.borderLight}`,cursor:"pointer"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"} onClick={()=>{if(it.type==="Note")openTab("note",it.title,"📝");else if(it.type==="Chat")openTab("chat",it.title,"💬");else if(it.type==="Doc")openTab("doc",it.title,"📄");else if(it.type==="Task")openTab("task",it.title,"✅");else flash(`Open ${it.title}`)}}>
{it.pin&&}{it.title} {it.st&&{it.st} }{it.time}
)}
{filtered.length} items · {sortKey}
>}
{/* ─── NOTES MODE ─── (preserved from V7.3) */}
{browserMode==="notes"&&<>
setNoteSearch(e.target.value)} placeholder="Search notes…" style={{flex:1,border:"none",backgroundColor:"transparent",fontSize:10.5,fontFamily:font.sans,color:c.textPri,outline:"none"}}/>{noteSearch&&setNoteSearch("")} style={{padding:0,border:"none",cursor:"pointer",backgroundColor:"transparent",display:"flex",color:c.textTer}}> }
Notes {setNoteNewFolderMode({parent:null});setNoteNewFolderName("")}} style={{padding:"2px 6px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:"transparent",cursor:"pointer",fontSize:9.5,color:c.textTer,fontFamily:font.sans,display:"flex",alignItems:"center",gap:2}}>+ flash("New note…")} style={{padding:"2px 6px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:"transparent",cursor:"pointer",fontSize:9.5,color:c.accentBtn,fontFamily:font.sans,display:"flex",alignItems:"center",gap:2}}>+
{filteredNotes.map(n=>
{setSelectedNote(n.id);flash(`Open "${n.title}"`)}} style={{display:"flex",alignItems:"center",gap:4,padding:"4px 10px",height:30,borderBottom:`1px solid ${c.borderLight}`,cursor:"pointer",backgroundColor:selectedNote===n.id?c.accentBtn+"06":"transparent",borderLeft:selectedNote===n.id?`2px solid ${c.accentBtn}`:"2px solid transparent"}}>{n.pinned&&}{n.title} {n.comments>0&&💬{n.comments} }{n.mod}
)}
{notes.length} notes
>}
{/* ─── BOOKMARKS MODE ─── (preserved from V7.3, compact) */}
{browserMode==="bookmarks"&&<>
Bookmarks flash("New folder…")} style={{padding:"2px 6px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:"transparent",cursor:"pointer",fontSize:9.5,color:c.accentBtn,fontFamily:font.sans}}>+ Folder
{bmFolders.filter(f=>f.parent===null).map(bf=>{const isExp=bmExpanded.has(bf.id);const filteredItems=bmSearch?bf.items.filter(i=>i.title.toLowerCase().includes(bmSearch.toLowerCase())):bf.items;
return
{const s=new Set(bmExpanded);s.has(bf.id)?s.delete(bf.id):s.add(bf.id);setBmExpanded(s)}} style={{display:"flex",alignItems:"center",gap:4,padding:"4px 8px",cursor:"pointer",borderBottom:`1px solid ${c.borderLight}`,backgroundColor:c.bgPanelAlt}}>{isExp?:}{bf.title} {bf.items.length}
{isExp&&filteredItems.map(item=>
flash(`Open ${item.url}`)} style={{display:"flex",alignItems:"center",gap:6,padding:"3px 8px 3px 24px",borderBottom:`1px solid ${c.borderLight}`,cursor:"pointer",fontSize:11}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{item.url[0].toUpperCase()} {item.title}
)}
})}
Recent Pages
{[{title:"Paramount MIL No. 3",url:"ecf.cacd.uscourts.gov",color:"#2c3e50",time:"2h"},{title:"SEC — Brooge Energy",url:"sec.gov",color:"#1B4F72",time:"1d"}].map((p,i)=>
e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{p.url[0].toUpperCase()} {p.title} {p.time}
)}
{bmFolders.reduce((a,f)=>a+f.items.length,0)} bookmarks
>}
{const sX=e.clientX,sW=browserWidth;const m=ev=>setBrowserWidth(Math.max(200,Math.min(450,sW+(ev.clientX-sX))));const u=()=>{document.removeEventListener("mousemove",m);document.removeEventListener("mouseup",u)};document.addEventListener("mousemove",m);document.addEventListener("mouseup",u)}}/>
}
{/* ═══ MAIN WORKSPACE ═══ */}
{/* TAB BAR — V7.4: Chrome-style group borders */}
setBrowserOpen(!browserOpen)} title="Browser (⌘B)" style={{width:26,height:36,borderRadius:0,border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:browserOpen?c.accentBtn:c.textTer,flexShrink:0,marginRight:3,padding:0}}>
{(()=>{const rendered=new Set();return tabs.map(tab=>{if(rendered.has(tab.id))return null;if(tab.group){const group=tabGroups.find(g=>g.id===tab.group);if(!group||rendered.has(tabs.filter(t=>t.group===tab.group)[0]?.id)&&tabs.filter(t=>t.group===tab.group)[0]?.id!==tab.id)return null;const gTabs=tabs.filter(t=>t.group===tab.group);gTabs.forEach(t=>rendered.add(t.id));
return
setTabGroups(g=>g.map(x=>x.id===group.id?{...x,collapsed:!x.collapsed}:x))} onContextMenu={e=>{e.preventDefault();e.stopPropagation();setGroupCtx({x:e.clientX,y:e.clientY,gid:group.id})}} style={{display:"flex",alignItems:"center",gap:4,padding:"0 6px",height:32,cursor:"pointer",borderRadius:"8px 8px 0 0",backgroundColor:group.color+"30"}}>{group.label} ▾
{!group.collapsed&&gTabs.map(gt=>{const isActive=gt.id===activeTabId;return
setDragTabId(gt.id)} onDragOver={e=>e.preventDefault()} onDrop={()=>handleTabDrop(gt.id)} onClick={e=>{if(e.metaKey||e.ctrlKey){const s=new Set(selectedTabs);s.has(gt.id)?s.delete(gt.id):s.add(gt.id);setSelectedTabs(s)}else setActiveTabId(gt.id)}} onContextMenu={e=>{e.preventDefault();setTabContextMenu({x:e.clientX,y:e.clientY,tabId:gt.id})}} style={{display:"flex",alignItems:"center",gap:5,padding:"0 10px",height:32,minWidth:80,maxWidth:200,borderRadius:"8px 8px 0 0",backgroundColor:isActive?c.bgPanel:"#f0f2f4",
// V7.4: Chrome-style group border — snake around active tab
borderTop:isActive?`2.5px solid ${group.color}`:`2.5px solid transparent`,
borderLeft:isActive?`2.5px solid ${group.color}`:"none",
borderRight:isActive?`2.5px solid ${group.color}`:"none",
borderBottom:isActive?"2.5px solid transparent":`2.5px solid ${group.color}90`,
cursor:"pointer",overflow:"hidden",flexShrink:1}}>{gt.icon} {gt.title} {e.stopPropagation();closeTab(gt.id)}} style={{cursor:"pointer",display:"flex",opacity:isActive?1:0,padding:2,borderRadius:3,flexShrink:0}}>
})}
}
rendered.add(tab.id);const isTransient=tab.type==="utility"&&!tab.pinned;
return
setDragTabId(tab.id)} onDragOver={e=>e.preventDefault()} onDrop={()=>handleTabDrop(tab.id)} onClick={e=>{if(e.metaKey||e.ctrlKey){const s=new Set(selectedTabs);s.has(tab.id)?s.delete(tab.id):s.add(tab.id);setSelectedTabs(s)}else setActiveTabId(tab.id)}} onContextMenu={e=>{e.preventDefault();setTabContextMenu({x:e.clientX,y:e.clientY,tabId:tab.id})}} style={{display:"flex",alignItems:"center",gap:5,padding:"0 10px",height:32,minWidth:isTransient?60:80,maxWidth:200,borderRadius:"8px 8px 0 0",backgroundColor:tab.incognito?(tab.id===activeTabId?"#4a4a4a":"#555"):(tab.id===activeTabId?c.bgPanel:(selectedTabs.has(tab.id)?"#d0d5db":"#f0f2f4")),borderBottom:isTransient?(tab.id===activeTabId?`2.5px solid ${c.accentBtn}`:`1px solid ${c.accentBtn}50`):(tab.id===activeTabId?`2.5px solid ${tab.color}`:`1px solid ${c.border}`),cursor:"pointer",overflow:"hidden",flexShrink:1}}>
{tab.incognito&& }{!tab.incognito&&{tab.icon} }
{tab.title}
{e.stopPropagation();closeTab(tab.id)}} style={{cursor:"pointer",display:"flex",opacity:tab.id===activeTabId?1:0,padding:2,borderRadius:3,flexShrink:0}}>
})})()}
{/* [+] new tab */}
{e.stopPropagation();setNewTabDrop(!newTabDrop)}} style={{width:28,height:28,borderRadius:"6px 6px 0 0",border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:c.textTer,marginBottom:2}}> {newTabDrop&&
e.stopPropagation()} style={{position:"absolute",top:30,right:0,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 4px 16px rgba(0,0,0,0.12)",zIndex:100,minWidth:200,padding:4}}>
Create
addTab("note")}>📝 New Note
{openTab("chat","New Chat","💬");setNewTabDrop(false)}}>💬 New Chat
addTab("web")}>🌐 New Web Tab
addTab("web",true)}> Incognito Tab
Open
{[{l:"Chats",i:"💬"},{l:"Tasks",i:"📋"},{l:"Projects",i:"📁"},{l:"Knowledge",i:"🧠"},{l:"Agents",i:"👤"},{l:"Settings",i:"⚙️"}].map(p=>
{openTab("utility",p.l,p.i);setNewTabDrop(false)}}>{p.i} {p.l} )}
}
{/* V7.4: Split screen toggle */}
{if(!splitMode){setSplitMode(true);setSplitTabs([{id:"st1",type:"doc",icon:"📄",title:"Christensen_CV.pdf",color:tabColors.doc}]);setSplitActiveTabId("st1")}else{setSplitMode(false);setSplitTabs([])}}} title="Split view" style={{width:28,height:28,borderRadius:R.sm,border:`1px solid ${splitMode?c.accentBtn+"40":c.borderLight}`,backgroundColor:splitMode?c.accentBtn+"08":"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:splitMode?c.accentBtn:c.textTer}}>
{/* Tab context menu */}
{tabContextMenu&&
e.stopPropagation()} style={{position:"fixed",left:tabContextMenu.x,top:tabContextMenu.y,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 4px 16px rgba(0,0,0,0.15)",zIndex:9999,minWidth:190,padding:4}}>
{closeTab(tabContextMenu.tabId);setTabContextMenu(null)}}>Close {setTabs(p=>p.filter(t=>t.id===tabContextMenu.tabId));setTabContextMenu(null)}}>Close Others {flash("Duplicated");setTabContextMenu(null)}}>Duplicate {flash("Pinned");setTabContextMenu(null)}}>Pin
{tabs.find(t=>t.id===tabContextMenu.tabId)?.type==="note"&&
{const n=prompt("New name:");if(n)setTabs(p=>p.map(t=>t.id===tabContextMenu.tabId?{...t,title:n}:t));setTabContextMenu(null)}}>Rename }
{selectedTabs.size>0?
{const gid="g"+Date.now();const nm=prompt("Group name:")||"Group";setTabGroups(p=>[...p,{id:gid,label:nm,color:groupColors[p.length%groupColors.length],collapsed:false}]);setTabs(p=>p.map(t=>selectedTabs.has(t.id)||t.id===tabContextMenu.tabId?{...t,group:gid}:t));setSelectedTabs(new Set());setTabContextMenu(null);flash("Grouped")}}>Group Selected Tabs…
:
{const gid="g"+Date.now();const nm=prompt("Group name:")||"Group";setTabGroups(p=>[...p,{id:gid,label:nm,color:groupColors[p.length%groupColors.length],collapsed:false}]);setTabs(p=>p.map(t=>t.id===tabContextMenu.tabId?{...t,group:gid}:t));setTabContextMenu(null);flash("Grouped")}}>Group Tab… }
{tabGroups.length>0&&tabGroups.map(g=>
{setTabs(p=>p.map(t=>t.id===tabContextMenu.tabId?{...t,group:g.id}:t));setTabContextMenu(null)}}> Add to {g.label} )}
{tabs.find(t=>t.id===tabContextMenu.tabId)?.group&&
{setTabs(p=>p.map(t=>t.id===tabContextMenu.tabId?{...t,group:undefined}:t));setTabContextMenu(null)}}>Remove from Group }
}
{/* Group context menu — V7.4: removed "Save" (auto-saves) */}
{groupCtx&&
e.stopPropagation()} style={{position:"fixed",left:groupCtx.x,top:groupCtx.y,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 4px 16px rgba(0,0,0,0.15)",zIndex:9999,minWidth:160,padding:4}}>
{const n=prompt("Group name:");if(n)setTabGroups(p=>p.map(g=>g.id===groupCtx.gid?{...g,label:n}:g));setGroupCtx(null)}}>Rename
{setGroupCtx(null);flash("Color picker…")}}>Change Color
{setTabs(p=>p.map(t=>t.group===groupCtx.gid?{...t,group:undefined}:t));setTabGroups(p=>p.filter(g=>g.id!==groupCtx.gid));setGroupCtx(null);flash("Ungrouped")}}>Ungroup All
{setTabs(p=>p.filter(t=>t.group!==groupCtx.gid));setTabGroups(p=>p.filter(g=>g.id!==groupCtx.gid));setGroupCtx(null);flash("Group closed")}}>Close Group
}
{/* CONTENT AREA — with optional split pane */}
{/* LEFT PANE (always visible) */}
setSplitFocus("left")}>
{/* NOTE TOOLBAR */}
{isNoteType&&
}/>}/>
B} title="Bold"/>I} title="Italic"/>U} title="Underline"/>S} title="Strikethrough"/>
} label="H1" dropdown/>
}/>}/>} onClick={()=>setFindBar(!findBar)}/>
} label="Markup" active={showMarkup} onClick={()=>setShowMarkup(!showMarkup)}/>} label={pendingChanges.length+""} dropdown active={pendingChanges.length>0}/>
} label={openC.length+""} active={rightOpen&&rightTab==="comments"} onClick={()=>{if(rightOpen&&rightTab==="comments")setRightOpen(false);else{setRightOpen(true);setRightTab("comments")}}}/>
} title="Note settings" dropdown/>
{if(rightOpen&&rightTab==="send")setRightOpen(false);else{setRightOpen(true);setRightTab("send")}}} style={{padding:"3px 10px",borderRadius:R.sm,border:`1px solid ${(activeTab.type==="clips"?c.purple:c.accentBtn)}40`,backgroundColor:(rightOpen&&rightTab==="send")?(activeTab.type==="clips"?c.purple:c.accentBtn):(activeTab.type==="clips"?c.purple:c.accentBtn)+"08",cursor:"pointer",display:"flex",alignItems:"center",gap:4,color:(rightOpen&&rightTab==="send")?"#fff":(activeTab.type==="clips"?c.purple:c.accentBtn),fontFamily:font.sans,fontSize:10.5,fontWeight:600,height:26}}>Ask {agent.name}
}
{/* DOC TOOLBAR — V7.4: clickable title + right-click menu */}
{activeTab.type==="doc"&&<>
flash("Opening in Preview.app…")} onContextMenu={e=>{e.preventDefault();setDocTitleMenu({x:e.clientX,y:e.clientY})}} style={{fontSize:14,fontWeight:650,flex:1,cursor:"pointer"}} title="Click to open in default app">Sanli Expert Report
PDF
{/* V7.4: Doc title right-click menu */}
{docTitleMenu&&e.stopPropagation()} style={{position:"fixed",left:docTitleMenu.x,top:docTitleMenu.y,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 4px 16px rgba(0,0,0,0.15)",zIndex:9999,minWidth:200,padding:4}}>
{flash("Showing in Finder…");setDocTitleMenu(null)}}>Show in Finder
{flash("Opening in Preview.app…");setDocTitleMenu(null)}}>Open in Default App
{flash("Ref copied: doc:sanli_expert_report:v2");setDocTitleMenu(null)}}>Copy Ref
{flash("Path copied");setDocTitleMenu(null)}}>Copy Path
{flash("Name copied");setDocTitleMenu(null)}}>Copy File Name
}
} onClick={()=>flash("Copied")}/>} label="Save As…" dropdown/>} label="To Note"/>} label="Ref" onClick={()=>flash("Ref copied: doc:sanli_expert_report:v2")}/>}/>} title="Open in default app" onClick={()=>flash("Opening in Preview.app…")}/>}/>} active={pinned} onClick={()=>{setPinned(!pinned);flash(pinned?"Unpinned":"Pinned to Paramount context")}}/>
} label={openC.length+""} active={rightOpen&&rightTab==="comments"} onClick={()=>{if(rightOpen&&rightTab==="comments")setRightOpen(false);else{setRightOpen(true);setRightTab("comments")}}}/>
} label="Markup" active={showMarkup}/>} label="3" dropdown active/>} label="v2" dropdown/>
{if(rightOpen&&rightTab==="send")setRightOpen(false);else{setRightOpen(true);setRightTab("send")}}} style={{padding:"4px 12px",borderRadius:R.sm,border:`1px solid ${c.accentBtn}40`,backgroundColor:(rightOpen&&rightTab==="send")?c.accentBtn:c.accentBtn+"08",cursor:"pointer",display:"flex",alignItems:"center",gap:5,color:(rightOpen&&rightTab==="send")?"#fff":c.accentBtn,fontFamily:font.sans,fontSize:11.5,fontWeight:600,height:28}}>Ask {agent.name}
>}
{/* WEB TOOLBAR + V7.4 BOOKMARKS BAR */}
{activeTab.type==="web"&&<>{activeTab.incognito?:}
{setBookmarked(!bookmarked);flash(bookmarked?"Removed":"Bookmarked")}} style={{width:28,height:28,borderRadius:R.sm,border:"none",cursor:"pointer",backgroundColor:"transparent",display:"flex",alignItems:"center",justifyContent:"center"}}> } active={readerMode} onClick={()=>{setReaderMode(!readerMode);flash(readerMode?"Page view":"Reader mode")}}/>} label="Save"/>} label="Clip" onClick={()=>{setClipsCount(n=>n+1);flash("Clipped to Clips: 4.4-1")}}/>} label={openC.length+""} active={rightOpen&&rightTab==="comments"} onClick={()=>{if(rightOpen&&rightTab==="comments")setRightOpen(false);else{setRightOpen(true);setRightTab("comments")}}}/>}/>{if(rightOpen&&rightTab==="send")setRightOpen(false);else{setRightOpen(true);setRightTab("send")}}} style={{padding:"3px 10px",borderRadius:R.sm,border:`1px solid ${c.accentBtn}40`,backgroundColor:(rightOpen&&rightTab==="send")?c.accentBtn:c.accentBtn+"08",cursor:"pointer",display:"flex",alignItems:"center",gap:4,color:(rightOpen&&rightTab==="send")?"#fff":c.accentBtn,fontFamily:font.sans,fontSize:10.5,fontWeight:600,height:26}}>Ask {agent.name}
{/* V7.4: Bookmarks bar */}
{bmBarVisible&&bmBar&&{bmBar.items.map(bm=>flash(`Navigate to ${bm.url}`)} style={{display:"flex",alignItems:"center",gap:4,padding:"2px 8px",borderRadius:R.sm,border:"none",backgroundColor:"transparent",cursor:"pointer",fontSize:10.5,color:c.textSec,fontFamily:font.sans,whiteSpace:"nowrap",flexShrink:0}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{bm.url[0].toUpperCase()} {bm.title} )}flash("Edit bookmarks bar…")}>⋯
}
>}
{findBar&&0/0 setFindBar(false)} style={{padding:2,border:"none",cursor:"pointer",backgroundColor:"transparent",display:"flex",color:c.textTer}}>
}
{/* ── CONTENT DISPLAY ── */}
{/* NOTE CONTENT — V7.4: fully editable canvas with module islands */}
{activeTab.type==="note"&&
Paramount · 📌 Pinned
{/* V7.4: Editable note canvas — segments are editable, modules are islands */}
{noteSegs.map((seg,i)=>{
if(seg.t==="h2")return
;
return
{renderText(seg)}
})}
{/* Module islands with editable gaps between them */}
{blocks.map((b,i)=>
)}
{/* Final editable area */}
{/* V7.4: +Module picker — includes Note Block */}
{e.stopPropagation();setPickerOpen(!pickerOpen)}} style={{display:"flex",alignItems:"center",gap:4,padding:"4px 12px",borderRadius:R.sm,border:`1px dashed ${c.border}`,backgroundColor:"transparent",cursor:"pointer",color:c.textTer,fontSize:11,fontFamily:font.sans}}>Add Module
{pickerOpen&&
e.stopPropagation()} style={{position:"absolute",bottom:32,left:0,backgroundColor:c.bgCard,border:`1px solid ${c.border}`,borderRadius:R.sm,boxShadow:"0 8px 24px rgba(0,0,0,0.12)",zIndex:100,minWidth:200,padding:4}}>
insertBlock("note")}>📝 Note Block
insertBlock("tasks")}>✅ Task List
insertBlock("thread")}>💬 Inline Thread
insertBlock("bar")}>⚠️ Notice Bar
Activity Feeds
{feedPresets.slice(0,4).map(fp=>
insertBlock("feed",fp)}>{feedIcons[fp.icon]} {fp.name} )}
}
}
{/* DOC CONTENT */}
{activeTab.type==="doc"&&
Expert Report of Dr. Mehmet Sanli I. Summary Plaintiff's claimed damages of $4.2M are speculative. Actual damages: ~$380,000.
Using a willing buyer-willing seller framework with 18% discount rate.
TABLE 1
Category Paramount Sanli Lost signage $2,840,000 $210,000 Permit value $980,000 $120,000 Total $4,200,000 $380,000
}
{/* WEB CONTENT */}
{activeTab.type==="web"&&
{readerMode&&
READER MODE
}
United States District Court — CACD
PARAMOUNT CONTRACTORS v. CITY OF LOS ANGELES
Case No. BC587659 | Filed: March 15, 2026
MOTION IN LIMINE NO. 3 Dr. Sanli's methodology: (1) improper framework; (2) ignoring City valuations; (3) discount rate of 18% unsupported.
II. LEGAL STANDARD Under Sargon , trial court is "gatekeeper." 55 Cal.4th at 770.
}
{/* CLIPS */}
{activeTab.type==="clips"&&
✂️ Clips: 4.4-1
Session Active Paramount · Auto-created
{[{src:"Sanli Report.pdf",text:"Actual damages approximately $380,000 using 18% discount rate.",time:"12:34 PM"},{src:"PACER — MIL No. 3",text:"Discount rate of 18% unsupported by comparable data.",time:"12:41 PM"}].map((clip,i)=>
{clip.src} {clip.time}
{clip.text}
)}
Add notes below clips…
{blocks.map(b=>renderBlock(b))}
}
{/* CHAT TAB */}
{activeTab.type==="chat"&&
💬 {activeTab.title}
{[{author:"You",body:"Analyze Sanli's discount rate methodology and identify weaknesses for the MIL.",time:"1h ago"},{author:agent.name,body:"Dr. Sanli uses an 18% discount rate but cites no comparable transactions. Three signage-rights transactions I found show rates of 8-12%. His rate appears selected to minimize recovery. This is a strong Sargon argument.",time:"55m ago"},{author:"You",body:"Can we tie this to the Henderson v. Pacific line?",time:"50m ago"}].map((msg,i)=>
{msg.author} {msg.time}
{msg.body}
)}
flash("Sent")}> Send
}
{/* UTILITY TAB */}
{activeTab.type==="utility"&&
{activeTab.icon} {activeTab.title}
{activeTab.title==="Chats"&&
{["All","Starred","Active","Archived"].map((f,i)=>{f} )}
{recentConvos.map(cv=>
openTab("chat",cv.name,"💬")} style={{display:"flex",alignItems:"center",gap:10,padding:"10px 12px",borderRadius:R.sm,border:`1px solid ${c.borderLight}`,marginBottom:6,cursor:"pointer"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.bgInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>
{e.stopPropagation();flash(cv.starred?"Unstarred":"Starred")}} style={{border:"none",background:"none",cursor:"pointer",display:"flex"}}> {cv.name}
Last message preview…
{cv.time} )}
}{activeTab.title!=="Chats"&&
{activeTab.title} page content. Transient — auto-closes on tab switch. Right-click → Pin to keep open.
}
}
{/* Bubble menu */}
{bubbleMenu&&
{setNewCm({text:bubbleMenu.text});setBubbleMenu(null);setRightOpen(true);setRightTab("comments")}} style={{padding:"5px 10px",borderRadius:R.sm,border:"none",cursor:"pointer",backgroundColor:c.accentBtn,color:"#fff",fontSize:11,fontWeight:600,fontFamily:font.sans,display:"flex",alignItems:"center",gap:4}}>Comment {flash(`Sent to ${agent.name}`);dismissBubble()}} style={{padding:"5px 8px",borderRadius:R.sm,border:"none",cursor:"pointer",backgroundColor:"transparent",color:c.textSec,fontSize:11,fontFamily:font.sans,display:"flex",alignItems:"center",gap:3}}>Ask {agent.name} {activeTab.type==="web"&&{setClipsCount(n=>n+1);flash("Clipped");dismissBubble()}} style={{padding:"5px 8px",borderRadius:R.sm,border:"none",cursor:"pointer",backgroundColor:"transparent",color:c.textSec,fontSize:11,fontFamily:font.sans,display:"flex",alignItems:"center",gap:3}}>Clip }{isNoteType&&["Rewrite","Expand","Shorten"].map(a=>{flash(`${agent.name}: ${a}…`);dismissBubble()}} style={{padding:"5px 8px",borderRadius:R.sm,border:"none",cursor:"pointer",backgroundColor:"transparent",color:c.textSec,fontSize:11,fontFamily:font.sans}}>{a} )}
}
{/* V7.4: SPLIT PANE (right side) */}
{splitMode&&<>
setSplitFocus("right")}>
{splitTabs.map(st=>
setSplitActiveTabId(st.id)} style={{display:"flex",alignItems:"center",gap:5,padding:"0 10px",height:28,borderRadius:"6px 6px 0 0",backgroundColor:st.id===splitActiveTabId?c.bgPanel:"#f0f2f4",borderBottom:st.id===splitActiveTabId?`2px solid ${st.color}`:`1px solid ${c.border}`,cursor:"pointer",fontSize:11,fontFamily:font.sans}}>{st.icon} {st.title}
)}
{setSplitMode(false);setSplitTabs([]);flash("Split closed — tabs merged")}} style={{width:22,height:22,borderRadius:R.sm,border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:c.textTer,marginBottom:2}}>
Danny Christensen, P.E.
Qualifications
Licensed Professional Engineer, California #C-84521.
25 years of experience in signage valuation and permit economics.
Methodology
Income approach using comparable signage-rights transactions with discount rates of 8-12%.
>}
{/* ═══ RIGHT PANEL — V7.4: Simplified Ask ═══ */}
{rightOpen&&
{const sX=e.clientX,sW=rightWidth;const m=ev=>setRightWidth(Math.max(240,Math.min(450,sW-(ev.clientX-sX))));const u=()=>{document.removeEventListener("mousemove",m);document.removeEventListener("mouseup",u)};document.addEventListener("mousemove",m);document.addEventListener("mouseup",u)}}/>
{activeTab.type!=="utility"&&setRightTab("comments")} style={{flex:1,padding:"7px 0",border:"none",cursor:"pointer",backgroundColor:rightTab==="comments"?c.bgPanelAlt:c.bgInput,color:rightTab==="comments"?c.accentBtn:c.textTer,fontSize:10.5,fontWeight:rightTab==="comments"?650:450,fontFamily:font.sans,borderBottom:rightTab==="comments"?`2px solid ${c.accentBtn}`:"2px solid transparent",display:"flex",alignItems:"center",justifyContent:"center",gap:3}}>Comments ({openC.length}) }
setRightTab("send")} style={{flex:1,padding:"7px 0",border:"none",cursor:"pointer",backgroundColor:rightTab==="send"?c.bgPanel:c.bgInput,color:rightTab==="send"?c.accentBtn:c.textTer,fontSize:10.5,fontWeight:rightTab==="send"?650:450,fontFamily:font.sans,borderBottom:rightTab==="send"?`2px solid ${c.accentBtn}`:"2px solid transparent",display:"flex",alignItems:"center",justifyContent:"center",gap:3}}>Ask {agent.name}
setRightOpen(false)} style={{width:26,border:"none",cursor:"pointer",backgroundColor:"transparent",display:"flex",alignItems:"center",justifyContent:"center",color:c.textTer}}>
{/* Comments tab — preserved */}
{rightTab==="comments"&&
{newCm&&
{newCm.text&&
"{newCm.text.slice(0,80)}"
}
}{openC.length>0&&
Open ({openC.length})
}{openC.map(cm=>
)}{resolvedC.length>0&&Resolved ({resolvedC.length})
}{resolvedC.map(cm=>)}setNewCm({text:""})} style={{display:"flex",alignItems:"center",gap:5,padding:"7px 9px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:c.bgCard,cursor:"text"}}>Add general comment…
}
{/* V7.4: Simplified Ask panel */}
{rightTab==="send"&&<>
{/* Compact config — collapsible */}
{!askConfigCollapsed&&<>
{/* Context reference — single line */}
{activeTab.icon} {activeTab.title}
{/* Agent + Send in — same row */}
{e.stopPropagation();setAgentDrop(!agentDrop)}} style={{display:"flex",alignItems:"center",gap:4,padding:"5px 8px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:c.bgCard,cursor:"pointer",fontSize:11}}>{agent.letter} {agent.name}
{agentDrop&&
{agents.map((a,i)=>{setAgentIdx(i);setAgentDrop(false)}}>{a.letter} {a.name} )}
}
{e.stopPropagation();setAskChatDrop(!askChatDrop)}} style={{display:"flex",alignItems:"center",gap:4,padding:"5px 8px",borderRadius:R.sm,border:`1px solid ${c.border}`,backgroundColor:c.bgCard,cursor:"pointer",fontSize:11}}>● {askSendIn==="inline"?"Inline":askSendIn==="new"?"New chat":chats[askChatIdx]?.name}
{askChatDrop&&
{setAskSendIn("inline");setAskChatDrop(false)}}>● Inline {setAskSendIn("new");setAskChatDrop(false)}}>+ New chat
{chats.map((ch,i)=>
{setAskSendIn("existing");setAskChatIdx(i);setAskChatDrop(false)}}>{ch.name} )}
}
{/* Send with (context scope) */}
Send with
setAskScope("doc_only")}/>
setAskScope("all_comments")}/>
setAskScope("select")}/>
{askScope==="select"&&openC.length>0&&
{openC.map(cm=>
toggleCmSelect(cm.id)} style={{display:"flex",alignItems:"center",gap:5,padding:"3px 6px",borderRadius:R.sm,border:`1px solid ${selectedCmIds.has(cm.id)?c.accentBtn+"50":c.borderLight}`,marginBottom:3,backgroundColor:selectedCmIds.has(cm.id)?c.accentBtn+"06":c.bgPanelAlt,cursor:"pointer"}}>{cm.body}
)}
}
{/* Include extras */}
setAskIncludeClips(!askIncludeClips)} style={{accentColor:c.accentBtn,width:11,height:11}}/>Include session clips
setAskConfigCollapsed(true)} style={{fontSize:9,color:c.textTer,border:"none",backgroundColor:"transparent",cursor:"pointer",padding:0,marginBottom:4}}>▲ Collapse config
>}
{askConfigCollapsed&&
setAskConfigCollapsed(false)} style={{padding:"4px 8px",borderRadius:R.sm,backgroundColor:c.bgInput,fontSize:10,color:c.textTer,marginBottom:8,cursor:"pointer",display:"flex",alignItems:"center",gap:4}}>{activeTab.icon} {activeTab.title} → {agent.name} ▼
}
{/* Additional instructions */}
Additional instructions (optional)
{/* Inline agent response */}
{agentResponse&&
{agent.name} {agentResponse.time}
{agentResponse.text}
{openTab("chat",`${activeTab.title} follow-up`,"💬");setAgentResponse(null)}} style={{fontSize:11,color:c.accentBtn,cursor:"pointer",fontWeight:500}}>Continue in full chat →
}
{/* Bottom action bar */}
{askSendIn==="inline"?`Ask ${agent.name}`:askSendIn==="new"?"New Chat":"Open in Chat"}
setRightOpen(false)}>Cancel
>}
}
{/* V7.4: STATUS BAR — bigger, zoom slider, fixed under content */}
{Math.floor(sessionMinutes/60)}h {sessionMinutes%60}m
· {clipsCount} clips
· {tabs.length} tabs
{isNoteType&&<>
· Saved 2m ago >}
flash("New session started")}>New Session
·
{/* V7.4: Zoom slider */}
setZoomLevel(z=>Math.max(50,z-10))} style={{border:"none",backgroundColor:"transparent",cursor:"pointer",color:c.textTer,fontSize:12,padding:0,display:"flex"}}>
setZoomLevel(Number(e.target.value))} style={{width:70,height:3,accentColor:c.accentBtn,cursor:"pointer"}}/>
setZoomLevel(z=>Math.min(200,z+10))} style={{border:"none",backgroundColor:"transparent",cursor:"pointer",color:c.textTer,fontSize:12,padding:0,display:"flex"}}>
setZoomLevel(100)}>{zoomLevel}%
{/* ═══ RIGHT CHAT COLUMN (placeholder — will be replaced with Will's separate mockup) ═══ */}
{chatColumnOpen&&
Chat
setChatColumnOpen(false)} style={{border:"none",background:"none",cursor:"pointer",display:"flex",color:c.textTer}}>
Paramount damages
{[{from:"You",text:"What's the strongest argument against Sanli's 18% rate?",time:"2m"},{from:agent.name,text:"The lack of comparable transaction support. Three signage-rights deals averaged 8-12%. His rate is an unsupported outlier.",time:"1m"}].map((m,i)=>
)}
}
{/* ═══ V7.4: FLOATING COMMAND PALETTE ═══ */}
{fpOpen&&
{/* Top bar */}
{["chat","note","command"].map(m=>
setFpMode(m)} style={{padding:"3px 10px",borderRadius:R.full,border:"none",backgroundColor:fpMode===m?c.fpAccent+"25":"transparent",color:fpMode===m?c.fpAccent:c.fpTextDim,fontSize:11,fontWeight:fpMode===m?600:400,cursor:"pointer",fontFamily:font.sans,textTransform:"capitalize"}}>{m==="command"?"⌘ Command":m==="chat"?"💬 Chat":"📝 Note"} )}
{fpMode==="chat"&&setFpScreenCapture(!fpScreenCapture)} title="Include screenshot" style={{width:24,height:24,borderRadius:R.sm,border:`1px solid ${fpScreenCapture?c.fpAccent+"60":c.fpBorder}`,backgroundColor:fpScreenCapture?c.fpAccent+"15":"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"}}> }
setFpOpen(false)} style={{width:24,height:24,borderRadius:R.sm,border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center"}}>
{/* Chat mode */}
{fpMode==="chat"&&<>
{fpMessages.map(m=>
{m.from}
{m.time}
{m.from==="You"&&fpScreenCapture&&📸 }
{m.text}
)}
setFpInput(e.target.value)} onKeyDown={e=>{if(e.key==="Enter")fpSend()}} placeholder={`Ask ${agentName}…`} style={{flex:1,padding:"8px 12px",borderRadius:R.sm,border:`1px solid ${c.fpBorder}`,backgroundColor:c.fpInput,fontSize:12.5,fontFamily:font.sans,outline:"none",color:c.fpText}} autoFocus/>
{fpScreenCapture?"📸 Screen capture on":"Screen capture off"}
New Thread
flash("Opened in Q")}>Open in Q ↗
>}
{/* Note mode */}
{fpMode==="note"&&<>
Quick Note → saves to ELNOR Notes
Auto-saves to: Today Note
flash("Saved to notes")} style={{padding:"4px 10px",borderRadius:R.sm,border:`1px solid ${c.fpAccent}40`,backgroundColor:c.fpAccent+"10",color:c.fpAccent,fontSize:10.5,fontWeight:600,cursor:"pointer",fontFamily:font.sans}}>Save
>}
{/* Command mode */}
{fpMode==="command"&&<>
Quick Actions
{[{icon:
,label:"Watch my actions",desc:"Start demonstration mode (DOC3)",accent:true},{icon:,label:"New note",desc:"Create and open a new note"},{icon:,label:"Search knowledge graph",desc:"Query entity graph"},{icon:,label:"Run standing procedure…",desc:"Execute a saved automation"},{icon:,label:"Open Settings",desc:"Q Dashboard settings"}].map((cmd,i)=>{flash(cmd.label);setFpOpen(false)}} style={{display:"flex",alignItems:"center",gap:8,padding:"7px 10px",borderRadius:R.sm,cursor:"pointer",margin:"1px 2px"}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.fpInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>
{cmd.icon}
{cmd.accent&&
⌥W }
)}
Recent
{["Paramount damages strategy","Sanli Expert Report.pdf","Trial Prep Checklist"].map((item,i)=>{flash(`Open ${item}`);setFpOpen(false)}} style={{display:"flex",alignItems:"center",gap:8,padding:"5px 10px",borderRadius:R.sm,cursor:"pointer",margin:"1px 2px",fontSize:11.5,color:c.fpText}} onMouseEnter={e=>e.currentTarget.style.backgroundColor=c.fpInput} onMouseLeave={e=>e.currentTarget.style.backgroundColor="transparent"}>{item}
)}
⌥Space to toggle · Esc to close · ↑↓ to navigate · ↵ to select
>}
}
{/* Floating palette backdrop */}
{fpOpen&&
setFpOpen(false)} style={{position:"fixed",inset:0,backgroundColor:"rgba(0,0,0,0.3)",zIndex:9999}}/>}
);
}