@@ -72,20 +72,20 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
7272
7373 < div className = "space-y-3" >
7474 < div >
75- < p className = "text-gray-300 text-sm mb-2" >
75+ < p className = "text-foreground text-sm mb-2" >
7676 This operation will perform a < span className = { `font-semibold ${ isHighRisk ? 'text-red-400' : 'text-yellow-400' } ` } > { operationType } </ span > query:
7777 </ p >
7878 { confirmationData ?. sqlQuery && (
79- < div className = "bg-gray-900 border border-gray-700 rounded p-3" >
80- < pre className = "text-sm font-mono text-gray-200 whitespace-pre-wrap break-words overflow-wrap-anywhere" >
79+ < div className = "bg-background border border-border rounded p-3 overflow-x-auto " >
80+ < pre className = "text-sm font-mono text-foreground whitespace-pre-wrap break-words overflow-wrap-anywhere" >
8181 < code className = "language-sql" > { confirmationData . sqlQuery } </ code >
8282 </ pre >
8383 </ div >
8484 ) }
8585 </ div >
8686
8787 < div className = { `${ isHighRisk ? 'bg-red-950/40 border-red-700/50' : 'bg-yellow-950/40 border-yellow-700/50' } border rounded p-3` } >
88- < p className = "text-sm text-gray-300 " >
88+ < p className = "text-sm text-foreground " >
8989 { isHighRisk ? (
9090 < >
9191 < span className = "font-semibold text-red-400" > ⚠️ WARNING:</ span > This operation may be irreversible and will permanently modify your database.
@@ -100,7 +100,7 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
100100 < Button
101101 variant = "outline"
102102 onClick = { onCancel }
103- className = "flex-1 bg-gray-800 border-gray-600 text-gray-300 hover:bg-gray-700 "
103+ className = "flex-1 bg-card border-border text-muted-foreground hover:bg-muted "
104104 data-testid = "confirmation-cancel-button"
105105 >
106106 Cancel
@@ -128,9 +128,9 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
128128 < div className = "px-6" data-testid = "user-message" >
129129 < div className = "flex justify-end gap-3 mb-6" >
130130 < div className = "flex-1 max-w-xl" >
131- < Card className = "bg-gray-700 border-gray-600 inline-block float-right" >
131+ < Card className = "bg-muted border-border inline-block float-right" >
132132 < CardContent className = "p-3" >
133- < p className = "text-gray-200 text-base leading-relaxed" > { content } </ p >
133+ < p className = "text-foreground text-base leading-relaxed" > { content } </ p >
134134 </ CardContent >
135135 </ Card >
136136 </ div >
@@ -158,7 +158,7 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
158158 </ AvatarFallback >
159159 </ Avatar >
160160 < div className = "flex-1 min-w-0" >
161- < Card className = { `bg-gray-800 ${ isValid ? 'border-purple-500/30' : 'border-yellow-500/30' } ` } >
161+ < Card className = { `bg-card ${ isValid ? 'border-purple-500/30' : 'border-yellow-500/30' } ` } >
162162 < CardContent className = "p-4" >
163163 < div className = "flex items-center gap-2 mb-2" >
164164 < Code className = { `w-4 h-4 ${ isValid ? 'text-purple-400' : 'text-yellow-400' } ` } />
@@ -168,22 +168,22 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
168168 </ div >
169169
170170 { hasSQL && (
171- < div className = "-mx-2 px-2" >
171+ < div className = "overflow-x-auto -mx-2 px-2" >
172172 < div className = "relative" >
173173 < Button
174174 variant = "ghost"
175175 size = "sm"
176176 onClick = { handleCopyQuery }
177- className = "absolute top-2 right-2 z-10 h-8 w-8 p-0 hover:bg-gray-800 "
177+ className = "absolute top-2 right-2 z-10 h-8 w-8 p-0 hover:bg-muted "
178178 title = { copied ? "Copied!" : "Copy query" }
179179 >
180180 { copied ? (
181181 < Check className = "w-4 h-4 text-green-400" />
182182 ) : (
183- < Copy className = "w-4 h-4 text-gray-400 " />
183+ < Copy className = "w-4 h-4 text-muted-foreground " />
184184 ) }
185185 </ Button >
186- < pre className = "bg-gray-900 text-gray-200 p-3 rounded text-sm mb-3 font-mono whitespace-pre-wrap break-words overflow-wrap-anywhere" >
186+ < pre className = "bg-background text-foreground p-3 rounded text-sm mb-3 w-fit min-w-full font-mono whitespace-pre-wrap break-words overflow-wrap-anywhere" >
187187 < code className = "language-sql" > { content } </ code >
188188 </ pre >
189189 </ div >
@@ -193,21 +193,21 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
193193 { ! isValid && (
194194 < div className = "space-y-2 text-sm" >
195195 { analysisInfo ?. explanation && (
196- < div className = "bg-gray-900 /50 p-2 rounded" >
196+ < div className = "bg-background /50 p-2 rounded" >
197197 < span className = "font-semibold text-yellow-400" > Explanation:</ span >
198- < p className = "text-gray-300 mt-1" > { analysisInfo . explanation } </ p >
198+ < p className = "text-foreground mt-1" > { analysisInfo . explanation } </ p >
199199 </ div >
200200 ) }
201201 { analysisInfo ?. missing && (
202- < div className = "bg-gray-900 /50 p-2 rounded" >
202+ < div className = "bg-background /50 p-2 rounded" >
203203 < span className = "font-semibold text-orange-400" > Missing Information:</ span >
204- < p className = "text-gray-300 mt-1" > { analysisInfo . missing } </ p >
204+ < p className = "text-foreground mt-1" > { analysisInfo . missing } </ p >
205205 </ div >
206206 ) }
207207 { analysisInfo ?. ambiguities && (
208- < div className = "bg-gray-900 /50 p-2 rounded" >
208+ < div className = "bg-background /50 p-2 rounded" >
209209 < span className = "font-semibold text-orange-400" > Ambiguities:</ span >
210- < p className = "text-gray-300 mt-1" > { analysisInfo . ambiguities } </ p >
210+ < p className = "text-foreground mt-1" > { analysisInfo . ambiguities } </ p >
211211 </ div >
212212 ) }
213213 </ div >
@@ -230,7 +230,7 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
230230 </ AvatarFallback >
231231 </ Avatar >
232232 < div className = "flex-1 min-w-0 max-w-full overflow-hidden" >
233- < Card className = "bg-gray-800 border-green-500/30 max-w-full" >
233+ < Card className = "bg-card border-green-500/30 max-w-full" >
234234 < CardContent className = "p-4 max-w-full overflow-hidden" >
235235 < div className = "flex items-center gap-2 mb-3" >
236236 < Database className = "w-4 h-4 text-green-400" />
@@ -241,22 +241,22 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
241241 </ div >
242242 { queryData && queryData . length > 0 && (
243243 < div className = "max-w-full overflow-hidden -mx-4 px-4" >
244- < div className = "overflow-x-auto overflow-y-auto max-h-96 border border-gray-700 rounded scrollbar-visible" style = { { maxWidth : '100%' } } >
244+ < div className = "overflow-x-auto overflow-y-auto max-h-96 border border-border rounded scrollbar-visible" style = { { maxWidth : '100%' } } >
245245 < table className = "text-sm border-collapse" data-testid = "results-table" style = { { width : '100%' , maxWidth : '100%' , tableLayout : 'auto' , display : 'table' } } >
246- < thead className = "sticky top-0 bg-gray-800 z-10" >
247- < tr className = "border-b border-gray-700 " >
246+ < thead className = "sticky top-0 bg-card z-10" >
247+ < tr className = "border-b border-border " >
248248 { Object . keys ( queryData [ 0 ] ) . map ( ( column ) => (
249- < th key = { column } className = "text-left px-3 py-2 text-gray-300 font-semibold bg-gray-800 break-words" style = { { maxWidth : '300px' , minWidth : '100px' } } >
249+ < th key = { column } className = "text-left px-3 py-2 text-muted-foreground font-semibold bg-card break-words" style = { { maxWidth : '300px' , minWidth : '100px' } } >
250250 { column }
251251 </ th >
252252 ) ) }
253253 </ tr >
254254 </ thead >
255255 < tbody >
256256 { queryData . map ( ( row , index ) => (
257- < tr key = { index } className = "border-b border-gray-700/50 hover:bg-gray-700/30 " >
257+ < tr key = { index } className = "border-b border-border hover:bg-muted " >
258258 { Object . values ( row ) . map ( ( value : any , cellIndex ) => (
259- < td key = { cellIndex } className = "px-3 py-2 text-gray-200 break-words" style = { { maxWidth : '300px' , minWidth : '100px' } } >
259+ < td key = { cellIndex } className = "px-3 py-2 text-foreground break-words" style = { { maxWidth : '300px' , minWidth : '100px' } } >
260260 { String ( value ) }
261261 </ td >
262262 ) ) }
@@ -285,7 +285,7 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
285285 </ AvatarFallback >
286286 </ Avatar >
287287 < div className = "flex-1 min-w-0" >
288- < div className = "text-gray-200 text-base leading-relaxed whitespace-pre-line" >
288+ < div className = "text-foreground text-base leading-relaxed whitespace-pre-line" >
289289 { content }
290290 </ div >
291291 </ div >
@@ -304,11 +304,11 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
304304 </ AvatarFallback >
305305 </ Avatar >
306306 < div className = "flex-1 min-w-0" >
307- < Card className = "bg-gray-800 border-purple-500/30 max-w-md" >
307+ < Card className = "bg-card border-purple-500/30 max-w-md" >
308308 < CardContent className = "p-4" >
309309 < div className = "space-y-3" >
310310 { steps ?. map ( ( step , index ) => (
311- < div key = { index } className = "flex items-center gap-3 text-sm text-gray-300 " >
311+ < div key = { index } className = "flex items-center gap-3 text-sm text-foreground " >
312312 < Badge variant = "outline" className = "p-1 w-6 h-6 flex items-center justify-center border-purple-400" >
313313 { step . icon === 'search' && < Search className = "w-3 h-3 text-purple-400" /> }
314314 { step . icon === 'database' && < Database className = "w-3 h-3 text-purple-400" /> }
@@ -321,7 +321,7 @@ const ChatMessage = ({ type, content, steps, queryData, analysisInfo, confirmati
321321 { progress !== undefined && (
322322 < div className = "mt-4" >
323323 < Progress value = { progress } className = "h-2" />
324- < p className = "text-xs text-gray-400 mt-1" > { progress } % complete</ p >
324+ < p className = "text-xs text-muted-foreground mt-1" > { progress } % complete</ p >
325325 </ div >
326326 ) }
327327 </ div >
0 commit comments