@amulet-laboratories/hex 0.3.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.
Files changed (149) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +120 -0
  3. package/dist/aldricpace.css +5 -0
  4. package/dist/briarcove.css +5 -0
  5. package/dist/briarcovelib.css +5 -0
  6. package/dist/compass.css +5 -0
  7. package/dist/duskline.css +5 -0
  8. package/dist/forge.css +5 -0
  9. package/dist/garden.css +5 -0
  10. package/dist/greyline.css +5 -0
  11. package/dist/hex.css +5 -0
  12. package/dist/kbcv.css +5 -0
  13. package/dist/lanternhouse.css +5 -0
  14. package/dist/marenlys.css +5 -0
  15. package/dist/quizbit.css +5 -0
  16. package/dist/saltsignal.css +5 -0
  17. package/dist/scoped.css +1 -0
  18. package/dist/spacewizard.css +5 -0
  19. package/dist/tidemark.css +5 -0
  20. package/dist/undertow.css +5 -0
  21. package/dist/vscode.css +5 -0
  22. package/package.json +119 -0
  23. package/src/index.css +10 -0
  24. package/src/scoped/bridge.css +47 -0
  25. package/src/scoped/index.css +51 -0
  26. package/src/scoped/themes/aldricpace.css +115 -0
  27. package/src/scoped/themes/briarcove.css +123 -0
  28. package/src/scoped/themes/briarcovelib.css +111 -0
  29. package/src/scoped/themes/compass.css +111 -0
  30. package/src/scoped/themes/duskline.css +117 -0
  31. package/src/scoped/themes/forge.css +123 -0
  32. package/src/scoped/themes/garden.css +123 -0
  33. package/src/scoped/themes/greyline.css +116 -0
  34. package/src/scoped/themes/kbcv.css +111 -0
  35. package/src/scoped/themes/lanternhouse.css +111 -0
  36. package/src/scoped/themes/marenlys.css +112 -0
  37. package/src/scoped/themes/quizbit.css +101 -0
  38. package/src/scoped/themes/saltsignal.css +114 -0
  39. package/src/scoped/themes/spacewizard.css +115 -0
  40. package/src/scoped/themes/tidemark.css +119 -0
  41. package/src/scoped/themes/undertow.css +113 -0
  42. package/src/scoped/themes/vscode.css +230 -0
  43. package/src/scoped/tokens.css +21 -0
  44. package/src/shared/a11y.css +175 -0
  45. package/src/shared/components/core.css +1654 -0
  46. package/src/shared/components/data.css +418 -0
  47. package/src/shared/components/editor.css +358 -0
  48. package/src/shared/components/extras.css +897 -0
  49. package/src/shared/components/layout.css +663 -0
  50. package/src/shared/components/lists.css +278 -0
  51. package/src/shared/components/menus.css +377 -0
  52. package/src/shared/components/nav.css +943 -0
  53. package/src/shared/components/prose.css +302 -0
  54. package/src/shared/components/shell.css +528 -0
  55. package/src/shared/components/spatial.css +184 -0
  56. package/src/shared/components/temporal.css +191 -0
  57. package/src/shared/components/web.css +1689 -0
  58. package/src/shared/rig-defaults.css +121 -0
  59. package/src/shared/scroll-animations.css +176 -0
  60. package/src/shared/tokens.css +125 -0
  61. package/src/shared/utilities.css +204 -0
  62. package/src/themes/aldricpace/base.css +114 -0
  63. package/src/themes/aldricpace/components.css +22 -0
  64. package/src/themes/aldricpace/domains.css +19 -0
  65. package/src/themes/aldricpace/index.css +6 -0
  66. package/src/themes/aldricpace/tokens.css +169 -0
  67. package/src/themes/andrewpassanisi/base.css +192 -0
  68. package/src/themes/andrewpassanisi/index.css +11 -0
  69. package/src/themes/andrewpassanisi/tokens.css +136 -0
  70. package/src/themes/briarcove/base.css +170 -0
  71. package/src/themes/briarcove/components.css +27 -0
  72. package/src/themes/briarcove/domains.css +72 -0
  73. package/src/themes/briarcove/index.css +6 -0
  74. package/src/themes/briarcove/tokens.css +179 -0
  75. package/src/themes/briarcovelib/base.css +111 -0
  76. package/src/themes/briarcovelib/components.css +22 -0
  77. package/src/themes/briarcovelib/domains.css +19 -0
  78. package/src/themes/briarcovelib/index.css +6 -0
  79. package/src/themes/briarcovelib/tokens.css +167 -0
  80. package/src/themes/compass/base.css +112 -0
  81. package/src/themes/compass/components.css +22 -0
  82. package/src/themes/compass/domains.css +19 -0
  83. package/src/themes/compass/index.css +6 -0
  84. package/src/themes/compass/tokens.css +167 -0
  85. package/src/themes/duskline/base.css +167 -0
  86. package/src/themes/duskline/components.css +27 -0
  87. package/src/themes/duskline/domains.css +72 -0
  88. package/src/themes/duskline/index.css +6 -0
  89. package/src/themes/duskline/tokens.css +171 -0
  90. package/src/themes/forge/base.css +165 -0
  91. package/src/themes/forge/components.css +24 -0
  92. package/src/themes/forge/domains.css +72 -0
  93. package/src/themes/forge/index.css +6 -0
  94. package/src/themes/forge/tokens.css +178 -0
  95. package/src/themes/garden/base.css +167 -0
  96. package/src/themes/garden/components.css +27 -0
  97. package/src/themes/garden/domains.css +72 -0
  98. package/src/themes/garden/index.css +6 -0
  99. package/src/themes/garden/tokens.css +178 -0
  100. package/src/themes/greyline/base.css +165 -0
  101. package/src/themes/greyline/components.css +24 -0
  102. package/src/themes/greyline/domains.css +70 -0
  103. package/src/themes/greyline/index.css +6 -0
  104. package/src/themes/greyline/tokens.css +161 -0
  105. package/src/themes/kbcv/base.css +112 -0
  106. package/src/themes/kbcv/components.css +22 -0
  107. package/src/themes/kbcv/domains.css +19 -0
  108. package/src/themes/kbcv/index.css +6 -0
  109. package/src/themes/kbcv/tokens.css +167 -0
  110. package/src/themes/lanternhouse/base.css +170 -0
  111. package/src/themes/lanternhouse/components.css +27 -0
  112. package/src/themes/lanternhouse/domains.css +72 -0
  113. package/src/themes/lanternhouse/index.css +6 -0
  114. package/src/themes/lanternhouse/tokens.css +167 -0
  115. package/src/themes/marenlys/base.css +181 -0
  116. package/src/themes/marenlys/components.css +27 -0
  117. package/src/themes/marenlys/domains.css +72 -0
  118. package/src/themes/marenlys/index.css +6 -0
  119. package/src/themes/marenlys/tokens.css +167 -0
  120. package/src/themes/quizbit/base.css +120 -0
  121. package/src/themes/quizbit/components.css +27 -0
  122. package/src/themes/quizbit/domains.css +7 -0
  123. package/src/themes/quizbit/index.css +6 -0
  124. package/src/themes/quizbit/tokens.css +132 -0
  125. package/src/themes/saltsignal/base.css +168 -0
  126. package/src/themes/saltsignal/components.css +27 -0
  127. package/src/themes/saltsignal/domains.css +72 -0
  128. package/src/themes/saltsignal/index.css +6 -0
  129. package/src/themes/saltsignal/tokens.css +170 -0
  130. package/src/themes/spacewizard/base.css +165 -0
  131. package/src/themes/spacewizard/components.css +24 -0
  132. package/src/themes/spacewizard/domains.css +70 -0
  133. package/src/themes/spacewizard/index.css +6 -0
  134. package/src/themes/spacewizard/tokens.css +160 -0
  135. package/src/themes/tidemark/base.css +169 -0
  136. package/src/themes/tidemark/components.css +27 -0
  137. package/src/themes/tidemark/domains.css +72 -0
  138. package/src/themes/tidemark/index.css +6 -0
  139. package/src/themes/tidemark/tokens.css +175 -0
  140. package/src/themes/undertow/base.css +114 -0
  141. package/src/themes/undertow/components.css +22 -0
  142. package/src/themes/undertow/domains.css +19 -0
  143. package/src/themes/undertow/index.css +6 -0
  144. package/src/themes/undertow/tokens.css +171 -0
  145. package/src/themes/vscode/base.css +104 -0
  146. package/src/themes/vscode/components.css +24 -0
  147. package/src/themes/vscode/domains.css +132 -0
  148. package/src/themes/vscode/index.css +13 -0
  149. package/src/themes/vscode/tokens.css +346 -0
@@ -0,0 +1,663 @@
1
+ /* Hex — Shared Layout Components
2
+ * Theme styles for Rig's layout package: TitleBar, Drawer, ShellGrid, Sidebar,
3
+ * View, Panel, Modal, Resizer, Accordion, Collapsible, Popover, PeekView, ScrollArea.
4
+ */
5
+
6
+ /* ───────── Drawer ───────── */
7
+
8
+ [data-rig-drawer-overlay] {
9
+ position: fixed;
10
+ inset: 0;
11
+ z-index: var(--rig-drawer-z, 9998);
12
+ background: rgba(0, 0, 0, 0.5);
13
+ }
14
+
15
+ [data-rig-drawer] {
16
+ position: fixed;
17
+ background: var(--color-background);
18
+ border: 1px solid var(--color-border);
19
+ overflow-y: auto;
20
+ }
21
+
22
+ [data-rig-drawer][data-side='right'] {
23
+ top: 0;
24
+ right: 0;
25
+ bottom: 0;
26
+ width: var(--rig-drawer-width, 320px);
27
+ border-left: 1px solid var(--color-border);
28
+ }
29
+
30
+ [data-rig-drawer][data-side='left'] {
31
+ top: 0;
32
+ left: 0;
33
+ bottom: 0;
34
+ width: var(--rig-drawer-width, 320px);
35
+ border-right: 1px solid var(--color-border);
36
+ }
37
+
38
+ [data-rig-drawer][data-side='top'] {
39
+ top: 0;
40
+ left: 0;
41
+ right: 0;
42
+ height: var(--rig-drawer-height, 320px);
43
+ border-bottom: 1px solid var(--color-border);
44
+ }
45
+
46
+ [data-rig-drawer][data-side='bottom'] {
47
+ bottom: 0;
48
+ left: 0;
49
+ right: 0;
50
+ height: var(--rig-drawer-height, 320px);
51
+ border-top: 1px solid var(--color-border);
52
+ }
53
+
54
+ /* ───────── Title Bar ───────── */
55
+
56
+ [data-rig-titlebar] {
57
+ display: flex;
58
+ align-items: center;
59
+ height: 30px;
60
+ background: var(--color-muted);
61
+ border-bottom: 1px solid var(--color-border);
62
+ user-select: none;
63
+ flex-shrink: 0;
64
+ position: relative;
65
+ font-size: 12px;
66
+ }
67
+
68
+ [data-rig-titlebar][data-draggable] {
69
+ -webkit-app-region: drag;
70
+ }
71
+
72
+ [data-rig-titlebar-leading] {
73
+ display: flex;
74
+ align-items: center;
75
+ height: 100%;
76
+ gap: 2px;
77
+ padding-left: 8px;
78
+ flex-shrink: 0;
79
+ -webkit-app-region: no-drag;
80
+ }
81
+
82
+ [data-rig-titlebar-caption] {
83
+ position: absolute;
84
+ left: 50%;
85
+ transform: translateX(-50%);
86
+ pointer-events: none;
87
+ white-space: nowrap;
88
+ overflow: hidden;
89
+ text-overflow: ellipsis;
90
+ max-width: 50%;
91
+ }
92
+
93
+ [data-rig-titlebar-title] {
94
+ color: var(--color-foreground);
95
+ }
96
+
97
+ [data-rig-titlebar-separator] {
98
+ color: var(--color-muted-foreground);
99
+ }
100
+
101
+ [data-rig-titlebar-subtitle] {
102
+ color: var(--color-muted-foreground);
103
+ }
104
+
105
+ [data-rig-titlebar-trailing] {
106
+ margin-left: auto;
107
+ display: flex;
108
+ align-items: stretch;
109
+ height: 100%;
110
+ -webkit-app-region: no-drag;
111
+ }
112
+
113
+ [data-rig-titlebar-action] {
114
+ display: flex;
115
+ align-items: center;
116
+ justify-content: center;
117
+ padding: 0 8px;
118
+ background: transparent;
119
+ border: none;
120
+ color: var(--color-foreground);
121
+ cursor: pointer;
122
+ opacity: 0.8;
123
+ }
124
+
125
+ [data-rig-titlebar-action]:hover {
126
+ background: var(
127
+ --rig-titlebar-hover-bg,
128
+ color-mix(in srgb, var(--color-foreground) 10%, transparent)
129
+ );
130
+ opacity: 1;
131
+ }
132
+
133
+ [data-rig-titlebar-action][data-state='active'] {
134
+ opacity: 1;
135
+ color: var(--color-primary, var(--color-foreground));
136
+ }
137
+
138
+ /* ───────── Shell Grid ───────── */
139
+
140
+ [data-rig-ide-shell],
141
+ [data-rig-shell-grid] {
142
+ flex: 1;
143
+ min-height: 0;
144
+ }
145
+
146
+ [data-rig-shell-titlebar] {
147
+ grid-area: titlebar;
148
+ display: flex;
149
+ align-items: center;
150
+ flex-shrink: 0;
151
+ border-bottom: 1px solid var(--color-border);
152
+ user-select: none;
153
+ }
154
+
155
+ [data-rig-shell-grid] {
156
+ display: grid;
157
+ grid-template-areas:
158
+ 'activity sidebar editor'
159
+ 'activity sidebar v-res'
160
+ 'activity sidebar panel'
161
+ 'statusbar statusbar statusbar';
162
+ grid-template-columns: auto auto 1fr;
163
+ grid-template-rows: 1fr 0 auto 22px;
164
+ height: 100%;
165
+ overflow: hidden;
166
+ }
167
+
168
+ [data-rig-shell-grid]:has([data-rig-shell-sidebar][data-collapsed]) {
169
+ grid-template-columns: auto 0 1fr;
170
+ }
171
+
172
+ [data-rig-shell-activity] {
173
+ grid-area: activity;
174
+ overflow: hidden;
175
+ display: flex;
176
+ flex-direction: column;
177
+ user-select: none;
178
+ }
179
+
180
+ [data-rig-shell-sidebar] {
181
+ grid-area: sidebar;
182
+ position: relative;
183
+ z-index: 1;
184
+ display: flex;
185
+ flex-direction: column;
186
+ min-width: 0;
187
+ overflow: visible;
188
+ border-right: 1px solid var(--rig-sidebar-border);
189
+ user-select: none;
190
+ }
191
+
192
+ [data-rig-shell-sidebar][data-collapsed] {
193
+ border-right: none;
194
+ }
195
+
196
+ [data-rig-shell-editor] {
197
+ grid-area: editor;
198
+ overflow: hidden;
199
+ min-height: 0;
200
+ min-width: 0;
201
+ display: flex;
202
+ flex-direction: column;
203
+ }
204
+
205
+ [data-rig-shell-panel] {
206
+ grid-area: panel;
207
+ overflow: hidden;
208
+ min-height: 0;
209
+ min-width: 0;
210
+ }
211
+
212
+ [data-rig-shell-statusbar] {
213
+ grid-area: statusbar;
214
+ overflow: hidden;
215
+ user-select: none;
216
+ }
217
+
218
+ [data-rig-shell-sidebar] > [data-rig-resizer][data-orientation='horizontal'] {
219
+ position: absolute;
220
+ top: 0;
221
+ right: 0;
222
+ bottom: 0;
223
+ width: 4px;
224
+ z-index: 50;
225
+ cursor: col-resize;
226
+ }
227
+
228
+ [data-rig-shell-sidebar] > [data-rig-resizer][data-orientation='horizontal']::before {
229
+ content: '';
230
+ position: absolute;
231
+ inset: 0 -4px;
232
+ cursor: col-resize;
233
+ }
234
+
235
+ [data-rig-resizer][data-orientation='vertical'] {
236
+ grid-area: v-res;
237
+ cursor: row-resize;
238
+ height: 5px;
239
+ }
240
+
241
+ /* Collapse panels when hidden */
242
+ [data-rig-shell-grid]:has([data-rig-shell-panel][style='height: 0px'])
243
+ [data-rig-resizer][data-orientation='vertical'] {
244
+ height: 0;
245
+ }
246
+
247
+ [data-rig-shell-panel] {
248
+ border-top: none;
249
+ }
250
+
251
+ [data-rig-shell-statusbar] {
252
+ background: var(--rig-statusbar-bg);
253
+ color: var(--rig-statusbar-fg);
254
+ font-family: var(--font-mono);
255
+ border-top: 1px solid var(--rig-sidebar-border);
256
+ font-size: 12px;
257
+ height: 22px;
258
+ }
259
+
260
+ /* ───────── Sidebar ───────── */
261
+
262
+ [data-rig-sidebar] {
263
+ height: 100%;
264
+ width: 100%;
265
+ display: flex;
266
+ flex-direction: column;
267
+ overflow: hidden;
268
+ }
269
+
270
+ [data-rig-sidebar-content] {
271
+ flex: 1;
272
+ overflow-y: auto;
273
+ min-height: 0;
274
+ }
275
+
276
+ /* ───────── Editor Workbench ───────── */
277
+
278
+ [data-rig-editor-workbench] {
279
+ display: flex;
280
+ flex-direction: column;
281
+ height: 100%;
282
+ overflow: hidden;
283
+ }
284
+
285
+ [data-rig-editor-workbench-content] {
286
+ flex: 1;
287
+ overflow: hidden;
288
+ min-height: 0;
289
+ display: flex;
290
+ flex-direction: column;
291
+ }
292
+
293
+ [data-rig-sidebar-header] {
294
+ font-size: 11px;
295
+ font-weight: 700;
296
+ text-transform: uppercase;
297
+ letter-spacing: 0.05em;
298
+ flex-shrink: 0;
299
+ }
300
+
301
+ /* ───────── View (collapsible section) ───────── */
302
+
303
+ [data-rig-view] {
304
+ display: flex;
305
+ flex-direction: column;
306
+ overflow: hidden;
307
+ }
308
+
309
+ [data-rig-view-toggle] {
310
+ display: flex;
311
+ align-items: center;
312
+ gap: 4px;
313
+ flex: 1;
314
+ min-width: 0;
315
+ cursor: pointer;
316
+ user-select: none;
317
+ }
318
+
319
+ [data-rig-view-content] {
320
+ flex: 1;
321
+ overflow-y: auto;
322
+ min-height: 0;
323
+ }
324
+
325
+ [data-rig-view-header] {
326
+ font-size: 11px;
327
+ font-weight: 300;
328
+ text-transform: uppercase;
329
+ letter-spacing: 0.05em;
330
+ color: var(--rig-sidebar-fg);
331
+ }
332
+
333
+ [data-rig-view-header]:hover {
334
+ background: var(--rig-list-hover-bg);
335
+ }
336
+
337
+ [data-rig-view-title] {
338
+ color: var(--rig-sidebar-fg);
339
+ }
340
+
341
+ [data-rig-view-actions] {
342
+ opacity: 0;
343
+ transition: opacity 0.15s ease;
344
+ }
345
+
346
+ [data-rig-view-header]:hover [data-rig-view-actions],
347
+ [data-rig-view-header]:focus-within [data-rig-view-actions] {
348
+ opacity: 1;
349
+ }
350
+
351
+ [data-rig-view-action] {
352
+ color: var(--rig-description-fg);
353
+ border-radius: 5px;
354
+ transition:
355
+ color 0.15s ease,
356
+ background-color 0.15s ease;
357
+ }
358
+
359
+ [data-rig-view-action]:hover {
360
+ color: var(--color-foreground);
361
+ background: var(--rig-list-hover-bg);
362
+ }
363
+
364
+ /* ───────── Panel ───────── */
365
+
366
+ [data-rig-panel] {
367
+ display: flex;
368
+ flex-direction: column;
369
+ overflow: hidden;
370
+ background: var(--color-background);
371
+ }
372
+
373
+ [data-rig-panel][data-position='right'] {
374
+ border-left: 1px solid var(--rig-panel-border);
375
+ position: relative;
376
+ }
377
+
378
+ [data-rig-panel][data-position='right'] > [data-rig-resizer][data-orientation='horizontal'] {
379
+ position: absolute;
380
+ top: 0;
381
+ left: -3px;
382
+ bottom: 0;
383
+ width: 6px;
384
+ z-index: 35;
385
+ cursor: col-resize;
386
+ }
387
+
388
+ [data-rig-panel][data-position='left'] {
389
+ border-right: 1px solid var(--rig-panel-border);
390
+ position: relative;
391
+ }
392
+
393
+ [data-rig-panel][data-position='left'] > [data-rig-resizer][data-orientation='horizontal'] {
394
+ position: absolute;
395
+ top: 0;
396
+ right: -3px;
397
+ bottom: 0;
398
+ width: 6px;
399
+ z-index: 35;
400
+ cursor: col-resize;
401
+ }
402
+
403
+ [data-rig-panel-header] {
404
+ border-bottom: 1px solid var(--rig-panel-border);
405
+ font-size: 13px;
406
+ color: var(--rig-panel-title-inactive-fg);
407
+ flex-shrink: 0;
408
+ }
409
+
410
+ [data-rig-panel-header]:empty {
411
+ display: none;
412
+ }
413
+
414
+ [data-rig-panel-content] {
415
+ flex: 1;
416
+ overflow: auto;
417
+ min-height: 0;
418
+ }
419
+
420
+ /* ───────── Modal ───────── */
421
+
422
+ [data-rig-modal-overlay] {
423
+ background: rgba(0, 0, 0, 0.5);
424
+ }
425
+
426
+ [data-rig-modal] {
427
+ background: var(--rig-widget-bg);
428
+ border: 1px solid var(--rig-widget-border);
429
+ box-shadow: 0 8px 24px rgb(0 0 0 / 50%);
430
+ border-radius: 8px;
431
+ }
432
+
433
+ /* ───────── Accordion ───────── */
434
+
435
+ [data-rig-accordion][data-disabled] {
436
+ @apply opacity-40;
437
+ }
438
+
439
+ [data-rig-accordion-trigger] {
440
+ font-size: 11px;
441
+ font-weight: 600;
442
+ text-transform: uppercase;
443
+ letter-spacing: 0.05em;
444
+ color: var(--rig-sidebar-fg);
445
+ transition: background-color 0.15s ease;
446
+ }
447
+
448
+ [data-rig-accordion-trigger]:hover {
449
+ background: var(--rig-list-hover-bg);
450
+ }
451
+
452
+ /* Accordion panel reveal transition (used with Vue <Transition name="accordion">) */
453
+ .accordion-enter-active,
454
+ .accordion-leave-active {
455
+ transition:
456
+ opacity 0.2s ease,
457
+ transform 0.2s ease;
458
+ transform-origin: top;
459
+ }
460
+
461
+ .accordion-enter-from {
462
+ opacity: 0;
463
+ transform: translateY(-4px);
464
+ }
465
+
466
+ .accordion-leave-to {
467
+ opacity: 0;
468
+ transform: translateY(-4px);
469
+ }
470
+
471
+ /* Chevron rotation transition */
472
+ [data-rig-accordion-chevron] {
473
+ transition: transform 0.2s ease;
474
+ }
475
+
476
+ [data-rig-accordion-item][data-open] [data-rig-accordion-chevron] {
477
+ transform: rotate(180deg);
478
+ }
479
+
480
+ /* ───────── Collapsible ───────── */
481
+
482
+ [data-rig-collapsible][data-disabled] {
483
+ @apply opacity-40;
484
+ }
485
+
486
+ [data-rig-collapsible-content] {
487
+ overflow: hidden;
488
+ }
489
+
490
+ /* ───────── PeekView ───────── */
491
+
492
+ [data-rig-peek-view] {
493
+ border: 1px solid var(--rig-widget-border);
494
+ border-radius: var(--radius);
495
+ box-shadow: 0 4px 16px rgb(0 0 0 / 40%);
496
+ }
497
+
498
+ [data-rig-peek-view-header] {
499
+ background: var(--color-card);
500
+ border-bottom: 1px solid var(--color-border);
501
+ }
502
+
503
+ [data-rig-peek-view-title] {
504
+ font-size: 13px;
505
+ color: var(--color-foreground);
506
+ font-family: var(--font-mono);
507
+ }
508
+
509
+ [data-rig-peek-view-close] {
510
+ color: var(--rig-description-fg);
511
+ border-radius: 5px;
512
+ transition: color 0.15s ease;
513
+ }
514
+
515
+ [data-rig-peek-view-close]:hover {
516
+ color: var(--color-foreground);
517
+ }
518
+
519
+ [data-rig-peek-view-content] {
520
+ background: var(--color-background);
521
+ }
522
+
523
+ /* ───────── Popover ───────── */
524
+
525
+ [data-rig-popover] {
526
+ display: inline-flex;
527
+ position: relative;
528
+ }
529
+
530
+ [data-rig-popover-trigger] {
531
+ display: inline-flex;
532
+ }
533
+
534
+ [data-rig-popover-content] {
535
+ background: var(--vsc-menu-bg);
536
+ border: 1px solid var(--vsc-widget-border);
537
+ border-radius: 5px;
538
+ box-shadow: 0 8px 24px rgb(0 0 0 / 50%);
539
+ font-size: 13px;
540
+ color: var(--color-foreground);
541
+ animation: popover-in 0.12s ease;
542
+ }
543
+
544
+ @keyframes popover-in {
545
+ from {
546
+ opacity: 0;
547
+ transform: translateY(4px);
548
+ }
549
+ to {
550
+ opacity: 1;
551
+ transform: translateY(0);
552
+ }
553
+ }
554
+
555
+ /* ───────── ScrollArea ───────── */
556
+
557
+ [data-rig-scroll-area] {
558
+ position: relative;
559
+ overflow: hidden;
560
+ }
561
+
562
+ [data-rig-scroll-viewport] {
563
+ overflow: auto;
564
+ height: 100%;
565
+ width: 100%;
566
+ scrollbar-width: none;
567
+ }
568
+
569
+ [data-rig-scroll-viewport]::-webkit-scrollbar {
570
+ display: none;
571
+ }
572
+
573
+ [data-rig-scroll-bar] {
574
+ transition: opacity 0.15s;
575
+ }
576
+
577
+ [data-rig-scroll-thumb] {
578
+ border-radius: 5px;
579
+ background: var(--rig-scrollbar-thumb);
580
+ transition: background 0.15s;
581
+ min-height: 20px;
582
+ }
583
+
584
+ [data-rig-scroll-bar][data-orientation='vertical'] [data-rig-scroll-thumb] {
585
+ margin: 0 2px;
586
+ }
587
+
588
+ [data-rig-scroll-bar][data-orientation='horizontal'] [data-rig-scroll-thumb] {
589
+ margin: 2px 0;
590
+ }
591
+
592
+ [data-rig-scroll-thumb]:hover {
593
+ background: var(--rig-scrollbar-thumb-hover);
594
+ }
595
+
596
+ /* ───────── SplitView ───────── */
597
+
598
+ [data-rig-split-view] {
599
+ display: flex;
600
+ height: 100%;
601
+ overflow: hidden;
602
+ }
603
+
604
+ [data-rig-split-view][data-orientation='vertical'] {
605
+ flex-direction: column;
606
+ }
607
+
608
+ [data-rig-split-pane] {
609
+ overflow: auto;
610
+ min-width: 0;
611
+ min-height: 0;
612
+ }
613
+
614
+ /* ───────── Resizer ───────── */
615
+
616
+ [data-rig-resizer][data-orientation='horizontal'],
617
+ [data-rig-resizer][data-orientation='vertical'] {
618
+ transition: background-color 0.1s ease-out 0.3s;
619
+ }
620
+
621
+ [data-rig-resizer][data-orientation='horizontal']:hover,
622
+ [data-rig-resizer][data-orientation='vertical']:hover {
623
+ background: var(--rig-sash-hover);
624
+ transition-delay: 0.3s;
625
+ }
626
+
627
+ [data-rig-resizer][data-orientation='horizontal']:active,
628
+ [data-rig-resizer][data-orientation='vertical']:active {
629
+ background: var(--rig-sash-hover);
630
+ transition-delay: 0s;
631
+ }
632
+
633
+ [data-rig-resizer][data-dragging] {
634
+ background: var(--rig-sash-hover);
635
+ }
636
+
637
+ /* ───────── ResizablePanel ───────── */
638
+
639
+ [data-rig-resizable-panel] {
640
+ @apply bg-background;
641
+ }
642
+
643
+ [data-rig-resizable-panel-content] {
644
+ @apply overflow-auto;
645
+ }
646
+
647
+ [data-rig-resizable-panel-handle] {
648
+ background: color-mix(in srgb, var(--color-foreground) 8%, transparent);
649
+ transition: background 0.15s ease;
650
+ }
651
+
652
+ [data-rig-resizable-panel-handle]:hover {
653
+ background: var(--rig-sash-hover);
654
+ }
655
+
656
+ [data-rig-resizable-panel-handle]:active,
657
+ [data-rig-resizable-panel-handle][data-dragging] {
658
+ background: var(--rig-sash-hover);
659
+ }
660
+
661
+ [data-rig-resizable-panel][data-disabled] [data-rig-resizable-panel-handle] {
662
+ @apply opacity-30 cursor-not-allowed;
663
+ }