daedalus-cli 3.72.0 → 3.73.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,15 +1,29 @@
1
1
  :root {
2
- --bg-primary: #0a0e17;
3
- --bg-secondary: #121826;
4
- --bg-panel: #182234;
5
- --border-color: #1e293b;
6
- --border-glow: #00f0ff33;
7
- --text-primary: #f8fafc;
8
- --text-muted: #64748b;
9
- --accent-cyan: #00f0ff;
10
- --accent-green: #10b981;
11
- --accent-purple: #8b5cf6;
12
- --accent-red: #ef4444;
2
+ --bg-void: #04070d;
3
+ --bg-obsidian: #080f1d;
4
+ --bg-panel: #0d1728;
5
+ --bg-panel-elevated: #122038;
6
+ --bg-panel-translucent: rgba(13, 23, 40, 0.85);
7
+ --gold-aurum: #e5a93c;
8
+ --gold-bright: #f5c358;
9
+ --gold-deep: #b45309;
10
+ --gold-glow: rgba(229, 169, 60, 0.28);
11
+ --gold-subtle: rgba(229, 169, 60, 0.08);
12
+ --bronze-border: rgba(229, 169, 60, 0.22);
13
+ --bronze-border-strong: rgba(229, 169, 60, 0.5);
14
+ --aegean-cyan: #38bdf8;
15
+ --aegean-glow: rgba(56, 189, 248, 0.25);
16
+ --athena-purple: #a78bfa;
17
+ --delphic-green: #34d399;
18
+ --icarus-red: #f87171;
19
+ --solar-amber: #fbbf24;
20
+ --text-marble: #f8fafc;
21
+ --text-parchment: #e2e8f0;
22
+ --text-dim: #94a3b8;
23
+ --text-ancient: #64748b;
24
+ --font-mythic: 'Cinzel', serif, Georgia;
25
+ --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
26
+ --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
13
27
  }
14
28
 
15
29
  * {
@@ -18,19 +32,63 @@
18
32
  padding: 0;
19
33
  }
20
34
 
35
+ * {
36
+ scrollbar-width: thin;
37
+ scrollbar-color: rgba(229, 169, 60, 0.3) var(--bg-void);
38
+ }
39
+
40
+ ::-webkit-scrollbar {
41
+ width: 6px;
42
+ height: 6px;
43
+ }
44
+
45
+ ::-webkit-scrollbar-track {
46
+ background: var(--bg-void);
47
+ }
48
+
49
+ ::-webkit-scrollbar-thumb {
50
+ background: rgba(229, 169, 60, 0.25);
51
+ border-radius: 2px;
52
+ border: 1px solid rgba(229, 169, 60, 0.1);
53
+ transition: background 0.2s, box-shadow 0.2s;
54
+ }
55
+
56
+ ::-webkit-scrollbar-thumb:hover {
57
+ background: var(--gold-aurum);
58
+ box-shadow: 0 0 8px var(--gold-glow);
59
+ }
60
+
21
61
  body {
22
- background-color: var(--bg-primary);
23
- color: var(--text-primary);
24
- font-family: 'JetBrains Mono', 'Fira Code', monospace, system-ui, sans-serif;
62
+ background-color: var(--bg-void);
63
+ color: var(--text-parchment);
64
+ font-family: var(--font-sans);
25
65
  min-height: 100vh;
26
66
  display: flex;
27
67
  flex-direction: column;
68
+ position: relative;
69
+ overflow-x: hidden;
70
+ }
71
+
72
+ .mythic-bg-overlay {
73
+ position: fixed;
74
+ inset: 0;
75
+ pointer-events: none;
76
+ z-index: 0;
77
+ background-image:
78
+ radial-gradient(circle at 50% -10%, rgba(229, 169, 60, 0.08) 0%, transparent 60%),
79
+ radial-gradient(circle at 100% 100%, rgba(56, 189, 248, 0.04) 0%, transparent 50%),
80
+ radial-gradient(circle at 0% 100%, rgba(167, 139, 250, 0.03) 0%, transparent 50%),
81
+ linear-gradient(to right, rgba(229, 169, 60, 0.02) 1px, transparent 1px),
82
+ linear-gradient(to bottom, rgba(229, 169, 60, 0.02) 1px, transparent 1px);
83
+ background-size: 100% 100%, 100% 100%, 100% 100%, 48px 48px, 48px 48px;
28
84
  }
29
85
 
30
86
  .dashboard {
31
- max-width: 1200px;
87
+ position: relative;
88
+ z-index: 1;
89
+ max-width: 1280px;
32
90
  margin: 0 auto;
33
- padding: 24px;
91
+ padding: 24px 28px 40px;
34
92
  width: 100%;
35
93
  }
36
94
 
@@ -38,63 +96,186 @@ body {
38
96
  display: flex;
39
97
  justify-content: space-between;
40
98
  align-items: center;
41
- border-bottom: 1px solid var(--border-color);
42
- padding-bottom: 20px;
99
+ border-bottom: 1px solid var(--bronze-border);
100
+ padding-bottom: 22px;
43
101
  margin-bottom: 28px;
102
+ position: relative;
103
+ }
104
+
105
+ .header::after {
106
+ content: '';
107
+ position: absolute;
108
+ bottom: -1px;
109
+ left: 0;
110
+ width: 140px;
111
+ height: 2px;
112
+ background: linear-gradient(90deg, var(--gold-bright), var(--gold-aurum), transparent);
113
+ box-shadow: 0 0 10px var(--gold-glow);
44
114
  }
45
115
 
46
116
  .brand {
47
117
  display: flex;
48
118
  align-items: center;
49
- gap: 12px;
119
+ gap: 16px;
120
+ }
121
+
122
+ .logo-crest {
123
+ display: flex;
124
+ align-items: center;
125
+ justify-content: center;
126
+ width: 44px;
127
+ height: 44px;
128
+ filter: drop-shadow(0 0 8px rgba(229, 169, 60, 0.35));
129
+ transition: transform 0.3s ease, filter 0.3s ease;
130
+ }
131
+
132
+ .logo-crest:hover {
133
+ transform: scale(1.06) rotate(3deg);
134
+ filter: drop-shadow(0 0 14px rgba(229, 169, 60, 0.6));
135
+ }
136
+
137
+ .crest-svg {
138
+ width: 100%;
139
+ height: 100%;
50
140
  }
51
141
 
52
- .logo {
53
- color: var(--accent-cyan);
142
+ .brand-titles {
143
+ display: flex;
144
+ flex-direction: column;
145
+ gap: 2px;
146
+ }
147
+
148
+ .brand-main {
149
+ display: flex;
150
+ align-items: baseline;
151
+ gap: 10px;
152
+ }
153
+
154
+ .brand-name {
155
+ font-family: var(--font-mythic);
54
156
  font-size: 24px;
55
- text-shadow: 0 0 10px var(--accent-cyan);
157
+ font-weight: 900;
158
+ letter-spacing: 4px;
159
+ color: var(--text-marble);
160
+ text-shadow: 0 0 14px rgba(245, 195, 88, 0.25);
161
+ background: linear-gradient(135deg, #ffffff 0%, #f5c358 60%, #e5a93c 100%);
162
+ -webkit-background-clip: text;
163
+ -webkit-text-fill-color: transparent;
56
164
  }
57
165
 
58
- h1 {
59
- font-size: 20px;
166
+ .brand-greek {
167
+ font-family: var(--font-mythic);
168
+ font-size: 13px;
169
+ font-weight: 700;
60
170
  letter-spacing: 2px;
61
- color: var(--text-primary);
171
+ color: var(--gold-bright);
172
+ opacity: 0.8;
62
173
  }
63
174
 
64
- .subtitle {
65
- color: var(--text-muted);
66
- font-size: 13px;
67
- margin-left: 8px;
175
+ .brand-sub {
176
+ font-family: var(--font-mono);
177
+ font-size: 10.5px;
178
+ letter-spacing: 1.5px;
179
+ color: var(--text-dim);
180
+ text-transform: uppercase;
68
181
  }
69
182
 
70
183
  .status-bar {
71
184
  display: flex;
72
185
  align-items: center;
73
- gap: 16px;
74
- font-size: 13px;
186
+ gap: 20px;
187
+ }
188
+
189
+ .status-pill-wrapper {
190
+ display: flex;
191
+ align-items: center;
192
+ }
193
+
194
+ .model-pill-wrapper {
195
+ display: flex;
196
+ align-items: center;
197
+ }
198
+
199
+ .model-pill {
200
+ display: inline-flex;
201
+ align-items: center;
202
+ gap: 6px;
203
+ background: rgba(229, 169, 60, 0.08);
204
+ border: 1px solid var(--bronze-border);
205
+ border-radius: 4px;
206
+ color: var(--gold-bright);
207
+ font-family: var(--font-mythic);
208
+ font-size: 10px;
209
+ font-weight: 700;
210
+ letter-spacing: 1px;
211
+ padding: 5px 12px;
212
+ cursor: pointer;
213
+ transition: all 0.2s ease;
214
+ }
215
+
216
+ .model-pill:hover {
217
+ border-color: var(--gold-bright);
218
+ background: rgba(229, 169, 60, 0.16);
219
+ box-shadow: 0 0 10px var(--gold-glow);
220
+ transform: translateY(-1px);
221
+ }
222
+
223
+ .model-pill .model-icon {
224
+ font-size: 11px;
75
225
  }
76
226
 
77
227
  .status {
78
- padding: 4px 10px;
228
+ padding: 5px 12px;
79
229
  border-radius: 4px;
80
- font-weight: bold;
230
+ font-family: var(--font-mono);
231
+ font-size: 11px;
232
+ font-weight: 700;
233
+ letter-spacing: 1px;
234
+ transition: all 0.2s ease;
81
235
  }
82
236
 
83
237
  .status.connected {
84
- color: var(--accent-green);
85
- background: rgba(16, 185, 129, 0.1);
86
- border: 1px solid rgba(16, 185, 129, 0.3);
87
- text-shadow: 0 0 6px rgba(16, 185, 129, 0.4);
238
+ color: var(--delphic-green);
239
+ background: rgba(52, 211, 153, 0.1);
240
+ border: 1px solid rgba(52, 211, 153, 0.4);
241
+ box-shadow: 0 0 10px rgba(52, 211, 153, 0.2);
242
+ text-shadow: 0 0 6px rgba(52, 211, 153, 0.4);
88
243
  }
89
244
 
90
245
  .status.disconnected {
91
- color: var(--accent-red);
92
- background: rgba(239, 68, 68, 0.1);
93
- border: 1px solid rgba(239, 68, 68, 0.3);
246
+ color: var(--icarus-red);
247
+ background: rgba(248, 113, 113, 0.1);
248
+ border: 1px solid rgba(248, 113, 113, 0.35);
249
+ box-shadow: 0 0 8px rgba(248, 113, 113, 0.15);
250
+ }
251
+
252
+ .status.reconnecting {
253
+ color: var(--solar-amber);
254
+ background: rgba(251, 191, 36, 0.1);
255
+ border: 1px solid rgba(251, 191, 36, 0.35);
256
+ box-shadow: 0 0 8px rgba(251, 191, 36, 0.2);
257
+ text-shadow: 0 0 6px rgba(251, 191, 36, 0.4);
258
+ }
259
+
260
+ .oracle-clock {
261
+ display: flex;
262
+ flex-direction: column;
263
+ align-items: flex-end;
264
+ gap: 1px;
265
+ }
266
+
267
+ .oracle-label {
268
+ font-family: var(--font-mythic);
269
+ font-size: 9px;
270
+ letter-spacing: 1.5px;
271
+ color: var(--gold-bright);
272
+ opacity: 0.7;
94
273
  }
95
274
 
96
275
  .timestamp {
97
- color: var(--text-muted);
276
+ font-family: var(--font-mono);
277
+ font-size: 12px;
278
+ color: var(--text-parchment);
98
279
  }
99
280
 
100
281
  .grid {
@@ -105,44 +286,102 @@ h1 {
105
286
  }
106
287
 
107
288
  .panel {
108
- background: var(--bg-secondary);
109
- border: 1px solid var(--border-color);
110
- border-radius: 8px;
111
- padding: 20px;
289
+ background: linear-gradient(180deg, var(--bg-panel-translucent) 0%, rgba(8, 15, 29, 0.95) 100%);
290
+ border: 1px solid var(--bronze-border);
291
+ border-radius: 6px;
292
+ padding: 18px 20px;
112
293
  position: relative;
113
- overflow: hidden;
114
- transition: border-color 0.2s, box-shadow 0.2s;
294
+ backdrop-filter: blur(12px);
295
+ -webkit-backdrop-filter: blur(12px);
296
+ transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
297
+ }
298
+
299
+ .panel::before {
300
+ content: '';
301
+ position: absolute;
302
+ top: -1px;
303
+ left: -1px;
304
+ width: 8px;
305
+ height: 8px;
306
+ border-top: 2px solid var(--gold-bright);
307
+ border-left: 2px solid var(--gold-bright);
308
+ border-top-left-radius: 6px;
309
+ opacity: 0.6;
310
+ pointer-events: none;
311
+ transition: opacity 0.25s;
312
+ }
313
+
314
+ .panel::after {
315
+ content: '';
316
+ position: absolute;
317
+ bottom: -1px;
318
+ right: -1px;
319
+ width: 8px;
320
+ height: 8px;
321
+ border-bottom: 2px solid var(--gold-bright);
322
+ border-right: 2px solid var(--gold-bright);
323
+ border-bottom-right-radius: 6px;
324
+ opacity: 0.6;
325
+ pointer-events: none;
326
+ transition: opacity 0.25s;
115
327
  }
116
328
 
117
329
  .panel:hover {
118
- border-color: var(--accent-cyan);
119
- box-shadow: 0 0 15px var(--border-glow);
330
+ border-color: var(--bronze-border-strong);
331
+ box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4), 0 0 16px var(--gold-glow);
332
+ }
333
+
334
+ .panel:hover::before,
335
+ .panel:hover::after {
336
+ opacity: 1;
337
+ }
338
+
339
+ .oracle-card {
340
+ display: flex;
341
+ flex-direction: column;
342
+ justify-content: space-between;
120
343
  }
121
344
 
122
345
  .panel-header {
123
346
  display: flex;
124
347
  justify-content: space-between;
125
- align-items: baseline;
126
- margin-bottom: 16px;
348
+ align-items: center;
349
+ margin-bottom: 14px;
350
+ }
351
+
352
+ .metric-meta {
353
+ display: flex;
354
+ align-items: center;
355
+ gap: 8px;
356
+ }
357
+
358
+ .oracle-glyph {
359
+ font-size: 13px;
360
+ filter: drop-shadow(0 0 4px var(--gold-glow));
127
361
  }
128
362
 
129
363
  .metric-name {
130
- font-size: 12px;
364
+ font-family: var(--font-mythic);
365
+ font-size: 11.5px;
366
+ font-weight: 700;
131
367
  letter-spacing: 1.5px;
132
- color: var(--text-muted);
368
+ color: var(--gold-bright);
369
+ text-shadow: 0 0 8px rgba(245, 195, 88, 0.15);
133
370
  }
134
371
 
135
372
  .metric-value {
136
- font-size: 28px;
373
+ font-family: var(--font-mono);
374
+ font-size: 26px;
137
375
  font-weight: 700;
138
- color: var(--accent-cyan);
139
- text-shadow: 0 0 8px rgba(0, 240, 255, 0.3);
376
+ color: var(--text-marble);
377
+ text-shadow: 0 0 10px rgba(229, 169, 60, 0.3);
140
378
  }
141
379
 
142
380
  .sparkline {
143
- height: 40px;
144
- background: var(--bg-panel);
145
- border-radius: 4px;
381
+ height: 36px;
382
+ background: rgba(4, 7, 13, 0.6);
383
+ border: 1px solid rgba(229, 169, 60, 0.1);
384
+ border-radius: 3px;
146
385
  margin-bottom: 12px;
147
386
  position: relative;
148
387
  overflow: hidden;
@@ -154,66 +393,1332 @@ h1 {
154
393
  bottom: 0;
155
394
  left: 0;
156
395
  right: 0;
157
- height: 4px;
158
- background: var(--accent-cyan);
159
- box-shadow: 0 0 8px var(--accent-cyan);
396
+ height: 3px;
397
+ box-shadow: 0 0 8px currentColor;
398
+ }
399
+
400
+ .pantheon-sparkline::after {
401
+ background: var(--gold-bright);
402
+ color: var(--gold-bright);
403
+ }
404
+
405
+ .memoria-sparkline::after {
406
+ background: var(--aegean-cyan);
407
+ color: var(--aegean-cyan);
408
+ }
409
+
410
+ .labyrinth-sparkline::after {
411
+ background: var(--solar-amber);
412
+ color: var(--solar-amber);
413
+ }
414
+
415
+ .aegis-sparkline::after {
416
+ background: var(--delphic-green);
417
+ color: var(--delphic-green);
160
418
  }
161
419
 
162
420
  .panel-footer {
163
421
  display: flex;
164
422
  justify-content: space-between;
165
- font-size: 12px;
166
- color: var(--text-muted);
423
+ align-items: center;
424
+ font-family: var(--font-mono);
425
+ font-size: 11px;
426
+ }
427
+
428
+ .footer-label {
429
+ color: var(--text-ancient);
430
+ letter-spacing: 0.5px;
167
431
  }
168
432
 
169
433
  .metric-status {
170
- color: var(--accent-green);
434
+ color: var(--delphic-green);
435
+ font-weight: 700;
436
+ letter-spacing: 0.5px;
171
437
  }
172
438
 
173
439
  .log-panel {
174
440
  grid-column: 1 / -1;
175
- background: var(--bg-secondary);
441
+ background: linear-gradient(180deg, rgba(13, 23, 40, 0.9) 0%, rgba(4, 7, 13, 0.95) 100%);
176
442
  }
177
443
 
178
444
  .clear-btn {
179
- background: transparent;
180
- border: 1px solid var(--border-color);
181
- color: var(--text-muted);
182
- padding: 4px 10px;
183
- border-radius: 4px;
184
- font-family: inherit;
185
- font-size: 11px;
445
+ background: rgba(229, 169, 60, 0.06);
446
+ border: 1px solid var(--bronze-border);
447
+ color: var(--gold-bright);
448
+ padding: 3px 10px;
449
+ border-radius: 3px;
450
+ font-family: var(--font-mythic);
451
+ font-size: 10px;
452
+ font-weight: 700;
453
+ letter-spacing: 1px;
186
454
  cursor: pointer;
187
- transition: all 0.2s;
455
+ transition: all 0.2s ease;
188
456
  }
189
457
 
190
458
  .clear-btn:hover {
191
- border-color: var(--accent-red);
192
- color: var(--accent-red);
459
+ border-color: var(--icarus-red);
460
+ color: var(--icarus-red);
461
+ background: rgba(248, 113, 113, 0.1);
462
+ box-shadow: 0 0 8px rgba(248, 113, 113, 0.2);
193
463
  }
194
464
 
195
465
  .log-container {
196
- height: 180px;
466
+ height: 160px;
197
467
  overflow-y: auto;
198
- background: var(--bg-primary);
199
- border: 1px solid var(--border-color);
468
+ background: var(--bg-void);
469
+ border: 1px solid rgba(229, 169, 60, 0.15);
200
470
  border-radius: 4px;
201
- padding: 12px;
471
+ padding: 12px 14px;
472
+ font-family: var(--font-mono);
202
473
  font-size: 12px;
203
474
  display: flex;
204
475
  flex-direction: column;
205
- gap: 6px;
476
+ gap: 5px;
206
477
  }
207
478
 
208
479
  .log-entry {
209
- color: var(--text-muted);
480
+ color: var(--text-dim);
481
+ line-height: 1.4;
210
482
  }
211
483
 
212
484
  .log-entry.active {
213
- color: var(--text-primary);
485
+ color: var(--text-parchment);
214
486
  }
215
487
 
216
488
  .log-entry .time {
217
- color: var(--accent-purple);
489
+ color: var(--gold-bright);
218
490
  margin-right: 8px;
491
+ font-weight: 500;
492
+ }
493
+
494
+ .chat-section-wrapper {
495
+ grid-column: 1 / -1;
496
+ display: grid;
497
+ grid-template-columns: minmax(0, 1fr) 370px;
498
+ gap: 20px;
499
+ align-items: stretch;
500
+ }
501
+
502
+ @media (max-width: 960px) {
503
+ .chat-section-wrapper {
504
+ grid-template-columns: 1fr;
505
+ }
506
+ }
507
+
508
+ .chat-panel {
509
+ display: flex;
510
+ flex-direction: column;
511
+ background: linear-gradient(180deg, rgba(13, 23, 40, 0.92) 0%, rgba(6, 11, 22, 0.98) 100%);
512
+ height: 100%;
513
+ }
514
+
515
+ .cheatsheet-panel {
516
+ display: flex;
517
+ flex-direction: column;
518
+ height: 100%;
519
+ background: linear-gradient(180deg, rgba(13, 23, 40, 0.92) 0%, rgba(6, 11, 22, 0.98) 100%);
520
+ }
521
+
522
+ .cheatsheet-panel .panel-header {
523
+ flex-direction: column;
524
+ align-items: stretch;
525
+ gap: 10px;
526
+ margin-bottom: 12px;
527
+ }
528
+
529
+ .cheatsheet-panel .panel-header .metric-meta {
530
+ padding-bottom: 2px;
531
+ }
532
+
533
+ .sidebar-tabs {
534
+ display: flex;
535
+ gap: 4px;
536
+ width: 100%;
537
+ }
538
+
539
+ .sidebar-tab {
540
+ flex: 1;
541
+ text-align: center;
542
+ justify-content: center;
543
+ background: rgba(4, 7, 13, 0.6);
544
+ border: 1px solid var(--bronze-border);
545
+ border-radius: 3px;
546
+ color: var(--text-dim);
547
+ font-family: var(--font-mythic);
548
+ font-size: 8.5px;
549
+ font-weight: 700;
550
+ letter-spacing: 0.5px;
551
+ padding: 5px 2px;
552
+ cursor: pointer;
553
+ white-space: nowrap;
554
+ min-width: 0;
555
+ overflow: hidden;
556
+ text-overflow: ellipsis;
557
+ transition: all 0.15s ease-in-out;
558
+ }
559
+
560
+ .sidebar-tab:hover {
561
+ color: var(--gold-bright);
562
+ border-color: var(--gold-aurum);
563
+ }
564
+
565
+ .sidebar-tab.active {
566
+ color: #04070d;
567
+ background: linear-gradient(135deg, var(--gold-bright) 0%, var(--gold-aurum) 100%);
568
+ border-color: var(--gold-bright);
569
+ box-shadow: 0 0 8px var(--gold-glow);
570
+ }
571
+
572
+ .sidebar-tab-content {
573
+ display: flex;
574
+ flex-direction: column;
575
+ flex: 1;
576
+ min-height: 0;
577
+ overflow: hidden;
578
+ }
579
+
580
+ .hidden {
581
+ display: none !important;
582
+ }
583
+
584
+ .file-tree-toolbar {
585
+ display: flex;
586
+ align-items: center;
587
+ justify-content: space-between;
588
+ padding: 4px 6px 8px;
589
+ border-bottom: 1px solid var(--bronze-border);
590
+ margin-bottom: 8px;
591
+ }
592
+
593
+ .file-tree-cwd {
594
+ font-family: var(--font-mono);
595
+ font-size: 11px;
596
+ font-weight: 700;
597
+ color: var(--gold-bright);
598
+ letter-spacing: 0.5px;
599
+ overflow: hidden;
600
+ text-overflow: ellipsis;
601
+ white-space: nowrap;
602
+ }
603
+
604
+ .file-tree-refresh-btn {
605
+ background: rgba(229, 169, 60, 0.08);
606
+ border: 1px solid var(--bronze-border);
607
+ border-radius: 3px;
608
+ color: var(--gold-bright);
609
+ cursor: pointer;
610
+ font-size: 12px;
611
+ padding: 1px 7px;
612
+ line-height: 1.3;
613
+ transition: all 0.15s ease-in-out;
614
+ }
615
+
616
+ .file-tree-refresh-btn:hover {
617
+ border-color: var(--gold-bright);
618
+ box-shadow: 0 0 6px var(--gold-glow);
619
+ }
620
+
621
+ .file-tree {
622
+ overflow-y: auto;
623
+ flex: 1;
624
+ min-height: 0;
625
+ max-height: 480px;
626
+ padding-right: 4px;
627
+ font-family: var(--font-mono);
628
+ font-size: 12px;
629
+ }
630
+
631
+ .file-tree-loading {
632
+ color: var(--text-dim);
633
+ font-size: 11px;
634
+ font-style: italic;
635
+ padding: 16px 6px;
636
+ text-align: center;
637
+ }
638
+
639
+ .tree-list {
640
+ list-style: none;
641
+ padding: 0;
642
+ margin: 0;
643
+ display: flex;
644
+ flex-direction: column;
645
+ gap: 2px;
646
+ }
647
+
648
+ .tree-node {
649
+ display: flex;
650
+ align-items: center;
651
+ flex-wrap: wrap;
652
+ padding: 2px 0;
653
+ border-radius: 3px;
654
+ transition: background 0.12s ease;
655
+ }
656
+
657
+ .tree-node:hover {
658
+ background: rgba(229, 169, 60, 0.06);
659
+ }
660
+
661
+ .tree-icon {
662
+ display: inline-flex;
663
+ align-items: center;
664
+ justify-content: center;
665
+ width: 18px;
666
+ font-size: 10px;
667
+ color: var(--text-ancient);
668
+ user-select: none;
669
+ }
670
+
671
+ .tree-dir-icon {
672
+ cursor: pointer;
673
+ transition: transform 0.15s ease-in-out;
674
+ color: var(--gold-bright);
675
+ font-size: 9px;
676
+ }
677
+
678
+ .tree-dir-icon.expanded {
679
+ transform: rotate(90deg);
680
+ }
681
+
682
+ .tree-file-icon {
683
+ font-size: 11px;
684
+ opacity: 0.8;
685
+ }
686
+
687
+ .tree-label {
688
+ cursor: pointer;
689
+ padding: 2px 5px;
690
+ border-radius: 3px;
691
+ overflow: hidden;
692
+ text-overflow: ellipsis;
693
+ white-space: nowrap;
694
+ user-select: none;
695
+ font-family: inherit;
696
+ }
697
+
698
+ .tree-label.tree-dir {
699
+ font-weight: 600;
700
+ color: var(--text-parchment);
701
+ }
702
+
703
+ .tree-label.tree-dir:hover {
704
+ color: var(--gold-bright);
705
+ }
706
+
707
+ .tree-label.tree-file {
708
+ color: var(--text-dim);
709
+ transition: color 0.15s, background 0.15s;
710
+ }
711
+
712
+ .tree-label.tree-file:hover {
713
+ color: var(--gold-bright);
714
+ background: rgba(229, 169, 60, 0.12);
715
+ }
716
+
717
+ .tree-node > .tree-list {
718
+ width: 100%;
719
+ margin-top: 2px;
720
+ }
721
+
722
+ .context-files-list {
723
+ display: flex;
724
+ flex-direction: column;
725
+ gap: 6px;
726
+ flex: 1;
727
+ min-height: 0;
728
+ max-height: 480px;
729
+ overflow-y: auto;
730
+ padding-right: 4px;
731
+ }
732
+
733
+ .context-file-chip {
734
+ display: flex;
735
+ align-items: center;
736
+ justify-content: space-between;
737
+ background: var(--bg-void);
738
+ border: 1px solid var(--bronze-border);
739
+ border-radius: 3px;
740
+ padding: 5px 8px;
741
+ font-family: var(--font-mono);
742
+ font-size: 11px;
743
+ }
744
+
745
+ .context-file-chip:hover {
746
+ border-color: var(--gold-aurum);
747
+ box-shadow: 0 0 6px var(--gold-glow);
748
+ }
749
+
750
+ .context-file-name {
751
+ color: var(--gold-bright);
752
+ overflow: hidden;
753
+ text-overflow: ellipsis;
754
+ white-space: nowrap;
755
+ font-family: inherit;
756
+ cursor: pointer;
757
+ }
758
+
759
+ .context-file-remove {
760
+ background: transparent;
761
+ border: none;
762
+ color: var(--text-ancient);
763
+ cursor: pointer;
764
+ font-size: 12px;
765
+ padding: 0 4px;
766
+ line-height: 1;
767
+ transition: color 0.15s;
768
+ }
769
+
770
+ .context-file-remove:hover {
771
+ color: var(--icarus-red);
772
+ }
773
+
774
+ .cheatsheet-content {
775
+ overflow-y: auto;
776
+ display: flex;
777
+ flex-direction: column;
778
+ gap: 14px;
779
+ padding-right: 4px;
780
+ flex: 1;
781
+ min-height: 0;
782
+ max-height: 480px;
783
+ }
784
+
785
+ .cmd-group {
786
+ display: flex;
787
+ flex-direction: column;
788
+ gap: 6px;
789
+ }
790
+
791
+ .cmd-group-title {
792
+ font-family: var(--font-mythic);
793
+ font-size: 9.5px;
794
+ letter-spacing: 1.5px;
795
+ color: var(--gold-bright);
796
+ font-weight: 700;
797
+ border-bottom: 1px solid var(--bronze-border);
798
+ padding-bottom: 3px;
799
+ margin-top: 2px;
800
+ opacity: 0.85;
801
+ }
802
+
803
+ .cmd-chip {
804
+ background: var(--bg-void);
805
+ border: 1px solid rgba(229, 169, 60, 0.18);
806
+ border-radius: 4px;
807
+ padding: 6px 10px;
808
+ text-align: left;
809
+ cursor: pointer;
810
+ transition: all 0.15s ease-in-out;
811
+ font-family: var(--font-mono);
812
+ font-size: 12px;
813
+ }
814
+
815
+ .cmd-chip code {
816
+ color: var(--gold-bright);
817
+ background: transparent;
818
+ }
819
+
820
+ .cmd-chip:hover {
821
+ border-color: var(--gold-bright);
822
+ background: rgba(229, 169, 60, 0.1);
823
+ transform: translateX(3px);
824
+ box-shadow: 0 0 8px var(--gold-glow);
825
+ }
826
+
827
+ .cmd-chip:active {
828
+ transform: scale(0.98);
829
+ }
830
+
831
+ .chat-badges {
832
+ display: flex;
833
+ align-items: center;
834
+ gap: 8px;
835
+ }
836
+
837
+ .chat-badges .badge {
838
+ font-family: var(--font-mythic);
839
+ font-size: 10px;
840
+ font-weight: 700;
841
+ letter-spacing: 1.5px;
842
+ padding: 3px 10px;
843
+ border-radius: 3px;
844
+ background: rgba(229, 169, 60, 0.1);
845
+ color: var(--gold-bright);
846
+ border: 1px solid var(--bronze-border);
847
+ }
848
+
849
+ .chat-header-btn {
850
+ background: rgba(229, 169, 60, 0.08);
851
+ border: 1px solid var(--bronze-border);
852
+ border-radius: 3px;
853
+ color: var(--gold-bright);
854
+ font-family: var(--font-mythic);
855
+ font-size: 9.5px;
856
+ font-weight: 700;
857
+ letter-spacing: 1px;
858
+ padding: 3px 9px;
859
+ cursor: pointer;
860
+ transition: all 0.2s ease;
861
+ }
862
+
863
+ .chat-header-btn:hover {
864
+ border-color: var(--delphic-green);
865
+ color: var(--delphic-green);
866
+ background: rgba(52, 211, 153, 0.1);
867
+ box-shadow: 0 0 8px rgba(52, 211, 153, 0.2);
868
+ }
869
+
870
+ .chat-messages {
871
+ flex: 1;
872
+ min-height: 380px;
873
+ max-height: 480px;
874
+ overflow-y: auto;
875
+ background: var(--bg-void);
876
+ border: 1px solid var(--bronze-border);
877
+ border-radius: 4px;
878
+ padding: 16px;
879
+ display: flex;
880
+ flex-direction: column;
881
+ gap: 14px;
882
+ margin-bottom: 12px;
883
+ }
884
+
885
+ .chat-msg {
886
+ padding: 12px 16px;
887
+ border-radius: 4px;
888
+ font-size: 13.5px;
889
+ line-height: 1.6;
890
+ max-width: 90%;
891
+ position: relative;
892
+ }
893
+
894
+ .chat-msg.assistant {
895
+ align-self: flex-start;
896
+ background: linear-gradient(135deg, rgba(13, 23, 40, 0.95) 0%, rgba(8, 15, 29, 0.98) 100%);
897
+ border-left: 3px solid var(--gold-bright);
898
+ border-top: 1px solid rgba(229, 169, 60, 0.15);
899
+ border-right: 1px solid rgba(229, 169, 60, 0.1);
900
+ border-bottom: 1px solid rgba(229, 169, 60, 0.1);
901
+ color: var(--text-parchment);
902
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
903
+ }
904
+
905
+ .chat-msg.user {
906
+ align-self: flex-end;
907
+ background: linear-gradient(135deg, rgba(30, 27, 75, 0.8) 0%, rgba(20, 18, 50, 0.9) 100%);
908
+ border-right: 3px solid var(--athena-purple);
909
+ border-top: 1px solid rgba(167, 139, 250, 0.2);
910
+ border-left: 1px solid rgba(167, 139, 250, 0.1);
911
+ border-bottom: 1px solid rgba(167, 139, 250, 0.1);
912
+ color: #fff;
913
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
914
+ }
915
+
916
+ .chat-msg.error {
917
+ align-self: center;
918
+ background: rgba(248, 113, 113, 0.12);
919
+ border: 1px solid rgba(248, 113, 113, 0.4);
920
+ color: #fca5a5;
921
+ width: 100%;
922
+ }
923
+
924
+ .msg-header {
925
+ display: flex;
926
+ align-items: center;
927
+ gap: 8px;
928
+ margin-bottom: 6px;
929
+ width: 100%;
930
+ }
931
+
932
+ .msg-header .sender {
933
+ font-family: var(--font-mythic);
934
+ font-weight: 700;
935
+ font-size: 11px;
936
+ letter-spacing: 1.5px;
937
+ }
938
+
939
+ .chat-msg.assistant .sender {
940
+ color: var(--gold-bright);
941
+ }
942
+
943
+ .chat-msg.user .sender {
944
+ color: var(--athena-purple);
945
+ }
946
+
947
+ .badge-role {
948
+ font-family: var(--font-mythic);
949
+ font-size: 9px;
950
+ font-weight: 700;
951
+ letter-spacing: 1px;
952
+ padding: 1px 6px;
953
+ border-radius: 2px;
954
+ background: rgba(229, 169, 60, 0.12);
955
+ border: 1px solid rgba(229, 169, 60, 0.25);
956
+ color: var(--gold-bright);
957
+ }
958
+
959
+ .badge-role.themis, .badge-role[data-role="spec"] {
960
+ background: rgba(56, 189, 248, 0.12);
961
+ border-color: rgba(56, 189, 248, 0.3);
962
+ color: #38bdf8;
963
+ }
964
+
965
+ .badge-role.metis, .badge-role[data-role="planner"] {
966
+ background: rgba(167, 139, 250, 0.12);
967
+ border-color: rgba(167, 139, 250, 0.3);
968
+ color: #a78bfa;
969
+ }
970
+
971
+ .badge-role.hephaestus, .badge-role[data-role="coder"] {
972
+ background: rgba(249, 115, 22, 0.12);
973
+ border-color: rgba(249, 115, 22, 0.3);
974
+ color: #fb923c;
975
+ }
976
+
977
+ .badge-role.apollo, .badge-role[data-role="reviewer"] {
978
+ background: rgba(245, 158, 11, 0.12);
979
+ border-color: rgba(245, 158, 11, 0.3);
980
+ color: #fbbf24;
981
+ }
982
+
983
+ .badge-role.asclepius, .badge-role[data-role="debugger"] {
984
+ background: rgba(52, 211, 153, 0.12);
985
+ border-color: rgba(52, 211, 153, 0.3);
986
+ color: #34d399;
987
+ }
988
+
989
+ .badge-role.mnemosyne, .badge-role[data-role="researcher"] {
990
+ background: rgba(192, 132, 252, 0.12);
991
+ border-color: rgba(192, 132, 252, 0.3);
992
+ color: #c084fc;
993
+ }
994
+
995
+ .msg-timestamp {
996
+ margin-left: auto;
997
+ font-family: var(--font-mono);
998
+ font-size: 10px;
999
+ color: var(--text-ancient);
1000
+ letter-spacing: 0.5px;
1001
+ opacity: 0.85;
1002
+ }
1003
+
1004
+ .copy-btn {
1005
+ background: transparent;
1006
+ border: 1px solid var(--bronze-border);
1007
+ border-radius: 3px;
1008
+ color: var(--gold-bright);
1009
+ font-family: var(--font-mythic);
1010
+ font-size: 9px;
1011
+ font-weight: 700;
1012
+ letter-spacing: 1px;
1013
+ padding: 1px 7px;
1014
+ cursor: pointer;
1015
+ opacity: 0;
1016
+ transition: opacity 0.15s, color 0.15s, border-color 0.15s;
1017
+ line-height: 1.6;
1018
+ }
1019
+
1020
+ .chat-msg.assistant:hover .copy-btn {
1021
+ opacity: 1;
1022
+ }
1023
+
1024
+ .copy-btn:hover {
1025
+ color: #04070d;
1026
+ background: var(--gold-bright);
1027
+ border-color: var(--gold-bright);
1028
+ box-shadow: 0 0 6px var(--gold-glow);
1029
+ }
1030
+
1031
+ .copy-btn.copied {
1032
+ opacity: 1;
1033
+ color: var(--delphic-green);
1034
+ border-color: var(--delphic-green);
1035
+ background: transparent;
1036
+ }
1037
+
1038
+ .msg-body {
1039
+ word-break: break-word;
1040
+ }
1041
+
1042
+ .msg-body p {
1043
+ margin: 0 0 8px;
1044
+ }
1045
+
1046
+ .msg-body p:last-child {
1047
+ margin-bottom: 0;
1048
+ }
1049
+
1050
+ .msg-body h1, .msg-body h2, .msg-body h3, .msg-body h4 {
1051
+ margin: 12px 0 6px;
1052
+ color: var(--text-marble);
1053
+ font-family: var(--font-mythic);
1054
+ font-weight: 700;
1055
+ letter-spacing: 1px;
1056
+ line-height: 1.3;
1057
+ }
1058
+
1059
+ .msg-body h1 {
1060
+ font-size: 16px;
1061
+ border-bottom: 1px solid var(--bronze-border);
1062
+ padding-bottom: 4px;
1063
+ }
1064
+
1065
+ .msg-body h2 { font-size: 14px; }
1066
+ .msg-body h3 { font-size: 13px; color: var(--gold-bright); }
1067
+ .msg-body h4 { font-size: 12px; }
1068
+
1069
+ .msg-body ul, .msg-body ol {
1070
+ margin: 6px 0 10px;
1071
+ padding-left: 22px;
1072
+ }
1073
+
1074
+ .msg-body li {
1075
+ margin-bottom: 4px;
1076
+ }
1077
+
1078
+ .msg-body pre {
1079
+ background: #03060c;
1080
+ border: 1px solid var(--bronze-border);
1081
+ border-radius: 4px;
1082
+ padding: 12px;
1083
+ overflow-x: auto;
1084
+ margin: 10px 0;
1085
+ }
1086
+
1087
+ .msg-body pre code {
1088
+ background: transparent;
1089
+ padding: 0;
1090
+ border-radius: 0;
1091
+ color: var(--text-parchment);
1092
+ font-family: var(--font-mono);
1093
+ font-size: 12px;
1094
+ border: none;
1095
+ }
1096
+
1097
+ .msg-body code {
1098
+ background: rgba(4, 7, 13, 0.7);
1099
+ padding: 2px 6px;
1100
+ border-radius: 3px;
1101
+ color: var(--gold-bright);
1102
+ font-family: var(--font-mono);
1103
+ font-size: 12px;
1104
+ border: 1px solid rgba(229, 169, 60, 0.15);
1105
+ }
1106
+
1107
+ .msg-body table {
1108
+ border-collapse: collapse;
1109
+ width: 100%;
1110
+ margin: 10px 0;
1111
+ font-size: 12px;
1112
+ }
1113
+
1114
+ .msg-body th, .msg-body td {
1115
+ border: 1px solid rgba(229, 169, 60, 0.15);
1116
+ padding: 6px 10px;
1117
+ text-align: left;
1118
+ }
1119
+
1120
+ .msg-body th {
1121
+ background: rgba(229, 169, 60, 0.08);
1122
+ color: var(--gold-bright);
1123
+ font-family: var(--font-mythic);
1124
+ font-weight: 700;
1125
+ letter-spacing: 0.5px;
1126
+ }
1127
+
1128
+ .msg-body blockquote {
1129
+ margin: 8px 0;
1130
+ padding-left: 12px;
1131
+ border-left: 3px solid var(--gold-aurum);
1132
+ color: var(--text-dim);
1133
+ font-style: italic;
1134
+ }
1135
+
1136
+ .chat-form {
1137
+ display: flex;
1138
+ gap: 8px;
1139
+ }
1140
+
1141
+ .chat-form textarea,
1142
+ .chat-form input {
1143
+ flex: 1;
1144
+ background: var(--bg-void);
1145
+ border: 1px solid var(--bronze-border);
1146
+ border-radius: 4px;
1147
+ padding: 10px 14px;
1148
+ color: var(--text-marble);
1149
+ font-family: var(--font-mono);
1150
+ font-size: 13px;
1151
+ line-height: 1.5;
1152
+ outline: none;
1153
+ resize: none;
1154
+ min-height: 40px;
1155
+ max-height: 180px;
1156
+ overflow-y: auto;
1157
+ transition: border-color 0.2s, box-shadow 0.2s;
1158
+ }
1159
+
1160
+ .chat-form textarea:focus,
1161
+ .chat-form input:focus {
1162
+ border-color: var(--gold-bright);
1163
+ box-shadow: 0 0 10px var(--gold-glow);
1164
+ }
1165
+
1166
+ .send-btn {
1167
+ background: linear-gradient(135deg, var(--gold-bright) 0%, var(--gold-aurum) 100%);
1168
+ color: #04070d;
1169
+ font-family: var(--font-mythic);
1170
+ font-weight: 900;
1171
+ border: none;
1172
+ border-radius: 4px;
1173
+ padding: 10px 20px;
1174
+ font-size: 11px;
1175
+ cursor: pointer;
1176
+ letter-spacing: 1.5px;
1177
+ transition: all 0.2s ease;
1178
+ box-shadow: 0 0 10px var(--gold-glow);
1179
+ }
1180
+
1181
+ .send-btn:hover {
1182
+ transform: translateY(-1px);
1183
+ box-shadow: 0 0 16px rgba(245, 195, 88, 0.45);
1184
+ }
1185
+
1186
+ .send-btn:active {
1187
+ transform: scale(0.97);
1188
+ }
1189
+
1190
+ .chat-msg.thinking {
1191
+ align-self: flex-start;
1192
+ background: rgba(13, 23, 40, 0.7);
1193
+ border-left: 3px solid var(--gold-aurum);
1194
+ display: flex;
1195
+ align-items: center;
1196
+ gap: 12px;
1197
+ color: var(--gold-bright);
1198
+ font-family: var(--font-mythic);
1199
+ font-size: 11px;
1200
+ letter-spacing: 1px;
1201
+ }
1202
+
1203
+ .thinking-dots {
1204
+ display: inline-flex;
1205
+ align-items: center;
1206
+ gap: 5px;
1207
+ }
1208
+
1209
+ .thinking-dots span {
1210
+ width: 6px;
1211
+ height: 6px;
1212
+ background: var(--gold-bright);
1213
+ border-radius: 50%;
1214
+ animation: pulse-dot 1.2s infinite ease-in-out both;
1215
+ box-shadow: 0 0 6px var(--gold-glow);
1216
+ }
1217
+
1218
+ .thinking-dots span:nth-child(1) { animation-delay: -0.32s; }
1219
+ .thinking-dots span:nth-child(2) { animation-delay: -0.16s; }
1220
+ .thinking-dots span:nth-child(3) { animation-delay: 0s; }
1221
+
1222
+ @keyframes pulse-dot {
1223
+ 0%, 80%, 100% {
1224
+ transform: scale(0.3);
1225
+ opacity: 0.3;
1226
+ }
1227
+ 40% {
1228
+ transform: scale(1);
1229
+ opacity: 1;
1230
+ }
1231
+ }
1232
+
1233
+ .chat-panel.drag-over {
1234
+ border-color: var(--gold-bright) !important;
1235
+ box-shadow: 0 0 16px rgba(229, 169, 60, 0.3) inset;
1236
+ }
1237
+
1238
+ .attach-btn {
1239
+ background: var(--bg-void) !important;
1240
+ border: 1px solid var(--bronze-border);
1241
+ border-radius: 4px;
1242
+ color: var(--gold-bright);
1243
+ font-size: 14px;
1244
+ padding: 0 14px;
1245
+ cursor: pointer;
1246
+ display: inline-flex;
1247
+ align-items: center;
1248
+ justify-content: center;
1249
+ transition: all 0.15s ease-in-out;
1250
+ outline: none;
1251
+ flex-shrink: 0;
1252
+ }
1253
+
1254
+ .attach-btn svg {
1255
+ stroke: var(--gold-bright);
1256
+ transition: stroke 0.15s ease-in-out, transform 0.15s ease-in-out;
1257
+ }
1258
+
1259
+ .attach-btn:hover {
1260
+ border-color: var(--gold-bright);
1261
+ background: rgba(229, 169, 60, 0.12) !important;
1262
+ box-shadow: 0 0 8px var(--gold-glow);
1263
+ }
1264
+
1265
+ .attach-btn:hover svg {
1266
+ transform: rotate(-12deg) scale(1.1);
1267
+ }
1268
+
1269
+ .attach-btn:active {
1270
+ transform: scale(0.95);
1271
+ }
1272
+
1273
+ .attachment-preview {
1274
+ display: flex;
1275
+ flex-wrap: wrap;
1276
+ gap: 8px;
1277
+ margin-bottom: 8px;
1278
+ padding: 4px 2px;
1279
+ }
1280
+
1281
+ .attachment-chip {
1282
+ display: inline-flex;
1283
+ align-items: center;
1284
+ gap: 6px;
1285
+ background: rgba(229, 169, 60, 0.08);
1286
+ border: 1px solid var(--bronze-border);
1287
+ border-radius: 4px;
1288
+ padding: 4px 8px;
1289
+ font-family: var(--font-mono);
1290
+ font-size: 11px;
1291
+ color: var(--text-marble);
1292
+ max-width: 240px;
1293
+ }
1294
+
1295
+ .attachment-thumb {
1296
+ width: 24px;
1297
+ height: 24px;
1298
+ border-radius: 3px;
1299
+ object-fit: cover;
1300
+ border: 1px solid rgba(229, 169, 60, 0.2);
1301
+ }
1302
+
1303
+ .attachment-name {
1304
+ overflow: hidden;
1305
+ text-overflow: ellipsis;
1306
+ white-space: nowrap;
1307
+ font-weight: 600;
1308
+ color: var(--gold-bright);
1309
+ }
1310
+
1311
+ .attachment-remove {
1312
+ background: transparent;
1313
+ border: none;
1314
+ color: var(--text-ancient);
1315
+ cursor: pointer;
1316
+ font-size: 14px;
1317
+ line-height: 1;
1318
+ padding: 0 2px;
1319
+ transition: color 0.15s;
1320
+ }
1321
+
1322
+ .attachment-remove:hover {
1323
+ color: var(--icarus-red);
1324
+ }
1325
+
1326
+ .chat-msg-img {
1327
+ max-width: 100%;
1328
+ max-height: 240px;
1329
+ border-radius: 4px;
1330
+ margin-bottom: 8px;
1331
+ border: 1px solid var(--bronze-border);
1332
+ display: block;
1333
+ }
1334
+
1335
+ /* Sessions (Chronicles) Tab */
1336
+ .session-toolbar-actions {
1337
+ display: flex;
1338
+ gap: 4px;
1339
+ }
1340
+
1341
+ .sessions-list {
1342
+ display: flex;
1343
+ flex-direction: column;
1344
+ gap: 8px;
1345
+ flex: 1;
1346
+ min-height: 0;
1347
+ max-height: 480px;
1348
+ overflow-y: auto;
1349
+ padding-right: 4px;
1350
+ }
1351
+
1352
+ .session-card {
1353
+ background: var(--bg-void);
1354
+ border: 1px solid var(--bronze-border);
1355
+ border-radius: 4px;
1356
+ padding: 8px 10px;
1357
+ transition: all 0.2s ease;
1358
+ display: flex;
1359
+ flex-direction: column;
1360
+ gap: 4px;
1361
+ }
1362
+
1363
+ .session-card:hover {
1364
+ border-color: var(--gold-bright);
1365
+ background: rgba(229, 169, 60, 0.05);
1366
+ box-shadow: 0 0 8px var(--gold-glow);
1367
+ }
1368
+
1369
+ .session-card.active {
1370
+ border-color: var(--gold-bright);
1371
+ border-left: 3px solid var(--gold-bright);
1372
+ background: rgba(229, 169, 60, 0.08);
1373
+ }
1374
+
1375
+ .session-card-header {
1376
+ display: flex;
1377
+ align-items: center;
1378
+ justify-content: space-between;
1379
+ gap: 6px;
1380
+ }
1381
+
1382
+ .session-card-title {
1383
+ font-family: var(--font-mythic);
1384
+ font-size: 11px;
1385
+ font-weight: 700;
1386
+ color: var(--text-parchment);
1387
+ overflow: hidden;
1388
+ text-overflow: ellipsis;
1389
+ white-space: nowrap;
1390
+ letter-spacing: 0.5px;
1391
+ }
1392
+
1393
+ .session-card-date {
1394
+ font-family: var(--font-mono);
1395
+ font-size: 9.5px;
1396
+ color: var(--text-ancient);
1397
+ }
1398
+
1399
+ .session-card-meta {
1400
+ display: flex;
1401
+ align-items: center;
1402
+ justify-content: space-between;
1403
+ margin-top: 2px;
1404
+ }
1405
+
1406
+ .session-actions {
1407
+ display: flex;
1408
+ gap: 4px;
1409
+ margin-left: auto;
1410
+ }
1411
+
1412
+ .session-btn {
1413
+ background: rgba(229, 169, 60, 0.08);
1414
+ border: 1px solid var(--bronze-border);
1415
+ border-radius: 2px;
1416
+ color: var(--gold-bright);
1417
+ font-family: var(--font-mythic);
1418
+ font-size: 9px;
1419
+ font-weight: 700;
1420
+ padding: 1px 6px;
1421
+ cursor: pointer;
1422
+ transition: all 0.15s ease;
1423
+ }
1424
+
1425
+ .session-btn:hover {
1426
+ background: var(--gold-bright);
1427
+ color: #04070d;
1428
+ }
1429
+
1430
+ .session-btn.delete:hover {
1431
+ background: rgba(248, 113, 113, 0.2);
1432
+ border-color: var(--icarus-red);
1433
+ color: var(--icarus-red);
1434
+ }
1435
+
1436
+ /* Code Block Wrapper & Header */
1437
+ .code-block-wrapper {
1438
+ margin: 10px 0;
1439
+ background: #03060c;
1440
+ border: 1px solid var(--bronze-border);
1441
+ border-radius: 4px;
1442
+ overflow: hidden;
1443
+ }
1444
+
1445
+ .code-block-header {
1446
+ display: flex;
1447
+ align-items: center;
1448
+ justify-content: space-between;
1449
+ background: rgba(229, 169, 60, 0.06);
1450
+ border-bottom: 1px solid rgba(229, 169, 60, 0.15);
1451
+ padding: 3px 10px;
1452
+ font-family: var(--font-mono);
1453
+ font-size: 10.5px;
1454
+ }
1455
+
1456
+ .code-lang {
1457
+ color: var(--gold-bright);
1458
+ font-weight: 600;
1459
+ letter-spacing: 0.5px;
1460
+ text-transform: uppercase;
1461
+ }
1462
+
1463
+ .code-copy-btn {
1464
+ background: transparent;
1465
+ border: 1px solid rgba(229, 169, 60, 0.2);
1466
+ border-radius: 2px;
1467
+ color: var(--text-ancient);
1468
+ font-family: var(--font-mythic);
1469
+ font-size: 8.5px;
1470
+ font-weight: 700;
1471
+ letter-spacing: 0.5px;
1472
+ padding: 1px 6px;
1473
+ cursor: pointer;
1474
+ transition: all 0.15s ease;
1475
+ }
1476
+
1477
+ .code-copy-btn:hover {
1478
+ border-color: var(--gold-bright);
1479
+ color: var(--gold-bright);
1480
+ box-shadow: 0 0 6px var(--gold-glow);
1481
+ }
1482
+
1483
+ .code-copy-btn.copied {
1484
+ color: var(--delphic-green);
1485
+ border-color: var(--delphic-green);
1486
+ }
1487
+
1488
+ .code-block-wrapper pre {
1489
+ margin: 0;
1490
+ border: none;
1491
+ border-radius: 0;
1492
+ padding: 12px;
1493
+ background: transparent;
1494
+ }
1495
+
1496
+ /* Syntax Highlighting Colors */
1497
+ .hl-keyword { color: #f472b6; font-weight: 600; }
1498
+ .hl-string { color: #34d399; }
1499
+ .hl-number { color: #fb923c; }
1500
+ .hl-comment { color: #64748b; font-style: italic; }
1501
+ .hl-function { color: #38bdf8; font-weight: 600; }
1502
+ .hl-operator { color: #e5a93c; }
1503
+ .hl-boolean { color: #a78bfa; font-weight: 600; }
1504
+ .hl-builtin { color: #f5c358; }
1505
+ .hl-variable { color: #e2e8f0; }
1506
+
1507
+ /* In-Chat Tool Accordions */
1508
+ .tool-accordion {
1509
+ margin: 8px 0;
1510
+ background: rgba(4, 7, 13, 0.85);
1511
+ border: 1px solid var(--bronze-border);
1512
+ border-radius: 4px;
1513
+ overflow: hidden;
1514
+ transition: border-color 0.2s ease;
1515
+ }
1516
+
1517
+ .tool-accordion.running {
1518
+ border-left: 3px solid var(--solar-amber);
1519
+ }
1520
+
1521
+ .tool-accordion.completed {
1522
+ border-left: 3px solid var(--delphic-green);
1523
+ }
1524
+
1525
+ .tool-accordion.error {
1526
+ border-left: 3px solid var(--icarus-red);
1527
+ }
1528
+
1529
+ .tool-accordion-header {
1530
+ display: flex;
1531
+ align-items: center;
1532
+ justify-content: space-between;
1533
+ padding: 6px 10px;
1534
+ cursor: pointer;
1535
+ user-select: none;
1536
+ background: rgba(229, 169, 60, 0.04);
1537
+ }
1538
+
1539
+ .tool-accordion-header:hover {
1540
+ background: rgba(229, 169, 60, 0.09);
1541
+ }
1542
+
1543
+ .tool-accordion-left {
1544
+ display: flex;
1545
+ align-items: center;
1546
+ gap: 6px;
1547
+ }
1548
+
1549
+ .tool-accordion-icon {
1550
+ font-size: 11px;
1551
+ }
1552
+
1553
+ .tool-accordion-name {
1554
+ font-family: var(--font-mono);
1555
+ font-size: 11.5px;
1556
+ font-weight: 600;
1557
+ color: var(--text-parchment);
1558
+ }
1559
+
1560
+ .tool-accordion-status {
1561
+ font-family: var(--font-mythic);
1562
+ font-size: 8.5px;
1563
+ font-weight: 700;
1564
+ letter-spacing: 0.5px;
1565
+ padding: 1px 5px;
1566
+ border-radius: 2px;
1567
+ }
1568
+
1569
+ .tool-accordion-status.running {
1570
+ background: rgba(251, 191, 36, 0.15);
1571
+ color: var(--solar-amber);
1572
+ }
1573
+
1574
+ .tool-accordion-status.completed {
1575
+ background: rgba(52, 211, 153, 0.15);
1576
+ color: var(--delphic-green);
1577
+ }
1578
+
1579
+ .tool-accordion-chevron {
1580
+ font-size: 9px;
1581
+ color: var(--text-ancient);
1582
+ transition: transform 0.2s ease;
1583
+ margin-left: 6px;
1584
+ }
1585
+
1586
+ .tool-accordion.open .tool-accordion-chevron {
1587
+ transform: rotate(90deg);
1588
+ }
1589
+
1590
+ .tool-accordion-body {
1591
+ padding: 8px 10px;
1592
+ background: #03060c;
1593
+ border-top: 1px solid rgba(229, 169, 60, 0.1);
1594
+ font-family: var(--font-mono);
1595
+ font-size: 11px;
1596
+ color: var(--text-dim);
1597
+ max-height: 200px;
1598
+ overflow-y: auto;
1599
+ white-space: pre-wrap;
1600
+ word-break: break-word;
1601
+ }
1602
+
1603
+ /* Modal Dialog */
1604
+ .modal-overlay {
1605
+ position: fixed;
1606
+ top: 0;
1607
+ left: 0;
1608
+ right: 0;
1609
+ bottom: 0;
1610
+ background: rgba(3, 6, 12, 0.85);
1611
+ backdrop-filter: blur(8px);
1612
+ -webkit-backdrop-filter: blur(8px);
1613
+ display: flex;
1614
+ align-items: center;
1615
+ justify-content: center;
1616
+ z-index: 1000;
1617
+ padding: 20px;
1618
+ }
1619
+
1620
+ .modal-overlay.hidden {
1621
+ display: none;
1622
+ }
1623
+
1624
+ .modal-card {
1625
+ background: linear-gradient(180deg, rgba(13, 23, 40, 0.98) 0%, rgba(6, 11, 22, 1) 100%);
1626
+ border: 1px solid var(--bronze-border-strong);
1627
+ border-radius: 6px;
1628
+ width: 100%;
1629
+ max-width: 520px;
1630
+ box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6), 0 0 24px var(--gold-glow);
1631
+ overflow: hidden;
1632
+ position: relative;
1633
+ }
1634
+
1635
+ .modal-header {
1636
+ display: flex;
1637
+ align-items: center;
1638
+ justify-content: space-between;
1639
+ padding: 16px 20px;
1640
+ border-bottom: 1px solid var(--bronze-border);
1641
+ }
1642
+
1643
+ .modal-close-btn {
1644
+ background: transparent;
1645
+ border: none;
1646
+ color: var(--text-ancient);
1647
+ font-size: 20px;
1648
+ cursor: pointer;
1649
+ line-height: 1;
1650
+ padding: 2px 6px;
1651
+ transition: color 0.15s;
1652
+ }
1653
+
1654
+ .modal-close-btn:hover {
1655
+ color: var(--gold-bright);
1656
+ }
1657
+
1658
+ .modal-body {
1659
+ padding: 18px 20px 22px;
1660
+ }
1661
+
1662
+ .modal-subtitle {
1663
+ font-size: 12px;
1664
+ color: var(--text-dim);
1665
+ margin-bottom: 14px;
1666
+ }
1667
+
1668
+ .model-options-list {
1669
+ display: flex;
1670
+ flex-direction: column;
1671
+ gap: 8px;
1672
+ }
1673
+
1674
+ .model-option-card {
1675
+ background: var(--bg-void);
1676
+ border: 1px solid var(--bronze-border);
1677
+ border-radius: 4px;
1678
+ padding: 10px 14px;
1679
+ cursor: pointer;
1680
+ transition: all 0.2s ease;
1681
+ display: flex;
1682
+ flex-direction: column;
1683
+ gap: 4px;
1684
+ }
1685
+
1686
+ .model-option-card:hover {
1687
+ border-color: var(--gold-bright);
1688
+ background: rgba(229, 169, 60, 0.08);
1689
+ box-shadow: 0 0 10px var(--gold-glow);
1690
+ }
1691
+
1692
+ .model-option-card.active {
1693
+ border-color: var(--gold-bright);
1694
+ border-left: 4px solid var(--gold-bright);
1695
+ background: rgba(229, 169, 60, 0.12);
1696
+ }
1697
+
1698
+ .model-option-header {
1699
+ display: flex;
1700
+ align-items: center;
1701
+ justify-content: space-between;
1702
+ }
1703
+
1704
+ .model-option-name {
1705
+ font-family: var(--font-mythic);
1706
+ font-size: 12px;
1707
+ font-weight: 700;
1708
+ color: var(--gold-bright);
1709
+ letter-spacing: 0.5px;
1710
+ }
1711
+
1712
+ .model-option-badge {
1713
+ font-family: var(--font-mono);
1714
+ font-size: 10px;
1715
+ padding: 1px 6px;
1716
+ border-radius: 2px;
1717
+ background: rgba(229, 169, 60, 0.15);
1718
+ color: var(--text-parchment);
1719
+ }
1720
+
1721
+ .model-option-desc {
1722
+ font-size: 11px;
1723
+ color: var(--text-dim);
219
1724
  }