Krish-05 commited on
Commit
a880e52
·
verified ·
1 Parent(s): 8fa0bd2

Update frontend/src/index.css

Browse files
Files changed (1) hide show
  1. frontend/src/index.css +0 -736
frontend/src/index.css CHANGED
@@ -1,736 +0,0 @@
1
- /* frontend/src/index.css */
2
- /* Tailwind CSS directives - MUST be at the very top */
3
- @tailwind base;
4
- @tailwind components;
5
- @tailwind utilities;
6
-
7
- /* Define custom CSS Variables */
8
- :root {
9
- --primary-color: #22c55e;
10
- --background-color: #fff6d7;
11
- --text-color: #333;
12
- --white-color: #ffffff;
13
- --border-color: #e5e7eb;
14
- --green-button-bg: #4CAF50; /* Specific green for buttons */
15
- --green-button-hover-bg: #45a049; /* Darker green on hover */
16
- --dark-green-text: #0dba4b; /* Specific dark green for history/settings text */
17
- --fontFamily: 'Inter', "Noto Sans", system-ui; /* Consolidated font families */
18
- --header-height: 65px; /* Define a variable for consistent header height if it's fixed */
19
- }
20
-
21
- /* Global Styles for full-page layout and font-family */
22
- html, body, #root, .app-wrapper {
23
- height: 100%;
24
- margin: 0;
25
- padding: 0;
26
- overflow: hidden; /* Critical for entire page to prevent unwanted scrolling */
27
- }
28
- body {
29
- font-family: var(--fontFamily), -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
30
- -webkit-font-smoothing: antialiased;
31
- -moz-osx-font-smoothing: grayscale;
32
- background-color: var(--white-color);
33
- color: var(--text-color);
34
- }
35
-
36
- /* Hide scrollbar for webkit browsers */
37
- .hide-scrollbar::-webkit-scrollbar {
38
- display: none;
39
- }
40
- /* For IE, Edge and Firefox */
41
- .hide-scrollbar {
42
- -ms-overflow-style: none; /* IE and Edge */
43
- scrollbar-width: none; /* Firefox */
44
- }
45
-
46
- /* --- App Wrapper (main application container) --- */
47
- .app-wrapper {
48
- display: flex;
49
- flex-direction: column;
50
- height: 100%; /* Ensure app-wrapper takes full height */
51
- }
52
-
53
- /* New: Container for Sidebar and Chat Content */
54
- .content-area {
55
- display: flex;
56
- flex-grow: 1; /* Allows content-area to take up remaining vertical space */
57
- /* Use calc to account for header height, as body has overflow:hidden */
58
- height: calc(100% - var(--header-height));
59
- overflow: hidden; /* Important to contain sidebar and chat and prevent this div from scrolling */
60
- }
61
-
62
- /* --- Header --- */
63
- .app-header {
64
- display: flex;
65
- justify-content: space-between;
66
- align-items: center;
67
- padding: 1rem 2rem;
68
- background-color: var(--white-color);
69
- border-bottom: 1px solid var(--border-color);
70
- position: sticky;
71
- top: 0;
72
- z-index: 1000;
73
- height: var(--header-height);
74
- box-sizing: border-box;
75
- flex-shrink: 0; /* Prevent header from shrinking */
76
- }
77
- .logo {
78
- display: flex;
79
- align-items: center;
80
- gap: 10px;
81
- }
82
- .logo img {
83
- height: 40px;
84
- width: auto;
85
- }
86
- .logo .brand-names {
87
- display: flex;
88
- flex-direction: column;
89
- line-height: 1.2;
90
- }
91
- .logo .main-brand {
92
- font-size: 1.8em;
93
- font-weight: bold;
94
- color: var(--text-color);
95
- }
96
- .logo .sub-brand {
97
- font-size: 0.9em;
98
- color: #777;
99
- }
100
- .app-header nav {
101
- display: flex;
102
- align-items: center;
103
- gap: 1rem;
104
- }
105
- .app-header nav a {
106
- text-decoration: none;
107
- color: var(--text-color);
108
- font-weight: 500;
109
- transition: color 0.3s ease;
110
- }
111
- .app-header nav a:hover {
112
- color: var(--primary-color);
113
- }
114
-
115
- /* Base button styles from root vars */
116
- .btn-primary {
117
- background-color: var(--primary-color);
118
- color: var(--white-color);
119
- border: none;
120
- padding: 0.5rem 1rem;
121
- border-radius: 6px;
122
- cursor: pointer;
123
- transition: background-color 0.3s ease;
124
- }
125
- .btn-primary:hover {
126
- background-color: #1e9d4e;
127
- }
128
-
129
- /* Specific Green Text Link (for Login) */
130
- .link-green {
131
- color: var(--green-button-bg) !important;
132
- font-weight: 600;
133
- transition: color 0.3s ease;
134
- }
135
- .link-green:hover {
136
- color: var(--green-button-hover-bg) !important;
137
- }
138
-
139
- /* Specific Solid Green Button (for Sign Up and Logout in Header) */
140
- .btn-solid-green {
141
- padding: 0.5rem 1rem;
142
- border: none;
143
- border-radius: 6px;
144
- cursor: pointer;
145
- font-size: 1em;
146
- font-weight: 600;
147
- text-align: center;
148
- text-decoration: none;
149
- display: inline-block;
150
- box-sizing: border-box;
151
- background-color: var(--green-button-bg);
152
- color: var(--white-color) !important;
153
- transition: background-color 0.3s ease, color 0.3s ease;
154
- }
155
- .btn-solid-green:hover {
156
- background-color: var(--green-button-hover-bg);
157
- color: var(--white-color) !important;
158
- }
159
- .btn-secondary {
160
- background-color: transparent;
161
- border: 1px solid var(--border-color);
162
- color: var(--text-color);
163
- padding: 0.5rem 1rem;
164
- border-radius: 6px;
165
- cursor: pointer;
166
- transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
167
- }
168
- .btn-secondary:hover {
169
- background-color: #f0f0f0;
170
- border-color: #c0c0c0;
171
- color: #555;
172
- }
173
-
174
- /* --- Auth Forms --- */
175
- .auth-container { width: 100%; display: flex; justify-content: center; }
176
- .auth-form { width: 100%; max-width: 400px; padding: 2rem; }
177
- .auth-form h2 { text-align: center; margin-bottom: 2rem; }
178
- .form-group { margin-bottom: 1.5rem; }
179
- .form-group label { display: block; margin-bottom: 0.5rem; }
180
- .form-group input {
181
- width: 100%;
182
- padding: 0.75rem;
183
- border: 1px solid var(--border-color);
184
- border-radius: 6px;
185
- background-color: #fafafa;
186
- box-sizing: border-box;
187
- }
188
- .forgot-password { text-align: right; margin-bottom: 1rem; font-size: 0.9em;}
189
- .error-message { color: red; text-align: center; margin-bottom: 1rem; }
190
- .auth-form .btn-primary { width: 100%; padding: 0.75rem; }
191
-
192
- /* REMOVED: .chat-layout as it's no longer the main flex container for sidebar and chat */
193
-
194
- /* Sidebar Styling */
195
- .sidebar {
196
- width: 260px;
197
- background-color: #f9fafb;
198
- padding: 1rem;
199
- border-right: 1px solid var(--border-color);
200
- display: flex;
201
- flex-direction: column;
202
- justify-content: space-between; /* Pushes content to top and bottom */
203
- flex-shrink: 0; /* Prevent sidebar from shrinking, CRITICAL for fixed sidebar */
204
- height: 100%; /* Make sidebar take full height of content-area */
205
- box-sizing: border-box;
206
- overflow-y: auto; /* Allow sidebar content to scroll if it exceeds its height */
207
- -ms-overflow-style: none; /* IE and Edge */
208
- scrollbar-width: none; /* Firefox */
209
- }
210
- .sidebar::-webkit-scrollbar { /* Hide scrollbar for webkit browsers */
211
- display: none;
212
- }
213
-
214
-
215
- /* sidebar-top now contains only the new chat button */
216
- .sidebar-top {
217
- display: flex;
218
- flex-direction: column;
219
- }
220
-
221
- /* New Chat Button Styling */
222
- .new-chat-btn {
223
- width: 100%;
224
- padding: 0.75rem;
225
- border: none;
226
- border-radius: 6px;
227
- background-color: var(--dark-green-text);
228
- color: var(--white-color);
229
- cursor: pointer;
230
- text-align: left;
231
- font-weight: 500;
232
- font-size: 1rem;
233
- line-height: 1.5rem;
234
- display: flex;
235
- align-items: center;
236
- gap: 0.5rem;
237
- transition: background-color 0.3s ease;
238
- margin-bottom: 1rem; /* Space below the button */
239
- }
240
- .new-chat-btn:hover {
241
- background-color: var(--green-button-hover-bg);
242
- }
243
- .new-chat-btn .plus-icon {
244
- font-size: 1.2rem;
245
- font-weight: bold;
246
- }
247
-
248
- /* sidebar-bottom will contain the nav links and be pushed to the bottom */
249
- .sidebar-bottom {
250
- display: flex;
251
- flex-direction: column;
252
- gap: 0.5rem;
253
- margin-top: auto; /* This pushes the nav section to the bottom */
254
- }
255
-
256
- /* Styling for History and Settings links */
257
- .sidebar-nav-link {
258
- display: flex;
259
- align-items: center;
260
- gap: 0.5rem;
261
- padding: 0.75rem;
262
- text-decoration: none;
263
- color: var(--dark-green-text);
264
- border-radius: 6px;
265
- background: transparent; /* Explicitly remove background */
266
- border: none;
267
- width: 100%;
268
- font-weight: 500;
269
- font-size: 1rem;
270
- line-height: 1.5rem;
271
- transition: background-color 0.3s ease, color 0.3s ease;
272
- }
273
- .sidebar-nav-link:hover {
274
- background-color: transparent; /* Ensure no background on hover */
275
- color: var(--green-button-hover-bg); /* Darker green on hover for text */
276
- }
277
- .sidebar-nav-link.active {
278
- background-color: transparent; /* Ensure no background when active */
279
- color: var(--dark-green-text); /* Keep dark green text when active */
280
- }
281
-
282
- /* New: Styling for the container that holds ChatInterface */
283
- .chat-content-container {
284
- flex-grow: 1; /* Allows chat content to take all remaining width */
285
- display: flex;
286
- flex-direction: column;
287
- background-color: #f9f9f9;
288
- height: 100%; /* Ensures it takes full height of content-area */
289
- box-sizing: border-box;
290
- }
291
-
292
-
293
- /* Main chat content area (now within chat-content-container) */
294
- .chat-main { /* This class is still relevant for ChatInterface's internal layout */
295
- flex-grow: 1;
296
- display: flex;
297
- flex-direction: column;
298
- justify-content: space-between;
299
- height: 100%; /* Ensure it takes full height of its parent (.chat-content-container) */
300
- box-sizing: border-box;
301
- }
302
-
303
- /* Chat Messages Area */
304
- .chat-messages {
305
- flex-grow: 1; /* Allow messages to take available space and push input down */
306
- overflow-y: auto; /* Enable scrolling for messages */
307
- padding: 20px;
308
- display: flex;
309
- flex-direction: column;
310
- gap: 15px; /* Spacing between message wrappers */
311
- }
312
-
313
- /* Empty Chat Placeholder */
314
- .empty-chat-placeholder {
315
- text-align: center;
316
- padding: 50px;
317
- color: #666;
318
- flex-grow: 1; /* Pushes content to the bottom if few messages */
319
- display: flex;
320
- flex-direction: column;
321
- justify-content: center;
322
- align-items: center;
323
- }
324
- .empty-chat-placeholder h1 {
325
- font-size: 2.5em;
326
- margin-bottom: 10px;
327
- color: #333;
328
- }
329
- .empty-chat-placeholder p {
330
- font-size: 1.1em;
331
- line-height: 1.6;
332
- }
333
- .no-history-message { /* New style for when history is empty */
334
- text-align: center;
335
- color: #999;
336
- font-style: italic;
337
- margin-top: 20px;
338
- }
339
-
340
- /* Message Wrapper (contains avatar and bubble) */
341
- .message-wrapper {
342
- display: flex; /* Use flexbox for layout of avatar and bubble */
343
- align-items: flex-start; /* Align items to the top */
344
- max-width: 100%; /* Ensure it doesn't overflow */
345
- }
346
-
347
- /* Specific styles for user messages (align to right) */
348
- .message-wrapper.user {
349
- justify-content: flex-end; /* Push user messages to the right */
350
- flex-direction: row-reverse; /* Put avatar on the right for user */
351
- }
352
-
353
- /* Chat Avatar Styling */
354
- .chat-avatar {
355
- font-size: 24px; /* Still useful for user emoji */
356
- padding: 8px;
357
- border-radius: 50%;
358
- background-color: #e0e0e0; /* Default background for avatar circle */
359
- min-width: 40px;
360
- height: 40px;
361
- display: flex;
362
- justify-content: center;
363
- align-items: center;
364
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
365
- /* Margins for spacing */
366
- margin-right: 10px; /* Default for assistant avatar */
367
- overflow: hidden; /* Crucial to clip image if it's larger than the circle */
368
- }
369
-
370
- /* Adjust margin for user avatar (since row-reverse) */
371
- .message-wrapper.user .chat-avatar {
372
- margin-left: 10px;
373
- margin-right: 0;
374
- }
375
-
376
- /* Style for the actual image inside the avatar div */
377
- .chat-avatar .avatar-image {
378
- width: 100%; /* Make image fill the avatar div */
379
- height: 100%; /* Make image fill the avatar div */
380
- object-fit: cover; /* Crop and cover the area without distortion */
381
- border-radius: 50%; /* Ensure the image itself is also rounded */
382
- }
383
-
384
- /* Message Bubble Styling */
385
- .message-bubble {
386
- padding: 12px 18px;
387
- border-radius: 20px;
388
- max-width: 70%; /* Limit message width */
389
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
390
- white-space: pre-wrap; /* This will make '\n' characters create new lines */
391
- word-break: break-word; /* Ensure long words break within the bubble */
392
- overflow-wrap: break-word; /* Modern equivalent */
393
- }
394
-
395
- /* Specific styling for assistant bubbles */
396
- .message-wrapper.assistant .message-bubble {
397
- background-color: #DFE3E8; /* Assistant background color */
398
- border-bottom-left-radius: 5px; /* Pointy bottom-left for assistant */
399
- margin-right: auto; /* Push to left, next to sidebar */
400
- color: var(--text-color); /* Default text color for assistant */
401
- }
402
-
403
- /* Specific styling for user bubbles */
404
- .message-wrapper.user .message-bubble {
405
- background-color: #4CAF50; /* User background color: Green */
406
- color: #ffffff; /* User text color: White */
407
- border-bottom-right-radius: 5px; /* Pointy bottom-right for user */
408
- margin-left: auto; /* Push to right */
409
- }
410
-
411
- /* Blinking Cursor */
412
- .blinking-cursor {
413
- animation: blink 1s step-end infinite;
414
- display: inline-block; /* Essential for it to be visible next to text */
415
- width: 0.5em; /* Give it a small width */
416
- background-color: var(--text-color);
417
- }
418
- @keyframes blink {
419
- from, to { opacity: 1; }
420
- 50% { opacity: 0; }
421
- }
422
-
423
- /* Chat Input Area */
424
- .chat-input-area {
425
- padding: 20px;
426
- border-top: 1px solid #eee;
427
- background-color: #fff;
428
- }
429
- .chat-form {
430
- display: flex;
431
- gap: 10px;
432
- }
433
- .chat-form input[type="text"] {
434
- flex-grow: 1;
435
- padding: 12px;
436
- border: 1px solid #ccc;
437
- border-radius: 25px;
438
- font-size: 16px;
439
- outline: none;
440
- background-color: #fafafa;
441
- }
442
- .chat-form button {
443
- padding: 12px 20px;
444
- background-color: var(--primary-color);
445
- color: var(--white-color);
446
- border: none;
447
- border-radius: 6px;
448
- cursor: pointer;
449
- font-size: 16px;
450
- transition: background-color 0.2s;
451
- }
452
- .chat-form button:hover:not(:disabled) {
453
- background-color: #1e9d4e;
454
- }
455
- .chat-form button:disabled {
456
- background-color: #a0a0a0;
457
- cursor: not-allowed;
458
- }
459
-
460
- /* Voice input specific styles */
461
- .voice-input-container {
462
- display: flex;
463
- align-items: center;
464
- gap: 0.5rem;
465
- }
466
- .voice-record-btn {
467
- padding: 0.5rem;
468
- border-radius: 50%;
469
- background-color: #ef4444; /* Red color for record button */
470
- color: white;
471
- border: none;
472
- cursor: pointer;
473
- display: flex;
474
- align-items: center;
475
- justify-content: center;
476
- width: 40px; /* Make it a perfect circle */
477
- height: 40px;
478
- transition: background-color 0.2s;
479
- }
480
- .voice-record-btn:hover:not(:disabled) {
481
- background-color: #dc2626; /* Darker red on hover */
482
- }
483
- .voice-record-btn.recording {
484
- background-color: #f87171; /* Lighter red when recording */
485
- animation: pulse 1.5s infinite; /* Add a pulse animation when recording */
486
- }
487
- @keyframes pulse {
488
- 0% { transform: scale(1); box-shadow: 0 0 0 0 rgba(248, 113, 113, 0.7); }
489
- 70% { transform: scale(1.1); box-shadow: 0 0 0 10px rgba(248, 113, 113, 0); }
490
- 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(248, 113, 113, 0); }
491
- }
492
- .sound-wave {
493
- flex-grow: 1; /* Allow visualizer to take available space */
494
- height: 40px; /* Adjust height as needed */
495
- margin-left: 0.5rem;
496
- }
497
-
498
- /* --- History Page Styles --- */
499
- .history-title {
500
- color: var(--text-color);
501
- margin-bottom: 20px;
502
- font-size: 24px;
503
- padding: 0 20px;
504
- margin-top: 20px;
505
- }
506
- .history-list {
507
- list-style: none;
508
- padding: 0 20px;
509
- }
510
- .history-item {
511
- background-color: #fff;
512
- border-radius: 8px;
513
- padding: 15px 20px;
514
- margin-bottom: 10px;
515
- display: flex;
516
- align-items: center;
517
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
518
- cursor: pointer;
519
- transition: background-color 0.2s ease-in-out;
520
- }
521
- .history-item:hover {
522
- background-color: #e9ecef;
523
- }
524
- .history-icon {
525
- font-size: 24px;
526
- margin-right: 15px;
527
- }
528
- .history-details {
529
- flex-grow: 1;
530
- }
531
- .history-prompt {
532
- font-weight: bold;
533
- color: #555;
534
- margin-bottom: 5px;
535
- }
536
- .history-date {
537
- font-size: 0.85em;
538
- color: #888;
539
- }
540
-
541
- /* Conversation View Specific Styles */
542
- .conversation-view {
543
- background-color: #fff;
544
- border-radius: 8px;
545
- padding: 20px;
546
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
547
- }
548
- .back-button {
549
- background-color: #007bff;
550
- color: white;
551
- border: none;
552
- padding: 10px 15px;
553
- border-radius: 5px;
554
- cursor: pointer;
555
- margin-bottom: 15px;
556
- font-size: 16px;
557
- transition: background-color 0.2s ease-in-out;
558
- }
559
- .back-button:hover {
560
- background-color: #0056b3;
561
- }
562
- .conversation-title {
563
- color: #333;
564
- margin-bottom: 20px;
565
- font-size: 20px;
566
- border-bottom: 1px solid #eee;
567
- padding-bottom: 10px;
568
- }
569
- .messages-list {
570
- max-height: 500px; /* Limit height and enable scrolling for messages */
571
- overflow-y: auto;
572
- padding-right: 10px; /* For scrollbar spacing */
573
- display: flex;
574
- flex-direction: column;
575
- }
576
- .message-item {
577
- margin-bottom: 15px;
578
- padding: 10px 15px;
579
- border-radius: 8px;
580
- max-width: 80%;
581
- clear: both; /* Good for floating elements, though flexbox often handles this */
582
- }
583
- .message-item.user {
584
- background-color: #dcf8c6; /* Light green for user messages */
585
- align-self: flex-end; /* Align to the right in a flex container */
586
- margin-left: auto; /* Push to the right */
587
- }
588
- .message-item.chatbot { /* Using .chatbot from history.css, convert to .assistant where needed in JSX */
589
- background-color: #e2e2e2; /* Light grey for chatbot messages */
590
- align-self: flex-start; /* Align to the left */
591
- margin-right: auto; /* Push to the left */
592
- }
593
- .message-sender {
594
- font-weight: bold;
595
- margin-bottom: 5px;
596
- font-size: 0.9em;
597
- }
598
- .message-item.user .message-sender {
599
- color: #3d8c1c; /* Darker green for user sender */
600
- }
601
- .message-item.chatbot .message-sender {
602
- color: #555;
603
- }
604
- .message-content {
605
- font-size: 1em;
606
- line-height: 1.4;
607
- word-wrap: break-word; /* Ensure long words wrap */
608
- white-space: pre-wrap; /* Ensure newlines are respected in history view */
609
- }
610
- .message-timestamp {
611
- font-size: 0.75em;
612
- color: #999;
613
- margin-top: 5px;
614
- text-align: right;
615
- }
616
-
617
- /* Responsive adjustments */
618
- @media (max-width: 768px) {
619
- .app-header {
620
- flex-direction: column;
621
- align-items: flex-start;
622
- padding: 1rem;
623
- gap: 10px;
624
- height: auto; /* Allow header to expand if content wraps */
625
- }
626
- .app-header nav {
627
- flex-wrap: wrap;
628
- justify-content: center;
629
- width: 100%;
630
- gap: 10px;
631
- }
632
- .content-area { /* Adjust content area for mobile */
633
- flex-direction: column;
634
- height: calc(100% - var(--header-height));
635
- }
636
- .sidebar {
637
- width: 100%;
638
- border-right: none;
639
- border-bottom: 1px solid var(--border-color);
640
- padding: 10px;
641
- flex-direction: row; /* Sidebar items in a row for mobile */
642
- justify-content: space-around; /* Distribute items evenly */
643
- align-items: center;
644
- height: auto; /* Allow sidebar height to be determined by content */
645
- overflow-x: auto; /* Allow horizontal scrolling if items overflow */
646
- overflow-y: hidden; /* Hide sidebar vertical scrollbar on mobile */
647
- }
648
- .sidebar-top {
649
- flex-direction: row; /* Align new chat button correctly */
650
- align-items: center;
651
- margin-bottom: 0; /* No margin-bottom on mobile to keep things compact */
652
- flex-grow: 1; /* Allow to take space for justify-content */
653
- justify-content: flex-start; /* Push new chat button to left */
654
- gap: 10px; /* Space between new chat and nav */
655
- }
656
- .new-chat-btn {
657
- width: auto;
658
- font-size: 0.9em;
659
- padding: 0.5rem 0.8rem;
660
- margin-bottom: 0; /* Remove margin-bottom on mobile */
661
- }
662
- .sidebar-bottom {
663
- margin-top: 0; /* Remove auto margin on mobile */
664
- flex-direction: row; /* Nav links in a row */
665
- gap: 10px;
666
- flex-grow: 1; /* Allow sidebar-bottom to take space */
667
- justify-content: flex-end; /* Push nav links to the right */
668
- }
669
- .sidebar-nav { /* Added this for mobile layout */
670
- display: flex;
671
- flex-direction: row;
672
- gap: 10px;
673
- }
674
- .sidebar-nav-link {
675
- padding: 0.5rem;
676
- font-size: 0.9em;
677
- flex-shrink: 0; /* Prevent links from shrinking too much */
678
- }
679
- .chat-main {
680
- height: 100%; /* Take remaining height from parent chat-layout */
681
- overflow-y: auto; /* Allow chat content to scroll */
682
- }
683
- .chat-messages {
684
- padding: 1rem;
685
- }
686
- .message-bubble {
687
- max-width: 85%;
688
- }
689
- .chat-input-area {
690
- padding: 1rem;
691
- }
692
- /* Adjustments for voice input on mobile if needed */
693
- .chat-form {
694
- flex-wrap: wrap; /* Allow input and buttons to wrap if screen is very small */
695
- }
696
- .chat-form input {
697
- width: 100%; /* Take full width */
698
- margin-bottom: 0.5rem; /* Space below input if it wraps */
699
- }
700
- .chat-form button {
701
- flex-grow: 1; /* Allow send button to take available space */
702
- }
703
- .voice-input-container {
704
- width: 100%;
705
- justify-content: center;
706
- }
707
- .voice-record-btn {
708
- flex-shrink: 0;
709
- }
710
- .sound-wave {
711
- flex-grow: 1;
712
- max-width: calc(100% - 60px); /* Adjust based on button size */
713
- }
714
- /* Mobile adjustments for History Page */
715
- .history-title {
716
- padding: 0 1rem;
717
- }
718
- .history-list {
719
- padding: 0 1rem;
720
- }
721
- .history-item {
722
- flex-direction: column; /* Stack details vertically on mobile */
723
- align-items: flex-start;
724
- padding: 0.8rem;
725
- }
726
- .history-details {
727
- width: 100%; /* Take full width when stacked */
728
- }
729
- .history-icon {
730
- margin-right: 0;
731
- margin-bottom: 0.5rem; /* Space below icon */
732
- }
733
- .history-date {
734
- text-align: left; /* Align date to left when stacked */
735
- }
736
- }