ltcai 4.5.1 → 4.6.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.
@@ -3,20 +3,20 @@
3
3
 
4
4
  :root {
5
5
  color-scheme: dark;
6
- --background: 28 18% 7%;
7
- --foreground: 43 24% 94%;
8
- --card: 30 14% 11%;
9
- --card-foreground: 43 24% 94%;
10
- --muted: 31 12% 17%;
11
- --muted-foreground: 39 10% 66%;
6
+ --background: 168 12% 7%;
7
+ --foreground: 190 24% 94%;
8
+ --card: 180 10% 11%;
9
+ --card-foreground: 190 24% 94%;
10
+ --muted: 205 11% 18%;
11
+ --muted-foreground: 188 10% 67%;
12
12
  --primary: 166 68% 52%;
13
- --primary-foreground: 28 20% 7%;
14
- --secondary: 258 22% 22%;
15
- --secondary-foreground: 43 24% 94%;
13
+ --primary-foreground: 168 18% 7%;
14
+ --secondary: 238 18% 23%;
15
+ --secondary-foreground: 190 24% 94%;
16
16
  --destructive: 356 73% 59%;
17
17
  --destructive-foreground: 0 0% 100%;
18
- --border: 34 10% 26%;
19
- --input: 34 10% 30%;
18
+ --border: 190 12% 26%;
19
+ --input: 190 12% 30%;
20
20
  --ring: 166 68% 52%;
21
21
  --brain: 166 68% 52%;
22
22
  --ask: 205 80% 67%;
@@ -28,20 +28,20 @@
28
28
 
29
29
  :root[data-theme="light"] {
30
30
  color-scheme: light;
31
- --background: 42 29% 96%;
32
- --foreground: 26 18% 11%;
33
- --card: 40 31% 99%;
34
- --card-foreground: 26 18% 11%;
35
- --muted: 42 18% 90%;
36
- --muted-foreground: 30 10% 38%;
31
+ --background: 180 16% 96%;
32
+ --foreground: 205 18% 12%;
33
+ --card: 180 24% 99%;
34
+ --card-foreground: 205 18% 12%;
35
+ --muted: 190 14% 91%;
36
+ --muted-foreground: 200 10% 38%;
37
37
  --primary: 170 70% 30%;
38
38
  --primary-foreground: 0 0% 100%;
39
- --secondary: 254 18% 88%;
40
- --secondary-foreground: 26 18% 11%;
39
+ --secondary: 236 20% 89%;
40
+ --secondary-foreground: 205 18% 12%;
41
41
  --destructive: 356 70% 47%;
42
42
  --destructive-foreground: 0 0% 100%;
43
- --border: 38 14% 76%;
44
- --input: 38 14% 70%;
43
+ --border: 190 14% 76%;
44
+ --input: 190 14% 70%;
45
45
  --ring: 170 70% 30%;
46
46
  }
47
47
 
@@ -100,13 +100,13 @@ button {
100
100
  isolation: isolate;
101
101
  overflow-x: hidden;
102
102
  background:
103
- linear-gradient(135deg, hsl(28 18% 7%) 0%, hsl(31 17% 9%) 46%, hsl(258 18% 10%) 100%),
103
+ linear-gradient(135deg, hsl(168 12% 7%) 0%, hsl(218 13% 9%) 48%, hsl(288 10% 9%) 100%),
104
104
  repeating-linear-gradient(90deg, hsl(var(--border) / 0.16) 0 1px, transparent 1px 56px);
105
105
  }
106
106
 
107
107
  :root[data-theme="light"] .app-backdrop {
108
108
  background:
109
- linear-gradient(135deg, hsl(42 29% 96%) 0%, hsl(43 30% 92%) 52%, hsl(254 28% 94%) 100%),
109
+ linear-gradient(135deg, hsl(180 16% 96%) 0%, hsl(204 18% 94%) 52%, hsl(286 16% 96%) 100%),
110
110
  repeating-linear-gradient(90deg, hsl(var(--border) / 0.24) 0 1px, transparent 1px 56px);
111
111
  }
112
112
 
@@ -193,11 +193,368 @@ button {
193
193
  background:
194
194
  linear-gradient(180deg, hsl(var(--card) / 0.94), hsl(var(--card) / 0.82)),
195
195
  linear-gradient(90deg, hsl(var(--primary) / 0.08), transparent 36%, hsl(var(--library) / 0.06));
196
- box-shadow: 0 18px 52px hsl(25 24% 3% / 0.28);
196
+ box-shadow: 0 18px 52px hsl(200 22% 3% / 0.3);
197
197
  }
198
198
 
199
199
  :root[data-theme="light"] .premium-surface {
200
- box-shadow: 0 18px 48px hsl(32 17% 54% / 0.16);
200
+ box-shadow: 0 18px 48px hsl(198 18% 54% / 0.16);
201
+ }
202
+
203
+ .product-flow-shell {
204
+ position: relative;
205
+ isolation: isolate;
206
+ display: grid;
207
+ min-height: 100vh;
208
+ place-items: center;
209
+ overflow: hidden;
210
+ padding: clamp(1rem, 3vw, 2rem);
211
+ background:
212
+ linear-gradient(135deg, hsl(168 14% 6%) 0%, hsl(215 16% 8%) 52%, hsl(262 13% 8%) 100%),
213
+ repeating-linear-gradient(90deg, hsl(var(--border) / 0.12) 0 1px, transparent 1px 54px);
214
+ }
215
+
216
+ .product-flow-shell::before {
217
+ content: "";
218
+ position: absolute;
219
+ inset: 0;
220
+ z-index: -2;
221
+ background-image:
222
+ linear-gradient(hsl(var(--border) / 0.12) 1px, transparent 1px),
223
+ linear-gradient(90deg, hsl(var(--border) / 0.12) 1px, transparent 1px);
224
+ background-size: 72px 72px;
225
+ mask-image: linear-gradient(180deg, black, transparent 74%);
226
+ }
227
+
228
+ .product-flow-orbit {
229
+ position: absolute;
230
+ inset: 12% 18%;
231
+ z-index: -1;
232
+ border: 1px solid hsl(var(--primary) / 0.16);
233
+ border-radius: 48%;
234
+ transform: rotate(-8deg);
235
+ }
236
+
237
+ .product-flow-orbit::before,
238
+ .product-flow-orbit::after {
239
+ content: "";
240
+ position: absolute;
241
+ inset: 12%;
242
+ border: 1px solid hsl(var(--ask) / 0.14);
243
+ border-radius: 46%;
244
+ transform: rotate(18deg);
245
+ }
246
+
247
+ .product-flow-orbit::after {
248
+ inset: 24%;
249
+ border-color: hsl(var(--library) / 0.16);
250
+ transform: rotate(-28deg);
251
+ }
252
+
253
+ .login-screen {
254
+ display: grid;
255
+ width: min(100%, 28rem);
256
+ gap: 1rem;
257
+ justify-items: center;
258
+ }
259
+
260
+ .login-mark {
261
+ display: grid;
262
+ width: 3rem;
263
+ height: 3rem;
264
+ place-items: center;
265
+ border: 1px solid hsl(var(--primary) / 0.46);
266
+ border-radius: 999px;
267
+ background: hsl(var(--card) / 0.72);
268
+ color: hsl(var(--primary));
269
+ box-shadow: 0 0 42px hsl(var(--primary) / 0.18);
270
+ }
271
+
272
+ .login-card,
273
+ .flow-panel {
274
+ width: min(100%, 58rem);
275
+ border: 1px solid hsl(var(--border) / 0.72);
276
+ border-radius: 8px;
277
+ background:
278
+ linear-gradient(180deg, hsl(var(--card) / 0.94), hsl(var(--card) / 0.82)),
279
+ linear-gradient(90deg, hsl(var(--primary) / 0.08), transparent 45%, hsl(var(--ask) / 0.06));
280
+ box-shadow: 0 28px 80px hsl(200 24% 3% / 0.46);
281
+ }
282
+
283
+ .login-card {
284
+ display: grid;
285
+ gap: 1.4rem;
286
+ padding: clamp(1.2rem, 4vw, 2rem);
287
+ }
288
+
289
+ .login-kicker,
290
+ .flow-kicker {
291
+ display: inline-flex;
292
+ align-items: center;
293
+ gap: 0.45rem;
294
+ color: hsl(var(--primary));
295
+ font-size: 0.76rem;
296
+ font-weight: 790;
297
+ text-transform: uppercase;
298
+ }
299
+
300
+ .login-card h1,
301
+ .flow-panel h1,
302
+ .install-hero h1 {
303
+ margin: 0.35rem 0 0;
304
+ font-size: clamp(2.15rem, 6vw, 4.4rem);
305
+ line-height: 0.96;
306
+ font-weight: 830;
307
+ letter-spacing: 0;
308
+ }
309
+
310
+ .login-card p,
311
+ .flow-panel p,
312
+ .install-hero p {
313
+ margin: 0.72rem 0 0;
314
+ color: hsl(var(--muted-foreground));
315
+ line-height: 1.6;
316
+ }
317
+
318
+ .login-form {
319
+ display: grid;
320
+ gap: 0.82rem;
321
+ }
322
+
323
+ .login-form label {
324
+ display: grid;
325
+ gap: 0.35rem;
326
+ }
327
+
328
+ .login-form label span {
329
+ color: hsl(var(--muted-foreground));
330
+ font-size: 0.78rem;
331
+ font-weight: 760;
332
+ text-transform: uppercase;
333
+ }
334
+
335
+ .login-submit {
336
+ margin-top: 0.4rem;
337
+ width: 100%;
338
+ }
339
+
340
+ .flow-panel {
341
+ display: grid;
342
+ gap: 1.2rem;
343
+ padding: clamp(1rem, 3vw, 1.6rem);
344
+ }
345
+
346
+ .flow-panel-head {
347
+ display: flex;
348
+ align-items: flex-start;
349
+ justify-content: space-between;
350
+ gap: 1rem;
351
+ }
352
+
353
+ .analysis-grid,
354
+ .model-recommendation-list,
355
+ .install-steps {
356
+ display: grid;
357
+ gap: 0.75rem;
358
+ }
359
+
360
+ .analysis-grid {
361
+ grid-template-columns: repeat(4, minmax(0, 1fr));
362
+ }
363
+
364
+ .analysis-fact,
365
+ .recommendation-callout,
366
+ .install-progress,
367
+ .install-step,
368
+ .model-recommendation-card {
369
+ border: 1px solid hsl(var(--border) / 0.72);
370
+ border-radius: 8px;
371
+ background: hsl(var(--background) / 0.5);
372
+ }
373
+
374
+ .analysis-fact {
375
+ min-height: 8rem;
376
+ padding: 0.95rem;
377
+ }
378
+
379
+ .analysis-fact span,
380
+ .analysis-fact small {
381
+ display: block;
382
+ color: hsl(var(--muted-foreground));
383
+ }
384
+
385
+ .analysis-fact span {
386
+ font-size: 0.76rem;
387
+ font-weight: 780;
388
+ text-transform: uppercase;
389
+ }
390
+
391
+ .analysis-fact strong {
392
+ display: block;
393
+ margin-top: 0.7rem;
394
+ font-size: 1.2rem;
395
+ line-height: 1.14;
396
+ }
397
+
398
+ .analysis-fact small {
399
+ margin-top: 0.48rem;
400
+ line-height: 1.5;
401
+ }
402
+
403
+ .recommendation-callout {
404
+ display: flex;
405
+ align-items: center;
406
+ gap: 0.82rem;
407
+ padding: 0.9rem;
408
+ }
409
+
410
+ .recommendation-callout svg {
411
+ flex: 0 0 auto;
412
+ color: hsl(var(--primary));
413
+ }
414
+
415
+ .recommendation-callout strong,
416
+ .recommendation-callout span {
417
+ display: block;
418
+ }
419
+
420
+ .recommendation-callout span {
421
+ margin-top: 0.22rem;
422
+ color: hsl(var(--muted-foreground));
423
+ font-size: 0.9rem;
424
+ }
425
+
426
+ .model-recommendation-list {
427
+ grid-template-columns: repeat(3, minmax(0, 1fr));
428
+ }
429
+
430
+ .model-recommendation-card {
431
+ display: grid;
432
+ min-height: 16rem;
433
+ align-content: space-between;
434
+ gap: 1rem;
435
+ padding: 1rem;
436
+ text-align: left;
437
+ transition: border-color 160ms ease, transform 160ms ease, background 160ms ease;
438
+ }
439
+
440
+ .model-recommendation-card:hover:not(:disabled),
441
+ .model-recommendation-card:focus-visible {
442
+ border-color: hsl(var(--primary) / 0.72);
443
+ background: hsl(var(--primary) / 0.1);
444
+ transform: translateY(-2px);
445
+ }
446
+
447
+ .model-recommendation-card:disabled {
448
+ cursor: not-allowed;
449
+ opacity: 0.6;
450
+ }
451
+
452
+ .model-rank {
453
+ color: hsl(var(--primary));
454
+ font-size: 0.76rem;
455
+ font-weight: 800;
456
+ text-transform: uppercase;
457
+ }
458
+
459
+ .model-recommendation-card strong {
460
+ display: block;
461
+ font-size: clamp(1.45rem, 3vw, 2.2rem);
462
+ line-height: 1.02;
463
+ }
464
+
465
+ .model-recommendation-card small {
466
+ display: block;
467
+ margin-top: 0.62rem;
468
+ color: hsl(var(--muted-foreground));
469
+ line-height: 1.5;
470
+ }
471
+
472
+ .install-hero {
473
+ display: grid;
474
+ grid-template-columns: minmax(14rem, 0.7fr) minmax(0, 1fr);
475
+ align-items: center;
476
+ gap: 1.1rem;
477
+ }
478
+
479
+ .install-hero .living-brain {
480
+ min-height: 20rem;
481
+ }
482
+
483
+ .install-steps {
484
+ grid-template-columns: repeat(4, minmax(0, 1fr));
485
+ }
486
+
487
+ .install-step {
488
+ display: flex;
489
+ align-items: center;
490
+ gap: 0.55rem;
491
+ min-height: 3.35rem;
492
+ padding: 0.8rem;
493
+ color: hsl(var(--muted-foreground));
494
+ font-weight: 760;
495
+ }
496
+
497
+ .install-step.is-active {
498
+ border-color: hsl(var(--primary) / 0.66);
499
+ color: hsl(var(--foreground));
500
+ }
501
+
502
+ .install-step.is-done {
503
+ border-color: hsl(var(--primary) / 0.54);
504
+ background: hsl(var(--primary) / 0.12);
505
+ color: hsl(var(--foreground));
506
+ }
507
+
508
+ .install-step.is-error {
509
+ border-color: hsl(var(--destructive) / 0.62);
510
+ color: hsl(var(--destructive));
511
+ }
512
+
513
+ .install-progress {
514
+ padding: 0.9rem;
515
+ }
516
+
517
+ .install-progress > div:first-child,
518
+ .flow-actions {
519
+ display: flex;
520
+ align-items: center;
521
+ justify-content: space-between;
522
+ gap: 1rem;
523
+ }
524
+
525
+ .install-progress span,
526
+ .flow-actions span {
527
+ color: hsl(var(--muted-foreground));
528
+ font-size: 0.9rem;
529
+ }
530
+
531
+ .install-bar {
532
+ height: 0.62rem;
533
+ margin-top: 0.75rem;
534
+ overflow: hidden;
535
+ border-radius: 999px;
536
+ background: hsl(var(--muted));
537
+ }
538
+
539
+ .install-bar span {
540
+ display: block;
541
+ height: 100%;
542
+ border-radius: inherit;
543
+ background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--ask)));
544
+ transition: width 220ms ease;
545
+ }
546
+
547
+ .flow-actions.split {
548
+ justify-content: space-between;
549
+ }
550
+
551
+ .flow-error {
552
+ border: 1px solid hsl(var(--destructive) / 0.42);
553
+ border-radius: 8px;
554
+ background: hsl(var(--destructive) / 0.12);
555
+ color: hsl(var(--foreground));
556
+ padding: 0.82rem;
557
+ line-height: 1.5;
201
558
  }
202
559
 
203
560
  .app-chrome {
@@ -418,7 +775,7 @@ button {
418
775
  background:
419
776
  linear-gradient(135deg, hsl(var(--card) / 0.94), hsl(var(--card) / 0.76)),
420
777
  linear-gradient(90deg, hsl(var(--primary) / 0.12), transparent 42%, hsl(var(--act) / 0.08));
421
- box-shadow: 0 18px 52px hsl(25 24% 3% / 0.25);
778
+ box-shadow: 0 18px 52px hsl(200 22% 3% / 0.26);
422
779
  }
423
780
 
424
781
  .arrival-copy {
@@ -529,7 +886,7 @@ button {
529
886
  border: 1px solid hsl(var(--border));
530
887
  border-radius: 8px;
531
888
  background: hsl(var(--card) / 0.96);
532
- box-shadow: 0 24px 70px hsl(25 24% 3% / 0.34);
889
+ box-shadow: 0 24px 70px hsl(200 22% 3% / 0.34);
533
890
  }
534
891
 
535
892
  .command-search {
@@ -573,7 +930,7 @@ button {
573
930
  padding: 1rem;
574
931
  border-right: 1px solid hsl(var(--border));
575
932
  background: hsl(var(--card) / 0.98);
576
- box-shadow: 18px 0 48px hsl(25 24% 3% / 0.34);
933
+ box-shadow: 18px 0 48px hsl(200 22% 3% / 0.34);
577
934
  }
578
935
 
579
936
  .drawer-header {
@@ -629,59 +986,625 @@ button {
629
986
  color: hsl(var(--foreground));
630
987
  }
631
988
 
632
- .brain-grid {
633
- background-image:
634
- linear-gradient(hsl(var(--border) / 0.22) 1px, transparent 1px),
635
- linear-gradient(90deg, hsl(var(--border) / 0.22) 1px, transparent 1px);
636
- background-size: 28px 28px;
637
- }
638
-
639
- .scrollbar-thin {
640
- scrollbar-width: thin;
989
+ .brain-conversation-grid {
990
+ display: grid;
991
+ grid-template-columns: minmax(17rem, 0.72fr) minmax(22rem, 1fr) minmax(17rem, 0.72fr);
992
+ gap: 1rem;
993
+ min-height: calc(100vh - 8rem);
641
994
  }
642
995
 
643
- .soft-scrollbar::-webkit-scrollbar {
644
- height: 10px;
645
- width: 10px;
996
+ .brain-presence-column {
997
+ display: grid;
998
+ align-content: center;
999
+ gap: 1rem;
1000
+ min-width: 0;
646
1001
  }
647
1002
 
648
- .soft-scrollbar::-webkit-scrollbar-thumb {
649
- border: 3px solid transparent;
650
- border-radius: 999px;
651
- background: hsl(var(--border));
652
- background-clip: content-box;
1003
+ .brain-context-column {
1004
+ display: grid;
1005
+ align-content: start;
1006
+ gap: 1rem;
1007
+ min-width: 0;
653
1008
  }
654
1009
 
655
- .react-flow__node {
656
- border: 1px solid hsl(var(--border));
1010
+ .living-brain {
1011
+ position: relative;
1012
+ overflow: hidden;
1013
+ border: 1px solid hsl(var(--border) / 0.76);
657
1014
  border-radius: 8px;
658
- background: hsl(var(--card));
659
- color: hsl(var(--foreground));
660
- padding: 8px 10px;
661
- font-size: 12px;
1015
+ background:
1016
+ linear-gradient(145deg, hsl(var(--card) / 0.94), hsl(210 18% 9% / 0.82)),
1017
+ linear-gradient(90deg, hsl(var(--primary) / 0.12), transparent 40%, hsl(var(--library) / 0.1));
1018
+ box-shadow: 0 20px 60px hsl(200 22% 3% / 0.24);
662
1019
  }
663
1020
 
664
- .react-flow__edge-path {
665
- stroke: hsl(var(--primary));
1021
+ :root[data-theme="light"] .living-brain {
1022
+ background:
1023
+ linear-gradient(145deg, hsl(var(--card) / 0.96), hsl(196 24% 94% / 0.82)),
1024
+ linear-gradient(90deg, hsl(var(--primary) / 0.12), transparent 42%, hsl(var(--library) / 0.1));
666
1025
  }
667
1026
 
668
- @media (max-width: 1100px) {
669
- .app-chrome {
670
- grid-template-columns: minmax(0, 1fr) auto;
671
- }
672
-
673
- .desktop-dock {
674
- display: none;
675
- }
1027
+ .brain-presence-head,
1028
+ .brain-presence-foot,
1029
+ .brain-chat-head,
1030
+ .brain-composer-actions,
1031
+ .brain-side-head,
1032
+ .brain-conversation-item {
1033
+ display: flex;
1034
+ align-items: center;
1035
+ }
676
1036
 
677
- .workspace-ribbon,
678
- .arrival-panel {
679
- grid-template-columns: 1fr;
680
- }
1037
+ .brain-presence-head {
1038
+ justify-content: space-between;
1039
+ gap: 1rem;
1040
+ padding: 1rem 1rem 0;
1041
+ }
681
1042
 
682
- .ribbon-meta {
683
- justify-content: flex-start;
684
- }
1043
+ .brain-presence-head h2 {
1044
+ margin: 0.28rem 0 0;
1045
+ font-size: 1.35rem;
1046
+ line-height: 1.12;
1047
+ font-weight: 800;
1048
+ }
1049
+
1050
+ .brain-presence-kicker,
1051
+ .brain-chat-kicker {
1052
+ display: inline-flex;
1053
+ align-items: center;
1054
+ gap: 0.45rem;
1055
+ color: hsl(var(--primary));
1056
+ font-size: 0.76rem;
1057
+ font-weight: 780;
1058
+ text-transform: uppercase;
1059
+ }
1060
+
1061
+ .brain-stage {
1062
+ position: relative;
1063
+ display: grid;
1064
+ place-items: center;
1065
+ min-height: 31rem;
1066
+ margin: 0.25rem 0 0.35rem;
1067
+ overflow: hidden;
1068
+ }
1069
+
1070
+ .brain-organ {
1071
+ position: relative;
1072
+ z-index: 2;
1073
+ width: min(92%, 29rem);
1074
+ aspect-ratio: 11 / 9;
1075
+ overflow: visible;
1076
+ filter: drop-shadow(0 22px 34px hsl(180 70% 4% / 0.48));
1077
+ }
1078
+
1079
+ .brain-mass {
1080
+ transform-origin: center;
1081
+ fill: hsl(var(--primary) / 0.2);
1082
+ stroke: hsl(var(--primary) / 0.78);
1083
+ stroke-width: 2.2;
1084
+ filter: url("#brainGlow");
1085
+ animation: brainBreathe 5.8s ease-in-out infinite;
1086
+ }
1087
+
1088
+ .brain-mass-right {
1089
+ fill: hsl(var(--ask) / 0.16);
1090
+ stroke: hsl(var(--ask) / 0.64);
1091
+ animation-delay: -1.2s;
1092
+ }
1093
+
1094
+ .thought-path {
1095
+ fill: none;
1096
+ stroke-linecap: round;
1097
+ stroke-dasharray: 18 24;
1098
+ stroke-width: 5;
1099
+ opacity: 0.86;
1100
+ animation: thoughtFlow 4.8s linear infinite;
1101
+ }
1102
+
1103
+ .thought-path-a,
1104
+ .thought-path-d {
1105
+ stroke: hsl(var(--primary));
1106
+ }
1107
+
1108
+ .thought-path-b {
1109
+ stroke: hsl(var(--ask));
1110
+ animation-delay: -1.7s;
1111
+ }
1112
+
1113
+ .thought-path-c {
1114
+ stroke: hsl(var(--library));
1115
+ animation-delay: -2.8s;
1116
+ }
1117
+
1118
+ .memory-pulse {
1119
+ fill: hsl(var(--foreground));
1120
+ opacity: 0.9;
1121
+ transform-origin: center;
1122
+ animation: memoryPulse 2.4s ease-in-out infinite;
1123
+ }
1124
+
1125
+ .pulse-b {
1126
+ animation-delay: -0.6s;
1127
+ }
1128
+
1129
+ .pulse-c {
1130
+ animation-delay: -1.2s;
1131
+ }
1132
+
1133
+ .pulse-d {
1134
+ animation-delay: -1.8s;
1135
+ }
1136
+
1137
+ .brain-halo,
1138
+ .brain-wave {
1139
+ position: absolute;
1140
+ display: block;
1141
+ border-radius: 999px;
1142
+ }
1143
+
1144
+ .brain-halo {
1145
+ inset: 13%;
1146
+ border: 1px solid hsl(var(--primary) / 0.22);
1147
+ animation: haloPulse 6s ease-in-out infinite;
1148
+ }
1149
+
1150
+ .brain-halo-b {
1151
+ inset: 20%;
1152
+ border-color: hsl(var(--ask) / 0.18);
1153
+ animation-delay: -2.4s;
1154
+ }
1155
+
1156
+ .brain-wave {
1157
+ z-index: 1;
1158
+ height: 0.18rem;
1159
+ background: linear-gradient(90deg, transparent, hsl(var(--primary) / 0.72), hsl(var(--ask) / 0.54), transparent);
1160
+ opacity: 0.72;
1161
+ transform-origin: center;
1162
+ animation: waveDrift 6.5s ease-in-out infinite;
1163
+ }
1164
+
1165
+ .brain-wave-a {
1166
+ width: 70%;
1167
+ top: 27%;
1168
+ transform: rotate(14deg);
1169
+ }
1170
+
1171
+ .brain-wave-b {
1172
+ width: 82%;
1173
+ top: 55%;
1174
+ transform: rotate(-10deg);
1175
+ animation-delay: -2.1s;
1176
+ }
1177
+
1178
+ .brain-wave-c {
1179
+ width: 58%;
1180
+ top: 71%;
1181
+ transform: rotate(7deg);
1182
+ animation-delay: -4.2s;
1183
+ }
1184
+
1185
+ .brain-state-pill {
1186
+ position: absolute;
1187
+ z-index: 3;
1188
+ right: 1rem;
1189
+ bottom: 1rem;
1190
+ display: inline-flex;
1191
+ align-items: center;
1192
+ gap: 0.45rem;
1193
+ min-height: 2.5rem;
1194
+ border: 1px solid hsl(var(--border));
1195
+ border-radius: 999px;
1196
+ background: hsl(var(--background) / 0.76);
1197
+ padding: 0 0.85rem;
1198
+ font-size: 0.84rem;
1199
+ font-weight: 780;
1200
+ backdrop-filter: blur(16px);
1201
+ }
1202
+
1203
+ .living-brain[data-activity="thinking"] .thought-path {
1204
+ animation-duration: 2.3s;
1205
+ }
1206
+
1207
+ .living-brain[data-activity="recalling"] .memory-pulse,
1208
+ .living-brain[data-activity="acting"] .memory-pulse {
1209
+ animation-duration: 1.4s;
1210
+ }
1211
+
1212
+ .living-brain[data-activity="planning"] .brain-wave,
1213
+ .living-brain[data-activity="acting"] .brain-wave {
1214
+ animation-duration: 3.2s;
1215
+ }
1216
+
1217
+ .brain-vitals {
1218
+ display: grid;
1219
+ grid-template-columns: repeat(3, minmax(0, 1fr));
1220
+ gap: 0.55rem;
1221
+ padding: 0 1rem 1rem;
1222
+ }
1223
+
1224
+ .brain-vital {
1225
+ min-width: 0;
1226
+ border: 1px solid hsl(var(--border) / 0.72);
1227
+ border-radius: 7px;
1228
+ background: hsl(var(--background) / 0.48);
1229
+ padding: 0.72rem;
1230
+ }
1231
+
1232
+ .brain-vital svg {
1233
+ color: hsl(var(--primary));
1234
+ }
1235
+
1236
+ .brain-vital span,
1237
+ .brain-vital strong {
1238
+ display: block;
1239
+ min-width: 0;
1240
+ }
1241
+
1242
+ .brain-vital span {
1243
+ margin-top: 0.45rem;
1244
+ color: hsl(var(--muted-foreground));
1245
+ font-size: 0.72rem;
1246
+ font-weight: 740;
1247
+ text-transform: uppercase;
1248
+ }
1249
+
1250
+ .brain-vital strong {
1251
+ margin-top: 0.18rem;
1252
+ overflow: hidden;
1253
+ text-overflow: ellipsis;
1254
+ white-space: nowrap;
1255
+ font-size: 1.15rem;
1256
+ line-height: 1.15;
1257
+ }
1258
+
1259
+ .brain-presence-foot {
1260
+ gap: 0.5rem;
1261
+ min-height: 3rem;
1262
+ border-top: 1px solid hsl(var(--border) / 0.68);
1263
+ padding: 0.75rem 1rem;
1264
+ color: hsl(var(--muted-foreground));
1265
+ font-size: 0.86rem;
1266
+ }
1267
+
1268
+ .brain-side-panel {
1269
+ overflow: hidden;
1270
+ border: 1px solid hsl(var(--border) / 0.74);
1271
+ border-radius: 8px;
1272
+ background: hsl(var(--card) / 0.72);
1273
+ padding: 0.85rem;
1274
+ }
1275
+
1276
+ .brain-side-head {
1277
+ justify-content: space-between;
1278
+ gap: 0.75rem;
1279
+ margin-bottom: 0.72rem;
1280
+ }
1281
+
1282
+ .brain-side-head h3 {
1283
+ margin: 0 0 0.28rem;
1284
+ font-size: 0.94rem;
1285
+ font-weight: 780;
1286
+ }
1287
+
1288
+ .brain-conversation-list {
1289
+ display: grid;
1290
+ gap: 0.45rem;
1291
+ max-height: 16rem;
1292
+ overflow: auto;
1293
+ }
1294
+
1295
+ .brain-conversation-item {
1296
+ justify-content: space-between;
1297
+ gap: 0.45rem;
1298
+ min-height: 3.7rem;
1299
+ border: 1px solid hsl(var(--border) / 0.68);
1300
+ border-radius: 7px;
1301
+ background: hsl(var(--background) / 0.44);
1302
+ padding: 0.35rem 0.35rem 0.35rem 0.65rem;
1303
+ }
1304
+
1305
+ .brain-conversation-item.is-active {
1306
+ border-color: hsl(var(--primary) / 0.7);
1307
+ background: hsl(var(--primary) / 0.12);
1308
+ }
1309
+
1310
+ .brain-conversation-item button:first-child {
1311
+ display: grid;
1312
+ min-width: 0;
1313
+ gap: 0.2rem;
1314
+ }
1315
+
1316
+ .brain-conversation-item span,
1317
+ .brain-conversation-item small {
1318
+ overflow: hidden;
1319
+ text-overflow: ellipsis;
1320
+ white-space: nowrap;
1321
+ }
1322
+
1323
+ .brain-conversation-item span {
1324
+ font-size: 0.86rem;
1325
+ font-weight: 720;
1326
+ }
1327
+
1328
+ .brain-conversation-item small {
1329
+ color: hsl(var(--muted-foreground));
1330
+ font-size: 0.72rem;
1331
+ }
1332
+
1333
+ .brain-delete-button {
1334
+ display: grid;
1335
+ place-items: center;
1336
+ width: 2rem;
1337
+ height: 2rem;
1338
+ flex: 0 0 auto;
1339
+ border-radius: 6px;
1340
+ color: hsl(var(--muted-foreground));
1341
+ }
1342
+
1343
+ .brain-delete-button:hover {
1344
+ background: hsl(var(--destructive) / 0.12);
1345
+ color: hsl(var(--destructive));
1346
+ }
1347
+
1348
+ .brain-chat-panel {
1349
+ display: grid;
1350
+ grid-template-rows: auto minmax(0, 1fr) auto;
1351
+ min-height: calc(100vh - 8rem);
1352
+ overflow: hidden;
1353
+ }
1354
+
1355
+ .brain-chat-head {
1356
+ justify-content: space-between;
1357
+ gap: 1rem;
1358
+ border-bottom: 1px solid hsl(var(--border) / 0.74);
1359
+ padding: 1rem 1.1rem;
1360
+ }
1361
+
1362
+ .brain-chat-head h1 {
1363
+ margin: 0.34rem 0 0;
1364
+ font-size: 1.8rem;
1365
+ line-height: 1.05;
1366
+ font-weight: 820;
1367
+ }
1368
+
1369
+ .brain-chat-model {
1370
+ display: flex;
1371
+ flex-wrap: wrap;
1372
+ justify-content: flex-end;
1373
+ gap: 0.45rem;
1374
+ }
1375
+
1376
+ .brain-message-stream {
1377
+ min-height: 24rem;
1378
+ overflow: auto;
1379
+ padding: 1rem;
1380
+ }
1381
+
1382
+ .brain-empty-conversation {
1383
+ display: grid;
1384
+ min-height: 100%;
1385
+ place-items: center;
1386
+ }
1387
+
1388
+ .brain-message-row {
1389
+ display: flex;
1390
+ margin-bottom: 0.85rem;
1391
+ }
1392
+
1393
+ .brain-message-row.from-user {
1394
+ justify-content: flex-end;
1395
+ }
1396
+
1397
+ .brain-message-row.from-brain {
1398
+ justify-content: flex-start;
1399
+ }
1400
+
1401
+ .brain-message-bubble {
1402
+ max-width: min(78%, 44rem);
1403
+ border: 1px solid hsl(var(--border) / 0.74);
1404
+ border-radius: 8px;
1405
+ background: hsl(var(--background) / 0.7);
1406
+ padding: 0.9rem;
1407
+ font-size: 0.94rem;
1408
+ line-height: 1.65;
1409
+ }
1410
+
1411
+ .brain-message-row.from-user .brain-message-bubble {
1412
+ border-color: hsl(var(--primary) / 0.46);
1413
+ background: hsl(var(--primary) / 0.14);
1414
+ }
1415
+
1416
+ .brain-message-role {
1417
+ margin-bottom: 0.35rem;
1418
+ color: hsl(var(--muted-foreground));
1419
+ font-size: 0.72rem;
1420
+ font-weight: 780;
1421
+ text-transform: uppercase;
1422
+ }
1423
+
1424
+ .brain-composer {
1425
+ border-top: 1px solid hsl(var(--border) / 0.74);
1426
+ background: hsl(var(--background) / 0.32);
1427
+ padding: 1rem;
1428
+ }
1429
+
1430
+ .brain-composer textarea {
1431
+ min-height: 7rem;
1432
+ resize: vertical;
1433
+ }
1434
+
1435
+ .brain-composer-actions {
1436
+ justify-content: space-between;
1437
+ flex-wrap: wrap;
1438
+ gap: 0.6rem;
1439
+ margin-top: 0.65rem;
1440
+ }
1441
+
1442
+ .brain-layer-header {
1443
+ display: grid;
1444
+ grid-template-columns: minmax(0, 1fr) auto;
1445
+ align-items: end;
1446
+ gap: 1rem;
1447
+ border: 1px solid hsl(var(--border) / 0.72);
1448
+ border-radius: 8px;
1449
+ background: hsl(var(--background) / 0.48);
1450
+ padding: 1rem;
1451
+ }
1452
+
1453
+ .brain-layer-header h1 {
1454
+ margin: 0.35rem 0 0;
1455
+ font-size: 1.85rem;
1456
+ line-height: 1.08;
1457
+ font-weight: 810;
1458
+ }
1459
+
1460
+ .brain-layer-meter {
1461
+ display: grid;
1462
+ min-width: 10rem;
1463
+ border: 1px solid hsl(var(--border) / 0.7);
1464
+ border-radius: 7px;
1465
+ background: hsl(var(--card) / 0.68);
1466
+ padding: 0.85rem;
1467
+ }
1468
+
1469
+ .brain-layer-meter span {
1470
+ color: hsl(var(--muted-foreground));
1471
+ font-size: 0.72rem;
1472
+ font-weight: 760;
1473
+ text-transform: uppercase;
1474
+ }
1475
+
1476
+ .brain-layer-meter strong {
1477
+ margin-top: 0.25rem;
1478
+ font-size: 1.45rem;
1479
+ line-height: 1.1;
1480
+ }
1481
+
1482
+ @keyframes brainBreathe {
1483
+ 0%,
1484
+ 100% {
1485
+ transform: scale(0.985);
1486
+ }
1487
+ 50% {
1488
+ transform: scale(1.015);
1489
+ }
1490
+ }
1491
+
1492
+ @keyframes thoughtFlow {
1493
+ from {
1494
+ stroke-dashoffset: 90;
1495
+ }
1496
+ to {
1497
+ stroke-dashoffset: 0;
1498
+ }
1499
+ }
1500
+
1501
+ @keyframes memoryPulse {
1502
+ 0%,
1503
+ 100% {
1504
+ opacity: 0.48;
1505
+ transform: scale(0.76);
1506
+ }
1507
+ 45% {
1508
+ opacity: 1;
1509
+ transform: scale(1.18);
1510
+ }
1511
+ }
1512
+
1513
+ @keyframes waveDrift {
1514
+ 0%,
1515
+ 100% {
1516
+ opacity: 0.36;
1517
+ translate: -4% 0;
1518
+ }
1519
+ 50% {
1520
+ opacity: 0.9;
1521
+ translate: 4% 0;
1522
+ }
1523
+ }
1524
+
1525
+ @keyframes haloPulse {
1526
+ 0%,
1527
+ 100% {
1528
+ opacity: 0.18;
1529
+ transform: scale(0.95);
1530
+ }
1531
+ 50% {
1532
+ opacity: 0.56;
1533
+ transform: scale(1.04);
1534
+ }
1535
+ }
1536
+
1537
+ .brain-grid {
1538
+ background-image:
1539
+ linear-gradient(hsl(var(--border) / 0.22) 1px, transparent 1px),
1540
+ linear-gradient(90deg, hsl(var(--border) / 0.22) 1px, transparent 1px);
1541
+ background-size: 28px 28px;
1542
+ }
1543
+
1544
+ .scrollbar-thin {
1545
+ scrollbar-width: thin;
1546
+ }
1547
+
1548
+ .soft-scrollbar::-webkit-scrollbar {
1549
+ height: 10px;
1550
+ width: 10px;
1551
+ }
1552
+
1553
+ .soft-scrollbar::-webkit-scrollbar-thumb {
1554
+ border: 3px solid transparent;
1555
+ border-radius: 999px;
1556
+ background: hsl(var(--border));
1557
+ background-clip: content-box;
1558
+ }
1559
+
1560
+ .react-flow__node {
1561
+ border: 1px solid hsl(var(--border));
1562
+ border-radius: 8px;
1563
+ background: hsl(var(--card));
1564
+ color: hsl(var(--foreground));
1565
+ padding: 8px 10px;
1566
+ font-size: 12px;
1567
+ }
1568
+
1569
+ .react-flow__edge-path {
1570
+ stroke: hsl(var(--primary));
1571
+ }
1572
+
1573
+ @media (max-width: 1100px) {
1574
+ .app-chrome {
1575
+ grid-template-columns: minmax(0, 1fr) auto;
1576
+ }
1577
+
1578
+ .desktop-dock {
1579
+ display: none;
1580
+ }
1581
+
1582
+ .workspace-ribbon,
1583
+ .arrival-panel,
1584
+ .brain-conversation-grid,
1585
+ .brain-layer-header,
1586
+ .analysis-grid,
1587
+ .model-recommendation-list,
1588
+ .install-hero,
1589
+ .install-steps {
1590
+ grid-template-columns: 1fr;
1591
+ }
1592
+
1593
+ .ribbon-meta {
1594
+ justify-content: flex-start;
1595
+ }
1596
+
1597
+ .brain-chat-panel {
1598
+ min-height: 44rem;
1599
+ }
1600
+
1601
+ .brain-presence-column {
1602
+ align-content: start;
1603
+ }
1604
+
1605
+ .brain-layer-meter {
1606
+ width: min(100%, 18rem);
1607
+ }
685
1608
  }
686
1609
 
687
1610
  @media (min-width: 1101px) {
@@ -734,4 +1657,78 @@ button {
734
1657
  .page-hero {
735
1658
  padding: 1rem;
736
1659
  }
1660
+
1661
+ .brain-conversation-grid {
1662
+ min-height: 0;
1663
+ }
1664
+
1665
+ .brain-stage {
1666
+ min-height: 20rem;
1667
+ }
1668
+
1669
+ .product-flow-shell {
1670
+ align-items: start;
1671
+ padding: 1rem;
1672
+ }
1673
+
1674
+ .login-card h1,
1675
+ .flow-panel h1,
1676
+ .install-hero h1 {
1677
+ font-size: 2.2rem;
1678
+ }
1679
+
1680
+ .flow-panel-head,
1681
+ .install-progress > div:first-child,
1682
+ .flow-actions {
1683
+ align-items: flex-start;
1684
+ flex-direction: column;
1685
+ }
1686
+
1687
+ .model-recommendation-card {
1688
+ min-height: 11rem;
1689
+ }
1690
+
1691
+ .brain-vitals {
1692
+ grid-template-columns: 1fr;
1693
+ }
1694
+
1695
+ .brain-chat-head {
1696
+ align-items: flex-start;
1697
+ flex-direction: column;
1698
+ }
1699
+
1700
+ .brain-chat-head h1 {
1701
+ font-size: 1.45rem;
1702
+ }
1703
+
1704
+ .brain-chat-model {
1705
+ justify-content: flex-start;
1706
+ }
1707
+
1708
+ .brain-message-bubble {
1709
+ max-width: 92%;
1710
+ }
1711
+
1712
+ .brain-message-stream {
1713
+ min-height: 22rem;
1714
+ padding: 0.75rem;
1715
+ }
1716
+
1717
+ .brain-composer {
1718
+ padding: 0.75rem;
1719
+ }
1720
+
1721
+ .brain-layer-header h1 {
1722
+ font-size: 1.45rem;
1723
+ }
1724
+ }
1725
+
1726
+ @media (prefers-reduced-motion: reduce) {
1727
+ .brain-mass,
1728
+ .thought-path,
1729
+ .memory-pulse,
1730
+ .brain-halo,
1731
+ .brain-wave {
1732
+ animation: none;
1733
+ }
737
1734
  }