@leanmcp/ui 0.1.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.
package/dist/index.css ADDED
@@ -0,0 +1,559 @@
1
+ /* src/core/Button.css */
2
+ .lui-button {
3
+ display: inline-flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ gap: var(--lui-space-2);
7
+ font-family: var(--lui-font-sans);
8
+ font-weight: 500;
9
+ border: none;
10
+ border-radius: var(--lui-radius-md);
11
+ cursor: pointer;
12
+ transition: all var(--lui-transition);
13
+ user-select: none;
14
+ white-space: nowrap;
15
+ }
16
+ .lui-button:focus-visible {
17
+ outline: 2px solid var(--lui-border-focus);
18
+ outline-offset: 2px;
19
+ }
20
+ .lui-button:disabled {
21
+ opacity: 0.5;
22
+ cursor: not-allowed;
23
+ }
24
+ .lui-button--primary {
25
+ background: var(--lui-primary);
26
+ color: var(--lui-text-inverse);
27
+ }
28
+ .lui-button--primary:hover:not(:disabled) {
29
+ background: var(--lui-primary-hover);
30
+ }
31
+ .lui-button--primary:active:not(:disabled) {
32
+ background: var(--lui-primary-active);
33
+ }
34
+ .lui-button--secondary {
35
+ background: var(--lui-surface);
36
+ color: var(--lui-text);
37
+ }
38
+ .lui-button--secondary:hover:not(:disabled) {
39
+ background: var(--lui-surface-hover);
40
+ }
41
+ .lui-button--ghost {
42
+ background: transparent;
43
+ color: var(--lui-text);
44
+ }
45
+ .lui-button--ghost:hover:not(:disabled) {
46
+ background: var(--lui-surface);
47
+ }
48
+ .lui-button--outline {
49
+ background: transparent;
50
+ color: var(--lui-primary);
51
+ border: 1px solid var(--lui-border);
52
+ }
53
+ .lui-button--outline:hover:not(:disabled) {
54
+ background: var(--lui-surface);
55
+ border-color: var(--lui-primary);
56
+ }
57
+ .lui-button--destructive {
58
+ background: var(--lui-error);
59
+ color: var(--lui-text-inverse);
60
+ }
61
+ .lui-button--destructive:hover:not(:disabled) {
62
+ background: #dc2626;
63
+ }
64
+ .lui-button--sm {
65
+ height: 32px;
66
+ padding: 0 var(--lui-space-3);
67
+ font-size: var(--lui-text-sm);
68
+ }
69
+ .lui-button--md {
70
+ height: 40px;
71
+ padding: 0 var(--lui-space-4);
72
+ font-size: var(--lui-text-sm);
73
+ }
74
+ .lui-button--lg {
75
+ height: 48px;
76
+ padding: 0 var(--lui-space-6);
77
+ font-size: var(--lui-text-base);
78
+ }
79
+ .lui-button--icon {
80
+ width: 40px;
81
+ height: 40px;
82
+ padding: 0;
83
+ }
84
+ .lui-button--icon.lui-button--sm {
85
+ width: 32px;
86
+ height: 32px;
87
+ }
88
+ .lui-button--icon.lui-button--lg {
89
+ width: 48px;
90
+ height: 48px;
91
+ }
92
+ .lui-button--loading {
93
+ position: relative;
94
+ }
95
+ .lui-button__spinner {
96
+ display: flex;
97
+ align-items: center;
98
+ justify-content: center;
99
+ }
100
+ .lui-spinner-icon {
101
+ width: 16px;
102
+ height: 16px;
103
+ animation: lui-spin 1s linear infinite;
104
+ }
105
+ @keyframes lui-spin {
106
+ from {
107
+ transform: rotate(0deg);
108
+ }
109
+ to {
110
+ transform: rotate(360deg);
111
+ }
112
+ }
113
+ .lui-button__icon {
114
+ display: flex;
115
+ align-items: center;
116
+ justify-content: center;
117
+ }
118
+ .lui-button__icon svg {
119
+ width: 16px;
120
+ height: 16px;
121
+ }
122
+ .lui-button--lg .lui-button__icon svg {
123
+ width: 20px;
124
+ height: 20px;
125
+ }
126
+
127
+ /* src/core/Input.css */
128
+ .lui-input-wrapper {
129
+ display: flex;
130
+ flex-direction: column;
131
+ gap: var(--lui-space-1);
132
+ }
133
+ .lui-input-wrapper--full-width {
134
+ width: 100%;
135
+ }
136
+ .lui-input-label {
137
+ font-size: var(--lui-text-sm);
138
+ font-weight: 500;
139
+ color: var(--lui-text);
140
+ }
141
+ .lui-input-container {
142
+ display: flex;
143
+ align-items: center;
144
+ background: var(--lui-bg);
145
+ border: 1px solid var(--lui-border);
146
+ border-radius: var(--lui-radius-md);
147
+ transition: all var(--lui-transition);
148
+ }
149
+ .lui-input-container:focus-within {
150
+ border-color: var(--lui-border-focus);
151
+ box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
152
+ }
153
+ .lui-input-container--error {
154
+ border-color: var(--lui-error);
155
+ }
156
+ .lui-input-container--error:focus-within {
157
+ box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);
158
+ }
159
+ .lui-input-container--sm {
160
+ height: 32px;
161
+ }
162
+ .lui-input-container--md {
163
+ height: 40px;
164
+ }
165
+ .lui-input-container--lg {
166
+ height: 48px;
167
+ }
168
+ .lui-input {
169
+ flex: 1;
170
+ min-width: 0;
171
+ height: 100%;
172
+ padding: 0 var(--lui-space-3);
173
+ font-family: var(--lui-font-sans);
174
+ font-size: var(--lui-text-sm);
175
+ color: var(--lui-text);
176
+ background: transparent;
177
+ border: none;
178
+ outline: none;
179
+ }
180
+ .lui-input::placeholder {
181
+ color: var(--lui-text-muted);
182
+ }
183
+ .lui-input-container--has-left .lui-input {
184
+ padding-left: 0;
185
+ }
186
+ .lui-input-container--has-right .lui-input {
187
+ padding-right: 0;
188
+ }
189
+ .lui-input-element {
190
+ display: flex;
191
+ align-items: center;
192
+ justify-content: center;
193
+ padding: 0 var(--lui-space-3);
194
+ color: var(--lui-text-muted);
195
+ }
196
+ .lui-input-element svg {
197
+ width: 16px;
198
+ height: 16px;
199
+ }
200
+ .lui-input-message {
201
+ margin: 0;
202
+ font-size: var(--lui-text-xs);
203
+ color: var(--lui-text-muted);
204
+ }
205
+ .lui-input-message--error {
206
+ color: var(--lui-error);
207
+ }
208
+
209
+ /* src/mcp/ToolForm.css */
210
+ .lui-tool-form {
211
+ display: flex;
212
+ flex-direction: column;
213
+ gap: var(--lui-space-4);
214
+ }
215
+ .lui-tool-form-fields {
216
+ display: flex;
217
+ flex-direction: column;
218
+ gap: var(--lui-space-3);
219
+ }
220
+ .lui-tool-form-field {
221
+ display: flex;
222
+ flex-direction: column;
223
+ }
224
+ .lui-tool-form-textarea {
225
+ width: 100%;
226
+ min-height: 100px;
227
+ padding: var(--lui-space-3);
228
+ font-family: var(--lui-font-sans);
229
+ font-size: var(--lui-text-sm);
230
+ color: var(--lui-text);
231
+ background: var(--lui-bg);
232
+ border: 1px solid var(--lui-border);
233
+ border-radius: var(--lui-radius-md);
234
+ resize: vertical;
235
+ outline: none;
236
+ transition: all var(--lui-transition);
237
+ }
238
+ .lui-tool-form-textarea:focus {
239
+ border-color: var(--lui-border-focus);
240
+ box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
241
+ }
242
+ .lui-tool-form-textarea::placeholder {
243
+ color: var(--lui-text-muted);
244
+ }
245
+ .lui-tool-form-actions {
246
+ display: flex;
247
+ justify-content: flex-end;
248
+ gap: var(--lui-space-3);
249
+ }
250
+ .lui-tool-form-error {
251
+ padding: var(--lui-space-3);
252
+ font-size: var(--lui-text-sm);
253
+ color: var(--lui-error);
254
+ background: rgba(239, 68, 68, 0.1);
255
+ border-radius: var(--lui-radius-md);
256
+ }
257
+ .lui-tool-form-result {
258
+ padding: var(--lui-space-3);
259
+ font-family: var(--lui-font-mono);
260
+ font-size: var(--lui-text-xs);
261
+ color: var(--lui-text-secondary);
262
+ background: var(--lui-surface);
263
+ border-radius: var(--lui-radius-md);
264
+ overflow-x: auto;
265
+ }
266
+ .lui-tool-form-result pre {
267
+ margin: 0;
268
+ }
269
+
270
+ /* src/core/Card.css */
271
+ .lui-card {
272
+ background: var(--lui-bg);
273
+ border-radius: var(--lui-radius-lg);
274
+ overflow: hidden;
275
+ }
276
+ .lui-card--default {
277
+ border: 1px solid var(--lui-border);
278
+ }
279
+ .lui-card--outline {
280
+ border: 1px solid var(--lui-border);
281
+ background: transparent;
282
+ }
283
+ .lui-card--elevated {
284
+ border: none;
285
+ box-shadow: var(--lui-shadow-md);
286
+ }
287
+ .lui-card--padding-none {
288
+ padding: 0;
289
+ }
290
+ .lui-card--padding-sm {
291
+ padding: var(--lui-space-3);
292
+ }
293
+ .lui-card--padding-md {
294
+ padding: var(--lui-space-4);
295
+ }
296
+ .lui-card--padding-lg {
297
+ padding: var(--lui-space-6);
298
+ }
299
+ .lui-card--interactive {
300
+ cursor: pointer;
301
+ transition: all var(--lui-transition);
302
+ }
303
+ .lui-card--interactive:hover {
304
+ border-color: var(--lui-primary);
305
+ box-shadow: var(--lui-shadow-md);
306
+ }
307
+ .lui-card-header {
308
+ display: flex;
309
+ align-items: flex-start;
310
+ justify-content: space-between;
311
+ gap: var(--lui-space-4);
312
+ padding: var(--lui-space-4);
313
+ border-bottom: 1px solid var(--lui-border);
314
+ }
315
+ .lui-card--padding-none .lui-card-header {
316
+ padding: var(--lui-space-4);
317
+ }
318
+ .lui-card-header__text {
319
+ flex: 1;
320
+ min-width: 0;
321
+ }
322
+ .lui-card-header__title {
323
+ margin: 0;
324
+ font-size: var(--lui-text-lg);
325
+ font-weight: 600;
326
+ color: var(--lui-text);
327
+ line-height: 1.4;
328
+ }
329
+ .lui-card-header__description {
330
+ margin: var(--lui-space-1) 0 0;
331
+ font-size: var(--lui-text-sm);
332
+ color: var(--lui-text-muted);
333
+ line-height: 1.5;
334
+ }
335
+ .lui-card-header__action {
336
+ flex-shrink: 0;
337
+ }
338
+ .lui-card-content {
339
+ padding: var(--lui-space-4);
340
+ }
341
+ .lui-card--padding-none .lui-card-content {
342
+ padding: var(--lui-space-4);
343
+ }
344
+ .lui-card-footer {
345
+ display: flex;
346
+ align-items: center;
347
+ justify-content: flex-end;
348
+ gap: var(--lui-space-3);
349
+ padding: var(--lui-space-4);
350
+ border-top: 1px solid var(--lui-border);
351
+ background: var(--lui-bg-secondary);
352
+ }
353
+ .lui-card--padding-none .lui-card-footer {
354
+ padding: var(--lui-space-4);
355
+ }
356
+
357
+ /* src/data/DataGrid.css */
358
+ .lui-datagrid {
359
+ display: flex;
360
+ flex-direction: column;
361
+ gap: var(--lui-space-3);
362
+ width: 100%;
363
+ }
364
+ .lui-datagrid-search {
365
+ display: flex;
366
+ }
367
+ .lui-datagrid-search-input {
368
+ flex: 1;
369
+ height: 36px;
370
+ padding: 0 var(--lui-space-3);
371
+ font-family: var(--lui-font-sans);
372
+ font-size: var(--lui-text-sm);
373
+ color: var(--lui-text);
374
+ background: var(--lui-bg);
375
+ border: 1px solid var(--lui-border);
376
+ border-radius: var(--lui-radius-md);
377
+ outline: none;
378
+ transition: all var(--lui-transition);
379
+ }
380
+ .lui-datagrid-search-input:focus {
381
+ border-color: var(--lui-border-focus);
382
+ box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
383
+ }
384
+ .lui-datagrid-search-input::placeholder {
385
+ color: var(--lui-text-muted);
386
+ }
387
+ .lui-datagrid-container {
388
+ overflow-x: auto;
389
+ border: 1px solid var(--lui-border);
390
+ border-radius: var(--lui-radius-md);
391
+ }
392
+ .lui-datagrid-table {
393
+ width: 100%;
394
+ border-collapse: collapse;
395
+ font-size: var(--lui-text-sm);
396
+ }
397
+ .lui-datagrid-th {
398
+ padding: var(--lui-space-3) var(--lui-space-4);
399
+ text-align: left;
400
+ font-weight: 600;
401
+ color: var(--lui-text);
402
+ background: var(--lui-bg-secondary);
403
+ border-bottom: 1px solid var(--lui-border);
404
+ white-space: nowrap;
405
+ }
406
+ .lui-datagrid-th--sortable {
407
+ cursor: pointer;
408
+ user-select: none;
409
+ }
410
+ .lui-datagrid-th--sortable:hover {
411
+ background: var(--lui-surface);
412
+ }
413
+ .lui-datagrid-th-content {
414
+ display: flex;
415
+ align-items: center;
416
+ gap: var(--lui-space-2);
417
+ }
418
+ .lui-datagrid-sort-icon {
419
+ font-size: var(--lui-text-xs);
420
+ color: var(--lui-primary);
421
+ }
422
+ .lui-datagrid-td {
423
+ padding: var(--lui-space-3) var(--lui-space-4);
424
+ color: var(--lui-text);
425
+ border-bottom: 1px solid var(--lui-border);
426
+ }
427
+ .lui-datagrid-row:last-child .lui-datagrid-td {
428
+ border-bottom: none;
429
+ }
430
+ .lui-datagrid-row--clickable {
431
+ cursor: pointer;
432
+ transition: background var(--lui-transition);
433
+ }
434
+ .lui-datagrid-row--clickable:hover {
435
+ background: var(--lui-surface);
436
+ }
437
+ .lui-datagrid-loading,
438
+ .lui-datagrid-empty {
439
+ padding: var(--lui-space-8);
440
+ text-align: center;
441
+ color: var(--lui-text-muted);
442
+ }
443
+
444
+ /* src/data/Chart.css */
445
+ .lui-chart {
446
+ position: relative;
447
+ background: var(--lui-bg);
448
+ border-radius: var(--lui-radius-md);
449
+ padding: var(--lui-space-4);
450
+ }
451
+
452
+ /* src/layout/AppShell.css */
453
+ .lui-app-shell {
454
+ display: flex;
455
+ flex-direction: column;
456
+ min-height: 100%;
457
+ background: var(--lui-bg);
458
+ color: var(--lui-text);
459
+ font-family: var(--lui-font-sans);
460
+ }
461
+ .lui-app-shell--padding-none .lui-app-shell-main {
462
+ padding: 0;
463
+ }
464
+ .lui-app-shell--padding-sm .lui-app-shell-main {
465
+ padding: var(--lui-space-3);
466
+ }
467
+ .lui-app-shell--padding-md .lui-app-shell-main {
468
+ padding: var(--lui-space-4);
469
+ }
470
+ .lui-app-shell--padding-lg .lui-app-shell-main {
471
+ padding: var(--lui-space-6);
472
+ }
473
+ .lui-app-shell-header {
474
+ flex-shrink: 0;
475
+ padding: var(--lui-space-3) var(--lui-space-4);
476
+ background: var(--lui-bg);
477
+ border-bottom: 1px solid var(--lui-border);
478
+ }
479
+ .lui-app-shell-body {
480
+ display: flex;
481
+ flex: 1;
482
+ min-height: 0;
483
+ }
484
+ .lui-app-shell-sidebar {
485
+ flex-shrink: 0;
486
+ padding: var(--lui-space-4);
487
+ background: var(--lui-bg-secondary);
488
+ border-right: 1px solid var(--lui-border);
489
+ overflow-y: auto;
490
+ }
491
+ .lui-app-shell-sidebar:last-child {
492
+ border-right: none;
493
+ border-left: 1px solid var(--lui-border);
494
+ }
495
+ .lui-app-shell-main {
496
+ flex: 1;
497
+ min-width: 0;
498
+ overflow-y: auto;
499
+ }
500
+ .lui-app-shell-footer {
501
+ flex-shrink: 0;
502
+ padding: var(--lui-space-3) var(--lui-space-4);
503
+ background: var(--lui-bg-secondary);
504
+ border-top: 1px solid var(--lui-border);
505
+ }
506
+
507
+ /* src/media/CodeBlock.css */
508
+ .lui-code-block {
509
+ position: relative;
510
+ border-radius: var(--lui-radius-md);
511
+ overflow: hidden;
512
+ }
513
+ .lui-code-block-pre {
514
+ margin: 0;
515
+ padding: var(--lui-space-4);
516
+ font-family: var(--lui-font-mono);
517
+ font-size: var(--lui-text-sm);
518
+ line-height: 1.6;
519
+ overflow-x: auto;
520
+ }
521
+ .lui-code-block-copy {
522
+ position: absolute;
523
+ top: var(--lui-space-2);
524
+ right: var(--lui-space-2);
525
+ display: flex;
526
+ align-items: center;
527
+ justify-content: center;
528
+ width: 32px;
529
+ height: 32px;
530
+ padding: 0;
531
+ color: #94a3b8;
532
+ background: rgba(30, 41, 59, 0.8);
533
+ border: 1px solid rgba(148, 163, 184, 0.2);
534
+ border-radius: var(--lui-radius-sm);
535
+ cursor: pointer;
536
+ opacity: 0;
537
+ transition: all var(--lui-transition);
538
+ }
539
+ .lui-code-block:hover .lui-code-block-copy {
540
+ opacity: 1;
541
+ }
542
+ .lui-code-block-copy:hover {
543
+ color: #f1f5f9;
544
+ background: rgba(30, 41, 59, 1);
545
+ border-color: rgba(148, 163, 184, 0.4);
546
+ }
547
+ .lui-code-block-copy svg {
548
+ width: 16px;
549
+ height: 16px;
550
+ }
551
+ .lui-code-block-line-number {
552
+ display: inline-block;
553
+ width: 2em;
554
+ margin-right: var(--lui-space-3);
555
+ color: #64748b;
556
+ text-align: right;
557
+ user-select: none;
558
+ }
559
+ /*# sourceMappingURL=index.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/core/Button.css","../src/core/Input.css","../src/mcp/ToolForm.css","../src/core/Card.css","../src/data/DataGrid.css","../src/data/Chart.css","../src/layout/AppShell.css","../src/media/CodeBlock.css"],"sourcesContent":["/* Button Component Styles */\r\n\r\n.lui-button {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: var(--lui-space-2);\r\n font-family: var(--lui-font-sans);\r\n font-weight: 500;\r\n border: none;\r\n border-radius: var(--lui-radius-md);\r\n cursor: pointer;\r\n transition: all var(--lui-transition);\r\n user-select: none;\r\n white-space: nowrap;\r\n}\r\n\r\n.lui-button:focus-visible {\r\n outline: 2px solid var(--lui-border-focus);\r\n outline-offset: 2px;\r\n}\r\n\r\n.lui-button:disabled {\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n}\r\n\r\n/* Variants */\r\n.lui-button--primary {\r\n background: var(--lui-primary);\r\n color: var(--lui-text-inverse);\r\n}\r\n\r\n.lui-button--primary:hover:not(:disabled) {\r\n background: var(--lui-primary-hover);\r\n}\r\n\r\n.lui-button--primary:active:not(:disabled) {\r\n background: var(--lui-primary-active);\r\n}\r\n\r\n.lui-button--secondary {\r\n background: var(--lui-surface);\r\n color: var(--lui-text);\r\n}\r\n\r\n.lui-button--secondary:hover:not(:disabled) {\r\n background: var(--lui-surface-hover);\r\n}\r\n\r\n.lui-button--ghost {\r\n background: transparent;\r\n color: var(--lui-text);\r\n}\r\n\r\n.lui-button--ghost:hover:not(:disabled) {\r\n background: var(--lui-surface);\r\n}\r\n\r\n.lui-button--outline {\r\n background: transparent;\r\n color: var(--lui-primary);\r\n border: 1px solid var(--lui-border);\r\n}\r\n\r\n.lui-button--outline:hover:not(:disabled) {\r\n background: var(--lui-surface);\r\n border-color: var(--lui-primary);\r\n}\r\n\r\n.lui-button--destructive {\r\n background: var(--lui-error);\r\n color: var(--lui-text-inverse);\r\n}\r\n\r\n.lui-button--destructive:hover:not(:disabled) {\r\n background: #dc2626;\r\n}\r\n\r\n/* Sizes */\r\n.lui-button--sm {\r\n height: 32px;\r\n padding: 0 var(--lui-space-3);\r\n font-size: var(--lui-text-sm);\r\n}\r\n\r\n.lui-button--md {\r\n height: 40px;\r\n padding: 0 var(--lui-space-4);\r\n font-size: var(--lui-text-sm);\r\n}\r\n\r\n.lui-button--lg {\r\n height: 48px;\r\n padding: 0 var(--lui-space-6);\r\n font-size: var(--lui-text-base);\r\n}\r\n\r\n.lui-button--icon {\r\n width: 40px;\r\n height: 40px;\r\n padding: 0;\r\n}\r\n\r\n.lui-button--icon.lui-button--sm {\r\n width: 32px;\r\n height: 32px;\r\n}\r\n\r\n.lui-button--icon.lui-button--lg {\r\n width: 48px;\r\n height: 48px;\r\n}\r\n\r\n/* Loading state */\r\n.lui-button--loading {\r\n position: relative;\r\n}\r\n\r\n.lui-button__spinner {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n\r\n.lui-spinner-icon {\r\n width: 16px;\r\n height: 16px;\r\n animation: lui-spin 1s linear infinite;\r\n}\r\n\r\n@keyframes lui-spin {\r\n from {\r\n transform: rotate(0deg);\r\n }\r\n\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n}\r\n\r\n.lui-button__icon {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n}\r\n\r\n.lui-button__icon svg {\r\n width: 16px;\r\n height: 16px;\r\n}\r\n\r\n.lui-button--lg .lui-button__icon svg {\r\n width: 20px;\r\n height: 20px;\r\n}","/* Input Component Styles */\r\n\r\n.lui-input-wrapper {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--lui-space-1);\r\n}\r\n\r\n.lui-input-wrapper--full-width {\r\n width: 100%;\r\n}\r\n\r\n.lui-input-label {\r\n font-size: var(--lui-text-sm);\r\n font-weight: 500;\r\n color: var(--lui-text);\r\n}\r\n\r\n.lui-input-container {\r\n display: flex;\r\n align-items: center;\r\n background: var(--lui-bg);\r\n border: 1px solid var(--lui-border);\r\n border-radius: var(--lui-radius-md);\r\n transition: all var(--lui-transition);\r\n}\r\n\r\n.lui-input-container:focus-within {\r\n border-color: var(--lui-border-focus);\r\n box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);\r\n}\r\n\r\n.lui-input-container--error {\r\n border-color: var(--lui-error);\r\n}\r\n\r\n.lui-input-container--error:focus-within {\r\n box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.1);\r\n}\r\n\r\n/* Sizes */\r\n.lui-input-container--sm {\r\n height: 32px;\r\n}\r\n\r\n.lui-input-container--md {\r\n height: 40px;\r\n}\r\n\r\n.lui-input-container--lg {\r\n height: 48px;\r\n}\r\n\r\n.lui-input {\r\n flex: 1;\r\n min-width: 0;\r\n height: 100%;\r\n padding: 0 var(--lui-space-3);\r\n font-family: var(--lui-font-sans);\r\n font-size: var(--lui-text-sm);\r\n color: var(--lui-text);\r\n background: transparent;\r\n border: none;\r\n outline: none;\r\n}\r\n\r\n.lui-input::placeholder {\r\n color: var(--lui-text-muted);\r\n}\r\n\r\n.lui-input-container--has-left .lui-input {\r\n padding-left: 0;\r\n}\r\n\r\n.lui-input-container--has-right .lui-input {\r\n padding-right: 0;\r\n}\r\n\r\n/* Input elements (icons) */\r\n.lui-input-element {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 0 var(--lui-space-3);\r\n color: var(--lui-text-muted);\r\n}\r\n\r\n.lui-input-element svg {\r\n width: 16px;\r\n height: 16px;\r\n}\r\n\r\n/* Messages */\r\n.lui-input-message {\r\n margin: 0;\r\n font-size: var(--lui-text-xs);\r\n color: var(--lui-text-muted);\r\n}\r\n\r\n.lui-input-message--error {\r\n color: var(--lui-error);\r\n}","/* ToolForm Component Styles */\r\n\r\n.lui-tool-form {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--lui-space-4);\r\n}\r\n\r\n.lui-tool-form-fields {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--lui-space-3);\r\n}\r\n\r\n.lui-tool-form-field {\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.lui-tool-form-textarea {\r\n width: 100%;\r\n min-height: 100px;\r\n padding: var(--lui-space-3);\r\n font-family: var(--lui-font-sans);\r\n font-size: var(--lui-text-sm);\r\n color: var(--lui-text);\r\n background: var(--lui-bg);\r\n border: 1px solid var(--lui-border);\r\n border-radius: var(--lui-radius-md);\r\n resize: vertical;\r\n outline: none;\r\n transition: all var(--lui-transition);\r\n}\r\n\r\n.lui-tool-form-textarea:focus {\r\n border-color: var(--lui-border-focus);\r\n box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);\r\n}\r\n\r\n.lui-tool-form-textarea::placeholder {\r\n color: var(--lui-text-muted);\r\n}\r\n\r\n.lui-tool-form-actions {\r\n display: flex;\r\n justify-content: flex-end;\r\n gap: var(--lui-space-3);\r\n}\r\n\r\n.lui-tool-form-error {\r\n padding: var(--lui-space-3);\r\n font-size: var(--lui-text-sm);\r\n color: var(--lui-error);\r\n background: rgba(239, 68, 68, 0.1);\r\n border-radius: var(--lui-radius-md);\r\n}\r\n\r\n.lui-tool-form-result {\r\n padding: var(--lui-space-3);\r\n font-family: var(--lui-font-mono);\r\n font-size: var(--lui-text-xs);\r\n color: var(--lui-text-secondary);\r\n background: var(--lui-surface);\r\n border-radius: var(--lui-radius-md);\r\n overflow-x: auto;\r\n}\r\n\r\n.lui-tool-form-result pre {\r\n margin: 0;\r\n}","/* Card Component Styles */\r\n\r\n.lui-card {\r\n background: var(--lui-bg);\r\n border-radius: var(--lui-radius-lg);\r\n overflow: hidden;\r\n}\r\n\r\n/* Variants */\r\n.lui-card--default {\r\n border: 1px solid var(--lui-border);\r\n}\r\n\r\n.lui-card--outline {\r\n border: 1px solid var(--lui-border);\r\n background: transparent;\r\n}\r\n\r\n.lui-card--elevated {\r\n border: none;\r\n box-shadow: var(--lui-shadow-md);\r\n}\r\n\r\n/* Padding */\r\n.lui-card--padding-none {\r\n padding: 0;\r\n}\r\n\r\n.lui-card--padding-sm {\r\n padding: var(--lui-space-3);\r\n}\r\n\r\n.lui-card--padding-md {\r\n padding: var(--lui-space-4);\r\n}\r\n\r\n.lui-card--padding-lg {\r\n padding: var(--lui-space-6);\r\n}\r\n\r\n/* Interactive */\r\n.lui-card--interactive {\r\n cursor: pointer;\r\n transition: all var(--lui-transition);\r\n}\r\n\r\n.lui-card--interactive:hover {\r\n border-color: var(--lui-primary);\r\n box-shadow: var(--lui-shadow-md);\r\n}\r\n\r\n/* Card Header */\r\n.lui-card-header {\r\n display: flex;\r\n align-items: flex-start;\r\n justify-content: space-between;\r\n gap: var(--lui-space-4);\r\n padding: var(--lui-space-4);\r\n border-bottom: 1px solid var(--lui-border);\r\n}\r\n\r\n.lui-card--padding-none .lui-card-header {\r\n padding: var(--lui-space-4);\r\n}\r\n\r\n.lui-card-header__text {\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.lui-card-header__title {\r\n margin: 0;\r\n font-size: var(--lui-text-lg);\r\n font-weight: 600;\r\n color: var(--lui-text);\r\n line-height: 1.4;\r\n}\r\n\r\n.lui-card-header__description {\r\n margin: var(--lui-space-1) 0 0;\r\n font-size: var(--lui-text-sm);\r\n color: var(--lui-text-muted);\r\n line-height: 1.5;\r\n}\r\n\r\n.lui-card-header__action {\r\n flex-shrink: 0;\r\n}\r\n\r\n/* Card Content */\r\n.lui-card-content {\r\n padding: var(--lui-space-4);\r\n}\r\n\r\n.lui-card--padding-none .lui-card-content {\r\n padding: var(--lui-space-4);\r\n}\r\n\r\n/* Card Footer */\r\n.lui-card-footer {\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-end;\r\n gap: var(--lui-space-3);\r\n padding: var(--lui-space-4);\r\n border-top: 1px solid var(--lui-border);\r\n background: var(--lui-bg-secondary);\r\n}\r\n\r\n.lui-card--padding-none .lui-card-footer {\r\n padding: var(--lui-space-4);\r\n}","/* DataGrid Component Styles */\r\n\r\n.lui-datagrid {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--lui-space-3);\r\n width: 100%;\r\n}\r\n\r\n.lui-datagrid-search {\r\n display: flex;\r\n}\r\n\r\n.lui-datagrid-search-input {\r\n flex: 1;\r\n height: 36px;\r\n padding: 0 var(--lui-space-3);\r\n font-family: var(--lui-font-sans);\r\n font-size: var(--lui-text-sm);\r\n color: var(--lui-text);\r\n background: var(--lui-bg);\r\n border: 1px solid var(--lui-border);\r\n border-radius: var(--lui-radius-md);\r\n outline: none;\r\n transition: all var(--lui-transition);\r\n}\r\n\r\n.lui-datagrid-search-input:focus {\r\n border-color: var(--lui-border-focus);\r\n box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);\r\n}\r\n\r\n.lui-datagrid-search-input::placeholder {\r\n color: var(--lui-text-muted);\r\n}\r\n\r\n.lui-datagrid-container {\r\n overflow-x: auto;\r\n border: 1px solid var(--lui-border);\r\n border-radius: var(--lui-radius-md);\r\n}\r\n\r\n.lui-datagrid-table {\r\n width: 100%;\r\n border-collapse: collapse;\r\n font-size: var(--lui-text-sm);\r\n}\r\n\r\n.lui-datagrid-th {\r\n padding: var(--lui-space-3) var(--lui-space-4);\r\n text-align: left;\r\n font-weight: 600;\r\n color: var(--lui-text);\r\n background: var(--lui-bg-secondary);\r\n border-bottom: 1px solid var(--lui-border);\r\n white-space: nowrap;\r\n}\r\n\r\n.lui-datagrid-th--sortable {\r\n cursor: pointer;\r\n user-select: none;\r\n}\r\n\r\n.lui-datagrid-th--sortable:hover {\r\n background: var(--lui-surface);\r\n}\r\n\r\n.lui-datagrid-th-content {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--lui-space-2);\r\n}\r\n\r\n.lui-datagrid-sort-icon {\r\n font-size: var(--lui-text-xs);\r\n color: var(--lui-primary);\r\n}\r\n\r\n.lui-datagrid-td {\r\n padding: var(--lui-space-3) var(--lui-space-4);\r\n color: var(--lui-text);\r\n border-bottom: 1px solid var(--lui-border);\r\n}\r\n\r\n.lui-datagrid-row:last-child .lui-datagrid-td {\r\n border-bottom: none;\r\n}\r\n\r\n.lui-datagrid-row--clickable {\r\n cursor: pointer;\r\n transition: background var(--lui-transition);\r\n}\r\n\r\n.lui-datagrid-row--clickable:hover {\r\n background: var(--lui-surface);\r\n}\r\n\r\n.lui-datagrid-loading,\r\n.lui-datagrid-empty {\r\n padding: var(--lui-space-8);\r\n text-align: center;\r\n color: var(--lui-text-muted);\r\n}","/* Chart Component Styles */\r\n\r\n.lui-chart {\r\n position: relative;\r\n background: var(--lui-bg);\r\n border-radius: var(--lui-radius-md);\r\n padding: var(--lui-space-4);\r\n}","/* AppShell Component Styles */\r\n\r\n.lui-app-shell {\r\n display: flex;\r\n flex-direction: column;\r\n min-height: 100%;\r\n background: var(--lui-bg);\r\n color: var(--lui-text);\r\n font-family: var(--lui-font-sans);\r\n}\r\n\r\n/* Padding variants */\r\n.lui-app-shell--padding-none .lui-app-shell-main {\r\n padding: 0;\r\n}\r\n\r\n.lui-app-shell--padding-sm .lui-app-shell-main {\r\n padding: var(--lui-space-3);\r\n}\r\n\r\n.lui-app-shell--padding-md .lui-app-shell-main {\r\n padding: var(--lui-space-4);\r\n}\r\n\r\n.lui-app-shell--padding-lg .lui-app-shell-main {\r\n padding: var(--lui-space-6);\r\n}\r\n\r\n/* Header */\r\n.lui-app-shell-header {\r\n flex-shrink: 0;\r\n padding: var(--lui-space-3) var(--lui-space-4);\r\n background: var(--lui-bg);\r\n border-bottom: 1px solid var(--lui-border);\r\n}\r\n\r\n/* Body (sidebar + main) */\r\n.lui-app-shell-body {\r\n display: flex;\r\n flex: 1;\r\n min-height: 0;\r\n}\r\n\r\n/* Sidebar */\r\n.lui-app-shell-sidebar {\r\n flex-shrink: 0;\r\n padding: var(--lui-space-4);\r\n background: var(--lui-bg-secondary);\r\n border-right: 1px solid var(--lui-border);\r\n overflow-y: auto;\r\n}\r\n\r\n.lui-app-shell-sidebar:last-child {\r\n border-right: none;\r\n border-left: 1px solid var(--lui-border);\r\n}\r\n\r\n/* Main */\r\n.lui-app-shell-main {\r\n flex: 1;\r\n min-width: 0;\r\n overflow-y: auto;\r\n}\r\n\r\n/* Footer */\r\n.lui-app-shell-footer {\r\n flex-shrink: 0;\r\n padding: var(--lui-space-3) var(--lui-space-4);\r\n background: var(--lui-bg-secondary);\r\n border-top: 1px solid var(--lui-border);\r\n}","/* CodeBlock Component Styles */\r\n\r\n.lui-code-block {\r\n position: relative;\r\n border-radius: var(--lui-radius-md);\r\n overflow: hidden;\r\n}\r\n\r\n.lui-code-block-pre {\r\n margin: 0;\r\n padding: var(--lui-space-4);\r\n font-family: var(--lui-font-mono);\r\n font-size: var(--lui-text-sm);\r\n line-height: 1.6;\r\n overflow-x: auto;\r\n}\r\n\r\n.lui-code-block-copy {\r\n position: absolute;\r\n top: var(--lui-space-2);\r\n right: var(--lui-space-2);\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 32px;\r\n height: 32px;\r\n padding: 0;\r\n color: #94a3b8;\r\n background: rgba(30, 41, 59, 0.8);\r\n border: 1px solid rgba(148, 163, 184, 0.2);\r\n border-radius: var(--lui-radius-sm);\r\n cursor: pointer;\r\n opacity: 0;\r\n transition: all var(--lui-transition);\r\n}\r\n\r\n.lui-code-block:hover .lui-code-block-copy {\r\n opacity: 1;\r\n}\r\n\r\n.lui-code-block-copy:hover {\r\n color: #f1f5f9;\r\n background: rgba(30, 41, 59, 1);\r\n border-color: rgba(148, 163, 184, 0.4);\r\n}\r\n\r\n.lui-code-block-copy svg {\r\n width: 16px;\r\n height: 16px;\r\n}\r\n\r\n.lui-code-block-line-number {\r\n display: inline-block;\r\n width: 2em;\r\n margin-right: var(--lui-space-3);\r\n color: #64748b;\r\n text-align: right;\r\n user-select: none;\r\n}"],"mappings":"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","names":[]}