@kolkrabbi/kol-theme 0.7.0 → 0.7.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.
@@ -28,6 +28,17 @@
28
28
  }
29
29
  }
30
30
 
31
+ /* Hide the scrollbar on the dashboard's horizontal strips (timeline, host
32
+ pills) while keeping them scrollable. Firefox uses scrollbar-width; WebKit
33
+ the pseudo-element. */
34
+ .scrollbar-none {
35
+ scrollbar-width: none;
36
+ -ms-overflow-style: none;
37
+ }
38
+ .scrollbar-none::-webkit-scrollbar {
39
+ display: none;
40
+ }
41
+
31
42
  /* ---------------------------------------------------------------------------
32
43
  * Dashboard Card Base
33
44
  * --------------------------------------------------------------------------- */
@@ -0,0 +1,700 @@
1
+ /* =============================================================================
2
+ * KOL components — workshop / docs chrome
3
+ * =============================================================================
4
+ * Shell + docs layout chrome shared across the Workshop and Docs surfaces.
5
+ * Relocated from the monorepo's private @kol/ui package:
6
+ * packages/ui/css/components.css → the .shell-* navigation classes
7
+ * packages/ui/css/docs.css → the .docs-* content classes
8
+ * (+ docs-only .inline-tag-pill, .tag-graph-*)
9
+ *
10
+ * Class hooks are preserved verbatim so the JSX bindings keep resolving.
11
+ *
12
+ * Layer: this file ships unlayered; kol-theme.css assigns the layer at import —
13
+ * @import "./kol-components-workshop.css" layer(components);
14
+ * placing it in the `components` cascade layer alongside the rest of KOL chrome,
15
+ * so consumer utilities (a later Tailwind layer) still override it.
16
+ *
17
+ * KOL conformance on relocation:
18
+ * - text-transform: uppercase | capitalize stripped (casing is a content
19
+ * concern in KOL) — 5 declarations removed.
20
+ * - font-family / color / spacing kept as var(--kol-*) token refs.
21
+ * ============================================================================= */
22
+
23
+ /* =============================================================================
24
+ * SHELL NAVIGATION CLASSES
25
+ * =============================================================================
26
+ * Shell layout classes shared across Workshop, Docs, and future apps.
27
+ */
28
+
29
+ /* Shell Page Header */
30
+ .shell-page-header {
31
+ background: var(--kol-surface-primary);
32
+ }
33
+
34
+ /* Shell Tab Row */
35
+ .shell-tabrow-items {
36
+ display: flex;
37
+ flex-wrap: nowrap;
38
+ gap: 24px;
39
+ overflow-x: auto;
40
+ padding-top: 8px;
41
+ padding-bottom: 0;
42
+ scrollbar-width: none;
43
+ -ms-overflow-style: none;
44
+ }
45
+
46
+ .shell-tabrow-items::-webkit-scrollbar {
47
+ display: none;
48
+ }
49
+
50
+ .shell-tab {
51
+ display: inline-flex;
52
+ align-items: center;
53
+ gap: 6px;
54
+ font-family: var(--kol-font-family-mono);
55
+ font-size: 13px;
56
+ font-weight: 500;
57
+ letter-spacing: 0.02em;
58
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 60%, transparent);
59
+ white-space: nowrap;
60
+ flex-shrink: 0;
61
+ padding-top: 8px;
62
+ padding-bottom: 12px;
63
+ border-bottom: 2px solid transparent;
64
+ transition: color 0.2s ease, border-color 0.2s ease;
65
+ text-decoration: none;
66
+ }
67
+
68
+ .shell-tab:hover {
69
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 90%, transparent);
70
+ }
71
+
72
+ .shell-tab.active,
73
+ .shell-tab:active {
74
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
75
+ border-bottom-color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
76
+ }
77
+
78
+ /* Sidebar sticky wrappers — hidden scrollbar, still scrollable */
79
+ .shell-sidebar-sticky {
80
+ scrollbar-width: none;
81
+ }
82
+
83
+ .shell-sidebar-sticky::-webkit-scrollbar {
84
+ display: none;
85
+ }
86
+
87
+ /* Sidebar toggle buttons (collapsible section headers) */
88
+ .shell-sidebar-toggle {
89
+ display: flex;
90
+ align-items: center;
91
+ gap: 6px;
92
+ cursor: pointer;
93
+ width: 100%;
94
+ border: none;
95
+ background: transparent;
96
+ padding: 0;
97
+ letter-spacing: 0.08em;
98
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 48%, transparent);
99
+ transition: color 0.15s ease;
100
+ }
101
+
102
+ .shell-sidebar-toggle:hover {
103
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 72%, transparent);
104
+ }
105
+
106
+ .shell-sidebar-toggle.primary {
107
+ color: var(--kol-palette-blue);
108
+ }
109
+
110
+ /* Sidebar section labels */
111
+ .shell-sidebar-label {
112
+ font-family: var(--kol-font-family-mono);
113
+ font-size: 11px;
114
+ letter-spacing: 0.08em;
115
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 48%, transparent);
116
+ margin-bottom: 8px;
117
+ font-weight: 500;
118
+ }
119
+
120
+ /* Sidebar links */
121
+ .shell-sidebar-link {
122
+ font-family: var(--kol-font-family-mono);
123
+ font-size: 13px;
124
+ padding: 4px 0;
125
+ border-radius: 4px;
126
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
127
+ text-decoration: none;
128
+ transition: all 0.15s ease;
129
+ display: block;
130
+ }
131
+
132
+ .shell-sidebar-link:hover {
133
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
134
+ }
135
+
136
+ .shell-sidebar-link.active {
137
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
138
+ }
139
+
140
+ /* Sidebar action buttons */
141
+ .shell-sidebar-action {
142
+ font-family: var(--kol-font-family-mono);
143
+ font-size: 13px;
144
+ padding: 4px 0;
145
+ border-radius: 4px;
146
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
147
+ transition: all 0.15s ease;
148
+ display: flex;
149
+ align-items: center;
150
+ gap: 8px;
151
+ width: 100%;
152
+ text-align: left;
153
+ border: none;
154
+ background: transparent;
155
+ cursor: pointer;
156
+ text-decoration: none;
157
+ }
158
+
159
+ .shell-sidebar-action:hover {
160
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
161
+ }
162
+
163
+ /* TOC expand button */
164
+ .shell-toc-expand-button {
165
+ padding: 2px;
166
+ border: none;
167
+ background: transparent;
168
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 48%, transparent);
169
+ cursor: pointer;
170
+ transition: color 0.15s ease;
171
+ display: flex;
172
+ align-items: center;
173
+ justify-content: center;
174
+ flex-shrink: 0;
175
+ }
176
+
177
+ .shell-toc-expand-button:hover {
178
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
179
+ }
180
+
181
+ /* Navigation header label */
182
+ .shell-nav-header {
183
+ font-family: var(--kol-font-family-mono);
184
+ font-size: 11px;
185
+ letter-spacing: 0.08em;
186
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 48%, transparent);
187
+ margin-bottom: 12px;
188
+ font-weight: 500;
189
+ }
190
+
191
+ /* Navigation group */
192
+ .shell-nav-group-header {
193
+ font-family: var(--kol-font-family-mono);
194
+ font-size: 13px;
195
+ font-weight: 500;
196
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 72%, transparent);
197
+ padding: 6px 0 6px 0;
198
+ cursor: pointer;
199
+ display: flex;
200
+ justify-content: space-between;
201
+ align-items: center;
202
+ transition: color 0.15s ease;
203
+ }
204
+
205
+ .shell-nav-group-header:hover {
206
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 90%, transparent);
207
+ }
208
+
209
+ .shell-nav-group-count {
210
+ font-size: 11px;
211
+ opacity: 0.6;
212
+ }
213
+
214
+ .shell-nav-items {
215
+ display: flex;
216
+ flex-direction: column;
217
+ gap: 4px;
218
+ margin-top: 4px;
219
+ }
220
+
221
+ /* Navigation items */
222
+ .shell-nav-item {
223
+ font-family: var(--kol-font-family-mono);
224
+ font-size: 14px;
225
+ font-weight: 500;
226
+ letter-spacing: 0.08em;
227
+ padding: 4px 12px 4px 20px;
228
+ border-radius: 0px;
229
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
230
+ text-decoration: none;
231
+ transition: all 0.15s ease;
232
+ display: block;
233
+ }
234
+
235
+ .shell-nav-item:hover {
236
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
237
+ }
238
+
239
+ .shell-nav-item.active {
240
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 100%, transparent);
241
+ }
242
+
243
+ .shell-nav-item-doc {
244
+ display: flex;
245
+ align-items: baseline;
246
+ justify-content: space-between;
247
+ gap: 8px;
248
+ }
249
+
250
+ .shell-nav-item-id {
251
+ font-size: 11px;
252
+ opacity: 0.4;
253
+ flex-shrink: 0;
254
+ }
255
+
256
+ .shell-nav-item-title {
257
+ font-size: 13px;
258
+ letter-spacing: 0.05em;
259
+ }
260
+
261
+ /* Wide viewport nav font bumps */
262
+ @media (min-width: 1600px) {
263
+ .shell-tabrow-items {
264
+ gap: 32px;
265
+ }
266
+
267
+ .shell-tab {
268
+ font-size: 16px;
269
+ gap: 8px;
270
+ padding-top: 10px;
271
+ padding-bottom: 14px;
272
+ }
273
+
274
+ .shell-tab svg {
275
+ width: 18px;
276
+ height: 18px;
277
+ }
278
+
279
+ .shell-sidebar-link,
280
+ .shell-sidebar-action,
281
+ .shell-nav-group-header,
282
+ .shell-nav-item-title {
283
+ font-size: 16px;
284
+ }
285
+
286
+ .shell-sidebar-action svg {
287
+ width: 18px;
288
+ height: 18px;
289
+ }
290
+
291
+ .shell-nav-item {
292
+ font-size: 16px;
293
+ padding: 5px 14px 5px 24px;
294
+ }
295
+
296
+ .shell-sidebar-label,
297
+ .shell-nav-header,
298
+ .shell-nav-group-count,
299
+ .shell-nav-item-id,
300
+ .toggle-switch-label {
301
+ font-size: 13px;
302
+ }
303
+
304
+ /* Wide grid gap */
305
+ .shell-content-grid {
306
+ gap: 48px;
307
+ }
308
+ }
309
+
310
+ /* =============================================================================
311
+ * DOCS CONTENT CLASSES
312
+ * =============================================================================
313
+ * Content-rendering styles for documentation pages: cards, article, prose,
314
+ * frontmatter, callouts, code, tags, and the tag-graph sidebar.
315
+ */
316
+
317
+ /* Documentation Card (used in inventory listing) */
318
+ .docs-card {
319
+ display: block;
320
+ padding: 16px;
321
+ border-radius: 8px;
322
+ border: 1px solid;
323
+ border-color: color-mix(in srgb, var(--kol-surface-on-primary) 4%, transparent);
324
+ background: transparent;
325
+ transition: all 0.2s ease;
326
+ text-decoration: none;
327
+ color: inherit;
328
+ }
329
+
330
+ .docs-card:hover {
331
+ border-color: color-mix(in srgb, var(--kol-surface-on-primary) 12%, transparent);
332
+ background: color-mix(in srgb, var(--kol-surface-on-primary) 2%, transparent);
333
+ }
334
+
335
+ .docs-card:hover * {
336
+ color: inherit;
337
+ }
338
+
339
+ /* Compact doc card for sidebar */
340
+ .docs-card--compact {
341
+ padding: 8px 12px;
342
+ border-radius: 6px;
343
+ }
344
+
345
+ .docs-title {
346
+ font-family: var(--kol-font-family-sans);
347
+ font-size: 32px; /* 32px → 40px */
348
+ line-height: 1.1;
349
+ font-weight: 500;
350
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
351
+ }
352
+ @media (min-width: 768px) {
353
+ .docs-title { font-size: 40px; }
354
+ }
355
+
356
+ .docs-title-link {
357
+ color: inherit;
358
+ text-decoration: none;
359
+ display: inline-flex;
360
+ align-items: center;
361
+ gap: 8px;
362
+ }
363
+
364
+ .docs-subtitle {
365
+ font-family: var(--kol-font-family-mono);
366
+ font-size: 14px;
367
+ line-height: 1.6;
368
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 48%, transparent);
369
+ }
370
+
371
+ .docs-meta {
372
+ font-family: var(--kol-font-family-mono);
373
+ font-size: 11px;
374
+ letter-spacing: 0.18em;
375
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
376
+ display: flex;
377
+ flex-wrap: wrap;
378
+ gap: 12px;
379
+ }
380
+
381
+ .docs-meta strong {
382
+ font-weight: 600;
383
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 72%, transparent);
384
+ }
385
+
386
+ .docs-article {
387
+ width: 100%;
388
+ margin-inline: 0;
389
+ container-type: inline-size;
390
+ font-family: var(--kol-font-family-sans);
391
+ font-size: 15px; /* 15px → 16px */
392
+ line-height: 1.75;
393
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
394
+ }
395
+
396
+ @media (min-width: 768px) {
397
+ .docs-article { font-size: 16px; }
398
+ .docs-article .kol-codeblock { padding: 24px; }
399
+ }
400
+
401
+ @media (min-width: 1024px) {
402
+ .docs-article .kol-codeblock { padding: 32px; }
403
+ }
404
+
405
+ .docs-article h2 {
406
+ font-family: var(--kol-font-family-sans-narrow);
407
+ font-size: 24px; /* 24px → 32px */
408
+ line-height: 1.2;
409
+ margin-block-start: 2rem;
410
+ margin-block-end: 1rem;
411
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
412
+ }
413
+ @media (min-width: 768px) {
414
+ .docs-article h2 { font-size: 32px; }
415
+ }
416
+
417
+ .docs-article h2:first-child,
418
+ .docs-article section:first-child h2:first-child {
419
+ margin-block-start: 0;
420
+ }
421
+
422
+ .docs-article h3 {
423
+ font-family: var(--kol-font-family-sans-compact);
424
+ font-size: 20px; /* 20px → 28px */
425
+ line-height: 1.25;
426
+ margin-block-start: 1.5rem;
427
+ margin-block-end: 0.75rem;
428
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 80%, transparent);
429
+ }
430
+ @media (min-width: 768px) {
431
+ .docs-article h3 { font-size: 28px; }
432
+ }
433
+
434
+ .docs-article h4 {
435
+ font-family: var(--kol-font-family-sans-compact);
436
+ font-size: 20px;
437
+ line-height: 1.3;
438
+ margin-block-start: 1.25rem;
439
+ margin-block-end: 0.5rem;
440
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 72%, transparent);
441
+ }
442
+
443
+ .docs-article p {
444
+ margin-block-end: 1.5rem;
445
+ }
446
+
447
+ .docs-article a:not(.tag),
448
+ .docs-link {
449
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
450
+ text-decoration: underline;
451
+ text-decoration-thickness: 1px;
452
+ text-underline-offset: 2px;
453
+ transition: color 0.15s ease;
454
+ }
455
+
456
+ .docs-article a:not(.tag):hover,
457
+ .docs-link:hover {
458
+ color: var(--kol-accent-primary);
459
+ }
460
+
461
+ /* Frontmatter properties block */
462
+ .docs-frontmatter {
463
+ border-bottom: 1px solid color-mix(in srgb, var(--kol-surface-on-primary) 8%, transparent);
464
+ padding-bottom: 20px;
465
+ margin-bottom: 24px;
466
+ }
467
+
468
+ .docs-frontmatter .shell-sidebar-label {
469
+ margin-block-end: 8px;
470
+ }
471
+
472
+ .docs-frontmatter-row {
473
+ display: flex;
474
+ align-items: baseline;
475
+ gap: 16px;
476
+ padding: 4px 0;
477
+ }
478
+
479
+ .docs-frontmatter-key {
480
+ display: flex;
481
+ align-items: center;
482
+ gap: 8px;
483
+ min-width: 120px;
484
+ font-family: var(--kol-font-family-mono);
485
+ font-size: 12px;
486
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 40%, transparent);
487
+ }
488
+
489
+ .docs-frontmatter-value {
490
+ font-family: var(--kol-font-family-mono);
491
+ font-size: 13px;
492
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 80%, transparent);
493
+ }
494
+
495
+ .docs-frontmatter-row:has(.tag) {
496
+ align-items: center;
497
+ }
498
+
499
+ .docs-article code {
500
+ font-family: var(--kol-font-family-mono);
501
+ font-size: 13px;
502
+ padding: 2px 6px;
503
+ background-color: color-mix(in srgb, var(--kol-surface-on-primary) 6%, transparent);
504
+ border-radius: 4px;
505
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
506
+ }
507
+
508
+ .docs-color-swatch {
509
+ display: inline-flex;
510
+ align-items: center;
511
+ gap: 5px;
512
+ }
513
+
514
+ .docs-color-swatch-dot {
515
+ display: inline-block;
516
+ width: 10px;
517
+ height: 10px;
518
+ border-radius: 50%;
519
+ flex-shrink: 0;
520
+ }
521
+
522
+ .docs-article strong {
523
+ font-weight: 600;
524
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
525
+ }
526
+
527
+ .docs-article em {
528
+ font-style: italic;
529
+ }
530
+
531
+ .docs-image {
532
+ max-width: 100%;
533
+ height: auto;
534
+ border-radius: 8px;
535
+ margin-block: 1.5rem;
536
+ }
537
+
538
+ .docs-meta-inline {
539
+ font-family: var(--kol-font-family-sans);
540
+ font-size: 14px;
541
+ line-height: 1.6;
542
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 64%, transparent);
543
+ margin-block-end: 1rem;
544
+ }
545
+
546
+ .docs-meta-inline strong {
547
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 80%, transparent);
548
+ font-weight: 600;
549
+ }
550
+
551
+ .docs-article ul,
552
+ .docs-article ol {
553
+ margin-block: 1.25rem;
554
+ padding-inline-start: 1.5rem;
555
+ font-size: inherit;
556
+ line-height: 1.6;
557
+ }
558
+
559
+ .docs-list {
560
+ list-style: disc;
561
+ line-height: 1.6;
562
+ }
563
+
564
+ .docs-list.docs-list--ordered {
565
+ list-style: decimal;
566
+ }
567
+
568
+ .docs-list.tight li {
569
+ margin-block-end: 6px;
570
+ }
571
+
572
+ .docs-article hr {
573
+ margin-block: 2rem;
574
+ border: none;
575
+ border-top: 1px solid color-mix(in srgb, var(--kol-surface-on-primary) 12%, transparent);
576
+ }
577
+
578
+ .docs-divider {
579
+ width: 100%;
580
+ margin-block: 2rem;
581
+ }
582
+
583
+ .docs-divider > div {
584
+ background: color-mix(in srgb, var(--kol-surface-on-primary) 8%, transparent) !important;
585
+ }
586
+
587
+ .docs-callout {
588
+ padding: 0;
589
+ padding-left: 16px;
590
+ margin-block-end: 1.5rem;
591
+ background: none;
592
+ border: none;
593
+ border-left: 1px solid var(--kol-palette-red);
594
+ }
595
+
596
+ /* Inline hashtag pills */
597
+ .inline-tag-pill {
598
+ font-family: var(--kol-font-family-mono);
599
+ font-size: 12px;
600
+ font-weight: 470;
601
+ padding: 2px 8px;
602
+ border-radius: 9999px;
603
+ background: color-mix(in srgb, var(--kol-surface-on-primary) 8%, transparent);
604
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 80%, transparent);
605
+ text-decoration: none;
606
+ transition: all 0.15s ease;
607
+ white-space: nowrap;
608
+ }
609
+
610
+ .inline-tag-pill:hover {
611
+ background: var(--kol-accent-primary);
612
+ color: var(--kol-surface-primary);
613
+ }
614
+
615
+ /* View toggle buttons */
616
+ .docs-view-toggle {
617
+ display: inline-flex;
618
+ align-items: center;
619
+ gap: 6px;
620
+ padding: 6px 12px;
621
+ border: 1px solid color-mix(in srgb, var(--kol-surface-on-primary) 16%, transparent);
622
+ border-radius: 6px;
623
+ background: transparent;
624
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 56%, transparent);
625
+ font-family: var(--kol-font-family-mono);
626
+ font-size: 12px;
627
+ cursor: pointer;
628
+ transition: all 0.15s ease;
629
+ }
630
+
631
+ .docs-view-toggle:hover {
632
+ background: color-mix(in srgb, var(--kol-surface-on-primary) 8%, transparent);
633
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 72%, transparent);
634
+ }
635
+
636
+ .docs-view-toggle.active {
637
+ background: color-mix(in srgb, var(--kol-accent-primary) 16%, transparent);
638
+ border-color: color-mix(in srgb, var(--kol-accent-primary) 40%, transparent);
639
+ color: var(--kol-accent-primary);
640
+ }
641
+
642
+ .docs-view-toggle--small {
643
+ padding: 4px 8px;
644
+ border-radius: 4px;
645
+ }
646
+
647
+ /* Tag Graph - Main content area */
648
+ .tag-graph-container {
649
+ width: 100%;
650
+ position: relative;
651
+ overflow: hidden;
652
+ }
653
+
654
+ .tag-graph-svg {
655
+ display: block;
656
+ margin: 0 auto;
657
+ }
658
+
659
+ .tag-graph-tooltip {
660
+ font-family: var(--kol-font-family-mono);
661
+ font-size: 11px;
662
+ color: color-mix(in srgb, var(--kol-surface-on-primary) 88%, transparent);
663
+ background: color-mix(in srgb, var(--kol-surface-primary) 92%, transparent);
664
+ padding: 4px 8px;
665
+ border-radius: 4px;
666
+ pointer-events: none;
667
+ white-space: nowrap;
668
+ position: absolute;
669
+ bottom: 8px;
670
+ left: 50%;
671
+ transform: translateX(-50%);
672
+ }
673
+
674
+ /* Tag Graph - Sidebar */
675
+ .tag-graph-sidebar {
676
+ width: 100%;
677
+ aspect-ratio: 1;
678
+ position: relative;
679
+ overflow: hidden;
680
+ border-radius: 8px;
681
+ background: color-mix(in srgb, var(--kol-surface-on-primary) 4%, transparent);
682
+ }
683
+
684
+ .tag-graph-sidebar .tag-graph-svg {
685
+ width: 100%;
686
+ height: 100%;
687
+ }
688
+
689
+ .tag-graph-sidebar .tag-graph-tooltip {
690
+ position: absolute;
691
+ top: 8px;
692
+ left: 50%;
693
+ transform: translateX(-50%);
694
+ bottom: auto;
695
+ z-index: 10;
696
+ }
697
+
698
+ .tag-graph-sidebar-wrapper {
699
+ margin-top: 4px;
700
+ }
package/kol-theme.css CHANGED
@@ -43,6 +43,7 @@
43
43
  @import "./kol-components-organisms.css" layer(components);
44
44
  @import "./kol-components-dashboards.css" layer(components);
45
45
  @import "./kol-components-chess.css" layer(components);
46
+ @import "./kol-components-workshop.css" layer(components);
46
47
 
47
48
  /* Theme-level design tokens */
48
49
  @layer components {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolkrabbi/kol-theme",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "KOL (Kolkrabbi) design-system tokens + base CSS — brand-neutral. The canonical token/cascade layer every other KOL package and consumer builds on.",
5
5
  "license": "MIT",
6
6
  "type": "module",