@ibgib/space-gib 0.0.33 → 0.0.34

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.
Files changed (112) hide show
  1. package/dist/client/bootstrap.mjs +24 -51
  2. package/dist/client/chunk-25PXC4HP.mjs +9914 -0
  3. package/dist/client/chunk-RXWLL2AI.mjs +30 -0
  4. package/dist/client/css/activity-bar.css +417 -0
  5. package/dist/client/css/base.css +167 -0
  6. package/dist/client/css/components.css +218 -0
  7. package/dist/client/css/cosmic.css +557 -0
  8. package/dist/client/css/dev-tools.css +163 -0
  9. package/dist/client/css/landing.css +184 -0
  10. package/dist/client/css/layout.css +896 -0
  11. package/dist/client/css/onboarding.css +181 -0
  12. package/dist/client/css/repos.css +740 -0
  13. package/dist/client/css/variables.css +64 -0
  14. package/dist/client/index.html +202 -31
  15. package/dist/client/index.mjs +32 -32
  16. package/dist/client/script.mjs +1 -1
  17. package/dist/client/style.css +11 -1056
  18. package/dist/respec-gib.node.mjs +5 -0
  19. package/dist/server/server.mjs +6879 -3109
  20. package/package.json +6 -6
  21. package/src/client/AUTO-GENERATED-version.mts +1 -1
  22. package/src/client/cosmos/seed-cosmos-workspace.mts +69 -0
  23. package/src/client/css/activity-bar.css +417 -0
  24. package/src/client/css/base.css +167 -0
  25. package/src/client/css/components.css +218 -0
  26. package/src/client/css/cosmic.css +557 -0
  27. package/src/client/css/dev-tools.css +163 -0
  28. package/src/client/css/landing.css +184 -0
  29. package/src/client/css/layout.css +896 -0
  30. package/src/client/css/onboarding.css +181 -0
  31. package/src/client/css/repos.css +740 -0
  32. package/src/client/css/variables.css +64 -0
  33. package/src/client/dev-tools/vcs-workspace.mts +3 -3
  34. package/src/client/index.html +202 -31
  35. package/src/client/style.css +11 -1056
  36. package/src/client/ui/component/chat-view/IMPLEMENTATION.md +48 -0
  37. package/src/client/ui/component/chat-view/chat-view.css +381 -0
  38. package/src/client/ui/component/chat-view/chat-view.html +104 -0
  39. package/src/client/ui/component/chat-view/chat-view.mts +277 -0
  40. package/src/client/ui/component/chat-view/index.mts +9 -0
  41. package/src/client/ui/component/clone/IMPLEMENTATION.md +68 -0
  42. package/src/client/ui/component/clone/clone-constants.mts +16 -0
  43. package/src/client/ui/component/clone/clone-types.mts +60 -0
  44. package/src/client/ui/component/clone/clone.css +383 -0
  45. package/src/client/ui/component/clone/clone.html +89 -0
  46. package/src/client/ui/component/clone/clone.mts +620 -0
  47. package/src/client/ui/component/clone/index.mts +11 -0
  48. package/src/client/ui/component/code-editor/IMPLEMENTATION.md +89 -0
  49. package/src/client/ui/component/code-editor/code-editor.css +275 -0
  50. package/src/client/ui/component/code-editor/code-editor.html +54 -0
  51. package/src/client/ui/component/code-editor/code-editor.mts +427 -0
  52. package/src/client/ui/component/code-editor/index.mts +9 -0
  53. package/src/client/ui/component/cosmos-navigator/IMPLEMENTATION.md +31 -0
  54. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.css +864 -0
  55. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.html +97 -0
  56. package/src/client/ui/component/cosmos-navigator/cosmos-navigator.mts +1084 -0
  57. package/src/client/ui/component/cosmos-navigator/index.mts +18 -0
  58. package/src/client/ui/component/file-explorer/IMPLEMENTATION.md +42 -0
  59. package/src/client/ui/component/file-explorer/file-explorer.css +256 -0
  60. package/src/client/ui/component/file-explorer/file-explorer.html +75 -0
  61. package/src/client/ui/component/file-explorer/file-explorer.mts +346 -0
  62. package/src/client/ui/component/file-explorer/index.mts +9 -0
  63. package/src/client/ui/component/nested-chat/IMPLEMENTATION.md +18 -0
  64. package/src/client/ui/component/nested-chat/chat/IMPLEMENTATION.md +14 -0
  65. package/src/client/ui/component/nested-chat/chat/chat-constants.mts +14 -0
  66. package/src/client/ui/component/nested-chat/chat/chat-helpers.mts +66 -0
  67. package/src/client/ui/component/nested-chat/chat/chat.css +654 -0
  68. package/src/client/ui/component/nested-chat/chat/chat.html +90 -0
  69. package/src/client/ui/component/nested-chat/chat/chat.mts +646 -0
  70. package/src/client/ui/component/nested-chat/chat/index.mts +7 -0
  71. package/src/client/ui/component/nested-chat/index.mts +14 -0
  72. package/src/client/ui/component/nested-chat/nested-chat-constants.mts +12 -0
  73. package/src/client/ui/component/nested-chat/nested-chat-types.mts +53 -0
  74. package/src/client/ui/component/nested-chat/nested-chat.css +142 -0
  75. package/src/client/ui/component/nested-chat/nested-chat.html +11 -0
  76. package/src/client/ui/component/nested-chat/nested-chat.mts +393 -0
  77. package/src/client/ui/component/notes-explorer/index.mts +9 -0
  78. package/src/client/ui/component/notes-explorer/notes-explorer.css +313 -0
  79. package/src/client/ui/component/notes-explorer/notes-explorer.html +136 -0
  80. package/src/client/ui/component/notes-explorer/notes-explorer.mts +240 -0
  81. package/src/client/ui/component/notes-inspector/index.mts +9 -0
  82. package/src/client/ui/component/notes-inspector/notes-inspector.css +244 -0
  83. package/src/client/ui/component/notes-inspector/notes-inspector.html +97 -0
  84. package/src/client/ui/component/notes-inspector/notes-inspector.mts +152 -0
  85. package/src/client/ui/component/pitch/IMPLEMENTATION.md +48 -0
  86. package/src/client/ui/component/pitch/index.mts +9 -0
  87. package/src/client/ui/component/pitch/pitch.css +295 -0
  88. package/src/client/ui/component/pitch/pitch.html +97 -0
  89. package/src/client/ui/component/pitch/pitch.mts +135 -0
  90. package/src/client/ui/component/timeline/IMPLEMENTATION.md +33 -0
  91. package/src/client/ui/component/timeline/index.mts +9 -0
  92. package/src/client/ui/component/timeline/timeline.css +264 -0
  93. package/src/client/ui/component/timeline/timeline.html +23 -0
  94. package/src/client/ui/component/timeline/timeline.mts +317 -0
  95. package/src/client/ui/component/timeline-item-details/IMPLEMENTATION.md +28 -0
  96. package/src/client/ui/component/timeline-item-details/index.mts +9 -0
  97. package/src/client/ui/component/timeline-item-details/timeline-item-details.css +286 -0
  98. package/src/client/ui/component/timeline-item-details/timeline-item-details.html +64 -0
  99. package/src/client/ui/component/timeline-item-details/timeline-item-details.mts +194 -0
  100. package/src/client/ui/router/index.mts +3 -0
  101. package/src/client/ui/router/space-gib-router-helpers.mts +272 -0
  102. package/src/client/ui/router/space-gib-router-helpers.respec.mts +353 -0
  103. package/src/client/ui/router/space-gib-router-service.mts +186 -0
  104. package/src/client/ui/router/space-gib-router-types.mts +93 -0
  105. package/src/client/ui/shell/cosmic-big-bang.mts +844 -0
  106. package/src/client/ui/shell/space-gib-shell-constants.mts +7 -0
  107. package/src/client/ui/shell/space-gib-shell-service.mts +1728 -31
  108. package/src/server/server.mts +20 -1
  109. package/tsconfig.test.json +5 -1
  110. package/dist/client/chunk-CRJV762I.mjs +0 -3102
  111. package/dist/client/chunk-LXRCF5OS.mjs +0 -25
  112. package/dist/client/chunk-UBDQUZZV.mjs +0 -1
@@ -0,0 +1,740 @@
1
+ /* =========================================================================
2
+ WORKSPACE MODE SWITCHER & REPOSITORIES EXPLORER (Phase 1 Web UI Sketch)
3
+ ========================================================================= */
4
+
5
+ /* ── Mode Switcher ── */
6
+ .mode-switcher {
7
+ display: inline-flex;
8
+ align-items: center;
9
+ background: rgba(0, 0, 0, 0.4);
10
+ border: 1px solid var(--clr-border);
11
+ border-radius: var(--radius-sm);
12
+ padding: 3px;
13
+ gap: 3px;
14
+ margin-right: auto;
15
+ }
16
+
17
+ .mode-btn {
18
+ display: inline-flex;
19
+ align-items: center;
20
+ gap: 0.4rem;
21
+ padding: 0.3rem 0.75rem;
22
+ background: transparent;
23
+ border: none;
24
+ border-radius: calc(var(--radius-sm) - 2px);
25
+ color: var(--clr-text-secondary);
26
+ font-family: var(--font-sans);
27
+ font-size: 0.85rem;
28
+ font-weight: 500;
29
+ cursor: pointer;
30
+ transition: all var(--t-fast);
31
+ }
32
+
33
+ .mode-btn:hover:not(.active) {
34
+ color: var(--clr-text-primary);
35
+ background: rgba(255, 255, 255, 0.05);
36
+ }
37
+
38
+ .mode-btn.active {
39
+ background: rgba(120, 248, 126, 0.12);
40
+ color: var(--clr-accent);
41
+ font-weight: 600;
42
+ box-shadow: 0 0 12px var(--clr-accent-glow);
43
+ }
44
+
45
+ .mode-icon {
46
+ font-size: 1rem;
47
+ line-height: 1;
48
+ }
49
+
50
+ .mode-label {
51
+ letter-spacing: 0.01em;
52
+ }
53
+
54
+ /* ── Workspace View Layout Containers ── */
55
+ .workspace-view {
56
+ width: 100%;
57
+ min-height: 100%;
58
+ }
59
+
60
+ .repo-workspace {
61
+ display: flex;
62
+ flex-direction: column;
63
+ height: 100%;
64
+ min-height: 100%;
65
+ overflow: hidden;
66
+ background: var(--clr-bg-deep);
67
+ }
68
+
69
+ /* ── Repo Top Bar ── */
70
+ .repo-top-bar {
71
+ display: flex;
72
+ align-items: center;
73
+ justify-content: space-between;
74
+ padding: 0.75rem 1.5rem;
75
+ background: rgba(11, 17, 32, 0.6);
76
+ border-bottom: 1px solid var(--clr-border);
77
+ flex-shrink: 0;
78
+ gap: 1rem;
79
+ flex-wrap: wrap;
80
+ }
81
+
82
+ .repo-identity {
83
+ display: flex;
84
+ align-items: center;
85
+ gap: 0.65rem;
86
+ }
87
+
88
+ .repo-icon {
89
+ font-size: 1.25rem;
90
+ }
91
+
92
+ .repo-name-group {
93
+ display: flex;
94
+ align-items: center;
95
+ font-size: 1.1rem;
96
+ font-weight: 600;
97
+ font-family: var(--font-sans);
98
+ }
99
+
100
+ .repo-owner {
101
+ color: var(--clr-text-secondary);
102
+ }
103
+
104
+ .repo-slash {
105
+ color: var(--clr-text-muted);
106
+ margin: 0 0.3rem;
107
+ }
108
+
109
+ .repo-title {
110
+ color: var(--clr-accent);
111
+ font-weight: 700;
112
+ }
113
+
114
+ .repo-badge {
115
+ font-size: 0.72rem;
116
+ text-transform: uppercase;
117
+ letter-spacing: 0.05em;
118
+ padding: 0.15rem 0.55rem;
119
+ border-radius: 999px;
120
+ background: rgba(120, 248, 126, 0.1);
121
+ border: 1px solid var(--clr-border);
122
+ color: var(--clr-accent);
123
+ font-weight: 600;
124
+ }
125
+
126
+ .repo-actions {
127
+ display: flex;
128
+ align-items: center;
129
+ gap: 0.65rem;
130
+ flex-wrap: wrap;
131
+ }
132
+
133
+ .branch-selector-stub {
134
+ display: flex;
135
+ align-items: center;
136
+ gap: 0.4rem;
137
+ padding: 0.35rem 0.75rem;
138
+ border: 1px solid var(--clr-border);
139
+ border-radius: var(--radius-sm);
140
+ background: rgba(255, 255, 255, 0.04);
141
+ font-size: 0.85rem;
142
+ color: var(--clr-text-primary);
143
+ cursor: pointer;
144
+ transition: all var(--t-fast);
145
+ }
146
+
147
+ .branch-selector-stub:hover {
148
+ border-color: var(--clr-border-hover);
149
+ background: rgba(255, 255, 255, 0.08);
150
+ }
151
+
152
+ .dropdown-chevron {
153
+ color: var(--clr-text-muted);
154
+ font-size: 0.75rem;
155
+ }
156
+
157
+ .commit-tip-badge {
158
+ display: flex;
159
+ align-items: center;
160
+ gap: 0.35rem;
161
+ padding: 0.35rem 0.6rem;
162
+ border-radius: var(--radius-sm);
163
+ background: rgba(0, 0, 0, 0.35);
164
+ border: 1px solid var(--clr-border);
165
+ font-family: var(--font-mono);
166
+ font-size: 0.8rem;
167
+ }
168
+
169
+ .tip-label {
170
+ color: var(--clr-text-muted);
171
+ }
172
+
173
+ .tip-hash {
174
+ color: var(--clr-accent);
175
+ font-weight: 600;
176
+ }
177
+
178
+ .repo-btn {
179
+ padding: 0.4rem 0.85rem;
180
+ border: 1px solid var(--clr-border);
181
+ border-radius: var(--radius-sm);
182
+ background: rgba(255, 255, 255, 0.04);
183
+ color: var(--clr-text-primary);
184
+ font-family: var(--font-sans);
185
+ font-size: 0.85rem;
186
+ cursor: pointer;
187
+ transition: all var(--t-fast);
188
+ }
189
+
190
+ .repo-btn:hover {
191
+ border-color: var(--clr-border-hover);
192
+ background: rgba(255, 255, 255, 0.08);
193
+ }
194
+
195
+ .repo-btn-primary {
196
+ background: var(--clr-accent);
197
+ border-color: var(--clr-accent);
198
+ color: var(--clr-bg-deep);
199
+ font-weight: 600;
200
+ }
201
+
202
+ .repo-btn-primary:hover {
203
+ background: #9fffa5;
204
+ }
205
+
206
+ /* ── Repo Layout (Two-Column Flex) ── */
207
+ .repo-layout {
208
+ display: flex;
209
+ flex: 1;
210
+ min-height: 0;
211
+ overflow: hidden;
212
+ }
213
+
214
+ /* ── Left Sidebar (Commits + File Tree) ── */
215
+ .repo-sidebar {
216
+ width: 320px;
217
+ min-width: 260px;
218
+ max-width: 420px;
219
+ border-right: 1px solid var(--clr-border);
220
+ background: rgba(5, 8, 15, 0.45);
221
+ display: flex;
222
+ flex-direction: column;
223
+ overflow-y: auto;
224
+ flex-shrink: 0;
225
+ }
226
+
227
+ .sidebar-section {
228
+ padding: 0.85rem 1.1rem;
229
+ border-bottom: 1px solid var(--clr-border);
230
+ }
231
+
232
+ .sidebar-section:last-child {
233
+ border-bottom: none;
234
+ flex: 1;
235
+ }
236
+
237
+ .sidebar-section-header {
238
+ display: flex;
239
+ align-items: center;
240
+ justify-content: space-between;
241
+ margin-bottom: 0.75rem;
242
+ }
243
+
244
+ .section-title {
245
+ font-size: 0.78rem;
246
+ font-weight: 700;
247
+ text-transform: uppercase;
248
+ letter-spacing: 0.06em;
249
+ color: var(--clr-text-secondary);
250
+ display: flex;
251
+ align-items: center;
252
+ gap: 0.4rem;
253
+ }
254
+
255
+ .section-badge,
256
+ .tree-counter {
257
+ font-size: 0.7rem;
258
+ color: var(--clr-accent);
259
+ background: rgba(120, 248, 126, 0.08);
260
+ border: 1px solid rgba(120, 248, 126, 0.15);
261
+ padding: 0.1rem 0.45rem;
262
+ border-radius: var(--radius-sm);
263
+ font-family: var(--font-mono);
264
+ }
265
+
266
+ /* Commits Timeline Feed */
267
+ .commit-timeline-stub {
268
+ display: flex;
269
+ flex-direction: column;
270
+ gap: 0.5rem;
271
+ position: relative;
272
+ padding-left: 0.35rem;
273
+ }
274
+
275
+ .commit-item {
276
+ display: flex;
277
+ gap: 0.65rem;
278
+ position: relative;
279
+ padding: 0.5rem 0.6rem;
280
+ border-radius: var(--radius-sm);
281
+ cursor: pointer;
282
+ transition: all var(--t-fast);
283
+ border: 1px solid transparent;
284
+ }
285
+
286
+ .commit-item:hover {
287
+ background: rgba(255, 255, 255, 0.03);
288
+ border-color: rgba(255, 255, 255, 0.06);
289
+ }
290
+
291
+ .commit-item.active {
292
+ background: rgba(120, 248, 126, 0.08);
293
+ border-color: rgba(120, 248, 126, 0.2);
294
+ border-left: 3px solid var(--clr-accent);
295
+ }
296
+
297
+ .commit-bullet {
298
+ width: 8px;
299
+ height: 8px;
300
+ border-radius: 50%;
301
+ background: var(--clr-accent);
302
+ margin-top: 5px;
303
+ flex-shrink: 0;
304
+ box-shadow: 0 0 6px var(--clr-accent-glow);
305
+ }
306
+
307
+ .commit-item:not(.active) .commit-bullet {
308
+ background: var(--clr-text-muted);
309
+ box-shadow: none;
310
+ }
311
+
312
+ .commit-info {
313
+ flex: 1;
314
+ min-width: 0;
315
+ }
316
+
317
+ .commit-msg {
318
+ font-size: 0.825rem;
319
+ color: var(--clr-text-primary);
320
+ font-weight: 500;
321
+ line-height: 1.35;
322
+ word-break: break-word;
323
+ }
324
+
325
+ .commit-meta {
326
+ display: flex;
327
+ align-items: center;
328
+ flex-wrap: wrap;
329
+ gap: 0.45rem;
330
+ font-size: 0.75rem;
331
+ color: var(--clr-text-muted);
332
+ font-family: var(--font-mono);
333
+ margin-top: 0.25rem;
334
+ }
335
+
336
+ .commit-hash {
337
+ color: var(--clr-accent);
338
+ font-weight: 600;
339
+ }
340
+
341
+ .companion-tag {
342
+ color: var(--clr-warn);
343
+ background: rgba(255, 204, 68, 0.12);
344
+ border: 1px solid rgba(255, 204, 68, 0.25);
345
+ padding: 0.05rem 0.35rem;
346
+ border-radius: 4px;
347
+ font-size: 0.7rem;
348
+ font-weight: 500;
349
+ }
350
+
351
+ /* File Tree Navigator */
352
+ .file-tree-stub {
353
+ display: flex;
354
+ flex-direction: column;
355
+ gap: 0.2rem;
356
+ }
357
+
358
+ .tree-item {
359
+ display: flex;
360
+ align-items: center;
361
+ gap: 0.4rem;
362
+ padding: 0.35rem 0.5rem;
363
+ border-radius: var(--radius-sm);
364
+ font-size: 0.85rem;
365
+ color: var(--clr-text-secondary);
366
+ cursor: pointer;
367
+ transition: all var(--t-fast);
368
+ border: 1px solid transparent;
369
+ }
370
+
371
+ .tree-item:hover {
372
+ background: rgba(255, 255, 255, 0.04);
373
+ color: var(--clr-text-primary);
374
+ }
375
+
376
+ .tree-item.selected {
377
+ background: rgba(120, 248, 126, 0.1);
378
+ border-color: rgba(120, 248, 126, 0.25);
379
+ color: var(--clr-accent);
380
+ font-weight: 500;
381
+ }
382
+
383
+ .tree-indent {
384
+ display: inline-block;
385
+ width: 0.85rem;
386
+ flex-shrink: 0;
387
+ }
388
+
389
+ .tree-indent-2 {
390
+ width: 1.7rem;
391
+ }
392
+
393
+ .tree-icon {
394
+ font-size: 0.95rem;
395
+ line-height: 1;
396
+ }
397
+
398
+ .tree-label {
399
+ flex: 1;
400
+ overflow: hidden;
401
+ text-overflow: ellipsis;
402
+ white-space: nowrap;
403
+ font-family: var(--font-mono);
404
+ font-size: 0.825rem;
405
+ }
406
+
407
+ .file-comment-badge {
408
+ margin-left: auto;
409
+ font-size: 0.8rem;
410
+ color: var(--clr-warn);
411
+ }
412
+
413
+ /* ── Main Content Area: Split View ── */
414
+ .repo-main-view {
415
+ flex: 1;
416
+ display: flex;
417
+ flex-direction: column;
418
+ min-width: 0;
419
+ overflow: hidden;
420
+ background: var(--clr-bg-deep);
421
+ }
422
+
423
+ /* File View Header Bar */
424
+ .file-view-header {
425
+ display: flex;
426
+ align-items: center;
427
+ justify-content: space-between;
428
+ padding: 0.65rem 1.25rem;
429
+ border-bottom: 1px solid var(--clr-border);
430
+ background: rgba(11, 17, 32, 0.5);
431
+ flex-shrink: 0;
432
+ gap: 1rem;
433
+ flex-wrap: wrap;
434
+ }
435
+
436
+ .file-breadcrumb {
437
+ display: flex;
438
+ align-items: center;
439
+ gap: 0.35rem;
440
+ font-size: 0.85rem;
441
+ font-family: var(--font-mono);
442
+ }
443
+
444
+ .crumb-repo {
445
+ color: var(--clr-text-muted);
446
+ }
447
+
448
+ .crumb-sep {
449
+ color: var(--clr-border);
450
+ }
451
+
452
+ .crumb-dir {
453
+ color: var(--clr-text-secondary);
454
+ }
455
+
456
+ .crumb-file {
457
+ color: var(--clr-accent);
458
+ font-weight: 600;
459
+ }
460
+
461
+ .file-meta-bar {
462
+ display: flex;
463
+ align-items: center;
464
+ gap: 0.65rem;
465
+ font-size: 0.8rem;
466
+ color: var(--clr-text-muted);
467
+ }
468
+
469
+ .file-stat-sep {
470
+ color: var(--clr-border);
471
+ }
472
+
473
+ .view-toggle-group {
474
+ display: flex;
475
+ background: rgba(0, 0, 0, 0.4);
476
+ border: 1px solid var(--clr-border);
477
+ border-radius: var(--radius-sm);
478
+ padding: 2px;
479
+ margin-left: 0.5rem;
480
+ }
481
+
482
+ .view-toggle-btn {
483
+ padding: 0.2rem 0.55rem;
484
+ border: none;
485
+ background: none;
486
+ color: var(--clr-text-secondary);
487
+ font-size: 0.75rem;
488
+ font-family: var(--font-sans);
489
+ border-radius: 4px;
490
+ cursor: pointer;
491
+ transition: all var(--t-fast);
492
+ }
493
+
494
+ .view-toggle-btn.active {
495
+ background: rgba(120, 248, 126, 0.15);
496
+ color: var(--clr-accent);
497
+ font-weight: 600;
498
+ }
499
+
500
+ /* Split Viewer Grid/Flex */
501
+ .split-viewer {
502
+ display: flex;
503
+ flex: 1;
504
+ min-height: 0;
505
+ overflow: hidden;
506
+ }
507
+
508
+ .viewer-pane {
509
+ flex: 1;
510
+ display: flex;
511
+ flex-direction: column;
512
+ min-width: 0;
513
+ overflow: hidden;
514
+ }
515
+
516
+ .code-pane {
517
+ border-right: none;
518
+ }
519
+
520
+ .pane-header {
521
+ display: flex;
522
+ align-items: center;
523
+ justify-content: space-between;
524
+ padding: 0.55rem 1rem;
525
+ background: rgba(0, 0, 0, 0.3);
526
+ border-bottom: 1px solid var(--clr-border);
527
+ flex-shrink: 0;
528
+ }
529
+
530
+ .pane-title {
531
+ display: flex;
532
+ align-items: center;
533
+ gap: 0.45rem;
534
+ font-size: 0.825rem;
535
+ font-weight: 600;
536
+ color: var(--clr-text-primary);
537
+ font-family: var(--font-mono);
538
+ }
539
+
540
+ .pane-tag {
541
+ font-size: 0.7rem;
542
+ font-family: var(--font-mono);
543
+ color: var(--clr-text-muted);
544
+ background: rgba(255, 255, 255, 0.05);
545
+ border: 1px solid rgba(255, 255, 255, 0.08);
546
+ padding: 0.1rem 0.4rem;
547
+ border-radius: 4px;
548
+ }
549
+
550
+ /* Code Editor Mock */
551
+ .code-editor-mock {
552
+ display: flex;
553
+ flex: 1;
554
+ overflow: auto;
555
+ background: rgba(5, 8, 15, 0.7);
556
+ font-family: var(--font-mono);
557
+ font-size: 0.85rem;
558
+ line-height: 1.6;
559
+ }
560
+
561
+ .code-line-numbers {
562
+ display: flex;
563
+ flex-direction: column;
564
+ padding: 0.85rem 0.6rem;
565
+ color: var(--clr-text-muted);
566
+ user-select: none;
567
+ text-align: right;
568
+ min-width: 2.75rem;
569
+ border-right: 1px solid rgba(255, 255, 255, 0.06);
570
+ background: rgba(0, 0, 0, 0.15);
571
+ }
572
+
573
+ .code-content {
574
+ margin: 0;
575
+ padding: 0.85rem 1.1rem;
576
+ color: var(--clr-text-primary);
577
+ overflow: visible;
578
+ flex: 1;
579
+ }
580
+
581
+ /* Syntax Highlighting Tokens (Monokai/Dracula-like) */
582
+ .tok-comment { color: #6e8499; font-style: italic; }
583
+ .tok-keyword { color: #ff79c6; font-weight: 600; }
584
+ .tok-string { color: #f1fa8c; }
585
+ .tok-function { color: #50fa7b; }
586
+ .tok-type { color: #8be9fd; font-weight: 500; }
587
+ .tok-variable { color: #f8f8f2; }
588
+ .tok-number { color: #bd93f9; }
589
+
590
+ /* Companion Note Pane */
591
+ .comment-pane {
592
+ background: rgba(11, 17, 32, 0.4);
593
+ overflow-y: auto;
594
+ }
595
+
596
+ .pane-header-comment {
597
+ border-bottom: 1px solid rgba(255, 204, 68, 0.25);
598
+ background: rgba(255, 204, 68, 0.03);
599
+ }
600
+
601
+ .comment-heading {
602
+ display: flex;
603
+ align-items: center;
604
+ gap: 0.45rem;
605
+ }
606
+
607
+ .comment-filename {
608
+ font-family: var(--font-mono);
609
+ font-size: 0.75rem;
610
+ color: var(--clr-warn);
611
+ }
612
+
613
+ .comment-badge {
614
+ font-size: 0.7rem;
615
+ color: var(--clr-warn);
616
+ background: rgba(255, 204, 68, 0.1);
617
+ border: 1px solid rgba(255, 204, 68, 0.25);
618
+ padding: 0.15rem 0.55rem;
619
+ border-radius: 999px;
620
+ font-weight: 600;
621
+ }
622
+
623
+ .comment-content {
624
+ padding: 1.25rem;
625
+ }
626
+
627
+ .comment-metadata-box {
628
+ padding: 0.75rem 1rem;
629
+ background: rgba(0, 0, 0, 0.35);
630
+ border: 1px solid var(--clr-border);
631
+ border-radius: var(--radius-sm);
632
+ margin-bottom: 1.25rem;
633
+ display: flex;
634
+ flex-direction: column;
635
+ gap: 0.4rem;
636
+ }
637
+
638
+ .meta-row {
639
+ display: flex;
640
+ gap: 0.6rem;
641
+ font-size: 0.8rem;
642
+ }
643
+
644
+ .meta-label {
645
+ color: var(--clr-text-muted);
646
+ min-width: 90px;
647
+ }
648
+
649
+ .meta-value {
650
+ color: var(--clr-text-primary);
651
+ }
652
+
653
+ .meta-value code {
654
+ background: rgba(255, 255, 255, 0.06);
655
+ padding: 0.1rem 0.35rem;
656
+ border-radius: 3px;
657
+ color: var(--clr-accent);
658
+ font-family: var(--font-mono);
659
+ }
660
+
661
+ /* Markdown Preview Styling inside Companion Note */
662
+ .markdown-preview {
663
+ font-size: 0.9rem;
664
+ line-height: 1.65;
665
+ color: var(--clr-text-primary);
666
+ }
667
+
668
+ .markdown-preview h3 {
669
+ font-size: 1.1rem;
670
+ color: var(--clr-accent);
671
+ margin-bottom: 0.6rem;
672
+ font-weight: 600;
673
+ }
674
+
675
+ .markdown-preview h4 {
676
+ font-size: 0.95rem;
677
+ color: var(--clr-text-primary);
678
+ margin: 1.25rem 0 0.5rem;
679
+ font-weight: 600;
680
+ }
681
+
682
+ .markdown-preview p {
683
+ color: var(--clr-text-secondary);
684
+ margin-bottom: 0.85rem;
685
+ }
686
+
687
+ .markdown-callout {
688
+ margin: 1rem 0;
689
+ padding: 0.85rem 1rem;
690
+ background: rgba(120, 248, 126, 0.04);
691
+ border: 1px solid var(--clr-border);
692
+ border-left: 3px solid var(--clr-accent);
693
+ border-radius: var(--radius-sm);
694
+ display: flex;
695
+ gap: 0.75rem;
696
+ }
697
+
698
+ .callout-icon {
699
+ font-size: 1.2rem;
700
+ line-height: 1;
701
+ flex-shrink: 0;
702
+ }
703
+
704
+ .callout-body {
705
+ font-size: 0.85rem;
706
+ color: var(--clr-text-primary);
707
+ line-height: 1.5;
708
+ }
709
+
710
+ .callout-body code {
711
+ background: rgba(255, 255, 255, 0.08);
712
+ padding: 0.1rem 0.35rem;
713
+ border-radius: 3px;
714
+ color: var(--clr-accent);
715
+ font-family: var(--font-mono);
716
+ }
717
+
718
+ .task-list {
719
+ list-style: none;
720
+ margin: 0.5rem 0;
721
+ padding: 0;
722
+ }
723
+
724
+ .task-list li {
725
+ display: flex;
726
+ align-items: center;
727
+ gap: 0.5rem;
728
+ margin-bottom: 0.4rem;
729
+ font-size: 0.85rem;
730
+ color: var(--clr-text-secondary);
731
+ }
732
+
733
+ .chk-box {
734
+ font-family: var(--font-mono);
735
+ color: var(--clr-text-muted);
736
+ }
737
+
738
+ .chk-box.checked {
739
+ color: var(--clr-accent);
740
+ }