Muhammadidrees commited on
Commit
83284f2
·
verified ·
1 Parent(s): 4142c08

Update styles.css

Browse files
Files changed (1) hide show
  1. styles.css +477 -477
styles.css CHANGED
@@ -1,478 +1,478 @@
1
- * {
2
- margin: 0;
3
- padding: 0;
4
- box-sizing: border-box;
5
- }
6
-
7
- body {
8
- font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
9
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
10
- min-height: 100vh;
11
- display: flex;
12
- justify-content: center;
13
- align-items: center;
14
- padding: 20px;
15
- }
16
-
17
- .container {
18
- max-width: 900px;
19
- width: 100%;
20
- background: white;
21
- border-radius: 20px;
22
- box-shadow: 0 20px 60px rgba(0,0,0,0.3);
23
- overflow: hidden;
24
- }
25
-
26
- .header {
27
- background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
28
- color: white;
29
- padding: 30px;
30
- text-align: center;
31
- }
32
-
33
- .header h1 {
34
- font-size: 2em;
35
- margin-bottom: 10px;
36
- }
37
-
38
- .session-info {
39
- background: rgba(255,255,255,0.2);
40
- padding: 10px;
41
- border-radius: 10px;
42
- margin-top: 15px;
43
- font-size: 0.9em;
44
- }
45
-
46
- .session-id-display {
47
- background: rgba(0,0,0,0.2);
48
- padding: 8px;
49
- border-radius: 5px;
50
- margin-top: 10px;
51
- font-family: monospace;
52
- font-size: 0.85em;
53
- cursor: pointer;
54
- transition: background 0.3s;
55
- }
56
-
57
- .session-id-display:hover {
58
- background: rgba(0,0,0,0.3);
59
- }
60
-
61
- .voice-controls {
62
- display: flex;
63
- gap: 10px;
64
- justify-content: center;
65
- padding: 15px;
66
- background: rgba(255,255,255,0.1);
67
- margin-top: 15px;
68
- border-radius: 10px;
69
- }
70
-
71
- .voice-btn {
72
- padding: 10px 20px;
73
- border: 2px solid white;
74
- border-radius: 20px;
75
- background: transparent;
76
- color: white;
77
- cursor: pointer;
78
- transition: all 0.3s;
79
- font-weight: bold;
80
- display: flex;
81
- align-items: center;
82
- gap: 8px;
83
- }
84
-
85
- .voice-btn:hover {
86
- background: white;
87
- color: #667eea;
88
- }
89
-
90
- .voice-btn.active {
91
- background: #ff4444;
92
- border-color: #ff4444;
93
- animation: pulse 1.5s infinite;
94
- }
95
-
96
- @keyframes pulse {
97
- 0%, 100% { transform: scale(1); }
98
- 50% { transform: scale(1.05); }
99
- }
100
-
101
- .voice-indicator {
102
- width: 12px;
103
- height: 12px;
104
- border-radius: 50%;
105
- background: #4CAF50;
106
- display: inline-block;
107
- }
108
-
109
- .voice-indicator.recording {
110
- background: #ff4444;
111
- animation: blink 1s infinite;
112
- }
113
-
114
- @keyframes blink {
115
- 0%, 100% { opacity: 1; }
116
- 50% { opacity: 0.3; }
117
- }
118
-
119
- .chat-container {
120
- height: 500px;
121
- overflow-y: auto;
122
- padding: 20px;
123
- background: #f8f9fa;
124
- }
125
-
126
- .message {
127
- margin-bottom: 20px;
128
- display: flex;
129
- animation: slideIn 0.3s ease;
130
- }
131
-
132
- @keyframes slideIn {
133
- from {
134
- opacity: 0;
135
- transform: translateY(10px);
136
- }
137
- to {
138
- opacity: 1;
139
- transform: translateY(0);
140
- }
141
- }
142
-
143
- .message.user {
144
- justify-content: flex-end;
145
- }
146
-
147
- .message-content {
148
- max-width: 70%;
149
- padding: 15px 20px;
150
- border-radius: 20px;
151
- word-wrap: break-word;
152
- white-space: pre-wrap;
153
- position: relative;
154
- }
155
-
156
- .message.doctor .message-content {
157
- background: white;
158
- color: #333;
159
- border: 2px solid #667eea;
160
- border-radius: 20px 20px 20px 5px;
161
- }
162
-
163
- .message.user .message-content {
164
- background: #667eea;
165
- color: white;
166
- border-radius: 20px 20px 5px 20px;
167
- }
168
-
169
- .speaker-icon {
170
- position: absolute;
171
- bottom: 8px;
172
- right: 8px;
173
- cursor: pointer;
174
- font-size: 18px;
175
- opacity: 0.6;
176
- transition: opacity 0.3s;
177
- }
178
-
179
- .speaker-icon:hover {
180
- opacity: 1;
181
- }
182
-
183
- .speaker-icon.speaking {
184
- animation: speakPulse 0.5s infinite;
185
- }
186
-
187
- @keyframes speakPulse {
188
- 0%, 100% { transform: scale(1); }
189
- 50% { transform: scale(1.2); }
190
- }
191
-
192
- .input-area {
193
- padding: 20px;
194
- background: white;
195
- border-top: 2px solid #e0e0e0;
196
- display: flex;
197
- gap: 10px;
198
- }
199
-
200
- .input-area input {
201
- flex: 1;
202
- padding: 15px;
203
- border: 2px solid #e0e0e0;
204
- border-radius: 25px;
205
- font-size: 16px;
206
- transition: border 0.3s;
207
- }
208
-
209
- .input-area input:focus {
210
- outline: none;
211
- border-color: #667eea;
212
- }
213
-
214
- .btn {
215
- padding: 15px 30px;
216
- border: none;
217
- border-radius: 25px;
218
- font-size: 16px;
219
- cursor: pointer;
220
- transition: all 0.3s;
221
- font-weight: bold;
222
- }
223
-
224
- .btn-primary {
225
- background: #667eea;
226
- color: white;
227
- }
228
-
229
- .btn-primary:hover {
230
- background: #5568d3;
231
- transform: translateY(-2px);
232
- box-shadow: 0 5px 15px rgba(102, 126, 234, 0.4);
233
- }
234
-
235
- .btn-secondary {
236
- background: #6c757d;
237
- color: white;
238
- }
239
-
240
- .btn-secondary:hover {
241
- background: #5a6268;
242
- }
243
-
244
- .btn-success {
245
- background: #28a745;
246
- color: white;
247
- }
248
-
249
- .btn-success:hover {
250
- background: #218838;
251
- }
252
-
253
- .btn-info {
254
- background: #17a2b8;
255
- color: white;
256
- }
257
-
258
- .btn-info:hover {
259
- background: #138496;
260
- }
261
-
262
- .btn-voice {
263
- background: #ff6b6b;
264
- color: white;
265
- min-width: 60px;
266
- }
267
-
268
- .btn-voice:hover {
269
- background: #ff5252;
270
- }
271
-
272
- .btn-voice.recording {
273
- background: #f44336;
274
- animation: pulse 1.5s infinite;
275
- }
276
-
277
- .controls {
278
- padding: 15px 20px;
279
- background: #f8f9fa;
280
- display: flex;
281
- gap: 10px;
282
- justify-content: center;
283
- flex-wrap: wrap;
284
- }
285
-
286
- .loading {
287
- display: none;
288
- text-align: center;
289
- padding: 10px;
290
- color: #667eea;
291
- font-style: italic;
292
- }
293
-
294
- .loading.active {
295
- display: block;
296
- }
297
-
298
- .modal {
299
- display: none;
300
- position: fixed;
301
- top: 0;
302
- left: 0;
303
- width: 100%;
304
- height: 100%;
305
- background: rgba(0,0,0,0.7);
306
- justify-content: center;
307
- align-items: center;
308
- z-index: 1000;
309
- }
310
-
311
- .modal.active {
312
- display: flex;
313
- }
314
-
315
- .modal-content {
316
- background: white;
317
- padding: 30px;
318
- border-radius: 15px;
319
- max-width: 800px;
320
- max-height: 80vh;
321
- overflow-y: auto;
322
- width: 90%;
323
- }
324
-
325
- .modal-content pre {
326
- white-space: pre-wrap;
327
- font-family: 'Segoe UI', sans-serif;
328
- line-height: 1.6;
329
- }
330
-
331
- .close-btn {
332
- float: right;
333
- font-size: 28px;
334
- cursor: pointer;
335
- color: #999;
336
- }
337
-
338
- .close-btn:hover {
339
- color: #333;
340
- }
341
-
342
- .history-list {
343
- max-height: 400px;
344
- overflow-y: auto;
345
- margin-top: 20px;
346
- }
347
-
348
- .history-item {
349
- padding: 15px;
350
- border: 2px solid #e0e0e0;
351
- border-radius: 10px;
352
- margin-bottom: 10px;
353
- cursor: pointer;
354
- transition: all 0.3s;
355
- }
356
-
357
- .history-item:hover {
358
- border-color: #667eea;
359
- background: #f8f9fa;
360
- transform: translateX(5px);
361
- }
362
-
363
- .history-item h4 {
364
- color: #667eea;
365
- margin-bottom: 5px;
366
- }
367
-
368
- .history-item p {
369
- font-size: 0.9em;
370
- color: #666;
371
- margin: 5px 0;
372
- }
373
-
374
- .pdf-badge {
375
- display: inline-block;
376
- background: #28a745;
377
- color: white;
378
- padding: 3px 8px;
379
- border-radius: 5px;
380
- font-size: 0.8em;
381
- margin-left: 10px;
382
- }
383
-
384
- .load-session-form {
385
- margin: 20px 0;
386
- display: flex;
387
- gap: 10px;
388
- }
389
-
390
- .load-session-form input {
391
- flex: 1;
392
- padding: 10px;
393
- border: 2px solid #e0e0e0;
394
- border-radius: 10px;
395
- font-family: monospace;
396
- }
397
-
398
- .notification {
399
- position: fixed;
400
- top: 20px;
401
- right: 20px;
402
- padding: 15px 25px;
403
- border-radius: 10px;
404
- color: white;
405
- font-weight: bold;
406
- z-index: 2000;
407
- animation: slideInRight 0.3s ease;
408
- display: none;
409
- }
410
-
411
- .notification.success {
412
- background: #28a745;
413
- }
414
-
415
- .notification.error {
416
- background: #dc3545;
417
- }
418
-
419
- .notification.info {
420
- background: #17a2b8;
421
- }
422
-
423
- .notification.active {
424
- display: block;
425
- }
426
-
427
- @keyframes slideInRight {
428
- from {
429
- transform: translateX(100%);
430
- }
431
- to {
432
- transform: translateX(0);
433
- }
434
- }
435
-
436
- .pdf-viewer {
437
- width: 100%;
438
- height: 600px;
439
- border: none;
440
- border-radius: 10px;
441
- margin-top: 20px;
442
- }
443
-
444
- .summary-actions {
445
- display: flex;
446
- gap: 10px;
447
- margin-top: 20px;
448
- justify-content: center;
449
- }
450
-
451
- .pdf-download-info {
452
- text-align: center;
453
- padding: 15px;
454
- background: #e8f5e9;
455
- border-radius: 10px;
456
- margin-top: 15px;
457
- color: #2e7d32;
458
- }
459
-
460
- .pdf-icon {
461
- font-size: 48px;
462
- margin-bottom: 10px;
463
- }
464
-
465
- .voice-status {
466
- text-align: center;
467
- padding: 10px;
468
- background: #e3f2fd;
469
- border-radius: 10px;
470
- margin: 10px 0;
471
- font-size: 0.9em;
472
- color: #1565c0;
473
- display: none;
474
- }
475
-
476
- .voice-status.active {
477
- display: block;
478
  }
 
1
+ * {
2
+ margin: 0;
3
+ padding: 0;
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ body {
8
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
9
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
10
+ min-height: 100vh;
11
+ display: flex;
12
+ justify-content: center;
13
+ align-items: center;
14
+ padding: 20px;
15
+ }
16
+
17
+ .container {
18
+ max-width: 900px;
19
+ width: 100%;
20
+ background: white;
21
+ border-radius: 20px;
22
+ box-shadow: 0 20px 60px rgba(0,0,0,0.3);
23
+ overflow: hidden;
24
+ }
25
+
26
+ .header {
27
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
28
+ color: white;
29
+ padding: 30px;
30
+ text-align: center;
31
+ }
32
+
33
+ .header h1 {
34
+ font-size: 2em;
35
+ margin-bottom: 10px;
36
+ }
37
+
38
+ .session-info {
39
+ background: rgba(255,255,255,0.2);
40
+ padding: 10px;
41
+ border-radius: 10px;
42
+ margin-top: 15px;
43
+ font-size: 0.9em;
44
+ }
45
+
46
+ .session-id-display {
47
+ background: rgba(0,0,0,0.2);
48
+ padding: 8px;
49
+ border-radius: 5px;
50
+ margin-top: 10px;
51
+ font-family: monospace;
52
+ font-size: 0.85em;
53
+ cursor: pointer;
54
+ transition: background 0.3s;
55
+ }
56
+
57
+ .session-id-display:hover {
58
+ background: rgba(0,0,0,0.3);
59
+ }
60
+
61
+ .voice-controls {
62
+ display: flex;
63
+ gap: 10px;
64
+ justify-content: center;
65
+ padding: 15px;
66
+ background: rgba(255,255,255,0.1);
67
+ margin-top: 15px;
68
+ border-radius: 10px;
69
+ }
70
+
71
+ .voice-btn {
72
+ padding: 10px 20px;
73
+ border: 2px solid white;
74
+ border-radius: 20px;
75
+ background: transparent;
76
+ color: white;
77
+ cursor: pointer;
78
+ transition: all 0.3s;
79
+ font-weight: bold;
80
+ display: flex;
81
+ align-items: center;
82
+ gap: 8px;
83
+ }
84
+
85
+ .voice-btn:hover {
86
+ background: white;
87
+ color: #667eea;
88
+ }
89
+
90
+ .voice-btn.active {
91
+ background: #ff4444;
92
+ border-color: #ff4444;
93
+ animation: pulse 1.5s infinite;
94
+ }
95
+
96
+ @keyframes pulse {
97
+ 0%, 100% { transform: scale(1); }
98
+ 50% { transform: scale(1.05); }
99
+ }
100
+
101
+ .voice-indicator {
102
+ width: 12px;
103
+ height: 12px;
104
+ border-radius: 50%;
105
+ background: #4CAF50;
106
+ display: inline-block;
107
+ }
108
+
109
+ .voice-indicator.recording {
110
+ background: #ff4444;
111
+ animation: blink 1s infinite;
112
+ }
113
+
114
+ @keyframes blink {
115
+ 0%, 100% { opacity: 1; }
116
+ 50% { opacity: 0.3; }
117
+ }
118
+
119
+ .chat-container {
120
+ height: 500px;
121
+ overflow-y: auto;
122
+ padding: 20px;
123
+ background: #f8f9fa;
124
+ }
125
+
126
+ .message {
127
+ margin-bottom: 20px;
128
+ display: flex;
129
+ animation: slideIn 0.3s ease;
130
+ }
131
+
132
+ @keyframes slideIn {
133
+ from {
134
+ opacity: 0;
135
+ transform: translateY(10px);
136
+ }
137
+ to {
138
+ opacity: 1;
139
+ transform: translateY(0);
140
+ }
141
+ }
142
+
143
+ .message.user {
144
+ justify-content: flex-end;
145
+ }
146
+
147
+ .message-content {
148
+ max-width: 70%;
149
+ padding: 15px 20px;
150
+ border-radius: 20px;
151
+ word-wrap: break-word;
152
+ white-space: pre-wrap;
153
+ position: relative;
154
+ }
155
+
156
+ .message.doctor .message-content {
157
+ background: white;
158
+ color: #333;
159
+ border: 2px solid #667eea;
160
+ border-radius: 20px 20px 20px 5px;
161
+ }
162
+
163
+ .message.user .message-content {
164
+ background: #667eea;
165
+ color: white;
166
+ border-radius: 20px 20px 5px 20px;
167
+ }
168
+
169
+ .speaker-icon {
170
+ position: absolute;
171
+ bottom: 8px;
172
+ right: 8px;
173
+ cursor: pointer;
174
+ font-size: 18px;
175
+ opacity: 0.6;
176
+ transition: opacity 0.3s;
177
+ }
178
+
179
+ .speaker-icon:hover {
180
+ opacity: 1;
181
+ }
182
+
183
+ .speaker-icon.speaking {
184
+ animation: speakPulse 0.5s infinite;
185
+ }
186
+
187
+ @keyframes speakPulse {
188
+ 0%, 100% { transform: scale(1); }
189
+ 50% { transform: scale(1.2); }
190
+ }
191
+
192
+ .input-area {
193
+ padding: 20px;
194
+ background: white;
195
+ border-top: 2px solid #e0e0e0;
196
+ display: flex;
197
+ gap: 10px;
198
+ }
199
+
200
+ .input-area input {
201
+ flex: 1;
202
+ padding: 15px;
203
+ border: 2px solid #e0e0e0;
204
+ border-radius: 25px;
205
+ font-size: 16px;
206
+ transition: border 0.3s;
207
+ }
208
+
209
+ .input-area input:focus {
210
+ outline: none;
211
+ border-color: #667eea;
212
+ }
213
+
214
+ .btn {
215
+ padding: 15px 30px;
216
+ border: none;
217
+ border-radius: 25px;
218
+ font-size: 16px;
219
+ cursor: pointer;
220
+ transition: all 0.3s;
221
+ font-weight: bold;
222
+ }
223
+
224
+ .btn-primary {
225
+ background: #667eea;
226
+ color: white;
227
+ }
228
+
229
+ .btn-primary:hover {
230
+ background: #5568d3;
231
+ transform: translateY(-2px);
232
+ box-shadow: 0 5px 15px rgba(102, 126, 234, 0.4);
233
+ }
234
+
235
+ .btn-secondary {
236
+ background: #6c757d;
237
+ color: white;
238
+ }
239
+
240
+ .btn-secondary:hover {
241
+ background: #5a6268;
242
+ }
243
+
244
+ .btn-success {
245
+ background: #28a745;
246
+ color: white;
247
+ }
248
+
249
+ .btn-success:hover {
250
+ background: #218838;
251
+ }
252
+
253
+ .btn-info {
254
+ background: #17a2b8;
255
+ color: white;
256
+ }
257
+
258
+ .btn-info:hover {
259
+ background: #138496;
260
+ }
261
+
262
+ .btn-voice {
263
+ background: #ff6b6b;
264
+ color: white;
265
+ min-width: 60px;
266
+ }
267
+
268
+ .btn-voice:hover {
269
+ background: #ff5252;
270
+ }
271
+
272
+ .btn-voice.recording {
273
+ background: #f44336;
274
+ animation: pulse 1.5s infinite;
275
+ }
276
+
277
+ .controls {
278
+ padding: 15px 20px;
279
+ background: #f8f9fa;
280
+ display: flex;
281
+ gap: 10px;
282
+ justify-content: center;
283
+ flex-wrap: wrap;
284
+ }
285
+
286
+ .loading {
287
+ display: none;
288
+ text-align: center;
289
+ padding: 10px;
290
+ color: #667eea;
291
+ font-style: italic;
292
+ }
293
+
294
+ .loading.active {
295
+ display: block;
296
+ }
297
+
298
+ .modal {
299
+ display: none;
300
+ position: fixed;
301
+ top: 0;
302
+ left: 0;
303
+ width: 100%;
304
+ height: 100%;
305
+ background: rgba(0,0,0,0.7);
306
+ justify-content: center;
307
+ align-items: center;
308
+ z-index: 1000;
309
+ }
310
+
311
+ .modal.active {
312
+ display: flex;
313
+ }
314
+
315
+ .modal-content {
316
+ background: white;
317
+ padding: 30px;
318
+ border-radius: 15px;
319
+ max-width: 800px;
320
+ max-height: 80vh;
321
+ overflow-y: auto;
322
+ width: 90%;
323
+ }
324
+
325
+ .modal-content pre {
326
+ white-space: pre-wrap;
327
+ font-family: 'Segoe UI', sans-serif;
328
+ line-height: 1.6;
329
+ }
330
+
331
+ .close-btn {
332
+ float: right;
333
+ font-size: 28px;
334
+ cursor: pointer;
335
+ color: #999;
336
+ }
337
+
338
+ .close-btn:hover {
339
+ color: #333;
340
+ }
341
+
342
+ .history-list {
343
+ max-height: 400px;
344
+ overflow-y: auto;
345
+ margin-top: 20px;
346
+ }
347
+
348
+ .history-item {
349
+ padding: 15px;
350
+ border: 2px solid #e0e0e0;
351
+ border-radius: 10px;
352
+ margin-bottom: 10px;
353
+ cursor: pointer;
354
+ transition: all 0.3s;
355
+ }
356
+
357
+ .history-item:hover {
358
+ border-color: #667eea;
359
+ background: #f8f9fa;
360
+ transform: translateX(5px);
361
+ }
362
+
363
+ .history-item h4 {
364
+ color: #667eea;
365
+ margin-bottom: 5px;
366
+ }
367
+
368
+ .history-item p {
369
+ font-size: 0.9em;
370
+ color: #666;
371
+ margin: 5px 0;
372
+ }
373
+
374
+ .pdf-badge {
375
+ display: inline-block;
376
+ background: #28a745;
377
+ color: white;
378
+ padding: 3px 8px;
379
+ border-radius: 5px;
380
+ font-size: 0.8em;
381
+ margin-left: 10px;
382
+ }
383
+
384
+ .load-session-form {
385
+ margin: 20px 0;
386
+ display: flex;
387
+ gap: 10px;
388
+ }
389
+
390
+ .load-session-form input {
391
+ flex: 1;
392
+ padding: 10px;
393
+ border: 2px solid #e0e0e0;
394
+ border-radius: 10px;
395
+ font-family: monospace;
396
+ }
397
+
398
+ .notification {
399
+ position: fixed;
400
+ top: 20px;
401
+ right: 20px;
402
+ padding: 15px 25px;
403
+ border-radius: 10px;
404
+ color: white;
405
+ font-weight: bold;
406
+ z-index: 2000;
407
+ animation: slideInRight 0.3s ease;
408
+ display: none;
409
+ }
410
+
411
+ .notification.success {
412
+ background: #28a745;
413
+ }
414
+
415
+ .notification.error {
416
+ background: #dc3545;
417
+ }
418
+
419
+ .notification.info {
420
+ background: #17a2b8;
421
+ }
422
+
423
+ .notification.active {
424
+ display: block;
425
+ }
426
+
427
+ @keyframes slideInRight {
428
+ from {
429
+ transform: translateX(100%);
430
+ }
431
+ to {
432
+ transform: translateX(0);
433
+ }
434
+ }
435
+
436
+ .pdf-viewer {
437
+ width: 100%;
438
+ height: 600px;
439
+ border: none;
440
+ border-radius: 10px;
441
+ margin-top: 20px;
442
+ }
443
+
444
+ .summary-actions {
445
+ display: flex;
446
+ gap: 10px;
447
+ margin-top: 20px;
448
+ justify-content: center;
449
+ }
450
+
451
+ .pdf-download-info {
452
+ text-align: center;
453
+ padding: 15px;
454
+ background: #e8f5e9;
455
+ border-radius: 10px;
456
+ margin-top: 15px;
457
+ color: #2e7d32;
458
+ }
459
+
460
+ .pdf-icon {
461
+ font-size: 48px;
462
+ margin-bottom: 10px;
463
+ }
464
+
465
+ .voice-status {
466
+ text-align: center;
467
+ padding: 10px;
468
+ background: #e3f2fd;
469
+ border-radius: 10px;
470
+ margin: 10px 0;
471
+ font-size: 0.9em;
472
+ color: #1565c0;
473
+ display: none;
474
+ }
475
+
476
+ .voice-status.active {
477
+ display: block;
478
  }