claude-code-workflow 6.0.5 → 6.1.1

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 (118) hide show
  1. package/.claude/agents/action-planning-agent.md +1 -1
  2. package/.claude/agents/cli-execution-agent.md +269 -269
  3. package/.claude/agents/cli-explore-agent.md +182 -182
  4. package/.claude/agents/context-search-agent.md +582 -582
  5. package/.claude/agents/memory-bridge.md +93 -93
  6. package/.claude/commands/cli/cli-init.md +1 -1
  7. package/.claude/commands/memory/docs-full-cli.md +471 -471
  8. package/.claude/commands/memory/docs-related-cli.md +386 -386
  9. package/.claude/commands/memory/docs.md +615 -615
  10. package/.claude/commands/memory/load.md +1 -1
  11. package/.claude/commands/memory/update-full.md +332 -332
  12. package/.claude/commands/memory/update-related.md +5 -5
  13. package/.claude/commands/workflow/init.md +1 -1
  14. package/.claude/commands/workflow/lite-fix.md +621 -621
  15. package/.claude/commands/workflow/lite-plan.md +592 -592
  16. package/.claude/commands/workflow/tools/context-gather.md +434 -434
  17. package/.claude/commands/workflow/ui-design/generate.md +504 -504
  18. package/.claude/commands/workflow/ui-design/import-from-code.md +537 -537
  19. package/.claude/scripts/classify-folders.sh +4 -0
  20. package/.claude/scripts/convert_tokens_to_css.sh +4 -0
  21. package/.claude/scripts/detect_changed_modules.sh +5 -1
  22. package/.claude/scripts/discover-design-files.sh +87 -83
  23. package/.claude/scripts/generate_module_docs.sh +717 -713
  24. package/.claude/scripts/get_modules_by_depth.sh +5 -1
  25. package/.claude/scripts/ui-generate-preview.sh +4 -0
  26. package/.claude/scripts/ui-instantiate-prototypes.sh +4 -0
  27. package/.claude/scripts/update_module_claude.sh +4 -0
  28. package/.claude/skills/command-guide/index/all-commands.json +1 -12
  29. package/.claude/skills/command-guide/index/by-category.json +1 -12
  30. package/.claude/skills/command-guide/index/by-use-case.json +1 -12
  31. package/.claude/skills/command-guide/index/essential-commands.json +1 -12
  32. package/.claude/skills/command-guide/reference/agents/action-planning-agent.md +127 -71
  33. package/.claude/skills/command-guide/reference/agents/cli-execution-agent.md +269 -269
  34. package/.claude/skills/command-guide/reference/agents/cli-explore-agent.md +182 -182
  35. package/.claude/skills/command-guide/reference/agents/conceptual-planning-agent.md +18 -38
  36. package/.claude/skills/command-guide/reference/agents/context-search-agent.md +582 -577
  37. package/.claude/skills/command-guide/reference/agents/memory-bridge.md +93 -93
  38. package/.claude/skills/command-guide/reference/commands/cli/cli-init.md +1 -1
  39. package/.claude/skills/command-guide/reference/commands/memory/docs-full-cli.md +471 -471
  40. package/.claude/skills/command-guide/reference/commands/memory/docs-related-cli.md +386 -386
  41. package/.claude/skills/command-guide/reference/commands/memory/docs.md +615 -610
  42. package/.claude/skills/command-guide/reference/commands/memory/load.md +1 -1
  43. package/.claude/skills/command-guide/reference/commands/memory/update-full.md +332 -332
  44. package/.claude/skills/command-guide/reference/commands/memory/update-related.md +5 -5
  45. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/artifacts.md +299 -451
  46. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/auto-parallel.md +14 -37
  47. package/.claude/skills/command-guide/reference/commands/workflow/brainstorm/synthesis.md +252 -350
  48. package/.claude/skills/command-guide/reference/commands/workflow/init.md +2 -2
  49. package/.claude/skills/command-guide/reference/commands/workflow/lite-execute.md +52 -0
  50. package/.claude/skills/command-guide/reference/commands/workflow/lite-fix.md +621 -602
  51. package/.claude/skills/command-guide/reference/commands/workflow/lite-plan.md +46 -36
  52. package/.claude/skills/command-guide/reference/commands/workflow/review-fix.md +18 -58
  53. package/.claude/skills/command-guide/reference/commands/workflow/review-module-cycle.md +22 -52
  54. package/.claude/skills/command-guide/reference/commands/workflow/review-session-cycle.md +19 -48
  55. package/.claude/skills/command-guide/reference/commands/workflow/session/start.md +25 -5
  56. package/.claude/skills/command-guide/reference/commands/workflow/tdd-plan.md +1 -1
  57. package/.claude/skills/command-guide/reference/commands/workflow/test-fix-gen.md +7 -7
  58. package/.claude/skills/command-guide/reference/commands/workflow/tools/context-gather.md +434 -434
  59. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-agent.md +151 -11
  60. package/.claude/skills/command-guide/reference/commands/workflow/tools/task-generate-tdd.md +4 -4
  61. package/.claude/skills/command-guide/reference/commands/workflow/tools/test-task-generate.md +1 -1
  62. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/generate.md +504 -504
  63. package/.claude/skills/command-guide/reference/commands/workflow/ui-design/import-from-code.md +537 -537
  64. package/.claude/workflows/context-search-strategy.md +77 -77
  65. package/.claude/workflows/tool-strategy.md +90 -71
  66. package/.claude/workflows/workflow-architecture.md +1 -1
  67. package/README.md +285 -285
  68. package/ccw/src/cli.js +7 -0
  69. package/ccw/src/commands/tool.js +217 -0
  70. package/ccw/src/core/dashboard-generator.js +18 -3
  71. package/ccw/src/core/lite-scanner.js +35 -11
  72. package/ccw/src/core/server.js +531 -46
  73. package/ccw/src/templates/dashboard-css/01-base.css +161 -0
  74. package/ccw/src/templates/dashboard-css/02-session.css +726 -0
  75. package/ccw/src/templates/dashboard-css/03-tasks.css +512 -0
  76. package/ccw/src/templates/dashboard-css/04-lite-tasks.css +843 -0
  77. package/ccw/src/templates/dashboard-css/05-context.css +2206 -0
  78. package/ccw/src/templates/dashboard-css/06-cards.css +1570 -0
  79. package/ccw/src/templates/dashboard-css/07-managers.css +936 -0
  80. package/ccw/src/templates/dashboard-css/08-review.css +1266 -0
  81. package/ccw/src/templates/dashboard-css/09-explorer.css +1397 -0
  82. package/ccw/src/templates/dashboard-js/components/global-notifications.js +219 -0
  83. package/ccw/src/templates/dashboard-js/components/hook-manager.js +10 -0
  84. package/ccw/src/templates/dashboard-js/components/mcp-manager.js +11 -1
  85. package/ccw/src/templates/dashboard-js/components/navigation.js +11 -5
  86. package/ccw/src/templates/dashboard-js/components/tabs-context.js +20 -20
  87. package/ccw/src/templates/dashboard-js/components/tabs-other.js +11 -11
  88. package/ccw/src/templates/dashboard-js/components/theme.js +29 -1
  89. package/ccw/src/templates/dashboard-js/main.js +4 -0
  90. package/ccw/src/templates/dashboard-js/state.js +5 -0
  91. package/ccw/src/templates/dashboard-js/views/explorer.js +852 -0
  92. package/ccw/src/templates/dashboard-js/views/home.js +13 -9
  93. package/ccw/src/templates/dashboard-js/views/hook-manager.js +8 -5
  94. package/ccw/src/templates/dashboard-js/views/lite-tasks.js +21 -16
  95. package/ccw/src/templates/dashboard-js/views/mcp-manager.js +90 -19
  96. package/ccw/src/templates/dashboard-js/views/project-overview.js +15 -11
  97. package/ccw/src/templates/dashboard-js/views/review-session.js +3 -3
  98. package/ccw/src/templates/dashboard-js/views/session-detail.js +38 -28
  99. package/ccw/src/templates/dashboard.html +129 -28
  100. package/ccw/src/tools/classify-folders.js +204 -0
  101. package/ccw/src/tools/convert-tokens-to-css.js +250 -0
  102. package/ccw/src/tools/detect-changed-modules.js +288 -0
  103. package/ccw/src/tools/discover-design-files.js +134 -0
  104. package/ccw/src/tools/edit-file.js +266 -0
  105. package/ccw/src/tools/generate-module-docs.js +416 -0
  106. package/ccw/src/tools/get-modules-by-depth.js +308 -0
  107. package/ccw/src/tools/index.js +176 -0
  108. package/ccw/src/tools/ui-generate-preview.js +327 -0
  109. package/ccw/src/tools/ui-instantiate-prototypes.js +301 -0
  110. package/ccw/src/tools/update-module-claude.js +380 -0
  111. package/package.json +1 -1
  112. package/.claude/skills/command-guide/reference/commands/workflow/status.md +0 -352
  113. package/ccw/src/core/server.js.bak +0 -385
  114. package/ccw/src/core/server_original.bak +0 -385
  115. package/ccw/src/templates/dashboard.css +0 -8187
  116. package/ccw/src/templates/dashboard_tailwind.html +0 -42
  117. package/ccw/src/templates/dashboard_test.html +0 -37
  118. package/ccw/src/templates/tailwind-base.css +0 -212
@@ -0,0 +1,726 @@
1
+ /* ===================================
2
+ Session Cards (used by dashboard.js)
3
+ =================================== */
4
+
5
+ .sessions-grid {
6
+ display: grid;
7
+ grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
8
+ gap: 1rem;
9
+ }
10
+
11
+ .session-card {
12
+ background: hsl(var(--card));
13
+ border: 1px solid hsl(var(--border));
14
+ border-radius: 0.5rem;
15
+ padding: 1rem;
16
+ cursor: pointer;
17
+ transition: all 0.2s ease;
18
+ }
19
+
20
+ .session-card:hover {
21
+ box-shadow: 0 4px 12px rgb(0 0 0 / 0.1);
22
+ transform: translateY(-2px);
23
+ }
24
+
25
+ .session-header {
26
+ display: flex;
27
+ justify-content: space-between;
28
+ align-items: flex-start;
29
+ margin-bottom: 0.75rem;
30
+ }
31
+
32
+ .session-title {
33
+ font-weight: 600;
34
+ font-size: 0.9rem;
35
+ color: hsl(var(--foreground));
36
+ word-break: break-word;
37
+ }
38
+
39
+ .session-badges {
40
+ display: flex;
41
+ gap: 0.5rem;
42
+ flex-shrink: 0;
43
+ }
44
+
45
+ .session-status {
46
+ font-size: 0.65rem;
47
+ font-weight: 600;
48
+ padding: 0.2rem 0.5rem;
49
+ border-radius: 9999px;
50
+ text-transform: uppercase;
51
+ }
52
+
53
+ .session-status.active {
54
+ background: hsl(var(--success-light));
55
+ color: hsl(var(--success));
56
+ }
57
+
58
+ .session-status.archived {
59
+ background: hsl(var(--muted));
60
+ color: hsl(var(--muted-foreground));
61
+ }
62
+
63
+ .session-type-badge {
64
+ font-size: 0.65rem;
65
+ font-weight: 500;
66
+ padding: 0.2rem 0.5rem;
67
+ border-radius: 9999px;
68
+ background: hsl(var(--accent));
69
+ color: hsl(var(--accent-foreground));
70
+ text-transform: uppercase;
71
+ }
72
+
73
+ .session-type-badge.review {
74
+ background: hsl(var(--warning-light));
75
+ color: hsl(var(--warning));
76
+ }
77
+
78
+ .session-type-badge.test {
79
+ background: hsl(220 80% 90%);
80
+ color: hsl(220 80% 40%);
81
+ }
82
+
83
+ .session-body {
84
+ display: flex;
85
+ flex-direction: column;
86
+ gap: 0.75rem;
87
+ }
88
+
89
+ .session-meta {
90
+ display: flex;
91
+ gap: 1rem;
92
+ font-size: 0.8rem;
93
+ color: hsl(var(--muted-foreground));
94
+ }
95
+
96
+ .session-meta-item {
97
+ display: flex;
98
+ align-items: center;
99
+ gap: 0.25rem;
100
+ }
101
+
102
+ .progress-container {
103
+ display: flex;
104
+ flex-direction: column;
105
+ gap: 0.25rem;
106
+ }
107
+
108
+ .progress-label {
109
+ font-size: 0.75rem;
110
+ color: hsl(var(--muted-foreground));
111
+ }
112
+
113
+ .progress-bar-wrapper {
114
+ display: flex;
115
+ align-items: center;
116
+ gap: 0.75rem;
117
+ }
118
+
119
+ .progress-bar {
120
+ flex: 1;
121
+ height: 6px;
122
+ background: hsl(var(--muted));
123
+ border-radius: 3px;
124
+ overflow: hidden;
125
+ }
126
+
127
+ .progress-fill {
128
+ height: 100%;
129
+ background: linear-gradient(90deg, hsl(var(--primary)), hsl(var(--success)));
130
+ border-radius: 3px;
131
+ transition: width 0.3s ease;
132
+ }
133
+
134
+ .progress-text {
135
+ font-size: 0.75rem;
136
+ color: hsl(var(--muted-foreground));
137
+ white-space: nowrap;
138
+ }
139
+
140
+ /* Empty state */
141
+ .empty-state {
142
+ text-align: center;
143
+ padding: 3rem;
144
+ color: hsl(var(--muted-foreground));
145
+ }
146
+
147
+ .empty-state-icon {
148
+ font-size: 3rem;
149
+ margin-bottom: 1rem;
150
+ opacity: 0.5;
151
+ }
152
+
153
+ /* Session detail page */
154
+ .session-detail-header {
155
+ margin-bottom: 1.5rem;
156
+ }
157
+
158
+ .session-detail-title {
159
+ font-size: 1.5rem;
160
+ font-weight: 600;
161
+ color: hsl(var(--foreground));
162
+ margin-bottom: 0.5rem;
163
+ }
164
+
165
+ .session-detail-meta {
166
+ display: flex;
167
+ gap: 1rem;
168
+ flex-wrap: wrap;
169
+ font-size: 0.875rem;
170
+ color: hsl(var(--muted-foreground));
171
+ }
172
+
173
+ .task-list {
174
+ display: flex;
175
+ flex-direction: column;
176
+ gap: 0.5rem;
177
+ }
178
+
179
+ .task-item {
180
+ display: flex;
181
+ align-items: center;
182
+ gap: 0.75rem;
183
+ padding: 0.75rem 1rem;
184
+ background: hsl(var(--card));
185
+ border: 1px solid hsl(var(--border));
186
+ border-radius: 0.5rem;
187
+ cursor: pointer;
188
+ transition: all 0.15s ease;
189
+ }
190
+
191
+ .task-item:hover {
192
+ background: hsl(var(--hover));
193
+ }
194
+
195
+ .task-item.completed {
196
+ border-left: 3px solid hsl(var(--success));
197
+ opacity: 0.8;
198
+ }
199
+
200
+ .task-item.in_progress {
201
+ border-left: 3px solid hsl(var(--warning));
202
+ }
203
+
204
+ .task-item.pending {
205
+ border-left: 3px solid hsl(var(--muted-foreground));
206
+ }
207
+
208
+ .task-checkbox {
209
+ width: 1.25rem;
210
+ height: 1.25rem;
211
+ border-radius: 50%;
212
+ border: 2px solid hsl(var(--border));
213
+ display: flex;
214
+ align-items: center;
215
+ justify-content: center;
216
+ font-size: 0.7rem;
217
+ font-weight: bold;
218
+ flex-shrink: 0;
219
+ }
220
+
221
+ .task-item.completed .task-checkbox {
222
+ background: hsl(var(--success));
223
+ border-color: hsl(var(--success));
224
+ color: white;
225
+ }
226
+
227
+ .task-item.completed .task-checkbox::after {
228
+ content: '✓';
229
+ }
230
+
231
+ .task-item.in_progress .task-checkbox {
232
+ border-color: hsl(var(--warning));
233
+ color: hsl(var(--warning));
234
+ }
235
+
236
+ .task-item.in_progress .task-checkbox::after {
237
+ content: '⟳';
238
+ }
239
+
240
+ .task-title {
241
+ flex: 1;
242
+ font-size: 0.875rem;
243
+ color: hsl(var(--foreground));
244
+ }
245
+
246
+ .task-id {
247
+ font-size: 0.75rem;
248
+ font-family: var(--font-mono);
249
+ color: hsl(var(--muted-foreground));
250
+ }
251
+
252
+ /* Back button */
253
+ .back-button {
254
+ display: inline-flex;
255
+ align-items: center;
256
+ gap: 0.5rem;
257
+ padding: 0.5rem 1rem;
258
+ background: hsl(var(--muted));
259
+ border: none;
260
+ border-radius: 0.375rem;
261
+ font-size: 0.875rem;
262
+ color: hsl(var(--foreground));
263
+ cursor: pointer;
264
+ transition: background 0.15s;
265
+ margin-bottom: 1rem;
266
+ }
267
+
268
+ .back-button:hover {
269
+ background: hsl(var(--hover));
270
+ }
271
+
272
+ /* ===================================
273
+ Path Dropdown Menu
274
+ =================================== */
275
+
276
+ .path-menu {
277
+ min-width: 320px;
278
+ max-height: 400px;
279
+ overflow-y: auto;
280
+ }
281
+
282
+ .path-menu .path-item {
283
+ display: flex;
284
+ align-items: center;
285
+ gap: 0.75rem;
286
+ padding: 0.75rem 1rem;
287
+ cursor: pointer;
288
+ transition: background 0.15s;
289
+ border-bottom: 1px solid hsl(var(--border));
290
+ }
291
+
292
+ .path-menu .path-item:hover {
293
+ background: hsl(var(--hover));
294
+ }
295
+
296
+ .path-menu .path-item:last-child {
297
+ border-bottom: none;
298
+ }
299
+
300
+ .path-menu .path-icon {
301
+ font-size: 1.25rem;
302
+ flex-shrink: 0;
303
+ }
304
+
305
+ .path-menu .path-text {
306
+ flex: 1;
307
+ font-size: 0.875rem;
308
+ color: hsl(var(--foreground));
309
+ word-break: break-all;
310
+ }
311
+
312
+ .path-menu .path-item {
313
+ display: flex;
314
+ align-items: center;
315
+ justify-content: space-between;
316
+ }
317
+
318
+ .path-menu .path-text {
319
+ cursor: pointer;
320
+ }
321
+
322
+ .path-delete-btn {
323
+ width: 20px;
324
+ height: 20px;
325
+ border: none;
326
+ background: transparent;
327
+ color: hsl(var(--muted-foreground));
328
+ font-size: 16px;
329
+ font-weight: bold;
330
+ cursor: pointer;
331
+ border-radius: 4px;
332
+ display: flex;
333
+ align-items: center;
334
+ justify-content: center;
335
+ opacity: 0;
336
+ transition: opacity 0.15s, background 0.15s, color 0.15s;
337
+ flex-shrink: 0;
338
+ margin-left: 8px;
339
+ }
340
+
341
+ .path-menu .path-item:hover .path-delete-btn {
342
+ opacity: 1;
343
+ }
344
+
345
+ .path-delete-btn:hover {
346
+ background: hsl(var(--destructive) / 0.1);
347
+ color: hsl(var(--destructive));
348
+ }
349
+
350
+ /* ===================================
351
+ Session Detail Page
352
+ =================================== */
353
+
354
+ .session-detail-page {
355
+ display: flex;
356
+ flex-direction: column;
357
+ gap: 1.5rem;
358
+ }
359
+
360
+ .detail-header {
361
+ display: flex;
362
+ flex-direction: column;
363
+ gap: 1rem;
364
+ }
365
+
366
+ .btn-back {
367
+ display: inline-flex;
368
+ align-items: center;
369
+ gap: 0.5rem;
370
+ padding: 0.5rem 1rem;
371
+ background: hsl(var(--muted));
372
+ border: none;
373
+ border-radius: 0.375rem;
374
+ font-size: 0.875rem;
375
+ color: hsl(var(--foreground));
376
+ cursor: pointer;
377
+ transition: background 0.15s;
378
+ width: fit-content;
379
+ }
380
+
381
+ .btn-back:hover {
382
+ background: hsl(var(--hover));
383
+ }
384
+
385
+ .back-icon {
386
+ font-size: 1rem;
387
+ }
388
+
389
+ .detail-title-row {
390
+ display: flex;
391
+ align-items: center;
392
+ gap: 1rem;
393
+ flex-wrap: wrap;
394
+ }
395
+
396
+ .detail-session-id {
397
+ font-size: 1.5rem;
398
+ font-weight: 600;
399
+ color: hsl(var(--foreground));
400
+ margin: 0;
401
+ word-break: break-word;
402
+ }
403
+
404
+ .detail-badges {
405
+ display: flex;
406
+ gap: 0.5rem;
407
+ }
408
+
409
+ .detail-info-bar {
410
+ display: flex;
411
+ flex-wrap: wrap;
412
+ gap: 1.5rem;
413
+ padding: 1rem;
414
+ background: hsl(var(--card));
415
+ border: 1px solid hsl(var(--border));
416
+ border-radius: 0.5rem;
417
+ }
418
+
419
+ .info-item {
420
+ display: flex;
421
+ gap: 0.5rem;
422
+ font-size: 0.875rem;
423
+ }
424
+
425
+ .info-label {
426
+ color: hsl(var(--muted-foreground));
427
+ }
428
+
429
+ .info-value {
430
+ color: hsl(var(--foreground));
431
+ font-weight: 500;
432
+ }
433
+
434
+ /* Detail Tabs */
435
+ .detail-tabs {
436
+ display: flex;
437
+ gap: 0.25rem;
438
+ border-bottom: 1px solid hsl(var(--border));
439
+ overflow-x: auto;
440
+ }
441
+
442
+ .detail-tab {
443
+ display: flex;
444
+ align-items: center;
445
+ gap: 0.5rem;
446
+ padding: 0.75rem 1rem;
447
+ background: none;
448
+ border: none;
449
+ border-bottom: 2px solid transparent;
450
+ font-size: 0.875rem;
451
+ color: hsl(var(--muted-foreground));
452
+ cursor: pointer;
453
+ transition: all 0.15s;
454
+ white-space: nowrap;
455
+ }
456
+
457
+ .detail-tab:hover {
458
+ color: hsl(var(--foreground));
459
+ background: hsl(var(--hover));
460
+ }
461
+
462
+ .detail-tab.active {
463
+ color: hsl(var(--primary));
464
+ border-bottom-color: hsl(var(--primary));
465
+ }
466
+
467
+ .tab-icon {
468
+ font-size: 1rem;
469
+ }
470
+
471
+ .tab-count {
472
+ padding: 0.125rem 0.5rem;
473
+ background: hsl(var(--muted));
474
+ border-radius: 9999px;
475
+ font-size: 0.75rem;
476
+ font-weight: 500;
477
+ }
478
+
479
+ .detail-tab.active .tab-count {
480
+ background: hsl(var(--primary));
481
+ color: hsl(var(--primary-foreground));
482
+ }
483
+
484
+ .detail-tab-content {
485
+ min-height: 300px;
486
+ }
487
+
488
+ /* Task Stats */
489
+ .task-stats {
490
+ display: flex;
491
+ gap: 1rem;
492
+ margin-bottom: 1rem;
493
+ }
494
+
495
+ .task-stat {
496
+ display: flex;
497
+ align-items: center;
498
+ gap: 0.5rem;
499
+ padding: 0.5rem 1rem;
500
+ background: hsl(var(--card));
501
+ border: 1px solid hsl(var(--border));
502
+ border-radius: 0.375rem;
503
+ font-size: 0.875rem;
504
+ }
505
+
506
+ .task-stat.completed { border-left: 3px solid hsl(var(--success)); }
507
+ .task-stat.in-progress { border-left: 3px solid hsl(var(--warning)); }
508
+ .task-stat.pending { border-left: 3px solid hsl(var(--muted-foreground)); }
509
+
510
+ .stat-count {
511
+ font-weight: 600;
512
+ color: hsl(var(--foreground));
513
+ }
514
+
515
+ .stat-label {
516
+ color: hsl(var(--muted-foreground));
517
+ }
518
+
519
+ /* Tab Loading */
520
+ .tab-loading {
521
+ display: flex;
522
+ align-items: center;
523
+ justify-content: center;
524
+ padding: 3rem;
525
+ color: hsl(var(--muted-foreground));
526
+ font-size: 0.875rem;
527
+ }
528
+
529
+ /* Context/Summary Content */
530
+ .context-content,
531
+ .summary-content,
532
+ .impl-plan-content,
533
+ .review-content {
534
+ padding: 1rem;
535
+ background: hsl(var(--card));
536
+ border: 1px solid hsl(var(--border));
537
+ border-radius: 0.5rem;
538
+ }
539
+
540
+ .context-section,
541
+ .summary-section,
542
+ .plan-section {
543
+ margin-bottom: 1.5rem;
544
+ }
545
+
546
+ .context-section:last-child,
547
+ .summary-section:last-child,
548
+ .plan-section:last-child {
549
+ margin-bottom: 0;
550
+ }
551
+
552
+ /* Plan Tab Styles */
553
+ .plan-tab-content {
554
+ padding: 1rem 0;
555
+ }
556
+
557
+ .plan-section-title {
558
+ font-size: 1rem;
559
+ font-weight: 600;
560
+ color: hsl(var(--foreground));
561
+ margin-bottom: 0.75rem;
562
+ display: flex;
563
+ align-items: center;
564
+ gap: 0.5rem;
565
+ }
566
+
567
+ .plan-summary-text,
568
+ .plan-approach-text {
569
+ color: hsl(var(--foreground));
570
+ line-height: 1.6;
571
+ padding: 0.75rem 1rem;
572
+ background: hsl(var(--muted));
573
+ border-radius: 0.5rem;
574
+ border-left: 3px solid hsl(var(--primary));
575
+ }
576
+
577
+ .plan-meta-grid {
578
+ display: grid;
579
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
580
+ gap: 0.75rem;
581
+ }
582
+
583
+ .plan-meta-grid .meta-item {
584
+ padding: 0.5rem 0.75rem;
585
+ background: hsl(var(--muted));
586
+ border-radius: 0.25rem;
587
+ font-size: 0.875rem;
588
+ }
589
+
590
+ .plan-meta-grid .meta-label {
591
+ font-weight: 600;
592
+ color: hsl(var(--muted-foreground));
593
+ }
594
+
595
+ /* Lite Task Detail Page */
596
+ .lite-task-detail-page .detail-header {
597
+ margin-bottom: 1.5rem;
598
+ }
599
+
600
+ .lite-task-detail-page .task-toolbar {
601
+ margin-bottom: 1rem;
602
+ }
603
+
604
+ .lite-task-detail-page .task-stat {
605
+ font-size: 0.8rem;
606
+ }
607
+
608
+ /* Context Tab Content */
609
+ .context-tab-content {
610
+ padding: 1rem 0;
611
+ }
612
+
613
+ .context-tab-content .context-section h4 {
614
+ font-size: 0.9rem;
615
+ font-weight: 600;
616
+ color: hsl(var(--foreground));
617
+ margin-bottom: 0.5rem;
618
+ }
619
+
620
+ .context-tab-content .context-section p {
621
+ color: hsl(var(--foreground));
622
+ line-height: 1.6;
623
+ }
624
+
625
+ .section-title {
626
+ font-size: 1rem;
627
+ font-weight: 600;
628
+ color: hsl(var(--foreground));
629
+ margin-bottom: 0.75rem;
630
+ display: flex;
631
+ align-items: center;
632
+ gap: 0.5rem;
633
+ }
634
+
635
+ .file-list {
636
+ display: flex;
637
+ flex-direction: column;
638
+ gap: 0.25rem;
639
+ }
640
+
641
+ .file-item {
642
+ padding: 0.5rem 0.75rem;
643
+ background: hsl(var(--muted));
644
+ border-radius: 0.25rem;
645
+ font-family: var(--font-mono);
646
+ font-size: 0.8rem;
647
+ color: hsl(var(--foreground));
648
+ }
649
+
650
+ /* Code blocks */
651
+ pre, code {
652
+ font-family: var(--font-mono);
653
+ background: hsl(var(--muted));
654
+ border-radius: 0.25rem;
655
+ }
656
+
657
+ pre {
658
+ padding: 1rem;
659
+ overflow-x: auto;
660
+ font-size: 0.8rem;
661
+ line-height: 1.5;
662
+ }
663
+
664
+ code {
665
+ padding: 0.125rem 0.25rem;
666
+ font-size: 0.85em;
667
+ }
668
+
669
+ /* Review Findings */
670
+ .findings-list {
671
+ display: flex;
672
+ flex-direction: column;
673
+ gap: 0.75rem;
674
+ }
675
+
676
+ .finding-item {
677
+ padding: 1rem;
678
+ background: hsl(var(--card));
679
+ border: 1px solid hsl(var(--border));
680
+ border-radius: 0.5rem;
681
+ border-left: 3px solid hsl(var(--border));
682
+ }
683
+
684
+ .finding-item.critical { border-left-color: hsl(0 70% 50%); }
685
+ .finding-item.high { border-left-color: hsl(25 90% 55%); }
686
+ .finding-item.medium { border-left-color: hsl(45 90% 50%); }
687
+ .finding-item.low { border-left-color: hsl(var(--success)); }
688
+
689
+ .finding-header {
690
+ display: flex;
691
+ justify-content: space-between;
692
+ align-items: flex-start;
693
+ margin-bottom: 0.5rem;
694
+ }
695
+
696
+ .finding-title {
697
+ font-weight: 600;
698
+ color: hsl(var(--foreground));
699
+ }
700
+
701
+ .severity-badge {
702
+ padding: 0.125rem 0.5rem;
703
+ border-radius: 9999px;
704
+ font-size: 0.7rem;
705
+ font-weight: 600;
706
+ text-transform: uppercase;
707
+ }
708
+
709
+ .severity-badge.critical { background: hsl(0 70% 90%); color: hsl(0 70% 40%); }
710
+ .severity-badge.high { background: hsl(25 90% 90%); color: hsl(25 90% 35%); }
711
+ .severity-badge.medium { background: hsl(45 90% 90%); color: hsl(45 90% 30%); }
712
+ .severity-badge.low { background: hsl(var(--success-light)); color: hsl(var(--success)); }
713
+
714
+ .finding-description {
715
+ font-size: 0.875rem;
716
+ color: hsl(var(--muted-foreground));
717
+ line-height: 1.5;
718
+ }
719
+
720
+ .finding-location {
721
+ margin-top: 0.5rem;
722
+ font-size: 0.75rem;
723
+ font-family: var(--font-mono);
724
+ color: hsl(var(--muted-foreground));
725
+ }
726
+