moon-inferno 0.3.3 → 0.3.5

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 (3) hide show
  1. package/dist/index.css +4100 -0
  2. package/dist/styles.css +4100 -0
  3. package/package.json +10 -7
package/dist/index.css ADDED
@@ -0,0 +1,4100 @@
1
+ /* src/Button/Button.css */
2
+ .mi-button {
3
+ display: inline-flex;
4
+ align-items: center;
5
+ justify-content: center;
6
+ gap: 0.5rem;
7
+ font-family: var(--mi-font-mono, monospace);
8
+ font-weight: 600;
9
+ border-radius: var(--mi-radius-base, 4px);
10
+ cursor: pointer;
11
+ transition: all 0.15s ease-in-out;
12
+ user-select: none;
13
+ outline: none;
14
+ position: relative;
15
+ text-decoration: none;
16
+ border: 2px solid transparent;
17
+ }
18
+ .mi-button:focus-visible {
19
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
20
+ outline-offset: 2px;
21
+ box-shadow: var(--mi-shadow-glow);
22
+ }
23
+ .mi-button--disabled,
24
+ .mi-button:disabled {
25
+ opacity: 0.5;
26
+ cursor: not-allowed;
27
+ pointer-events: none;
28
+ box-shadow: none !important;
29
+ }
30
+ .mi-button--sm {
31
+ padding: 0.25rem 0.75rem;
32
+ font-size: 0.75rem;
33
+ min-height: 28px;
34
+ }
35
+ .mi-button--md {
36
+ padding: 0.5rem 1.25rem;
37
+ font-size: 0.875rem;
38
+ min-height: 38px;
39
+ }
40
+ .mi-button--lg {
41
+ padding: 0.75rem 1.75rem;
42
+ font-size: 1rem;
43
+ min-height: 48px;
44
+ }
45
+ .mi-button--inferno {
46
+ background-color: var(--mi-color-primary, #FF4D00);
47
+ color: var(--mi-color-primary-text, #FFFFFF);
48
+ border-color: var(--mi-color-primary, #FF4D00);
49
+ }
50
+ .mi-button--inferno:hover:not(:disabled) {
51
+ background-color: var(--mi-color-primary-hover, #FF661A);
52
+ border-color: var(--mi-color-primary-hover, #FF661A);
53
+ box-shadow: var(--mi-shadow-glow);
54
+ }
55
+ .mi-button--inferno:active:not(:disabled) {
56
+ background-color: var(--mi-color-primary-active, #FF2E00);
57
+ transform: translateY(1px);
58
+ }
59
+ .mi-button--outline {
60
+ background-color: transparent;
61
+ color: var(--mi-color-primary, #FF4D00);
62
+ border-color: var(--mi-color-primary, #FF4D00);
63
+ }
64
+ .mi-button--outline:hover:not(:disabled) {
65
+ background-color: rgba(255, 77, 0, 0.1);
66
+ box-shadow: var(--mi-shadow-glow);
67
+ }
68
+ .mi-button--ghost {
69
+ background-color: transparent;
70
+ color: var(--mi-color-text, #F1F5F9);
71
+ border-color: transparent;
72
+ }
73
+ .mi-button--ghost:hover:not(:disabled) {
74
+ background-color: var(--mi-color-surface, #1E1B26);
75
+ color: var(--mi-color-primary, #FF4D00);
76
+ }
77
+ .mi-button--pixel {
78
+ background-color: var(--mi-color-surface, #1E1B26);
79
+ color: var(--mi-color-primary, #FF4D00);
80
+ border: none;
81
+ font-family: var(--mi-font-mono, monospace);
82
+ font-weight: 700;
83
+ letter-spacing: 0.05em;
84
+ text-transform: uppercase;
85
+ border-radius: 0;
86
+ box-shadow:
87
+ 0 -2px 0 0 var(--mi-color-primary, #FF4D00),
88
+ 0 2px 0 0 var(--mi-color-primary, #FF4D00),
89
+ -2px 0 0 0 var(--mi-color-primary, #FF4D00),
90
+ 2px 0 0 0 var(--mi-color-primary, #FF4D00),
91
+ 2px 2px 0 0 #000000,
92
+ 4px 4px 0 0 rgba(0, 0, 0, 0.9);
93
+ margin: 2px 4px 4px 2px;
94
+ max-width: calc(100% - 6px);
95
+ position: relative;
96
+ transition: transform 0.08s step-end, box-shadow 0.08s step-end;
97
+ }
98
+ .mi-button--pixel:hover:not(:disabled) {
99
+ background-color: var(--mi-color-primary, #FF4D00);
100
+ color: var(--mi-color-primary-text, #FFFFFF);
101
+ box-shadow:
102
+ 0 -3px 0 0 #FFFFFF,
103
+ 0 3px 0 0 #FFFFFF,
104
+ -3px 0 0 0 #FFFFFF,
105
+ 3px 0 0 0 #FFFFFF,
106
+ 4px 4px 0 0 #000000,
107
+ 8px 8px 0 0 var(--mi-color-primary, #FF4D00);
108
+ }
109
+ .mi-button--pixel:active:not(:disabled) {
110
+ transform: translate(3px, 3px);
111
+ box-shadow:
112
+ 0 -3px 0 0 var(--mi-color-primary, #FF4D00),
113
+ 0 3px 0 0 var(--mi-color-primary, #FF4D00),
114
+ -3px 0 0 0 var(--mi-color-primary, #FF4D00),
115
+ 3px 0 0 0 var(--mi-color-primary, #FF4D00),
116
+ 1px 1px 0 0 #000000;
117
+ }
118
+
119
+ /* src/Card/Card.css */
120
+ .mi-card {
121
+ background-color: var(--mi-color-surface, #1E1B26);
122
+ border: 1px solid var(--mi-color-border, #332D40);
123
+ border-radius: var(--mi-radius-md, 6px);
124
+ color: var(--mi-color-text, #F1F5F9);
125
+ overflow: hidden;
126
+ transition: border-color 0.2s ease, box-shadow 0.2s ease;
127
+ width: 100%;
128
+ max-width: 100%;
129
+ }
130
+ .mi-card--interactive {
131
+ cursor: pointer;
132
+ }
133
+ .mi-card--interactive:hover {
134
+ border-color: var(--mi-color-border-accent, #FF4D00);
135
+ box-shadow: var(--mi-shadow-glow);
136
+ }
137
+ .mi-card--pixel {
138
+ border: 2px solid var(--mi-color-primary, #FF4D00);
139
+ border-radius: 0;
140
+ box-shadow: var(--mi-shadow-pixel, 3px 3px 0px #000);
141
+ }
142
+ .mi-card__header {
143
+ padding: 1rem 1.25rem;
144
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
145
+ font-family: var(--mi-font-mono, monospace);
146
+ font-weight: 600;
147
+ display: flex;
148
+ align-items: center;
149
+ justify-content: space-between;
150
+ flex-wrap: wrap;
151
+ gap: 0.5rem;
152
+ }
153
+ .mi-card__body {
154
+ padding: 1.25rem;
155
+ font-family: var(--mi-font-sans, sans-serif);
156
+ line-height: 1.6;
157
+ }
158
+ .mi-card__footer {
159
+ padding: 1rem 1.25rem;
160
+ border-top: 1px solid var(--mi-color-border, #332D40);
161
+ background-color: var(--mi-color-bg-subtle, #14121A);
162
+ display: flex;
163
+ align-items: center;
164
+ justify-content: flex-end;
165
+ gap: 0.75rem;
166
+ flex-wrap: wrap;
167
+ }
168
+ @media (max-width: 640px) {
169
+ .mi-card__header,
170
+ .mi-card__body,
171
+ .mi-card__footer {
172
+ padding: 0.875rem 0.75rem;
173
+ }
174
+ }
175
+
176
+ /* src/Input/Input.css */
177
+ .mi-input-field {
178
+ display: flex;
179
+ flex-direction: column;
180
+ gap: 0.375rem;
181
+ width: 100%;
182
+ }
183
+ .mi-input-label {
184
+ font-family: var(--mi-font-mono, monospace);
185
+ font-size: 0.875rem;
186
+ font-weight: 600;
187
+ color: var(--mi-color-text, #F1F5F9);
188
+ }
189
+ .mi-input {
190
+ width: 100%;
191
+ padding: 0.625rem 0.875rem;
192
+ font-family: var(--mi-font-mono, monospace);
193
+ font-size: 0.875rem;
194
+ background-color: var(--mi-color-bg-subtle, #14121A);
195
+ color: var(--mi-color-text, #F1F5F9);
196
+ border: 1px solid var(--mi-color-border, #332D40);
197
+ border-radius: var(--mi-radius-base, 4px);
198
+ outline: none;
199
+ transition: border-color 0.15s ease, box-shadow 0.15s ease;
200
+ }
201
+ .mi-input::placeholder {
202
+ color: var(--mi-color-text-dim, #64748B);
203
+ }
204
+ .mi-input:focus {
205
+ border-color: var(--mi-color-focus-ring, #FF4D00);
206
+ box-shadow: var(--mi-shadow-glow);
207
+ }
208
+ .mi-input--error {
209
+ border-color: var(--mi-color-error, #FF0033);
210
+ }
211
+ .mi-input--error:focus {
212
+ border-color: var(--mi-color-error, #FF0033);
213
+ box-shadow: 0 0 12px rgba(255, 0, 51, 0.4);
214
+ }
215
+ .mi-input-helper {
216
+ font-size: 0.75rem;
217
+ color: var(--mi-color-text-muted, #94A3B8);
218
+ font-family: var(--mi-font-sans, sans-serif);
219
+ }
220
+ .mi-input-helper--error {
221
+ color: var(--mi-color-error, #FF0033);
222
+ }
223
+
224
+ /* src/Dialog/Dialog.css */
225
+ .mi-dialog-backdrop {
226
+ position: fixed;
227
+ inset: 0;
228
+ background-color: rgba(10, 9, 13, 0.85);
229
+ backdrop-filter: blur(4px);
230
+ z-index: var(--mi-z-modal, 1400);
231
+ display: flex;
232
+ align-items: center;
233
+ justify-content: center;
234
+ padding: 1rem;
235
+ animation: mi-fade-in 0.2s ease-out;
236
+ }
237
+ .mi-dialog {
238
+ background-color: var(--mi-color-surface, #1E1B26);
239
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
240
+ border-radius: var(--mi-radius-md, 6px);
241
+ color: var(--mi-color-text, #F1F5F9);
242
+ width: 100%;
243
+ max-width: 540px;
244
+ box-shadow: var(--mi-shadow-glow), 0 20px 25px -5px rgba(0, 0, 0, 0.5);
245
+ overflow: hidden;
246
+ outline: none;
247
+ animation: mi-scale-in 0.2s ease-out;
248
+ }
249
+ .mi-dialog--pixel {
250
+ border-radius: 0;
251
+ box-shadow: var(--mi-shadow-pixel, 4px 4px 0px #000);
252
+ }
253
+ .mi-dialog__header {
254
+ padding: 1.25rem;
255
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
256
+ display: flex;
257
+ align-items: center;
258
+ justify-content: space-between;
259
+ font-family: var(--mi-font-mono, monospace);
260
+ font-weight: 700;
261
+ font-size: 1.125rem;
262
+ }
263
+ .mi-dialog__close-btn {
264
+ background: transparent;
265
+ border: none;
266
+ color: var(--mi-color-text-muted, #94A3B8);
267
+ cursor: pointer;
268
+ padding: 0.25rem;
269
+ border-radius: var(--mi-radius-sm, 2px);
270
+ display: inline-flex;
271
+ align-items: center;
272
+ justify-content: center;
273
+ transition: color 0.15s ease, background-color 0.15s ease;
274
+ }
275
+ .mi-dialog__close-btn:hover {
276
+ color: var(--mi-color-primary, #FF4D00);
277
+ background-color: rgba(255, 77, 0, 0.1);
278
+ }
279
+ .mi-dialog__close-btn:focus-visible {
280
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
281
+ }
282
+ .mi-dialog__body {
283
+ padding: 1.5rem 1.25rem;
284
+ font-family: var(--mi-font-sans, sans-serif);
285
+ line-height: 1.6;
286
+ }
287
+ .mi-dialog__footer {
288
+ padding: 1rem 1.25rem;
289
+ border-top: 1px solid var(--mi-color-border, #332D40);
290
+ background-color: var(--mi-color-bg-subtle, #14121A);
291
+ display: flex;
292
+ align-items: center;
293
+ justify-content: flex-end;
294
+ gap: 0.75rem;
295
+ }
296
+ @keyframes mi-fade-in {
297
+ from {
298
+ opacity: 0;
299
+ }
300
+ to {
301
+ opacity: 1;
302
+ }
303
+ }
304
+ @keyframes mi-scale-in {
305
+ from {
306
+ transform: scale(0.95);
307
+ opacity: 0;
308
+ }
309
+ to {
310
+ transform: scale(1);
311
+ opacity: 1;
312
+ }
313
+ }
314
+ @media (prefers-reduced-motion: reduce) {
315
+ .mi-dialog-backdrop,
316
+ .mi-dialog {
317
+ animation: none !important;
318
+ }
319
+ }
320
+
321
+ /* src/Tabs/Tabs.css */
322
+ .mi-tabs {
323
+ display: flex;
324
+ flex-direction: column;
325
+ width: 100%;
326
+ max-width: 100%;
327
+ }
328
+ .mi-tab-list {
329
+ display: flex;
330
+ align-items: center;
331
+ gap: 0.35rem;
332
+ overflow-x: auto;
333
+ scrollbar-width: thin;
334
+ -webkit-overflow-scrolling: touch;
335
+ white-space: nowrap;
336
+ max-width: 100%;
337
+ position: relative;
338
+ box-sizing: border-box;
339
+ padding: 0.35rem;
340
+ }
341
+ .mi-tab-list::-webkit-scrollbar {
342
+ height: 4px;
343
+ }
344
+ .mi-tab-list::-webkit-scrollbar-thumb {
345
+ background-color: var(--mi-color-border-accent, #FF4D00);
346
+ border-radius: 2px;
347
+ }
348
+ .mi-tab {
349
+ flex-shrink: 0;
350
+ display: inline-flex;
351
+ align-items: center;
352
+ justify-content: center;
353
+ gap: 0.5rem;
354
+ padding: 0.5rem 1rem;
355
+ font-family: var(--mi-font-mono, monospace);
356
+ font-size: 0.85rem;
357
+ font-weight: 600;
358
+ color: var(--mi-color-text-muted, #94A3B8);
359
+ background: transparent;
360
+ border: 1px solid transparent;
361
+ border-radius: var(--mi-radius-base, 6px);
362
+ cursor: pointer;
363
+ outline: none;
364
+ transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
365
+ position: relative;
366
+ user-select: none;
367
+ }
368
+ .mi-tab__icon {
369
+ display: flex;
370
+ align-items: center;
371
+ justify-content: center;
372
+ color: currentColor;
373
+ }
374
+ .mi-tab__label {
375
+ display: flex;
376
+ align-items: center;
377
+ gap: 0.5rem;
378
+ }
379
+ .mi-tab__badge {
380
+ font-size: 0.7rem;
381
+ padding: 0.1rem 0.4rem;
382
+ border-radius: 4px;
383
+ background: rgba(255, 255, 255, 0.1);
384
+ color: currentColor;
385
+ }
386
+ .mi-tab:hover:not(.mi-tab--selected):not(:disabled) {
387
+ color: var(--mi-color-text, #F1F5F9);
388
+ background-color: rgba(255, 77, 0, 0.08);
389
+ }
390
+ .mi-tab:disabled {
391
+ opacity: 0.45;
392
+ cursor: not-allowed;
393
+ }
394
+ .mi-tab:focus-visible {
395
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
396
+ outline-offset: 2px;
397
+ }
398
+ .mi-tabs--inferno .mi-tab-list {
399
+ background: rgba(18, 16, 25, 0.95);
400
+ backdrop-filter: blur(16px);
401
+ -webkit-backdrop-filter: blur(16px);
402
+ border: 1px solid var(--mi-color-border, rgba(255, 255, 255, 0.12));
403
+ border-radius: 12px 12px 0 0;
404
+ border-bottom: 2px solid var(--mi-color-border-accent, #FF4D00);
405
+ }
406
+ .mi-tabs--inferno .mi-tab--selected {
407
+ color: var(--mi-color-primary, #FF4D00);
408
+ background: rgba(255, 77, 0, 0.14);
409
+ border-color: var(--mi-color-border-accent, #FF4D00);
410
+ box-shadow: 0 0 16px rgba(255, 77, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.1);
411
+ }
412
+ .mi-tabs--inferno .mi-tab--selected::after {
413
+ content: "";
414
+ position: absolute;
415
+ bottom: -0.35rem;
416
+ left: 0.5rem;
417
+ right: 0.5rem;
418
+ height: 2px;
419
+ background: var(--mi-color-primary, #FF4D00);
420
+ box-shadow: 0 0 10px var(--mi-color-primary, #FF4D00);
421
+ }
422
+ .mi-tabs--pills .mi-tab-list {
423
+ background: rgba(10, 9, 14, 0.8);
424
+ border: 1px solid var(--mi-color-border, rgba(255, 255, 255, 0.12));
425
+ border-radius: 10px;
426
+ padding: 4px;
427
+ }
428
+ .mi-tabs--pills .mi-tab {
429
+ border-radius: 7px;
430
+ }
431
+ .mi-tabs--pills .mi-tab--selected {
432
+ color: #000;
433
+ background-color: var(--mi-color-primary, #FF4D00);
434
+ font-weight: 700;
435
+ box-shadow: 0 4px 14px rgba(255, 77, 0, 0.4);
436
+ }
437
+ .mi-tabs--pills .mi-tab--selected .mi-tab__icon {
438
+ color: #000;
439
+ }
440
+ .mi-tabs--pixel .mi-tab-list {
441
+ background-color: #0D0F14;
442
+ border: 2px solid var(--mi-color-primary, #FF4D00);
443
+ border-radius: 0;
444
+ padding: 4px;
445
+ }
446
+ .mi-tabs--pixel .mi-tab {
447
+ border-radius: 0;
448
+ border: 1px solid transparent;
449
+ font-family: var(--mi-font-mono, monospace);
450
+ }
451
+ .mi-tabs--pixel .mi-tab--selected {
452
+ color: #FFF;
453
+ background-color: var(--mi-color-primary, #FF4D00);
454
+ border: 2px solid #000;
455
+ box-shadow: 3px 3px 0 #000;
456
+ }
457
+ .mi-tabs--underline .mi-tab-list {
458
+ background: transparent;
459
+ border-bottom: 1.5px solid var(--mi-color-border, rgba(255, 255, 255, 0.12));
460
+ padding: 0;
461
+ gap: 1rem;
462
+ }
463
+ .mi-tabs--underline .mi-tab {
464
+ border-radius: 0;
465
+ padding: 0.6rem 0.25rem;
466
+ }
467
+ .mi-tabs--underline .mi-tab--selected {
468
+ color: var(--mi-color-primary, #FF4D00);
469
+ background: transparent;
470
+ }
471
+ .mi-tabs--underline .mi-tab--selected::after {
472
+ content: "";
473
+ position: absolute;
474
+ bottom: -1.5px;
475
+ left: 0;
476
+ right: 0;
477
+ height: 2px;
478
+ background: var(--mi-color-primary, #FF4D00);
479
+ box-shadow: 0 0 10px var(--mi-color-primary, #FF4D00);
480
+ }
481
+ .mi-tabs--sm .mi-tab {
482
+ padding: 0.35rem 0.75rem;
483
+ font-size: 0.78rem;
484
+ min-height: 34px;
485
+ }
486
+ .mi-tabs--md .mi-tab {
487
+ padding: 0.5rem 1rem;
488
+ font-size: 0.85rem;
489
+ min-height: 42px;
490
+ }
491
+ .mi-tabs--lg .mi-tab {
492
+ padding: 0.75rem 1.25rem;
493
+ font-size: 0.95rem;
494
+ min-height: 50px;
495
+ }
496
+ .mi-tabs--fitted .mi-tab-list {
497
+ display: grid;
498
+ grid-auto-flow: column;
499
+ grid-auto-columns: 1fr;
500
+ }
501
+ .mi-tabs--fitted .mi-tab {
502
+ width: 100%;
503
+ }
504
+ .mi-tab-panel {
505
+ padding: 1.5rem;
506
+ background-color: var(--mi-color-surface, rgba(18, 16, 25, 0.96));
507
+ border: 1px solid var(--mi-color-border, rgba(255, 255, 255, 0.12));
508
+ border-top: none;
509
+ border-radius: 0 0 12px 12px;
510
+ outline: none;
511
+ overflow-x: auto;
512
+ max-width: 100%;
513
+ }
514
+ .mi-tabs--pills .mi-tab-panel,
515
+ .mi-tabs--underline .mi-tab-panel {
516
+ border-top: 1px solid var(--mi-color-border, rgba(255, 255, 255, 0.12));
517
+ border-radius: 12px;
518
+ margin-top: 0.75rem;
519
+ }
520
+ .mi-tab-panel:focus-visible {
521
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
522
+ }
523
+ @media (max-width: 640px) {
524
+ .mi-tab-panel {
525
+ padding: 1rem 0.75rem;
526
+ }
527
+ }
528
+
529
+ /* src/CRTEffect/CRTEffect.css */
530
+ .mi-crt-overlay {
531
+ position: fixed;
532
+ inset: 0;
533
+ pointer-events: none;
534
+ z-index: var(--mi-z-overlay, 1300);
535
+ overflow: hidden;
536
+ }
537
+ .mi-crt-scanlines {
538
+ position: absolute;
539
+ inset: 0;
540
+ background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%);
541
+ background-size: 100% 4px;
542
+ }
543
+ .mi-crt-flicker {
544
+ position: absolute;
545
+ inset: 0;
546
+ background: var(--mi-crt-scanline, rgba(255, 77, 0, 0.05));
547
+ opacity: 0.15;
548
+ animation: mi-crt-flicker-anim 0.15s infinite;
549
+ }
550
+ @keyframes mi-crt-flicker-anim {
551
+ 0% {
552
+ opacity: 0.12;
553
+ }
554
+ 50% {
555
+ opacity: 0.18;
556
+ }
557
+ 100% {
558
+ opacity: 0.14;
559
+ }
560
+ }
561
+ @media (prefers-reduced-motion: reduce) {
562
+ .mi-crt-flicker {
563
+ animation: none !important;
564
+ opacity: 0.08 !important;
565
+ }
566
+ }
567
+
568
+ /* src/Terminal/Terminal.css */
569
+ .mi-terminal {
570
+ background-color: var(--mi-color-bg, #0A090D);
571
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
572
+ border-radius: var(--mi-radius-md, 6px);
573
+ font-family: var(--mi-font-mono, monospace);
574
+ color: var(--mi-color-text, #F1F5F9);
575
+ overflow: hidden;
576
+ box-shadow: var(--mi-shadow-glow);
577
+ display: flex;
578
+ flex-direction: column;
579
+ }
580
+ .mi-terminal__titlebar {
581
+ background-color: var(--mi-color-bg-subtle, #14121A);
582
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
583
+ padding: 0.5rem 0.75rem;
584
+ display: flex;
585
+ align-items: center;
586
+ justify-content: space-between;
587
+ font-size: 0.75rem;
588
+ color: var(--mi-color-text-muted, #94A3B8);
589
+ font-weight: 600;
590
+ }
591
+ .mi-terminal__dots {
592
+ display: flex;
593
+ gap: 0.375rem;
594
+ }
595
+ .mi-terminal__dot {
596
+ width: 10px;
597
+ height: 10px;
598
+ border-radius: 50%;
599
+ background-color: var(--mi-color-border, #332D40);
600
+ }
601
+ .mi-terminal__dot--red {
602
+ background-color: #FF5F56;
603
+ }
604
+ .mi-terminal__dot--yellow {
605
+ background-color: #FFBD2E;
606
+ }
607
+ .mi-terminal__dot--green {
608
+ background-color: #27C93F;
609
+ }
610
+ .mi-terminal__content {
611
+ padding: 1rem;
612
+ min-height: 160px;
613
+ max-height: 360px;
614
+ overflow-y: auto;
615
+ font-size: 0.875rem;
616
+ line-height: 1.5;
617
+ display: flex;
618
+ flex-direction: column;
619
+ gap: 0.5rem;
620
+ }
621
+ .mi-terminal__line {
622
+ display: flex;
623
+ gap: 0.5rem;
624
+ align-items: flex-start;
625
+ word-break: break-all;
626
+ }
627
+ .mi-terminal__prompt {
628
+ color: var(--mi-color-primary, #FF4D00);
629
+ font-weight: 700;
630
+ user-select: none;
631
+ }
632
+ .mi-terminal__input-form {
633
+ display: flex;
634
+ align-items: center;
635
+ gap: 0.5rem;
636
+ width: 100%;
637
+ }
638
+ .mi-terminal__input {
639
+ background: transparent;
640
+ border: none;
641
+ color: var(--mi-color-text, #F1F5F9);
642
+ font-family: inherit;
643
+ font-size: inherit;
644
+ width: 100%;
645
+ outline: none;
646
+ }
647
+
648
+ /* src/GlitchText/GlitchText.css */
649
+ .mi-glitch-text {
650
+ position: relative;
651
+ display: inline-block;
652
+ color: var(--mi-color-primary, #FF4D00);
653
+ font-family: var(--mi-font-mono, monospace);
654
+ font-weight: 700;
655
+ letter-spacing: -0.02em;
656
+ }
657
+ .mi-glitch-text::before,
658
+ .mi-glitch-text::after {
659
+ content: attr(data-text);
660
+ position: absolute;
661
+ top: 0;
662
+ left: 0;
663
+ width: 100%;
664
+ height: 100%;
665
+ clip-path: rect(0, 0, 0, 0);
666
+ }
667
+ .mi-glitch-text::before {
668
+ left: -2px;
669
+ text-shadow: 2px 0 #00E5FF;
670
+ animation: mi-glitch-anim-1 2s infinite linear alternate-reverse;
671
+ }
672
+ .mi-glitch-text::after {
673
+ left: 2px;
674
+ text-shadow: -2px 0 #FF0033;
675
+ animation: mi-glitch-anim-2 3s infinite linear alternate-reverse;
676
+ }
677
+ @keyframes mi-glitch-anim-1 {
678
+ 0% {
679
+ clip-path: inset(20% 0 60% 0);
680
+ }
681
+ 20% {
682
+ clip-path: inset(80% 0 5% 0);
683
+ }
684
+ 40% {
685
+ clip-path: inset(40% 0 40% 0);
686
+ }
687
+ 60% {
688
+ clip-path: inset(10% 0 75% 0);
689
+ }
690
+ 80% {
691
+ clip-path: inset(65% 0 15% 0);
692
+ }
693
+ 100% {
694
+ clip-path: inset(30% 0 50% 0);
695
+ }
696
+ }
697
+ @keyframes mi-glitch-anim-2 {
698
+ 0% {
699
+ clip-path: inset(70% 0 10% 0);
700
+ }
701
+ 25% {
702
+ clip-path: inset(15% 0 70% 0);
703
+ }
704
+ 50% {
705
+ clip-path: inset(50% 0 30% 0);
706
+ }
707
+ 75% {
708
+ clip-path: inset(5% 0 85% 0);
709
+ }
710
+ 100% {
711
+ clip-path: inset(90% 0 2% 0);
712
+ }
713
+ }
714
+ @media (prefers-reduced-motion: reduce) {
715
+ .mi-glitch-text::before,
716
+ .mi-glitch-text::after {
717
+ animation: none !important;
718
+ display: none !important;
719
+ }
720
+ }
721
+
722
+ /* src/PixelContainer/PixelContainer.css */
723
+ .mi-pixel-container {
724
+ background-color: var(--mi-color-surface, #1E1B26);
725
+ color: var(--mi-color-text, #F1F5F9);
726
+ position: relative;
727
+ box-shadow:
728
+ 0 -3px 0 0 var(--mi-color-primary, #FF4D00),
729
+ 0 3px 0 0 var(--mi-color-primary, #FF4D00),
730
+ -3px 0 0 0 var(--mi-color-primary, #FF4D00),
731
+ 3px 0 0 0 var(--mi-color-primary, #FF4D00),
732
+ 3px 3px 0 0 #000000,
733
+ 6px 6px 0 0 rgba(0, 0, 0, 0.8);
734
+ margin: 4px 6px 6px 4px;
735
+ max-width: calc(100% - 10px);
736
+ overflow: hidden;
737
+ }
738
+ .mi-pixel-container__titlebar {
739
+ background-color: var(--mi-color-primary, #FF4D00);
740
+ color: var(--mi-color-primary-text, #FFFFFF);
741
+ padding: 0.5rem 0.75rem;
742
+ font-family: var(--mi-font-mono, monospace);
743
+ font-weight: 700;
744
+ font-size: 0.85rem;
745
+ letter-spacing: 0.05em;
746
+ display: flex;
747
+ align-items: center;
748
+ justify-content: space-between;
749
+ user-select: none;
750
+ flex-wrap: wrap;
751
+ gap: 0.5rem;
752
+ }
753
+ .mi-pixel-container__controls {
754
+ display: flex;
755
+ gap: 0.35rem;
756
+ }
757
+ .mi-pixel-container__btn {
758
+ width: 18px;
759
+ height: 18px;
760
+ background-color: rgba(255, 255, 255, 0.3);
761
+ border: 1px solid #FFFFFF;
762
+ cursor: pointer;
763
+ display: inline-flex;
764
+ align-items: center;
765
+ justify-content: center;
766
+ font-size: 10px;
767
+ font-weight: bold;
768
+ color: #FFFFFF;
769
+ }
770
+ .mi-pixel-container__btn:hover {
771
+ background-color: #FFFFFF;
772
+ color: var(--mi-color-primary, #FF4D00);
773
+ }
774
+ .mi-pixel-container__body {
775
+ padding: 1.25rem;
776
+ font-family: var(--mi-font-sans, sans-serif);
777
+ line-height: 1.6;
778
+ }
779
+ @media (max-width: 640px) {
780
+ .mi-pixel-container {
781
+ margin: 2px 4px 4px 2px;
782
+ max-width: calc(100% - 6px);
783
+ box-shadow:
784
+ 0 -2px 0 0 var(--mi-color-primary, #FF4D00),
785
+ 0 2px 0 0 var(--mi-color-primary, #FF4D00),
786
+ -2px 0 0 0 var(--mi-color-primary, #FF4D00),
787
+ 2px 0 0 0 var(--mi-color-primary, #FF4D00),
788
+ 2px 2px 0 0 #000000;
789
+ }
790
+ .mi-pixel-container__body {
791
+ padding: 0.875rem 0.75rem;
792
+ }
793
+ }
794
+
795
+ /* src/Badge/Badge.css */
796
+ .mi-badge {
797
+ display: inline-flex;
798
+ align-items: center;
799
+ gap: 0.375rem;
800
+ padding: 0.2rem 0.5rem;
801
+ font-family: var(--mi-font-mono, monospace);
802
+ font-size: 0.75rem;
803
+ font-weight: 700;
804
+ border-radius: var(--mi-radius-sm, 2px);
805
+ text-transform: uppercase;
806
+ letter-spacing: 0.05em;
807
+ max-width: 100%;
808
+ box-sizing: border-box;
809
+ }
810
+ .mi-badge--inferno {
811
+ background-color: rgba(255, 77, 0, 0.15);
812
+ color: var(--mi-color-primary, #FF4D00);
813
+ border: 1px solid var(--mi-color-primary, #FF4D00);
814
+ }
815
+ .mi-badge--pixel {
816
+ background-color: var(--mi-color-bg-subtle, #14121A);
817
+ color: var(--mi-color-primary, #FF4D00);
818
+ border: none;
819
+ box-shadow:
820
+ 0 -2px 0 0 var(--mi-color-primary, #FF4D00),
821
+ 0 2px 0 0 var(--mi-color-primary, #FF4D00),
822
+ -2px 0 0 0 var(--mi-color-primary, #FF4D00),
823
+ 2px 0 0 0 var(--mi-color-primary, #FF4D00);
824
+ margin: 2px;
825
+ }
826
+ .mi-badge--success {
827
+ background-color: rgba(0, 255, 102, 0.15);
828
+ color: var(--mi-color-success, #00FF66);
829
+ border: 1px solid var(--mi-color-success, #00FF66);
830
+ }
831
+ .mi-badge--error {
832
+ background-color: rgba(255, 0, 51, 0.15);
833
+ color: var(--mi-color-error, #FF0033);
834
+ border: 1px solid var(--mi-color-error, #FF0033);
835
+ }
836
+ .mi-badge--outline {
837
+ background-color: transparent;
838
+ color: var(--mi-color-text-muted, #94A3B8);
839
+ border: 1px solid var(--mi-color-border, #332D40);
840
+ }
841
+
842
+ /* src/Container/Container.css */
843
+ .mi-container {
844
+ width: 100%;
845
+ max-width: 100%;
846
+ margin-left: auto;
847
+ margin-right: auto;
848
+ padding-left: 0.75rem;
849
+ padding-right: 0.75rem;
850
+ box-sizing: border-box;
851
+ }
852
+ .mi-container--sm {
853
+ max-width: 640px;
854
+ }
855
+ .mi-container--md {
856
+ max-width: 768px;
857
+ }
858
+ .mi-container--lg {
859
+ max-width: 1024px;
860
+ }
861
+ .mi-container--xl {
862
+ max-width: 1280px;
863
+ }
864
+ .mi-container--full {
865
+ max-width: 100%;
866
+ }
867
+ @media (min-width: 640px) {
868
+ .mi-container {
869
+ padding-left: 1.5rem;
870
+ padding-right: 1.5rem;
871
+ }
872
+ }
873
+
874
+ /* src/Stack/Stack.css */
875
+ .mi-stack {
876
+ display: flex;
877
+ }
878
+ .mi-stack--row {
879
+ flex-direction: row;
880
+ }
881
+ .mi-stack--column {
882
+ flex-direction: column;
883
+ }
884
+ .mi-stack--wrap {
885
+ flex-wrap: wrap;
886
+ }
887
+ .mi-stack--nowrap {
888
+ flex-wrap: nowrap;
889
+ }
890
+ .mi-stack--align-start {
891
+ align-items: flex-start;
892
+ }
893
+ .mi-stack--align-center {
894
+ align-items: center;
895
+ }
896
+ .mi-stack--align-end {
897
+ align-items: flex-end;
898
+ }
899
+ .mi-stack--align-stretch {
900
+ align-items: stretch;
901
+ }
902
+ .mi-stack--justify-start {
903
+ justify-content: flex-start;
904
+ }
905
+ .mi-stack--justify-center {
906
+ justify-content: center;
907
+ }
908
+ .mi-stack--justify-end {
909
+ justify-content: flex-end;
910
+ }
911
+ .mi-stack--justify-between {
912
+ justify-content: space-between;
913
+ }
914
+
915
+ /* src/Grid/Grid.css */
916
+ .mi-grid {
917
+ display: grid;
918
+ width: 100%;
919
+ }
920
+
921
+ /* src/Tooltip/Tooltip.css */
922
+ .mi-tooltip-wrapper {
923
+ position: relative;
924
+ display: inline-block;
925
+ }
926
+ .mi-tooltip {
927
+ position: absolute;
928
+ background-color: var(--mi-color-surface, #1E1B26);
929
+ color: var(--mi-color-text, #F1F5F9);
930
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
931
+ border-radius: var(--mi-radius-base, 4px);
932
+ padding: 0.35rem 0.65rem;
933
+ font-family: var(--mi-font-mono, monospace);
934
+ font-size: 0.75rem;
935
+ max-width: 240px;
936
+ width: max-content;
937
+ white-space: normal;
938
+ word-break: break-word;
939
+ text-align: center;
940
+ box-shadow: var(--mi-shadow-glow);
941
+ z-index: var(--mi-z-tooltip, 1800);
942
+ pointer-events: none;
943
+ animation: mi-tooltip-fade 0.15s ease-out;
944
+ }
945
+ .mi-tooltip--top {
946
+ bottom: 100%;
947
+ left: 50%;
948
+ transform: translateX(-50%);
949
+ margin-bottom: 8px;
950
+ }
951
+ .mi-tooltip--bottom {
952
+ top: 100%;
953
+ left: 50%;
954
+ transform: translateX(-50%);
955
+ margin-top: 8px;
956
+ }
957
+ .mi-tooltip--left {
958
+ right: 100%;
959
+ top: 50%;
960
+ transform: translateY(-50%);
961
+ margin-right: 8px;
962
+ }
963
+ .mi-tooltip--right {
964
+ left: 100%;
965
+ top: 50%;
966
+ transform: translateY(-50%);
967
+ margin-left: 8px;
968
+ }
969
+ @keyframes mi-tooltip-fade {
970
+ from {
971
+ opacity: 0;
972
+ }
973
+ to {
974
+ opacity: 1;
975
+ }
976
+ }
977
+
978
+ /* src/Toast/Toast.css */
979
+ .mi-toast-container {
980
+ position: fixed;
981
+ bottom: 1.5rem;
982
+ right: 1.5rem;
983
+ display: flex;
984
+ flex-direction: column;
985
+ gap: 0.75rem;
986
+ z-index: var(--mi-z-toast, 1700);
987
+ max-width: 420px;
988
+ width: calc(100vw - 3rem);
989
+ pointer-events: none;
990
+ }
991
+ .mi-toast {
992
+ pointer-events: auto;
993
+ background-color: var(--mi-color-surface, #1E1B26);
994
+ color: var(--mi-color-text, #F1F5F9);
995
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
996
+ border-radius: var(--mi-radius-md, 6px);
997
+ padding: 0.875rem 1.125rem;
998
+ font-family: var(--mi-font-mono, monospace);
999
+ font-size: 0.875rem;
1000
+ box-shadow: var(--mi-shadow-glow), 0 10px 15px -3px rgba(0, 0, 0, 0.4);
1001
+ display: flex;
1002
+ align-items: flex-start;
1003
+ justify-content: space-between;
1004
+ gap: 0.75rem;
1005
+ animation: mi-toast-slide 0.2s ease-out;
1006
+ }
1007
+ .mi-toast__content {
1008
+ display: flex;
1009
+ flex-direction: column;
1010
+ gap: 0.2rem;
1011
+ flex: 1;
1012
+ }
1013
+ .mi-toast__title {
1014
+ font-weight: 700;
1015
+ font-size: 0.9rem;
1016
+ color: var(--mi-color-text, #F1F5F9);
1017
+ }
1018
+ .mi-toast__description {
1019
+ margin: 0;
1020
+ font-size: 0.825rem;
1021
+ color: var(--mi-color-text-muted, #94A3B8);
1022
+ line-height: 1.4;
1023
+ }
1024
+ .mi-toast--success {
1025
+ border-color: var(--mi-color-success, #00FF66);
1026
+ box-shadow: 0 0 12px rgba(0, 255, 102, 0.3);
1027
+ }
1028
+ .mi-toast--error {
1029
+ border-color: var(--mi-color-error, #FF0033);
1030
+ box-shadow: 0 0 12px rgba(255, 0, 51, 0.3);
1031
+ }
1032
+ .mi-toast--info {
1033
+ border-color: var(--mi-color-info, #00E5FF);
1034
+ box-shadow: 0 0 12px rgba(0, 229, 255, 0.3);
1035
+ }
1036
+ .mi-toast--warning {
1037
+ border-color: #FFD700;
1038
+ box-shadow: 0 0 12px rgba(255, 215, 0, 0.3);
1039
+ }
1040
+ .mi-toast__close-btn {
1041
+ background: transparent;
1042
+ border: none;
1043
+ color: var(--mi-color-text-muted, #94A3B8);
1044
+ cursor: pointer;
1045
+ padding: 0.2rem;
1046
+ display: inline-flex;
1047
+ align-items: center;
1048
+ justify-content: center;
1049
+ border-radius: 2px;
1050
+ margin-top: 1px;
1051
+ }
1052
+ .mi-toast__close-btn:hover {
1053
+ color: var(--mi-color-text, #F1F5F9);
1054
+ }
1055
+ @keyframes mi-toast-slide {
1056
+ from {
1057
+ transform: translateY(1rem);
1058
+ opacity: 0;
1059
+ }
1060
+ to {
1061
+ transform: translateY(0);
1062
+ opacity: 1;
1063
+ }
1064
+ }
1065
+ @media (max-width: 640px) {
1066
+ .mi-toast-container {
1067
+ bottom: 1rem;
1068
+ right: 1rem;
1069
+ left: 1rem;
1070
+ width: auto;
1071
+ }
1072
+ }
1073
+
1074
+ /* src/Loader/Loader.css */
1075
+ .mi-loader {
1076
+ display: inline-flex;
1077
+ align-items: center;
1078
+ justify-content: center;
1079
+ position: relative;
1080
+ }
1081
+ .mi-loader--sm {
1082
+ width: 16px;
1083
+ height: 16px;
1084
+ }
1085
+ .mi-loader--md {
1086
+ width: 28px;
1087
+ height: 28px;
1088
+ }
1089
+ .mi-loader--lg {
1090
+ width: 44px;
1091
+ height: 44px;
1092
+ }
1093
+ .mi-loader__spinner {
1094
+ width: 100%;
1095
+ height: 100%;
1096
+ border: 3px solid rgba(255, 77, 0, 0.2);
1097
+ border-top-color: var(--mi-color-primary, #FF4D00);
1098
+ border-radius: 50%;
1099
+ animation: mi-spin 0.75s linear infinite;
1100
+ }
1101
+ .mi-loader--pixel .mi-loader__spinner {
1102
+ border-radius: 0;
1103
+ border-style: double;
1104
+ border-width: 4px;
1105
+ }
1106
+ .mi-loader--pulse .mi-loader__spinner {
1107
+ border: none;
1108
+ background-color: var(--mi-color-primary, #FF4D00);
1109
+ border-radius: 50%;
1110
+ animation: mi-pulse 1.2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
1111
+ }
1112
+ @keyframes mi-spin {
1113
+ 0% {
1114
+ transform: rotate(0deg);
1115
+ }
1116
+ 100% {
1117
+ transform: rotate(360deg);
1118
+ }
1119
+ }
1120
+ @keyframes mi-pulse {
1121
+ 0%, 100% {
1122
+ opacity: 1;
1123
+ transform: scale(1);
1124
+ }
1125
+ 50% {
1126
+ opacity: 0.3;
1127
+ transform: scale(0.7);
1128
+ }
1129
+ }
1130
+ @media (prefers-reduced-motion: reduce) {
1131
+ .mi-loader__spinner {
1132
+ animation-duration: 2s !important;
1133
+ }
1134
+ }
1135
+
1136
+ /* src/Checkbox/Checkbox.css */
1137
+ .mi-checkbox-label {
1138
+ display: inline-flex;
1139
+ align-items: flex-start;
1140
+ gap: 0.65rem;
1141
+ cursor: pointer;
1142
+ user-select: none;
1143
+ font-family: var(--mi-font-sans, sans-serif);
1144
+ font-size: 0.875rem;
1145
+ color: var(--mi-color-text, #F1F5F9);
1146
+ min-height: 44px;
1147
+ }
1148
+ .mi-checkbox-label--disabled {
1149
+ opacity: 0.5;
1150
+ cursor: not-allowed;
1151
+ }
1152
+ .mi-checkbox-input {
1153
+ position: absolute;
1154
+ opacity: 0;
1155
+ width: 0;
1156
+ height: 0;
1157
+ }
1158
+ .mi-checkbox-box {
1159
+ width: 20px;
1160
+ height: 20px;
1161
+ background-color: var(--mi-color-surface, #1E1B26);
1162
+ border: 2px solid var(--mi-color-border, #332D40);
1163
+ border-radius: var(--mi-radius-sm, 2px);
1164
+ display: inline-flex;
1165
+ align-items: center;
1166
+ justify-content: center;
1167
+ color: transparent;
1168
+ transition: all 0.15s ease-in-out;
1169
+ margin-top: 2px;
1170
+ flex-shrink: 0;
1171
+ }
1172
+ .mi-checkbox-input:focus-visible + .mi-checkbox-box {
1173
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1174
+ outline-offset: 2px;
1175
+ border-color: var(--mi-color-primary, #FF4D00);
1176
+ }
1177
+ .mi-checkbox-input:checked + .mi-checkbox-box {
1178
+ background-color: var(--mi-color-primary, #FF4D00);
1179
+ border-color: var(--mi-color-primary, #FF4D00);
1180
+ color: #FFFFFF;
1181
+ box-shadow: var(--mi-shadow-glow);
1182
+ }
1183
+ .mi-checkbox-text {
1184
+ display: flex;
1185
+ flex-direction: column;
1186
+ }
1187
+ .mi-checkbox-description {
1188
+ font-size: 0.75rem;
1189
+ color: var(--mi-color-text-muted, #94A3B8);
1190
+ }
1191
+
1192
+ /* src/Radio/Radio.css */
1193
+ .mi-radio-group {
1194
+ display: flex;
1195
+ flex-direction: column;
1196
+ gap: 0.75rem;
1197
+ }
1198
+ .mi-radio-label {
1199
+ display: inline-flex;
1200
+ align-items: flex-start;
1201
+ gap: 0.65rem;
1202
+ cursor: pointer;
1203
+ user-select: none;
1204
+ font-family: var(--mi-font-sans, sans-serif);
1205
+ font-size: 0.875rem;
1206
+ color: var(--mi-color-text, #F1F5F9);
1207
+ min-height: 44px;
1208
+ }
1209
+ .mi-radio-label--disabled {
1210
+ opacity: 0.5;
1211
+ cursor: not-allowed;
1212
+ }
1213
+ .mi-radio-input {
1214
+ position: absolute;
1215
+ opacity: 0;
1216
+ width: 0;
1217
+ height: 0;
1218
+ }
1219
+ .mi-radio-circle {
1220
+ width: 20px;
1221
+ height: 20px;
1222
+ background-color: var(--mi-color-surface, #1E1B26);
1223
+ border: 2px solid var(--mi-color-border, #332D40);
1224
+ border-radius: 50%;
1225
+ display: inline-flex;
1226
+ align-items: center;
1227
+ justify-content: center;
1228
+ transition: all 0.15s ease-in-out;
1229
+ margin-top: 2px;
1230
+ flex-shrink: 0;
1231
+ position: relative;
1232
+ }
1233
+ .mi-radio-circle::after {
1234
+ content: "";
1235
+ width: 8px;
1236
+ height: 8px;
1237
+ background-color: #FFFFFF;
1238
+ border-radius: 50%;
1239
+ transform: scale(0);
1240
+ transition: transform 0.15s ease-in-out;
1241
+ }
1242
+ .mi-radio-input:focus-visible + .mi-radio-circle {
1243
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1244
+ outline-offset: 2px;
1245
+ border-color: var(--mi-color-primary, #FF4D00);
1246
+ }
1247
+ .mi-radio-input:checked + .mi-radio-circle {
1248
+ background-color: var(--mi-color-primary, #FF4D00);
1249
+ border-color: var(--mi-color-primary, #FF4D00);
1250
+ box-shadow: var(--mi-shadow-glow);
1251
+ }
1252
+ .mi-radio-input:checked + .mi-radio-circle::after {
1253
+ transform: scale(1);
1254
+ }
1255
+
1256
+ /* src/Switch/Switch.css */
1257
+ .mi-switch-label {
1258
+ display: inline-flex;
1259
+ align-items: center;
1260
+ gap: 0.75rem;
1261
+ cursor: pointer;
1262
+ user-select: none;
1263
+ font-family: var(--mi-font-sans, sans-serif);
1264
+ font-size: 0.875rem;
1265
+ color: var(--mi-color-text, #F1F5F9);
1266
+ min-height: 44px;
1267
+ }
1268
+ .mi-switch-label--disabled {
1269
+ opacity: 0.5;
1270
+ cursor: not-allowed;
1271
+ }
1272
+ .mi-switch-input {
1273
+ position: absolute;
1274
+ opacity: 0;
1275
+ width: 0;
1276
+ height: 0;
1277
+ }
1278
+ .mi-switch-track {
1279
+ width: 44px;
1280
+ height: 24px;
1281
+ background-color: var(--mi-color-surface, #1E1B26);
1282
+ border: 2px solid var(--mi-color-border, #332D40);
1283
+ border-radius: 12px;
1284
+ position: relative;
1285
+ transition: all 0.2s ease-in-out;
1286
+ flex-shrink: 0;
1287
+ }
1288
+ .mi-switch-thumb {
1289
+ width: 16px;
1290
+ height: 16px;
1291
+ background-color: var(--mi-color-text-muted, #94A3B8);
1292
+ border-radius: 50%;
1293
+ position: absolute;
1294
+ top: 2px;
1295
+ left: 2px;
1296
+ transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1297
+ }
1298
+ .mi-switch-input:focus-visible + .mi-switch-track {
1299
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1300
+ outline-offset: 2px;
1301
+ }
1302
+ .mi-switch-input:checked + .mi-switch-track {
1303
+ background-color: var(--mi-color-primary, #FF4D00);
1304
+ border-color: var(--mi-color-primary, #FF4D00);
1305
+ box-shadow: var(--mi-shadow-glow);
1306
+ }
1307
+ .mi-switch-input:checked + .mi-switch-track .mi-switch-thumb {
1308
+ transform: translateX(20px);
1309
+ background-color: #FFFFFF;
1310
+ }
1311
+
1312
+ /* src/Accordion/Accordion.css */
1313
+ .mi-accordion {
1314
+ display: flex;
1315
+ flex-direction: column;
1316
+ gap: 0.5rem;
1317
+ width: 100%;
1318
+ }
1319
+ .mi-accordion-item {
1320
+ background-color: var(--mi-color-surface, #1E1B26);
1321
+ border: 1px solid var(--mi-color-border, #332D40);
1322
+ border-radius: var(--mi-radius-base, 4px);
1323
+ overflow: hidden;
1324
+ transition: border-color 0.15s ease;
1325
+ }
1326
+ .mi-accordion-item--open {
1327
+ border-color: var(--mi-color-border-accent, #FF4D00);
1328
+ }
1329
+ .mi-accordion-header {
1330
+ width: 100%;
1331
+ padding: 0.875rem 1.125rem;
1332
+ background: transparent;
1333
+ border: none;
1334
+ color: var(--mi-color-text, #F1F5F9);
1335
+ font-family: var(--mi-font-mono, monospace);
1336
+ font-size: 0.875rem;
1337
+ font-weight: 600;
1338
+ display: flex;
1339
+ align-items: center;
1340
+ justify-content: space-between;
1341
+ cursor: pointer;
1342
+ text-align: left;
1343
+ min-height: 44px;
1344
+ }
1345
+ .mi-accordion-header:hover {
1346
+ background-color: var(--mi-color-bg-subtle, #14121A);
1347
+ color: var(--mi-color-primary, #FF4D00);
1348
+ }
1349
+ .mi-accordion-header:focus-visible {
1350
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1351
+ outline-offset: -2px;
1352
+ }
1353
+ .mi-accordion-icon {
1354
+ transition: transform 0.2s ease;
1355
+ color: var(--mi-color-text-muted, #94A3B8);
1356
+ }
1357
+ .mi-accordion-item--open .mi-accordion-icon {
1358
+ transform: rotate(180deg);
1359
+ color: var(--mi-color-primary, #FF4D00);
1360
+ }
1361
+ .mi-accordion-content {
1362
+ padding: 0 1.125rem 1rem 1.125rem;
1363
+ font-family: var(--mi-font-sans, sans-serif);
1364
+ font-size: 0.875rem;
1365
+ line-height: 1.6;
1366
+ color: var(--mi-color-text-muted, #94A3B8);
1367
+ border-top: 1px dashed var(--mi-color-border, #332D40);
1368
+ margin-top: -0.25rem;
1369
+ padding-top: 0.875rem;
1370
+ }
1371
+
1372
+ /* src/MatrixRain/MatrixRain.css */
1373
+ .mi-matrix-rain {
1374
+ position: absolute;
1375
+ top: 0;
1376
+ left: 0;
1377
+ width: 100%;
1378
+ height: 100%;
1379
+ pointer-events: none;
1380
+ z-index: 0;
1381
+ opacity: 0.25;
1382
+ }
1383
+ @media (prefers-reduced-motion: reduce) {
1384
+ .mi-matrix-rain {
1385
+ display: none !important;
1386
+ }
1387
+ }
1388
+
1389
+ /* src/SignalLight/SignalLight.css */
1390
+ .mi-signal-light {
1391
+ display: inline-flex;
1392
+ align-items: center;
1393
+ gap: 0.5rem;
1394
+ font-family: var(--mi-font-mono, monospace);
1395
+ font-size: 0.75rem;
1396
+ font-weight: 600;
1397
+ text-transform: uppercase;
1398
+ color: var(--mi-color-text, #F1F5F9);
1399
+ }
1400
+ .mi-signal-beacon {
1401
+ width: 10px;
1402
+ height: 10px;
1403
+ border-radius: 50%;
1404
+ position: relative;
1405
+ flex-shrink: 0;
1406
+ }
1407
+ .mi-signal-beacon--online {
1408
+ background-color: var(--mi-color-success, #00FF66);
1409
+ box-shadow: 0 0 8px var(--mi-color-success, #00FF66);
1410
+ }
1411
+ .mi-signal-beacon--offline {
1412
+ background-color: var(--mi-color-text-dim, #64748B);
1413
+ box-shadow: none;
1414
+ }
1415
+ .mi-signal-beacon--warning {
1416
+ background-color: var(--mi-color-primary, #FF4D00);
1417
+ box-shadow: 0 0 8px var(--mi-color-primary, #FF4D00);
1418
+ }
1419
+ .mi-signal-beacon--busy {
1420
+ background-color: var(--mi-color-error, #FF0033);
1421
+ box-shadow: 0 0 8px var(--mi-color-error, #FF0033);
1422
+ }
1423
+ .mi-signal-beacon--pulse::after {
1424
+ content: "";
1425
+ position: absolute;
1426
+ top: -2px;
1427
+ left: -2px;
1428
+ right: -2px;
1429
+ bottom: -2px;
1430
+ border-radius: 50%;
1431
+ border: 1px solid currentColor;
1432
+ animation: mi-beacon-pulse 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
1433
+ }
1434
+ @keyframes mi-beacon-pulse {
1435
+ 0% {
1436
+ transform: scale(1);
1437
+ opacity: 1;
1438
+ }
1439
+ 100% {
1440
+ transform: scale(2.5);
1441
+ opacity: 0;
1442
+ }
1443
+ }
1444
+ @media (prefers-reduced-motion: reduce) {
1445
+ .mi-signal-beacon--pulse::after {
1446
+ animation: none !important;
1447
+ }
1448
+ }
1449
+
1450
+ /* src/CodeBlock/CodeBlock.css */
1451
+ .mi-codeblock-wrapper {
1452
+ position: relative;
1453
+ background-color: var(--mi-color-bg-subtle, #14121A);
1454
+ border: 1px solid var(--mi-color-border, #332D40);
1455
+ border-radius: var(--mi-radius-base, 6px);
1456
+ padding: 0.85rem 1rem;
1457
+ font-family: var(--mi-font-mono, monospace);
1458
+ font-size: 0.85rem;
1459
+ overflow-x: auto;
1460
+ transition: border-color 0.2s ease, background-color 0.2s ease;
1461
+ }
1462
+ .mi-codeblock-wrapper--collapsible {
1463
+ border-color: var(--mi-color-border-accent, rgba(255, 77, 0, 0.4));
1464
+ background-color: #0A090E;
1465
+ }
1466
+ .mi-codeblock-wrapper--collapsible:hover {
1467
+ border-color: var(--mi-color-primary, #FF4D00);
1468
+ }
1469
+ .mi-codeblock-header {
1470
+ display: flex;
1471
+ justify-content: space-between;
1472
+ align-items: center;
1473
+ gap: 0.75rem;
1474
+ font-size: 0.78rem;
1475
+ color: var(--mi-color-text-muted, #94A3B8);
1476
+ user-select: none;
1477
+ }
1478
+ .mi-codeblock-header--clickable {
1479
+ cursor: pointer;
1480
+ padding: 0.2rem 0;
1481
+ }
1482
+ .mi-codeblock-header--clickable:hover .mi-codeblock-header-title {
1483
+ color: #FFF;
1484
+ }
1485
+ .mi-codeblock-header-title {
1486
+ display: flex;
1487
+ align-items: center;
1488
+ gap: 0.5rem;
1489
+ font-weight: 600;
1490
+ color: var(--mi-color-text, #F1F5F9);
1491
+ flex-wrap: wrap;
1492
+ }
1493
+ .mi-codeblock-toggle-icon {
1494
+ display: inline-flex;
1495
+ align-items: center;
1496
+ color: var(--mi-color-primary, #FF4D00);
1497
+ }
1498
+ .mi-codeblock-collapse-hint {
1499
+ font-size: 0.72rem;
1500
+ font-weight: 400;
1501
+ color: #94A3B8;
1502
+ font-style: italic;
1503
+ }
1504
+ .mi-codeblock-copy-btn {
1505
+ background: rgba(255, 255, 255, 0.05);
1506
+ border: 1px solid var(--mi-color-border, #332D40);
1507
+ border-radius: 4px;
1508
+ color: var(--mi-color-text-muted, #94A3B8);
1509
+ cursor: pointer;
1510
+ padding: 0.25rem 0.65rem;
1511
+ font-size: 0.75rem;
1512
+ font-family: var(--mi-font-mono, monospace);
1513
+ display: inline-flex;
1514
+ align-items: center;
1515
+ gap: 0.35rem;
1516
+ transition: all 0.15s ease;
1517
+ min-height: 30px;
1518
+ flex-shrink: 0;
1519
+ }
1520
+ .mi-codeblock-copy-btn:hover {
1521
+ border-color: var(--mi-color-primary, #FF4D00);
1522
+ color: var(--mi-color-primary, #FF4D00);
1523
+ background: rgba(255, 77, 0, 0.1);
1524
+ }
1525
+ .mi-codeblock-pre {
1526
+ margin: 0;
1527
+ margin-top: 0.75rem;
1528
+ padding-top: 0.75rem;
1529
+ border-top: 1px dashed var(--mi-color-border, #332D40);
1530
+ color: #38BDF8;
1531
+ line-height: 1.6;
1532
+ white-space: pre-wrap;
1533
+ word-break: break-word;
1534
+ }
1535
+
1536
+ /* src/Select/Select.css */
1537
+ .mi-select-container {
1538
+ display: flex;
1539
+ flex-direction: column;
1540
+ gap: 0.375rem;
1541
+ position: relative;
1542
+ width: 100%;
1543
+ }
1544
+ .mi-select-label {
1545
+ font-family: var(--mi-font-mono, monospace);
1546
+ font-size: 0.75rem;
1547
+ font-weight: 700;
1548
+ color: var(--mi-color-text, #F1F5F9);
1549
+ text-transform: uppercase;
1550
+ letter-spacing: 0.05em;
1551
+ }
1552
+ .mi-select-button {
1553
+ width: 100%;
1554
+ padding: 0.65rem 0.875rem;
1555
+ background-color: var(--mi-color-surface, #1E1B26);
1556
+ color: var(--mi-color-text, #F1F5F9);
1557
+ border: 1px solid var(--mi-color-border, #332D40);
1558
+ border-radius: var(--mi-radius-base, 4px);
1559
+ font-family: var(--mi-font-mono, monospace);
1560
+ font-size: 0.875rem;
1561
+ display: flex;
1562
+ align-items: center;
1563
+ justify-content: space-between;
1564
+ cursor: pointer;
1565
+ outline: none;
1566
+ min-height: 44px;
1567
+ transition: all 0.15s ease-in-out;
1568
+ }
1569
+ .mi-select-button:hover:not(:disabled) {
1570
+ border-color: var(--mi-color-primary, #FF4D00);
1571
+ }
1572
+ .mi-select-button:focus-visible {
1573
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1574
+ outline-offset: 2px;
1575
+ border-color: var(--mi-color-primary, #FF4D00);
1576
+ }
1577
+ .mi-select-button--disabled,
1578
+ .mi-select-button:disabled {
1579
+ opacity: 0.5;
1580
+ cursor: not-allowed;
1581
+ }
1582
+ .mi-select-dropdown {
1583
+ position: absolute;
1584
+ top: 100%;
1585
+ left: 0;
1586
+ width: 100%;
1587
+ margin-top: 4px;
1588
+ background-color: var(--mi-color-surface, #1E1B26);
1589
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
1590
+ border-radius: var(--mi-radius-base, 4px);
1591
+ box-shadow: var(--mi-shadow-glow), 0 10px 15px -3px rgba(0, 0, 0, 0.4);
1592
+ z-index: var(--mi-z-popover, 1500);
1593
+ max-height: 220px;
1594
+ overflow-y: auto;
1595
+ padding: 0.25rem;
1596
+ display: flex;
1597
+ flex-direction: column;
1598
+ gap: 2px;
1599
+ }
1600
+ .mi-select-option {
1601
+ padding: 0.5rem 0.75rem;
1602
+ font-family: var(--mi-font-mono, monospace);
1603
+ font-size: 0.85rem;
1604
+ color: var(--mi-color-text, #F1F5F9);
1605
+ border-radius: var(--mi-radius-sm, 2px);
1606
+ cursor: pointer;
1607
+ display: flex;
1608
+ align-items: center;
1609
+ justify-content: space-between;
1610
+ background: transparent;
1611
+ border: none;
1612
+ width: 100%;
1613
+ text-align: left;
1614
+ }
1615
+ .mi-select-option:hover,
1616
+ .mi-select-option--highlighted {
1617
+ background-color: var(--mi-color-primary, #FF4D00);
1618
+ color: #FFFFFF;
1619
+ }
1620
+ .mi-select-option--selected {
1621
+ font-weight: 700;
1622
+ color: var(--mi-color-primary, #FF4D00);
1623
+ }
1624
+ .mi-select-option--selected:hover,
1625
+ .mi-select-option--selected.mi-select-option--highlighted {
1626
+ color: #FFFFFF;
1627
+ }
1628
+
1629
+ /* src/Avatar/Avatar.css */
1630
+ .mi-avatar {
1631
+ display: inline-flex;
1632
+ align-items: center;
1633
+ justify-content: center;
1634
+ background-color: var(--mi-color-surface, #1E1B26);
1635
+ color: var(--mi-color-primary, #FF4D00);
1636
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
1637
+ border-radius: 50%;
1638
+ font-family: var(--mi-font-mono, monospace);
1639
+ font-weight: 700;
1640
+ overflow: hidden;
1641
+ user-select: none;
1642
+ position: relative;
1643
+ flex-shrink: 0;
1644
+ }
1645
+ .mi-avatar--sm {
1646
+ width: 28px;
1647
+ height: 28px;
1648
+ font-size: 0.75rem;
1649
+ }
1650
+ .mi-avatar--md {
1651
+ width: 38px;
1652
+ height: 38px;
1653
+ font-size: 0.875rem;
1654
+ }
1655
+ .mi-avatar--lg {
1656
+ width: 52px;
1657
+ height: 52px;
1658
+ font-size: 1.125rem;
1659
+ }
1660
+ .mi-avatar--xl {
1661
+ width: 68px;
1662
+ height: 68px;
1663
+ font-size: 1.5rem;
1664
+ }
1665
+ .mi-avatar--square {
1666
+ border-radius: var(--mi-radius-sm, 4px);
1667
+ }
1668
+ .mi-avatar--pixel {
1669
+ border-radius: 0;
1670
+ box-shadow:
1671
+ 0 -2px 0 0 var(--mi-color-primary, #FF4D00),
1672
+ 0 2px 0 0 var(--mi-color-primary, #FF4D00),
1673
+ -2px 0 0 0 var(--mi-color-primary, #FF4D00),
1674
+ 2px 0 0 0 var(--mi-color-primary, #FF4D00);
1675
+ margin: 2px;
1676
+ }
1677
+ .mi-avatar-img {
1678
+ width: 100%;
1679
+ height: 100%;
1680
+ object-fit: cover;
1681
+ }
1682
+ .mi-avatar-group {
1683
+ display: inline-flex;
1684
+ align-items: center;
1685
+ }
1686
+ .mi-avatar-group .mi-avatar {
1687
+ margin-left: -0.5rem;
1688
+ }
1689
+ .mi-avatar-group .mi-avatar:first-child {
1690
+ margin-left: 0;
1691
+ }
1692
+
1693
+ /* src/Progress/Progress.css */
1694
+ .mi-progress-container {
1695
+ display: flex;
1696
+ flex-direction: column;
1697
+ gap: 0.35rem;
1698
+ width: 100%;
1699
+ }
1700
+ .mi-progress-header {
1701
+ display: flex;
1702
+ justify-content: space-between;
1703
+ font-family: var(--mi-font-mono, monospace);
1704
+ font-size: 0.75rem;
1705
+ font-weight: 700;
1706
+ color: var(--mi-color-text, #F1F5F9);
1707
+ text-transform: uppercase;
1708
+ }
1709
+ .mi-progress-track {
1710
+ width: 100%;
1711
+ height: 12px;
1712
+ background-color: var(--mi-color-surface, #1E1B26);
1713
+ border: 1px solid var(--mi-color-border, #332D40);
1714
+ border-radius: var(--mi-radius-base, 4px);
1715
+ overflow: hidden;
1716
+ position: relative;
1717
+ }
1718
+ .mi-progress-bar {
1719
+ height: 100%;
1720
+ background-color: var(--mi-color-primary, #FF4D00);
1721
+ box-shadow: var(--mi-shadow-glow);
1722
+ transition: width 0.3s ease;
1723
+ }
1724
+ .mi-progress-track--pixel {
1725
+ border-radius: 0;
1726
+ border-width: 2px;
1727
+ }
1728
+ .mi-progress-bar--striped {
1729
+ background-image:
1730
+ linear-gradient(
1731
+ 45deg,
1732
+ rgba(255, 255, 255, 0.15) 25%,
1733
+ transparent 25%,
1734
+ transparent 50%,
1735
+ rgba(255, 255, 255, 0.15) 50%,
1736
+ rgba(255, 255, 255, 0.15) 75%,
1737
+ transparent 75%,
1738
+ transparent);
1739
+ background-size: 1rem 1rem;
1740
+ }
1741
+ .mi-progress-bar--animated {
1742
+ animation: mi-progress-stripes 1s linear infinite;
1743
+ }
1744
+ @keyframes mi-progress-stripes {
1745
+ from {
1746
+ background-position: 1rem 0;
1747
+ }
1748
+ to {
1749
+ background-position: 0 0;
1750
+ }
1751
+ }
1752
+ @media (prefers-reduced-motion: reduce) {
1753
+ .mi-progress-bar--animated {
1754
+ animation: none !important;
1755
+ }
1756
+ }
1757
+
1758
+ /* src/Slider/Slider.css */
1759
+ .mi-slider-container {
1760
+ display: flex;
1761
+ flex-direction: column;
1762
+ gap: 0.4rem;
1763
+ width: 100%;
1764
+ box-sizing: border-box;
1765
+ }
1766
+ .mi-slider-header {
1767
+ display: flex;
1768
+ justify-content: space-between;
1769
+ align-items: center;
1770
+ font-family: var(--mi-font-mono, monospace);
1771
+ font-size: 0.75rem;
1772
+ font-weight: 700;
1773
+ color: var(--mi-color-text, #F1F5F9);
1774
+ text-transform: uppercase;
1775
+ letter-spacing: 0.05em;
1776
+ }
1777
+ .mi-slider-track-wrapper {
1778
+ position: relative;
1779
+ display: flex;
1780
+ align-items: center;
1781
+ width: 100%;
1782
+ height: 28px;
1783
+ }
1784
+ .mi-slider-input {
1785
+ appearance: none;
1786
+ -webkit-appearance: none;
1787
+ width: 100%;
1788
+ height: 8px;
1789
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
1790
+ border-radius: var(--mi-radius-sm, 4px);
1791
+ outline: none;
1792
+ cursor: pointer;
1793
+ box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.6);
1794
+ transition: border-color 0.15s ease, box-shadow 0.15s ease;
1795
+ }
1796
+ .mi-slider-input::-webkit-slider-runnable-track {
1797
+ height: 8px;
1798
+ border-radius: 4px;
1799
+ background: transparent;
1800
+ }
1801
+ .mi-slider-input::-webkit-slider-thumb {
1802
+ -webkit-appearance: none;
1803
+ appearance: none;
1804
+ width: 20px;
1805
+ height: 20px;
1806
+ margin-top: -6px;
1807
+ border-radius: 50%;
1808
+ background-color: var(--mi-color-primary, #FF4D00);
1809
+ border: 2px solid #FFFFFF;
1810
+ box-shadow: 0 0 10px var(--mi-color-primary, #FF4D00), 0 2px 6px rgba(0, 0, 0, 0.5);
1811
+ cursor: pointer;
1812
+ transition: transform 0.15s ease, background-color 0.15s ease;
1813
+ }
1814
+ .mi-slider-input::-webkit-slider-thumb:hover {
1815
+ transform: scale(1.2);
1816
+ box-shadow: 0 0 14px var(--mi-color-primary, #FF4D00), 0 2px 8px rgba(0, 0, 0, 0.7);
1817
+ }
1818
+ .mi-slider-input::-moz-range-track {
1819
+ height: 8px;
1820
+ border-radius: 4px;
1821
+ background: transparent;
1822
+ }
1823
+ .mi-slider-input::-moz-range-thumb {
1824
+ width: 20px;
1825
+ height: 20px;
1826
+ border-radius: 50%;
1827
+ background-color: var(--mi-color-primary, #FF4D00);
1828
+ border: 2px solid #FFFFFF;
1829
+ box-shadow: 0 0 10px var(--mi-color-primary, #FF4D00), 0 2px 6px rgba(0, 0, 0, 0.5);
1830
+ cursor: pointer;
1831
+ transition: transform 0.15s ease, background-color 0.15s ease;
1832
+ }
1833
+ .mi-slider-input::-moz-range-thumb:hover {
1834
+ transform: scale(1.2);
1835
+ box-shadow: 0 0 14px var(--mi-color-primary, #FF4D00), 0 2px 8px rgba(0, 0, 0, 0.7);
1836
+ }
1837
+ .mi-slider-input:focus-visible::-webkit-slider-thumb {
1838
+ outline: 2px solid #00FF66;
1839
+ outline-offset: 3px;
1840
+ transform: scale(1.25);
1841
+ }
1842
+ .mi-slider-input:focus-visible::-moz-range-thumb {
1843
+ outline: 2px solid #00FF66;
1844
+ outline-offset: 3px;
1845
+ transform: scale(1.25);
1846
+ }
1847
+ .mi-slider-input:disabled {
1848
+ opacity: 0.4;
1849
+ cursor: not-allowed;
1850
+ }
1851
+ .mi-slider-container--pixel .mi-slider-input {
1852
+ border-width: 2px;
1853
+ border-radius: 0;
1854
+ height: 10px;
1855
+ }
1856
+ .mi-slider-container--pixel .mi-slider-input::-webkit-slider-thumb {
1857
+ border-radius: 0;
1858
+ width: 18px;
1859
+ height: 18px;
1860
+ margin-top: -5px;
1861
+ }
1862
+ .mi-slider-container--pixel .mi-slider-input::-moz-range-thumb {
1863
+ border-radius: 0;
1864
+ width: 18px;
1865
+ height: 18px;
1866
+ }
1867
+
1868
+ /* src/Gallery/Gallery.css */
1869
+ .mi-gallery-grid {
1870
+ display: grid;
1871
+ grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
1872
+ gap: 1.5rem;
1873
+ width: 100%;
1874
+ }
1875
+ .mi-image-card {
1876
+ background-color: var(--mi-color-surface, #1E1B26);
1877
+ border: 1px solid var(--mi-color-border, #332D40);
1878
+ border-radius: var(--mi-radius-md, 6px);
1879
+ overflow: hidden;
1880
+ cursor: pointer;
1881
+ transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
1882
+ display: flex;
1883
+ flex-direction: column;
1884
+ position: relative;
1885
+ outline: none;
1886
+ }
1887
+ .mi-image-card--pixel {
1888
+ border-radius: 0;
1889
+ box-shadow:
1890
+ 0 -2px 0 0 var(--mi-color-primary, #FF4D00),
1891
+ 0 2px 0 0 var(--mi-color-primary, #FF4D00),
1892
+ -2px 0 0 0 var(--mi-color-primary, #FF4D00),
1893
+ 2px 0 0 0 var(--mi-color-primary, #FF4D00),
1894
+ 2px 2px 0 0 #000000;
1895
+ margin: 2px;
1896
+ }
1897
+ .mi-image-card:hover {
1898
+ transform: translateY(-4px);
1899
+ border-color: var(--mi-color-primary, #FF4D00);
1900
+ box-shadow: var(--mi-shadow-glow), 0 12px 20px -5px rgba(0, 0, 0, 0.5);
1901
+ }
1902
+ .mi-image-card:focus-visible {
1903
+ outline: 2px solid var(--mi-color-focus-ring, #FF4D00);
1904
+ outline-offset: 2px;
1905
+ }
1906
+ .mi-image-card__wrapper {
1907
+ position: relative;
1908
+ aspect-ratio: 16 / 9;
1909
+ width: 100%;
1910
+ overflow: hidden;
1911
+ background-color: var(--mi-color-bg-subtle, #14121A);
1912
+ }
1913
+ .mi-image-card__img {
1914
+ width: 100%;
1915
+ height: 100%;
1916
+ object-fit: cover;
1917
+ transition: transform 0.3s ease;
1918
+ }
1919
+ .mi-image-card:hover .mi-image-card__img {
1920
+ transform: scale(1.05);
1921
+ }
1922
+ .mi-image-card__content {
1923
+ padding: 1rem;
1924
+ display: flex;
1925
+ flex-direction: column;
1926
+ gap: 0.35rem;
1927
+ }
1928
+ .mi-image-card__title {
1929
+ font-family: var(--mi-font-mono, monospace);
1930
+ font-size: 0.95rem;
1931
+ font-weight: 700;
1932
+ color: var(--mi-color-text, #F1F5F9);
1933
+ }
1934
+ .mi-image-card__caption {
1935
+ font-family: var(--mi-font-sans, sans-serif);
1936
+ font-size: 0.8rem;
1937
+ color: var(--mi-color-text-muted, #94A3B8);
1938
+ }
1939
+ .mi-lightbox-backdrop {
1940
+ position: fixed;
1941
+ inset: 0;
1942
+ background-color: rgba(10, 9, 13, 0.88);
1943
+ backdrop-filter: blur(8px);
1944
+ display: flex;
1945
+ align-items: center;
1946
+ justify-content: center;
1947
+ padding: 1.5rem;
1948
+ z-index: var(--mi-z-modal, 1600);
1949
+ animation: mi-lightbox-fade 0.2s ease-out;
1950
+ }
1951
+ .mi-lightbox-container {
1952
+ max-width: 900px;
1953
+ width: 100%;
1954
+ background-color: var(--mi-color-surface, #1E1B26);
1955
+ border: 2px solid var(--mi-color-primary, #FF4D00);
1956
+ border-radius: var(--mi-radius-md, 6px);
1957
+ box-shadow: var(--mi-shadow-glow), 0 25px 50px -12px rgba(0, 0, 0, 0.7);
1958
+ overflow: hidden;
1959
+ display: flex;
1960
+ flex-direction: column;
1961
+ position: relative;
1962
+ }
1963
+ .mi-lightbox-header {
1964
+ padding: 0.875rem 1.25rem;
1965
+ background-color: var(--mi-color-bg-subtle, #14121A);
1966
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
1967
+ display: flex;
1968
+ align-items: center;
1969
+ justify-content: space-between;
1970
+ }
1971
+ .mi-lightbox-media {
1972
+ width: 100%;
1973
+ max-height: 65vh;
1974
+ display: flex;
1975
+ align-items: center;
1976
+ justify-content: center;
1977
+ background-color: #000000;
1978
+ position: relative;
1979
+ }
1980
+ .mi-lightbox-img {
1981
+ max-width: 100%;
1982
+ max-height: 65vh;
1983
+ object-fit: contain;
1984
+ }
1985
+ .mi-lightbox-nav-btn {
1986
+ position: absolute;
1987
+ top: 50%;
1988
+ transform: translateY(-50%);
1989
+ background-color: rgba(30, 27, 38, 0.8);
1990
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
1991
+ color: var(--mi-color-primary, #FF4D00);
1992
+ width: 44px;
1993
+ height: 44px;
1994
+ border-radius: 50%;
1995
+ display: flex;
1996
+ align-items: center;
1997
+ justify-content: center;
1998
+ cursor: pointer;
1999
+ transition: all 0.15s ease;
2000
+ z-index: 10;
2001
+ }
2002
+ .mi-lightbox-nav-btn:hover {
2003
+ background-color: var(--mi-color-primary, #FF4D00);
2004
+ color: #FFFFFF;
2005
+ }
2006
+ .mi-lightbox-nav-btn--prev {
2007
+ left: 1rem;
2008
+ }
2009
+ .mi-lightbox-nav-btn--next {
2010
+ right: 1rem;
2011
+ }
2012
+ .mi-lightbox-footer {
2013
+ padding: 1rem 1.25rem;
2014
+ font-family: var(--mi-font-mono, monospace);
2015
+ font-size: 0.875rem;
2016
+ color: var(--mi-color-text-muted, #94A3B8);
2017
+ }
2018
+ @keyframes mi-lightbox-fade {
2019
+ from {
2020
+ opacity: 0;
2021
+ }
2022
+ to {
2023
+ opacity: 1;
2024
+ }
2025
+ }
2026
+ @media (max-width: 640px) {
2027
+ .mi-gallery-grid {
2028
+ grid-template-columns: 1fr;
2029
+ }
2030
+ .mi-lightbox-nav-btn {
2031
+ width: 38px;
2032
+ height: 38px;
2033
+ }
2034
+ }
2035
+
2036
+ /* src/Marquee/Marquee.css */
2037
+ .mi-marquee {
2038
+ display: flex;
2039
+ align-items: center;
2040
+ position: relative;
2041
+ overflow: hidden;
2042
+ width: 100%;
2043
+ max-width: 100%;
2044
+ background-color: var(--mi-color-surface, #1E1B26);
2045
+ border-top: 1px solid var(--mi-color-border-accent, #FF4D00);
2046
+ border-bottom: 1px solid var(--mi-color-border-accent, #FF4D00);
2047
+ padding: 0.4rem 0;
2048
+ box-sizing: border-box;
2049
+ }
2050
+ .mi-marquee--pixel {
2051
+ border-width: 2px;
2052
+ background-color: var(--mi-color-bg-subtle, #14121A);
2053
+ }
2054
+ .mi-marquee__viewport {
2055
+ display: flex;
2056
+ overflow: hidden;
2057
+ flex: 1;
2058
+ width: 100%;
2059
+ position: relative;
2060
+ }
2061
+ .mi-marquee__track {
2062
+ display: flex;
2063
+ flex-shrink: 0;
2064
+ gap: 2rem;
2065
+ align-items: center;
2066
+ white-space: nowrap;
2067
+ animation: mi-marquee-left 25s linear infinite;
2068
+ min-width: 100%;
2069
+ }
2070
+ .mi-marquee--right .mi-marquee__track {
2071
+ animation-name: mi-marquee-right;
2072
+ }
2073
+ .mi-marquee--pause-hover .mi-marquee__viewport:hover .mi-marquee__track,
2074
+ .mi-marquee--pause-focus .mi-marquee__viewport:focus-within .mi-marquee__track {
2075
+ animation-play-state: paused;
2076
+ }
2077
+ .mi-marquee--paused .mi-marquee__track {
2078
+ animation-play-state: paused !important;
2079
+ }
2080
+ .mi-marquee--playing .mi-marquee__track {
2081
+ animation-play-state: running !important;
2082
+ }
2083
+ .mi-marquee__toggle-btn {
2084
+ display: inline-flex;
2085
+ align-items: center;
2086
+ gap: 0.35rem;
2087
+ margin: 0 0.65rem;
2088
+ padding: 0.25rem 0.55rem;
2089
+ font-family: var(--mi-font-mono, monospace);
2090
+ font-size: 0.7rem;
2091
+ font-weight: 700;
2092
+ color: var(--mi-color-text, #ffffff);
2093
+ background-color: rgba(255, 77, 0, 0.15);
2094
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2095
+ border-radius: var(--mi-radius-sm, 3px);
2096
+ cursor: pointer;
2097
+ z-index: 10;
2098
+ flex-shrink: 0;
2099
+ outline: none;
2100
+ transition: all 0.15s ease;
2101
+ }
2102
+ .mi-marquee__toggle-btn:hover {
2103
+ background-color: var(--mi-color-primary, #FF4D00);
2104
+ color: #000000;
2105
+ box-shadow: 0 0 10px rgba(255, 77, 0, 0.4);
2106
+ }
2107
+ .mi-marquee__toggle-btn:focus-visible {
2108
+ outline: 2px solid var(--mi-color-primary, #FF4D00);
2109
+ outline-offset: 2px;
2110
+ }
2111
+ .mi-marquee--controls-left {
2112
+ flex-direction: row-reverse;
2113
+ }
2114
+ @keyframes mi-marquee-left {
2115
+ from {
2116
+ transform: translateX(0%);
2117
+ }
2118
+ to {
2119
+ transform: translateX(-100%);
2120
+ }
2121
+ }
2122
+ @keyframes mi-marquee-right {
2123
+ from {
2124
+ transform: translateX(-100%);
2125
+ }
2126
+ to {
2127
+ transform: translateX(0%);
2128
+ }
2129
+ }
2130
+ @media (prefers-reduced-motion: reduce) {
2131
+ .mi-marquee__track {
2132
+ animation: none !important;
2133
+ }
2134
+ .mi-marquee__toggle-btn {
2135
+ display: none;
2136
+ }
2137
+ }
2138
+
2139
+ /* src/PixelText/PixelText.css */
2140
+ .mi-pixel-text {
2141
+ font-family: var(--mi-font-mono, monospace);
2142
+ font-weight: 700;
2143
+ color: var(--mi-color-primary, #FF4D00);
2144
+ text-shadow: var(--mi-shadow-pixel, 3px 3px 0px #000000);
2145
+ letter-spacing: 0.05em;
2146
+ display: inline-block;
2147
+ }
2148
+ .mi-pixel-text--sm {
2149
+ font-size: 0.9rem;
2150
+ }
2151
+ .mi-pixel-text--md {
2152
+ font-size: 1.25rem;
2153
+ }
2154
+ .mi-pixel-text--lg {
2155
+ font-size: 1.75rem;
2156
+ }
2157
+ .mi-pixel-text--xl {
2158
+ font-size: 2.5rem;
2159
+ }
2160
+
2161
+ /* src/TypingText/TypingText.css */
2162
+ .mi-typing-text {
2163
+ font-family: var(--mi-font-mono, monospace);
2164
+ color: var(--mi-color-text, #F1F5F9);
2165
+ display: inline-flex;
2166
+ align-items: center;
2167
+ }
2168
+ .mi-typing-cursor {
2169
+ color: var(--mi-color-primary, #FF4D00);
2170
+ font-weight: 700;
2171
+ margin-left: 2px;
2172
+ animation: mi-blink 1s steps(2, start) infinite;
2173
+ }
2174
+ @keyframes mi-blink {
2175
+ to {
2176
+ opacity: 0;
2177
+ }
2178
+ }
2179
+ @media (prefers-reduced-motion: reduce) {
2180
+ .mi-typing-cursor {
2181
+ animation: none !important;
2182
+ }
2183
+ }
2184
+
2185
+ /* src/NeonText/NeonText.css */
2186
+ .mi-neon-text {
2187
+ font-family: var(--mi-font-mono, monospace);
2188
+ font-weight: 700;
2189
+ color: #FFFFFF;
2190
+ display: inline-block;
2191
+ }
2192
+ .mi-neon-text--inferno {
2193
+ color: #FF4D00;
2194
+ text-shadow:
2195
+ 0 0 5px #FF4D00,
2196
+ 0 0 10px #FF4D00,
2197
+ 0 0 20px #FF4D00,
2198
+ 0 0 40px #FF2E00;
2199
+ }
2200
+ .mi-neon-text--cyan {
2201
+ color: #00E5FF;
2202
+ text-shadow:
2203
+ 0 0 5px #00E5FF,
2204
+ 0 0 10px #00E5FF,
2205
+ 0 0 20px #00E5FF,
2206
+ 0 0 40px #00B4CC;
2207
+ }
2208
+ .mi-neon-text--green {
2209
+ color: #00FF66;
2210
+ text-shadow:
2211
+ 0 0 5px #00FF66,
2212
+ 0 0 10px #00FF66,
2213
+ 0 0 20px #00FF66,
2214
+ 0 0 40px #00CC52;
2215
+ }
2216
+ .mi-neon-text--magenta {
2217
+ color: #FF00E5;
2218
+ text-shadow:
2219
+ 0 0 5px #FF00E5,
2220
+ 0 0 10px #FF00E5,
2221
+ 0 0 20px #FF00E5,
2222
+ 0 0 40px #CC00B8;
2223
+ }
2224
+ .mi-neon-text--flicker {
2225
+ animation: mi-neon-flicker 3s infinite alternate;
2226
+ }
2227
+ @keyframes mi-neon-flicker {
2228
+ 0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
2229
+ opacity: 1;
2230
+ }
2231
+ 20%, 24%, 55% {
2232
+ opacity: 0.3;
2233
+ }
2234
+ }
2235
+ @media (prefers-reduced-motion: reduce) {
2236
+ .mi-neon-text--flicker {
2237
+ animation: none !important;
2238
+ }
2239
+ }
2240
+
2241
+ /* src/Breadcrumbs/Breadcrumbs.css */
2242
+ .mi-breadcrumbs {
2243
+ display: flex;
2244
+ align-items: center;
2245
+ font-family: var(--mi-font-mono, "JetBrains Mono", monospace);
2246
+ font-size: 0.85rem;
2247
+ }
2248
+ .mi-breadcrumbs__list {
2249
+ display: flex;
2250
+ align-items: center;
2251
+ flex-wrap: wrap;
2252
+ list-style: none;
2253
+ margin: 0;
2254
+ padding: 0;
2255
+ gap: 0.35rem;
2256
+ }
2257
+ .mi-breadcrumb-item {
2258
+ display: inline-flex;
2259
+ align-items: center;
2260
+ gap: 0.35rem;
2261
+ }
2262
+ .mi-breadcrumb-link,
2263
+ .mi-breadcrumb-button {
2264
+ display: inline-flex;
2265
+ align-items: center;
2266
+ gap: 0.35rem;
2267
+ color: var(--mi-color-text-muted, #94A3B8);
2268
+ text-decoration: none;
2269
+ background: none;
2270
+ border: none;
2271
+ padding: 0.2rem 0.4rem;
2272
+ border-radius: var(--mi-radius-sm, 4px);
2273
+ cursor: pointer;
2274
+ font-family: inherit;
2275
+ font-size: inherit;
2276
+ transition:
2277
+ color 0.15s ease,
2278
+ background-color 0.15s ease,
2279
+ box-shadow 0.15s ease;
2280
+ }
2281
+ .mi-breadcrumb-link:hover,
2282
+ .mi-breadcrumb-button:hover {
2283
+ color: var(--mi-color-primary, #FF4D00);
2284
+ background-color: var(--mi-color-bg-subtle, rgba(255, 77, 0, 0.08));
2285
+ }
2286
+ .mi-breadcrumb-link:focus-visible,
2287
+ .mi-breadcrumb-button:focus-visible {
2288
+ outline: 2px solid var(--mi-color-primary, #FF4D00);
2289
+ outline-offset: 2px;
2290
+ }
2291
+ .mi-breadcrumb-current {
2292
+ display: inline-flex;
2293
+ align-items: center;
2294
+ gap: 0.35rem;
2295
+ color: var(--mi-color-text, #F1F5F9);
2296
+ font-weight: 600;
2297
+ padding: 0.2rem 0.4rem;
2298
+ }
2299
+ .mi-breadcrumb-icon {
2300
+ display: inline-flex;
2301
+ align-items: center;
2302
+ justify-content: center;
2303
+ }
2304
+ .mi-breadcrumb-separator {
2305
+ color: var(--mi-color-border-accent, rgba(255, 77, 0, 0.4));
2306
+ user-select: none;
2307
+ font-size: 0.8rem;
2308
+ }
2309
+ .mi-breadcrumbs--pixel .mi-breadcrumb-link,
2310
+ .mi-breadcrumbs--pixel .mi-breadcrumb-button {
2311
+ border: 1px solid transparent;
2312
+ }
2313
+ .mi-breadcrumbs--pixel .mi-breadcrumb-link:hover,
2314
+ .mi-breadcrumbs--pixel .mi-breadcrumb-button:hover {
2315
+ border-color: var(--mi-color-primary, #FF4D00);
2316
+ box-shadow: 2px 2px 0 var(--mi-color-primary, #FF4D00);
2317
+ }
2318
+ .mi-breadcrumbs--pixel .mi-breadcrumb-current {
2319
+ color: var(--mi-color-primary, #FF4D00);
2320
+ text-shadow: 0 0 8px rgba(255, 77, 0, 0.4);
2321
+ }
2322
+ .mi-breadcrumbs--ghost .mi-breadcrumb-link,
2323
+ .mi-breadcrumbs--ghost .mi-breadcrumb-button {
2324
+ opacity: 0.7;
2325
+ }
2326
+ .mi-breadcrumbs--ghost .mi-breadcrumb-link:hover,
2327
+ .mi-breadcrumbs--ghost .mi-breadcrumb-button:hover {
2328
+ opacity: 1;
2329
+ }
2330
+
2331
+ /* src/Dropdown/Dropdown.css */
2332
+ .mi-dropdown {
2333
+ position: relative;
2334
+ display: inline-block;
2335
+ }
2336
+ .mi-dropdown__trigger {
2337
+ cursor: pointer;
2338
+ display: inline-flex;
2339
+ align-items: center;
2340
+ }
2341
+ .mi-dropdown-chevron {
2342
+ transition: transform 0.2s ease;
2343
+ flex-shrink: 0;
2344
+ display: inline-block;
2345
+ vertical-align: middle;
2346
+ }
2347
+ .mi-dropdown-chevron--open {
2348
+ transform: rotate(180deg);
2349
+ }
2350
+ .mi-dropdown__menu {
2351
+ position: absolute;
2352
+ top: calc(100% + 6px);
2353
+ z-index: 1050;
2354
+ min-width: 190px;
2355
+ padding: 0.4rem;
2356
+ background-color: var(--mi-color-bg-subtle, #14121A);
2357
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
2358
+ border-radius: var(--mi-radius-md, 6px);
2359
+ box-shadow: var(--mi-shadow-glow, 0 10px 30px rgba(0, 0, 0, 0.7)), 0 0 15px rgba(255, 77, 0, 0.15);
2360
+ backdrop-filter: blur(12px);
2361
+ list-style: none;
2362
+ margin: 0;
2363
+ animation: mi-dropdown-slide 0.15s ease-out;
2364
+ outline: none;
2365
+ }
2366
+ .mi-dropdown__menu--start {
2367
+ left: 0;
2368
+ }
2369
+ .mi-dropdown__menu--end {
2370
+ right: 0;
2371
+ }
2372
+ .mi-dropdown__menu--pixel {
2373
+ border-width: 2px;
2374
+ background-color: #0A090D;
2375
+ box-shadow: 4px 4px 0 #000;
2376
+ }
2377
+ .mi-dropdown-item {
2378
+ display: flex;
2379
+ align-items: center;
2380
+ gap: 0.5rem;
2381
+ width: 100%;
2382
+ padding: 0.5rem 0.75rem;
2383
+ font-family: var(--mi-font-mono, monospace);
2384
+ font-size: 0.85rem;
2385
+ color: var(--mi-color-text, #F1F5F9);
2386
+ background: transparent;
2387
+ border: none;
2388
+ border-radius: var(--mi-radius-sm, 4px);
2389
+ cursor: pointer;
2390
+ text-decoration: none;
2391
+ transition: all 0.15s ease;
2392
+ box-sizing: border-box;
2393
+ text-align: left;
2394
+ }
2395
+ .mi-dropdown-item:hover:not(.mi-dropdown-item--disabled),
2396
+ .mi-dropdown-item:focus-visible:not(.mi-dropdown-item--disabled),
2397
+ .mi-dropdown-item--active {
2398
+ background-color: rgba(255, 77, 0, 0.15);
2399
+ color: var(--mi-color-primary, #FF4D00);
2400
+ outline: none;
2401
+ }
2402
+ .mi-dropdown-item--destructive {
2403
+ color: var(--mi-color-error, #FF0033);
2404
+ }
2405
+ .mi-dropdown-item--destructive:hover:not(.mi-dropdown-item--disabled),
2406
+ .mi-dropdown-item--destructive:focus-visible:not(.mi-dropdown-item--disabled) {
2407
+ background-color: rgba(255, 0, 51, 0.15);
2408
+ color: var(--mi-color-error, #FF0033);
2409
+ }
2410
+ .mi-dropdown-item--disabled {
2411
+ opacity: 0.4;
2412
+ cursor: not-allowed;
2413
+ }
2414
+ .mi-dropdown-section-title {
2415
+ padding: 0.35rem 0.75rem 0.2rem 0.75rem;
2416
+ font-family: var(--mi-font-mono, monospace);
2417
+ font-size: 0.7rem;
2418
+ font-weight: 700;
2419
+ color: var(--mi-color-text-muted, #94A3B8);
2420
+ text-transform: uppercase;
2421
+ letter-spacing: 0.05em;
2422
+ }
2423
+ .mi-dropdown-divider {
2424
+ height: 1px;
2425
+ margin: 0.35rem 0;
2426
+ background-color: var(--mi-color-border, #332D40);
2427
+ }
2428
+ @keyframes mi-dropdown-slide {
2429
+ from {
2430
+ opacity: 0;
2431
+ transform: translateY(-6px);
2432
+ }
2433
+ to {
2434
+ opacity: 1;
2435
+ transform: translateY(0);
2436
+ }
2437
+ }
2438
+
2439
+ /* src/PieChart/PieChart.css */
2440
+ .mi-piechart-container {
2441
+ display: flex;
2442
+ flex-direction: column;
2443
+ align-items: center;
2444
+ gap: 1.25rem;
2445
+ font-family: var(--mi-font-mono, monospace);
2446
+ width: 100%;
2447
+ max-width: 100%;
2448
+ }
2449
+ .mi-piechart-svg-wrapper {
2450
+ position: relative;
2451
+ display: inline-flex;
2452
+ justify-content: center;
2453
+ align-items: center;
2454
+ }
2455
+ .mi-piechart-slice {
2456
+ cursor: pointer;
2457
+ transition:
2458
+ transform 0.2s ease,
2459
+ filter 0.2s ease,
2460
+ opacity 0.2s ease;
2461
+ transform-origin: center;
2462
+ }
2463
+ .mi-piechart-slice:hover,
2464
+ .mi-piechart-slice--active {
2465
+ transform: scale(1.05);
2466
+ filter: drop-shadow(0 0 10px currentColor);
2467
+ }
2468
+ .mi-piechart-center-label {
2469
+ position: absolute;
2470
+ display: flex;
2471
+ flex-direction: column;
2472
+ align-items: center;
2473
+ justify-content: center;
2474
+ pointer-events: none;
2475
+ text-align: center;
2476
+ }
2477
+ .mi-piechart-center-value {
2478
+ font-size: 1.25rem;
2479
+ font-weight: 700;
2480
+ color: var(--mi-color-primary, #FF4D00);
2481
+ }
2482
+ .mi-piechart-center-text {
2483
+ font-size: 0.75rem;
2484
+ color: var(--mi-color-text-muted, #94A3B8);
2485
+ text-transform: uppercase;
2486
+ }
2487
+ .mi-piechart-legend {
2488
+ display: flex;
2489
+ flex-wrap: wrap;
2490
+ justify-content: center;
2491
+ gap: 0.75rem 1.25rem;
2492
+ list-style: none;
2493
+ margin: 0;
2494
+ padding: 0;
2495
+ max-width: 100%;
2496
+ }
2497
+ .mi-piechart-legend-item {
2498
+ display: inline-flex;
2499
+ align-items: center;
2500
+ gap: 0.5rem;
2501
+ font-size: 0.8rem;
2502
+ color: var(--mi-color-text, #F1F5F9);
2503
+ cursor: pointer;
2504
+ transition: color 0.15s ease;
2505
+ padding: 0.25rem 0.5rem;
2506
+ border-radius: var(--mi-radius-sm, 4px);
2507
+ }
2508
+ .mi-piechart-legend-item:hover {
2509
+ color: var(--mi-color-primary, #FF4D00);
2510
+ background-color: rgba(255, 77, 0, 0.08);
2511
+ }
2512
+ .mi-piechart-legend-swatch {
2513
+ width: 12px;
2514
+ height: 12px;
2515
+ border-radius: 2px;
2516
+ flex-shrink: 0;
2517
+ }
2518
+ .mi-piechart-tooltip {
2519
+ position: absolute;
2520
+ top: 50%;
2521
+ left: 50%;
2522
+ transform: translate(-50%, -50%);
2523
+ background-color: rgba(10, 9, 13, 0.95);
2524
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2525
+ border-radius: var(--mi-radius-sm, 4px);
2526
+ padding: 0.4rem 0.75rem;
2527
+ font-size: 0.75rem;
2528
+ color: var(--mi-color-text, #ffffff);
2529
+ box-shadow: 0 4px 15px rgba(0, 0, 0, 0.8);
2530
+ pointer-events: none;
2531
+ z-index: 10;
2532
+ white-space: nowrap;
2533
+ }
2534
+ .mi-sr-only {
2535
+ position: absolute;
2536
+ width: 1px;
2537
+ height: 1px;
2538
+ padding: 0;
2539
+ margin: -1px;
2540
+ overflow: hidden;
2541
+ clip: rect(0, 0, 0, 0);
2542
+ white-space: nowrap;
2543
+ border: 0;
2544
+ }
2545
+
2546
+ /* src/ColorPicker/ColorPicker.css */
2547
+ .mi-colorpicker {
2548
+ display: inline-flex;
2549
+ flex-direction: column;
2550
+ gap: 0.5rem;
2551
+ font-family: var(--mi-font-mono, monospace);
2552
+ box-sizing: border-box;
2553
+ }
2554
+ .mi-colorpicker-control {
2555
+ display: inline-flex;
2556
+ align-items: center;
2557
+ gap: 0.5rem;
2558
+ background-color: var(--mi-color-bg-subtle, #14121A);
2559
+ border: 1px solid var(--mi-color-border, #332D40);
2560
+ border-radius: var(--mi-radius-md, 6px);
2561
+ padding: 0.35rem 0.65rem;
2562
+ transition: all 0.15s ease;
2563
+ }
2564
+ .mi-colorpicker-control:focus-within {
2565
+ border-color: var(--mi-color-primary, #FF4D00);
2566
+ box-shadow: 0 0 10px rgba(255, 77, 0, 0.2);
2567
+ }
2568
+ .mi-colorpicker-swatch-btn {
2569
+ width: 24px;
2570
+ height: 24px;
2571
+ border-radius: 4px;
2572
+ border: 1px solid rgba(255, 255, 255, 0.2);
2573
+ cursor: pointer;
2574
+ padding: 0;
2575
+ position: relative;
2576
+ overflow: hidden;
2577
+ box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.5);
2578
+ flex-shrink: 0;
2579
+ }
2580
+ .mi-colorpicker-native-input {
2581
+ position: absolute;
2582
+ top: -10px;
2583
+ left: -10px;
2584
+ width: 50px;
2585
+ height: 50px;
2586
+ opacity: 0;
2587
+ cursor: pointer;
2588
+ }
2589
+ .mi-colorpicker-input {
2590
+ background: transparent;
2591
+ border: none;
2592
+ color: var(--mi-color-text, #F1F5F9);
2593
+ font-family: inherit;
2594
+ font-size: 0.85rem;
2595
+ font-weight: 600;
2596
+ width: 90px;
2597
+ outline: none;
2598
+ text-transform: uppercase;
2599
+ }
2600
+ .mi-colorpicker-presets {
2601
+ display: flex;
2602
+ flex-wrap: wrap;
2603
+ gap: 0.35rem;
2604
+ }
2605
+ .mi-colorpicker-preset-swatch {
2606
+ width: 20px;
2607
+ height: 20px;
2608
+ border-radius: 3px;
2609
+ border: 1px solid rgba(255, 255, 255, 0.15);
2610
+ cursor: pointer;
2611
+ padding: 0;
2612
+ transition: transform 0.15s ease, box-shadow 0.15s ease;
2613
+ }
2614
+ .mi-colorpicker-preset-swatch:hover,
2615
+ .mi-colorpicker-preset-swatch--active {
2616
+ transform: scale(1.15);
2617
+ box-shadow: 0 0 8px currentColor;
2618
+ outline: none;
2619
+ }
2620
+ .mi-colorpicker--pixel .mi-colorpicker-control {
2621
+ border-width: 2px;
2622
+ background-color: #0A090D;
2623
+ }
2624
+
2625
+ /* src/Table/Table.css */
2626
+ .mi-table-wrapper {
2627
+ width: 100%;
2628
+ max-width: 100%;
2629
+ overflow-x: auto;
2630
+ -webkit-overflow-scrolling: touch;
2631
+ border-radius: var(--mi-radius-md, 6px);
2632
+ border: 1px solid var(--mi-color-border-accent, #FF4D00);
2633
+ background-color: var(--mi-color-bg-subtle, #14121A);
2634
+ box-shadow: var(--mi-shadow-glow, 0 4px 20px rgba(0, 0, 0, 0.4));
2635
+ box-sizing: border-box;
2636
+ }
2637
+ .mi-table {
2638
+ width: 100%;
2639
+ min-width: 480px;
2640
+ border-collapse: collapse;
2641
+ font-family: var(--mi-font-mono, monospace);
2642
+ font-size: 0.85rem;
2643
+ color: var(--mi-color-text, #F1F5F9);
2644
+ text-align: left;
2645
+ }
2646
+ .mi-table caption {
2647
+ padding: 0.5rem 1rem;
2648
+ font-size: 0.75rem;
2649
+ color: var(--mi-color-text-muted, #94A3B8);
2650
+ caption-side: bottom;
2651
+ text-align: left;
2652
+ }
2653
+ .mi-table-header {
2654
+ background-color: rgba(255, 77, 0, 0.1);
2655
+ border-bottom: 2px solid var(--mi-color-border-accent, #FF4D00);
2656
+ }
2657
+ .mi-table-head {
2658
+ padding: 0.75rem 1rem;
2659
+ font-weight: 700;
2660
+ color: var(--mi-color-primary, #FF4D00);
2661
+ text-transform: uppercase;
2662
+ letter-spacing: 0.05em;
2663
+ white-space: nowrap;
2664
+ }
2665
+ .mi-table-cell {
2666
+ padding: 0.75rem 1rem;
2667
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
2668
+ }
2669
+ .mi-table-row {
2670
+ transition: background-color 0.15s ease;
2671
+ }
2672
+ .mi-table--hoverable .mi-table-row:hover {
2673
+ background-color: rgba(255, 77, 0, 0.15);
2674
+ }
2675
+ .mi-table--striped .mi-table-row:nth-child(even) {
2676
+ background-color: rgba(255, 255, 255, 0.02);
2677
+ }
2678
+ .mi-table--compact .mi-table-head,
2679
+ .mi-table--compact .mi-table-cell {
2680
+ padding: 0.4rem 0.65rem;
2681
+ font-size: 0.78rem;
2682
+ }
2683
+ @media (max-width: 640px) {
2684
+ .mi-table-head,
2685
+ .mi-table-cell {
2686
+ padding: 0.5rem 0.65rem;
2687
+ font-size: 0.78rem;
2688
+ }
2689
+ }
2690
+ .mi-table-wrapper--pixel {
2691
+ border-width: 2px;
2692
+ background-color: #0A090D;
2693
+ box-shadow: 4px 4px 0 #000;
2694
+ }
2695
+ .mi-table-wrapper--pixel .mi-table-header {
2696
+ background-color: #1E1B26;
2697
+ }
2698
+
2699
+ /* src/CyberCanvas/CyberCanvas.css */
2700
+ .mi-cybercanvas-container {
2701
+ display: inline-flex;
2702
+ flex-direction: column;
2703
+ gap: 0.75rem;
2704
+ font-family: var(--mi-font-mono, monospace);
2705
+ background-color: var(--mi-color-bg-subtle, #14121A);
2706
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
2707
+ border-radius: var(--mi-radius-md, 6px);
2708
+ padding: 0.75rem;
2709
+ box-shadow: var(--mi-shadow-glow, 0 4px 20px rgba(0, 0, 0, 0.4));
2710
+ width: 100%;
2711
+ max-width: 100%;
2712
+ box-sizing: border-box;
2713
+ }
2714
+ .mi-cybercanvas-toolbar {
2715
+ display: flex;
2716
+ align-items: center;
2717
+ justify-content: space-between;
2718
+ flex-wrap: wrap;
2719
+ gap: 0.5rem;
2720
+ padding-bottom: 0.5rem;
2721
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
2722
+ }
2723
+ .mi-cybercanvas-tools {
2724
+ display: flex;
2725
+ align-items: center;
2726
+ gap: 0.35rem 0.4rem;
2727
+ flex-wrap: wrap;
2728
+ max-width: 100%;
2729
+ }
2730
+ .mi-cybercanvas-color-swatch {
2731
+ width: 20px;
2732
+ height: 20px;
2733
+ border-radius: 4px;
2734
+ border: 1px solid rgba(255, 255, 255, 0.2);
2735
+ cursor: pointer;
2736
+ padding: 0;
2737
+ transition: transform 0.15s ease;
2738
+ flex-shrink: 0;
2739
+ }
2740
+ .mi-cybercanvas-color-swatch:hover,
2741
+ .mi-cybercanvas-color-swatch--active {
2742
+ transform: scale(1.15);
2743
+ box-shadow: 0 0 10px currentColor;
2744
+ }
2745
+ .mi-cybercanvas-custom-color {
2746
+ position: relative;
2747
+ width: 22px;
2748
+ height: 22px;
2749
+ border-radius: 4px;
2750
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2751
+ cursor: pointer;
2752
+ overflow: hidden;
2753
+ box-shadow: 0 0 6px rgba(255, 77, 0, 0.4);
2754
+ flex-shrink: 0;
2755
+ }
2756
+ .mi-cybercanvas-custom-color-input {
2757
+ position: absolute;
2758
+ top: -10px;
2759
+ left: -10px;
2760
+ width: 50px;
2761
+ height: 50px;
2762
+ opacity: 0;
2763
+ cursor: pointer;
2764
+ }
2765
+ .mi-cybercanvas-select {
2766
+ background-color: var(--mi-color-bg, #0A090D);
2767
+ color: var(--mi-color-text, #F1F5F9);
2768
+ border: 1px solid var(--mi-color-border, #332D40);
2769
+ border-radius: var(--mi-radius-sm, 4px);
2770
+ padding: 0.2rem 0.4rem;
2771
+ font-size: 0.72rem;
2772
+ font-family: inherit;
2773
+ outline: none;
2774
+ cursor: pointer;
2775
+ max-width: 100%;
2776
+ }
2777
+ .mi-cybercanvas-select option {
2778
+ background-color: #0A090D;
2779
+ color: #F1F5F9;
2780
+ padding: 0.35rem;
2781
+ }
2782
+ .mi-cybercanvas-btn {
2783
+ display: inline-flex;
2784
+ align-items: center;
2785
+ gap: 0.35rem;
2786
+ padding: 0.25rem 0.5rem;
2787
+ font-family: inherit;
2788
+ font-size: 0.72rem;
2789
+ font-weight: 700;
2790
+ color: var(--mi-color-text, #ffffff);
2791
+ background-color: rgba(255, 77, 0, 0.15);
2792
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2793
+ border-radius: var(--mi-radius-sm, 3px);
2794
+ cursor: pointer;
2795
+ transition: all 0.15s ease;
2796
+ white-space: nowrap;
2797
+ }
2798
+ .mi-cybercanvas-btn:hover {
2799
+ background-color: var(--mi-color-primary, #FF4D00);
2800
+ color: #000;
2801
+ }
2802
+ .mi-cybercanvas-canvas-wrapper {
2803
+ position: relative;
2804
+ width: 100%;
2805
+ max-width: 100%;
2806
+ display: flex;
2807
+ justify-content: center;
2808
+ align-items: center;
2809
+ overflow: hidden;
2810
+ border-radius: var(--mi-radius-sm, 4px);
2811
+ background-color: #0A090D;
2812
+ }
2813
+ .mi-cybercanvas-grid {
2814
+ background-image:
2815
+ linear-gradient(
2816
+ to right,
2817
+ rgba(255, 77, 0, 0.08) 1px,
2818
+ transparent 1px),
2819
+ linear-gradient(
2820
+ to bottom,
2821
+ rgba(255, 77, 0, 0.08) 1px,
2822
+ transparent 1px);
2823
+ background-size: 16px 16px;
2824
+ }
2825
+ .mi-cybercanvas-canvas {
2826
+ cursor: crosshair;
2827
+ touch-action: none;
2828
+ max-width: 100%;
2829
+ height: auto;
2830
+ }
2831
+
2832
+ /* src/SheetEditor/SheetEditor.css */
2833
+ .mi-sheeteditor {
2834
+ display: flex;
2835
+ flex-direction: column;
2836
+ background-color: var(--mi-color-bg-subtle, #14121A);
2837
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
2838
+ border-radius: var(--mi-radius-md, 6px);
2839
+ font-family: var(--mi-font-mono, monospace);
2840
+ color: var(--mi-color-text, #F1F5F9);
2841
+ overflow: hidden;
2842
+ box-shadow: var(--mi-shadow-glow, 0 4px 20px rgba(0, 0, 0, 0.4));
2843
+ width: 100%;
2844
+ max-width: 100%;
2845
+ box-sizing: border-box;
2846
+ }
2847
+ .mi-sheeteditor-header {
2848
+ display: flex;
2849
+ align-items: center;
2850
+ justify-content: space-between;
2851
+ background-color: #0A090D;
2852
+ border-bottom: 1px solid var(--mi-color-border, #332D40);
2853
+ padding: 0.5rem 0.75rem;
2854
+ flex-wrap: wrap;
2855
+ gap: 0.5rem;
2856
+ }
2857
+ .mi-sheeteditor-title {
2858
+ font-size: 0.8rem;
2859
+ font-weight: 700;
2860
+ color: var(--mi-color-primary, #FF4D00);
2861
+ display: flex;
2862
+ align-items: center;
2863
+ gap: 0.35rem;
2864
+ text-transform: uppercase;
2865
+ letter-spacing: 0.05em;
2866
+ overflow: hidden;
2867
+ text-overflow: ellipsis;
2868
+ white-space: nowrap;
2869
+ flex: 1;
2870
+ min-width: 120px;
2871
+ }
2872
+ .mi-sheeteditor-actions {
2873
+ display: flex;
2874
+ align-items: center;
2875
+ gap: 0.4rem;
2876
+ flex-wrap: wrap;
2877
+ }
2878
+ .mi-sheeteditor-btn {
2879
+ display: inline-flex;
2880
+ align-items: center;
2881
+ gap: 0.3rem;
2882
+ padding: 0.2rem 0.45rem;
2883
+ font-family: inherit;
2884
+ font-size: 0.7rem;
2885
+ font-weight: 700;
2886
+ color: var(--mi-color-text, #ffffff);
2887
+ background-color: rgba(255, 77, 0, 0.15);
2888
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2889
+ border-radius: var(--mi-radius-sm, 3px);
2890
+ cursor: pointer;
2891
+ transition: all 0.15s ease;
2892
+ white-space: nowrap;
2893
+ }
2894
+ .mi-sheeteditor-btn:hover {
2895
+ background-color: var(--mi-color-primary, #FF4D00);
2896
+ color: #000;
2897
+ }
2898
+ .mi-sheeteditor-body {
2899
+ display: flex;
2900
+ min-height: 180px;
2901
+ max-height: 380px;
2902
+ position: relative;
2903
+ overflow: hidden;
2904
+ background-color: #0F0D15;
2905
+ }
2906
+ .mi-sheeteditor-gutter {
2907
+ padding: 0.75rem 0.5rem;
2908
+ background-color: #0A090D;
2909
+ border-right: 1px solid var(--mi-color-border, #332D40);
2910
+ color: var(--mi-color-text-dim, #64748B);
2911
+ font-size: 0.85rem;
2912
+ line-height: 1.5;
2913
+ text-align: right;
2914
+ user-select: none;
2915
+ overflow: hidden;
2916
+ }
2917
+ .mi-sheeteditor-textarea {
2918
+ flex: 1;
2919
+ width: 100%;
2920
+ padding: 0.75rem;
2921
+ font-family: inherit;
2922
+ font-size: 0.85rem;
2923
+ line-height: 1.5;
2924
+ color: var(--mi-color-text, #F1F5F9);
2925
+ background: transparent;
2926
+ border: none;
2927
+ resize: none;
2928
+ outline: none;
2929
+ overflow-y: auto;
2930
+ white-space: pre-wrap;
2931
+ word-break: break-word;
2932
+ }
2933
+ .mi-sheeteditor-preview {
2934
+ flex: 1;
2935
+ width: 100%;
2936
+ padding: 0.75rem;
2937
+ font-family: inherit;
2938
+ font-size: 0.85rem;
2939
+ line-height: 1.5;
2940
+ color: var(--mi-color-text, #F1F5F9);
2941
+ overflow-y: auto;
2942
+ white-space: pre-wrap;
2943
+ }
2944
+ .mi-sheeteditor-footer {
2945
+ display: flex;
2946
+ align-items: center;
2947
+ justify-content: space-between;
2948
+ background-color: #0A090D;
2949
+ border-top: 1px solid var(--mi-color-border, #332D40);
2950
+ padding: 0.35rem 0.75rem;
2951
+ font-size: 0.72rem;
2952
+ color: var(--mi-color-text-muted, #94A3B8);
2953
+ flex-wrap: wrap;
2954
+ gap: 0.35rem 0.75rem;
2955
+ }
2956
+
2957
+ /* src/MoonTypewriterDialogue/MoonTypewriterDialogue.css */
2958
+ .mi-typewriter-box {
2959
+ display: flex;
2960
+ flex-direction: column;
2961
+ background-color: var(--mi-color-bg-subtle, #14121A);
2962
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
2963
+ border-radius: var(--mi-radius-md, 6px);
2964
+ padding: 1rem;
2965
+ font-family: var(--mi-font-mono, monospace);
2966
+ color: var(--mi-color-text, #F1F5F9);
2967
+ box-shadow: var(--mi-shadow-glow, 0 4px 20px rgba(0, 0, 0, 0.4));
2968
+ position: relative;
2969
+ width: 100%;
2970
+ max-width: 100%;
2971
+ box-sizing: border-box;
2972
+ }
2973
+ .mi-typewriter-header {
2974
+ display: flex;
2975
+ align-items: center;
2976
+ gap: 0.75rem;
2977
+ margin-bottom: 0.75rem;
2978
+ }
2979
+ .mi-typewriter-avatar {
2980
+ width: 36px;
2981
+ height: 36px;
2982
+ border-radius: 4px;
2983
+ border: 1px solid var(--mi-color-primary, #FF4D00);
2984
+ object-fit: cover;
2985
+ flex-shrink: 0;
2986
+ display: flex;
2987
+ align-items: center;
2988
+ justify-content: center;
2989
+ background-color: #0A090D;
2990
+ }
2991
+ .mi-typewriter-speaker {
2992
+ font-size: 0.85rem;
2993
+ font-weight: 700;
2994
+ color: var(--mi-color-primary, #FF4D00);
2995
+ text-transform: uppercase;
2996
+ letter-spacing: 0.05em;
2997
+ }
2998
+ .mi-typewriter-body {
2999
+ font-size: 0.95rem;
3000
+ line-height: 1.6;
3001
+ min-height: 50px;
3002
+ position: relative;
3003
+ white-space: pre-wrap;
3004
+ }
3005
+ .mi-typewriter-cursor {
3006
+ display: inline-block;
3007
+ width: 8px;
3008
+ height: 14px;
3009
+ background-color: var(--mi-color-primary, #FF4D00);
3010
+ margin-left: 4px;
3011
+ animation: mi-typewriter-blink 0.7s infinite alternate;
3012
+ vertical-align: middle;
3013
+ }
3014
+ .mi-typewriter-complete-indicator {
3015
+ position: absolute;
3016
+ bottom: 0.5rem;
3017
+ right: 0.75rem;
3018
+ font-size: 0.75rem;
3019
+ color: var(--mi-color-primary, #FF4D00);
3020
+ animation: mi-typewriter-bounce 0.6s infinite alternate;
3021
+ }
3022
+ @keyframes mi-typewriter-blink {
3023
+ 0% {
3024
+ opacity: 0;
3025
+ }
3026
+ 100% {
3027
+ opacity: 1;
3028
+ }
3029
+ }
3030
+ @keyframes mi-typewriter-bounce {
3031
+ 0% {
3032
+ transform: translateY(0);
3033
+ }
3034
+ 100% {
3035
+ transform: translateY(-4px);
3036
+ }
3037
+ }
3038
+ .mi-typewriter-box--pixel {
3039
+ border-width: 3px;
3040
+ background-color: #0A090D;
3041
+ box-shadow: 4px 4px 0 #000;
3042
+ }
3043
+
3044
+ /* src/MoonRPGGrid/MoonRPGGrid.css */
3045
+ .mi-rpggrid-container {
3046
+ display: inline-flex;
3047
+ flex-direction: column;
3048
+ gap: 0.75rem;
3049
+ font-family: var(--mi-font-mono, monospace);
3050
+ background-color: var(--mi-color-bg-subtle, #14121A);
3051
+ border: 2px solid var(--mi-color-border-accent, #FF4D00);
3052
+ border-radius: var(--mi-radius-md, 6px);
3053
+ padding: 0.75rem;
3054
+ box-shadow: var(--mi-shadow-glow, 0 4px 20px rgba(0, 0, 0, 0.4));
3055
+ width: 100%;
3056
+ max-width: 100%;
3057
+ box-sizing: border-box;
3058
+ }
3059
+ .mi-rpggrid-title {
3060
+ font-size: 0.8rem;
3061
+ font-weight: 700;
3062
+ color: var(--mi-color-primary, #FF4D00);
3063
+ text-transform: uppercase;
3064
+ letter-spacing: 0.05em;
3065
+ display: flex;
3066
+ justify-content: space-between;
3067
+ align-items: center;
3068
+ }
3069
+ .mi-rpggrid-grid {
3070
+ display: grid;
3071
+ gap: 0.5rem;
3072
+ }
3073
+ .mi-rpggrid-slot {
3074
+ width: 52px;
3075
+ height: 52px;
3076
+ background-color: #0A090D;
3077
+ border: 1px solid var(--mi-color-border, #332D40);
3078
+ border-radius: var(--mi-radius-sm, 4px);
3079
+ display: flex;
3080
+ align-items: center;
3081
+ justify-content: center;
3082
+ position: relative;
3083
+ cursor: pointer;
3084
+ outline: none;
3085
+ transition: all 0.15s ease;
3086
+ user-select: none;
3087
+ }
3088
+ .mi-rpggrid-slot:hover,
3089
+ .mi-rpggrid-slot:focus-visible {
3090
+ border-color: var(--mi-color-primary, #FF4D00);
3091
+ box-shadow: 0 0 10px rgba(255, 77, 0, 0.4);
3092
+ }
3093
+ .mi-rpggrid-slot--selected {
3094
+ border-color: #00FF66 !important;
3095
+ box-shadow: 0 0 12px rgba(0, 255, 102, 0.6) !important;
3096
+ background-color: rgba(0, 255, 102, 0.15);
3097
+ }
3098
+ .mi-rpggrid-item-count {
3099
+ position: absolute;
3100
+ bottom: 2px;
3101
+ right: 4px;
3102
+ font-size: 0.65rem;
3103
+ font-weight: 700;
3104
+ color: var(--mi-color-text, #ffffff);
3105
+ background-color: rgba(0, 0, 0, 0.7);
3106
+ padding: 0.1rem 0.25rem;
3107
+ border-radius: 2px;
3108
+ }
3109
+ .mi-rpggrid-info-box {
3110
+ padding: 0.5rem 0.75rem;
3111
+ background-color: #0A090D;
3112
+ border: 1px solid var(--mi-color-border, #332D40);
3113
+ border-radius: var(--mi-radius-sm, 4px);
3114
+ font-size: 0.78rem;
3115
+ color: var(--mi-color-text-muted, #94A3B8);
3116
+ min-height: 38px;
3117
+ display: flex;
3118
+ align-items: center;
3119
+ }
3120
+ .mi-rpggrid-container--pixel {
3121
+ border-width: 3px;
3122
+ background-color: #0A090D;
3123
+ }
3124
+ .mi-rpggrid-container--pixel .mi-rpggrid-slot {
3125
+ border-width: 2px;
3126
+ box-shadow: 2px 2px 0 #000;
3127
+ }
3128
+
3129
+ /* src/MoonHealthMeter/MoonHealthMeter.css */
3130
+ .mi-healthmeter {
3131
+ display: flex;
3132
+ flex-direction: column;
3133
+ gap: 0.35rem;
3134
+ font-family: var(--mi-font-mono, monospace);
3135
+ width: 100%;
3136
+ max-width: 100%;
3137
+ }
3138
+ .mi-healthmeter-header {
3139
+ display: flex;
3140
+ justify-content: space-between;
3141
+ align-items: center;
3142
+ font-size: 0.75rem;
3143
+ font-weight: 700;
3144
+ color: var(--mi-color-text, #F1F5F9);
3145
+ text-transform: uppercase;
3146
+ letter-spacing: 0.05em;
3147
+ }
3148
+ .mi-healthmeter-track {
3149
+ position: relative;
3150
+ width: 100%;
3151
+ height: 18px;
3152
+ background-color: #0A090D;
3153
+ border: 1px solid var(--mi-color-border, #332D40);
3154
+ border-radius: var(--mi-radius-sm, 4px);
3155
+ overflow: hidden;
3156
+ box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.8);
3157
+ }
3158
+ .mi-healthmeter-bar {
3159
+ height: 100%;
3160
+ transition: width 0.3s ease, background-color 0.3s ease;
3161
+ box-shadow: 0 0 10px currentColor;
3162
+ }
3163
+ .mi-healthmeter-bar--health {
3164
+ background:
3165
+ linear-gradient(
3166
+ 90deg,
3167
+ #CC0029 0%,
3168
+ #FF0033 60%,
3169
+ #FF4D00 100%);
3170
+ color: #FF0033;
3171
+ }
3172
+ .mi-healthmeter-bar--mana {
3173
+ background:
3174
+ linear-gradient(
3175
+ 90deg,
3176
+ #0055FF 0%,
3177
+ #00AAFF 60%,
3178
+ #00E5FF 100%);
3179
+ color: #00E5FF;
3180
+ }
3181
+ .mi-healthmeter-bar--energy {
3182
+ background:
3183
+ linear-gradient(
3184
+ 90deg,
3185
+ #009933 0%,
3186
+ #00FF66 60%,
3187
+ #AAFF00 100%);
3188
+ color: #00FF66;
3189
+ }
3190
+ .mi-healthmeter-bar--shield {
3191
+ background:
3192
+ linear-gradient(
3193
+ 90deg,
3194
+ #7700FF 0%,
3195
+ #AA00FF 60%,
3196
+ #FF00E5 100%);
3197
+ color: #FF00E5;
3198
+ }
3199
+ .mi-healthmeter-native {
3200
+ position: absolute;
3201
+ top: 0;
3202
+ left: 0;
3203
+ width: 100%;
3204
+ height: 100%;
3205
+ opacity: 0;
3206
+ pointer-events: none;
3207
+ }
3208
+ .mi-healthmeter--pixel .mi-healthmeter-track {
3209
+ border-width: 2px;
3210
+ height: 20px;
3211
+ border-radius: 0;
3212
+ box-shadow: 2px 2px 0 #000;
3213
+ }
3214
+
3215
+ /* src/MoonSafeGlitch/MoonSafeGlitch.css */
3216
+ .mi-safeglitch {
3217
+ position: relative;
3218
+ display: inline-block;
3219
+ font-family: var(--mi-font-mono, monospace);
3220
+ font-weight: 700;
3221
+ color: var(--mi-color-text, #ffffff);
3222
+ text-shadow: 0 0 8px rgba(255, 77, 0, 0.4);
3223
+ max-width: 100%;
3224
+ word-break: break-word;
3225
+ overflow-wrap: anywhere;
3226
+ }
3227
+ .mi-safeglitch--active {
3228
+ animation: mi-glitch-shake 3s infinite;
3229
+ }
3230
+ .mi-safeglitch--active::before,
3231
+ .mi-safeglitch--active::after {
3232
+ content: attr(data-text);
3233
+ position: absolute;
3234
+ top: 0;
3235
+ left: 0;
3236
+ width: 100%;
3237
+ height: 100%;
3238
+ clip-path: polygon(0 0, 100% 0, 100% 45%, 0 45%);
3239
+ word-break: break-word;
3240
+ overflow-wrap: anywhere;
3241
+ }
3242
+ .mi-safeglitch--active::before {
3243
+ left: -2px;
3244
+ text-shadow: 2px 0 #FF0033;
3245
+ animation: mi-glitch-anim-1 2.5s infinite linear alternate-reverse;
3246
+ }
3247
+ .mi-safeglitch--active::after {
3248
+ left: 2px;
3249
+ text-shadow: -2px 0 #00E5FF;
3250
+ animation: mi-glitch-anim-2 3s infinite linear alternate-reverse;
3251
+ }
3252
+ @keyframes mi-glitch-shake {
3253
+ 0%, 100% {
3254
+ transform: translate(0, 0);
3255
+ }
3256
+ 92% {
3257
+ transform: translate(0, 0);
3258
+ }
3259
+ 94% {
3260
+ transform: translate(-1px, 1px);
3261
+ }
3262
+ 96% {
3263
+ transform: translate(1px, -1px);
3264
+ }
3265
+ 98% {
3266
+ transform: translate(0, 0);
3267
+ }
3268
+ }
3269
+ @keyframes mi-glitch-anim-1 {
3270
+ 0% {
3271
+ clip-path: inset(20% 0 60% 0);
3272
+ }
3273
+ 20% {
3274
+ clip-path: inset(60% 0 10% 0);
3275
+ }
3276
+ 40% {
3277
+ clip-path: inset(10% 0 70% 0);
3278
+ }
3279
+ 60% {
3280
+ clip-path: inset(40% 0 30% 0);
3281
+ }
3282
+ 80% {
3283
+ clip-path: inset(80% 0 5% 0);
3284
+ }
3285
+ 100% {
3286
+ clip-path: inset(30% 0 50% 0);
3287
+ }
3288
+ }
3289
+ @keyframes mi-glitch-anim-2 {
3290
+ 0% {
3291
+ clip-path: inset(50% 0 30% 0);
3292
+ }
3293
+ 20% {
3294
+ clip-path: inset(10% 0 80% 0);
3295
+ }
3296
+ 40% {
3297
+ clip-path: inset(70% 0 10% 0);
3298
+ }
3299
+ 60% {
3300
+ clip-path: inset(30% 0 50% 0);
3301
+ }
3302
+ 80% {
3303
+ clip-path: inset(5% 0 75% 0);
3304
+ }
3305
+ 100% {
3306
+ clip-path: inset(60% 0 20% 0);
3307
+ }
3308
+ }
3309
+ @media (prefers-reduced-motion: reduce) {
3310
+ .mi-safeglitch--active,
3311
+ .mi-safeglitch--active::before,
3312
+ .mi-safeglitch--active::after {
3313
+ animation: none !important;
3314
+ text-shadow: none !important;
3315
+ }
3316
+ }
3317
+
3318
+ /* src/MoonConsoleLogger/MoonConsoleLogger.css */
3319
+ .mi-consolelogger {
3320
+ display: flex;
3321
+ flex-direction: column;
3322
+ background-color: #050B05;
3323
+ border: 2px solid #00FF66;
3324
+ border-radius: var(--mi-radius-md, 6px);
3325
+ font-family: var(--mi-font-mono, monospace);
3326
+ color: #00FF66;
3327
+ box-shadow: 0 0 20px rgba(0, 255, 102, 0.2);
3328
+ overflow: hidden;
3329
+ width: 100%;
3330
+ max-width: 100%;
3331
+ box-sizing: border-box;
3332
+ }
3333
+ .mi-consolelogger-header {
3334
+ display: flex;
3335
+ align-items: center;
3336
+ justify-content: space-between;
3337
+ background-color: #020602;
3338
+ border-bottom: 1px solid rgba(0, 255, 102, 0.3);
3339
+ padding: 0.4rem 0.75rem;
3340
+ font-size: 0.75rem;
3341
+ font-weight: 700;
3342
+ text-transform: uppercase;
3343
+ letter-spacing: 0.05em;
3344
+ gap: 0.5rem;
3345
+ }
3346
+ .mi-consolelogger-body {
3347
+ padding: 0.65rem 0.75rem;
3348
+ min-height: 140px;
3349
+ max-height: 280px;
3350
+ overflow-y: auto;
3351
+ font-size: 0.82rem;
3352
+ line-height: 1.5;
3353
+ display: flex;
3354
+ flex-direction: column;
3355
+ gap: 0.4rem;
3356
+ }
3357
+ .mi-consolelogger-line {
3358
+ display: flex;
3359
+ align-items: flex-start;
3360
+ gap: 0.4rem;
3361
+ flex-wrap: wrap;
3362
+ }
3363
+ .mi-consolelogger-meta {
3364
+ display: inline-flex;
3365
+ align-items: center;
3366
+ gap: 0.35rem;
3367
+ white-space: nowrap;
3368
+ flex-shrink: 0;
3369
+ }
3370
+ .mi-consolelogger-timestamp {
3371
+ opacity: 0.6;
3372
+ font-size: 0.75rem;
3373
+ }
3374
+ .mi-consolelogger-type {
3375
+ font-weight: 700;
3376
+ }
3377
+ .mi-consolelogger-type--info {
3378
+ color: #00FF66;
3379
+ }
3380
+ .mi-consolelogger-type--warn {
3381
+ color: #FFD700;
3382
+ }
3383
+ .mi-consolelogger-type--error {
3384
+ color: #FF0033;
3385
+ }
3386
+ .mi-consolelogger-type--success {
3387
+ color: #00E5FF;
3388
+ }
3389
+ .mi-consolelogger-message {
3390
+ word-break: break-word;
3391
+ overflow-wrap: anywhere;
3392
+ flex: 1;
3393
+ min-width: 140px;
3394
+ }
3395
+ .mi-consolelogger--inferno {
3396
+ background-color: #0D090A;
3397
+ border-color: #FF4D00;
3398
+ color: #F1F5F9;
3399
+ box-shadow: 0 0 20px rgba(255, 77, 0, 0.2);
3400
+ }
3401
+ .mi-consolelogger--inferno .mi-consolelogger-header {
3402
+ border-bottom-color: rgba(255, 77, 0, 0.3);
3403
+ }
3404
+ .mi-consolelogger--inferno .mi-consolelogger-type--info {
3405
+ color: #FF4D00;
3406
+ }
3407
+ @media (max-width: 480px) {
3408
+ .mi-consolelogger-body {
3409
+ padding: 0.5rem;
3410
+ font-size: 0.78rem;
3411
+ }
3412
+ }
3413
+
3414
+ /* src/SearchBar/SearchBar.css */
3415
+ .mi-searchbar {
3416
+ position: relative;
3417
+ display: flex;
3418
+ align-items: center;
3419
+ width: 100%;
3420
+ box-sizing: border-box;
3421
+ background-color: var(--mi-color-bg, #0A090D);
3422
+ border: 1.5px solid var(--mi-color-border, #332D40);
3423
+ border-radius: var(--mi-radius-md, 6px);
3424
+ font-family: var(--mi-font-mono, monospace);
3425
+ color: var(--mi-color-text, #F1F5F9);
3426
+ transition: all 0.15s ease;
3427
+ }
3428
+ .mi-searchbar:focus-within {
3429
+ border-color: var(--mi-color-primary, #FF4D00);
3430
+ box-shadow: 0 0 12px rgba(255, 77, 0, 0.35), inset 0 0 8px rgba(255, 77, 0, 0.1);
3431
+ }
3432
+ .mi-searchbar-icon {
3433
+ display: inline-flex;
3434
+ align-items: center;
3435
+ justify-content: center;
3436
+ padding-left: 0.75rem;
3437
+ color: var(--mi-color-primary, #FF4D00);
3438
+ flex-shrink: 0;
3439
+ pointer-events: none;
3440
+ }
3441
+ .mi-searchbar-input {
3442
+ flex: 1;
3443
+ width: 100%;
3444
+ background: transparent;
3445
+ border: none;
3446
+ outline: none;
3447
+ font-family: inherit;
3448
+ font-size: 0.875rem;
3449
+ color: var(--mi-color-text, #F1F5F9);
3450
+ padding: 0.6rem 0.75rem;
3451
+ }
3452
+ .mi-searchbar-input::placeholder {
3453
+ color: var(--mi-color-text-dim, #64748B);
3454
+ }
3455
+ .mi-searchbar-actions {
3456
+ display: flex;
3457
+ align-items: center;
3458
+ gap: 0.4rem;
3459
+ padding-right: 0.75rem;
3460
+ flex-shrink: 0;
3461
+ }
3462
+ .mi-searchbar-clear {
3463
+ display: inline-flex;
3464
+ align-items: center;
3465
+ justify-content: center;
3466
+ width: 22px;
3467
+ height: 22px;
3468
+ background: rgba(255, 255, 255, 0.05);
3469
+ border: 1px solid var(--mi-color-border, #332D40);
3470
+ border-radius: 50%;
3471
+ color: var(--mi-color-text-muted, #94A3B8);
3472
+ cursor: pointer;
3473
+ padding: 0;
3474
+ transition: all 0.15s ease;
3475
+ }
3476
+ .mi-searchbar-clear:hover {
3477
+ background: var(--mi-color-primary, #FF4D00);
3478
+ color: #000;
3479
+ border-color: var(--mi-color-primary, #FF4D00);
3480
+ }
3481
+ .mi-searchbar-shortcut {
3482
+ display: inline-flex;
3483
+ align-items: center;
3484
+ padding: 0.15rem 0.4rem;
3485
+ font-size: 0.7rem;
3486
+ font-family: inherit;
3487
+ font-weight: 700;
3488
+ color: var(--mi-color-text-muted, #94A3B8);
3489
+ background-color: var(--mi-color-surface, #1E1B26);
3490
+ border: 1px solid var(--mi-color-border, #332D40);
3491
+ border-radius: 4px;
3492
+ }
3493
+ .mi-searchbar--sm {
3494
+ font-size: 0.78rem;
3495
+ }
3496
+ .mi-searchbar--sm .mi-searchbar-input {
3497
+ padding: 0.35rem 0.5rem;
3498
+ font-size: 0.78rem;
3499
+ }
3500
+ .mi-searchbar--lg {
3501
+ font-size: 1rem;
3502
+ }
3503
+ .mi-searchbar--lg .mi-searchbar-input {
3504
+ padding: 0.75rem 1rem;
3505
+ font-size: 1rem;
3506
+ }
3507
+ .mi-searchbar--pixel {
3508
+ border-width: 2px;
3509
+ border-radius: 0;
3510
+ box-shadow: 3px 3px 0 #000;
3511
+ }
3512
+ .mi-searchbar--pixel .mi-searchbar-clear {
3513
+ border-radius: 0;
3514
+ }
3515
+ .mi-searchbar--pixel .mi-searchbar-shortcut {
3516
+ border-radius: 0;
3517
+ }
3518
+ .mi-searchbar--terminal {
3519
+ background-color: #050B05;
3520
+ border-color: #00FF66;
3521
+ color: #00FF66;
3522
+ }
3523
+ .mi-searchbar--terminal .mi-searchbar-icon {
3524
+ color: #00FF66;
3525
+ }
3526
+ .mi-searchbar--terminal .mi-searchbar-input {
3527
+ color: #00FF66;
3528
+ }
3529
+ .mi-searchbar--terminal:focus-within {
3530
+ box-shadow: 0 0 12px rgba(0, 255, 102, 0.4);
3531
+ }
3532
+ .mi-searchbar--disabled {
3533
+ opacity: 0.5;
3534
+ cursor: not-allowed;
3535
+ }
3536
+ .mi-searchbar--disabled .mi-searchbar-input {
3537
+ cursor: not-allowed;
3538
+ }
3539
+
3540
+ /* src/styles/scrollbar.css */
3541
+ html,
3542
+ body {
3543
+ -webkit-text-size-adjust: 100%;
3544
+ -webkit-font-smoothing: antialiased;
3545
+ -moz-osx-font-smoothing: grayscale;
3546
+ -webkit-overflow-scrolling: touch;
3547
+ -webkit-tap-highlight-color: rgba(255, 77, 0, 0.2);
3548
+ }
3549
+ button,
3550
+ input,
3551
+ select,
3552
+ textarea {
3553
+ font-family: inherit;
3554
+ }
3555
+ ::-webkit-scrollbar {
3556
+ width: 8px;
3557
+ height: 8px;
3558
+ }
3559
+ ::-webkit-scrollbar-track {
3560
+ background: var(--mi-color-bg-subtle, #14121A);
3561
+ border: 1px solid var(--mi-color-border, #332D40);
3562
+ }
3563
+ ::-webkit-scrollbar-thumb {
3564
+ background: var(--mi-color-primary, #FF4D00);
3565
+ border-radius: 2px;
3566
+ box-shadow: var(--mi-shadow-glow, 0 0 12px rgba(255, 77, 0, 0.4));
3567
+ }
3568
+ ::-webkit-scrollbar-thumb:hover {
3569
+ background: var(--mi-color-primary-hover, #FF661A);
3570
+ }
3571
+ * {
3572
+ scrollbar-width: thin;
3573
+ scrollbar-color: var(--mi-color-primary, #FF4D00) var(--mi-color-bg-subtle, #14121A);
3574
+ }
3575
+
3576
+ /* src/Navbar/Navbar.css */
3577
+ .moon-navbar {
3578
+ position: relative;
3579
+ width: 100%;
3580
+ display: flex;
3581
+ align-items: center;
3582
+ justify-content: center;
3583
+ z-index: 1000;
3584
+ box-sizing: border-box;
3585
+ background-color: var(--moon-bg-surface, rgba(13, 11, 18, 0.92));
3586
+ backdrop-filter: blur(16px);
3587
+ -webkit-backdrop-filter: blur(16px);
3588
+ transition: all var(--moon-transition-speed, 0.2s) ease;
3589
+ }
3590
+ .moon-navbar--sticky {
3591
+ position: sticky;
3592
+ top: 0;
3593
+ }
3594
+ .moon-navbar__container {
3595
+ width: 100%;
3596
+ max-width: 1280px;
3597
+ min-height: 64px;
3598
+ padding: 0.5rem var(--moon-space-md, 1rem);
3599
+ display: flex;
3600
+ align-items: center;
3601
+ justify-content: space-between;
3602
+ gap: var(--moon-space-md, 1rem);
3603
+ box-sizing: border-box;
3604
+ }
3605
+ .moon-navbar--inferno {
3606
+ border-bottom: 1px solid var(--moon-color-border-accent, rgba(255, 77, 0, 0.45));
3607
+ box-shadow: 0 4px 20px rgba(255, 77, 0, 0.15);
3608
+ }
3609
+ .moon-navbar--pixel {
3610
+ border-bottom: 3px solid var(--moon-color-border, #ff4444);
3611
+ background-color: var(--moon-bg-surface, #0d0f14);
3612
+ box-shadow: 0 4px 0 #000;
3613
+ }
3614
+ .moon-navbar--ghost {
3615
+ border-bottom: 1px solid var(--moon-color-border-subtle, rgba(255, 255, 255, 0.1));
3616
+ background-color: transparent;
3617
+ }
3618
+ .moon-navbar__brand {
3619
+ display: flex;
3620
+ align-items: center;
3621
+ gap: var(--moon-space-sm, 0.5rem);
3622
+ font-weight: 700;
3623
+ color: var(--moon-color-text, #ffffff);
3624
+ text-decoration: none;
3625
+ font-family: var(--moon-font-mono, monospace);
3626
+ flex-shrink: 0;
3627
+ }
3628
+ .moon-navbar__content {
3629
+ display: flex;
3630
+ align-items: center;
3631
+ gap: var(--moon-space-lg, 1.25rem);
3632
+ list-style: none;
3633
+ margin: 0;
3634
+ padding: 0;
3635
+ flex: 1;
3636
+ }
3637
+ .moon-navbar__content--start {
3638
+ justify-content: flex-start;
3639
+ }
3640
+ .moon-navbar__content--center {
3641
+ justify-content: center;
3642
+ }
3643
+ .moon-navbar__content--end {
3644
+ justify-content: flex-end;
3645
+ }
3646
+ .moon-navbar__item {
3647
+ display: flex;
3648
+ align-items: center;
3649
+ position: relative;
3650
+ font-family: var(--moon-font-mono, monospace);
3651
+ font-size: 0.9rem;
3652
+ color: var(--moon-color-text-muted, #a0a5b5);
3653
+ transition: color 0.2s ease;
3654
+ cursor: pointer;
3655
+ }
3656
+ .moon-navbar__item:hover,
3657
+ .moon-navbar__item--active {
3658
+ color: var(--moon-color-primary, #ff4444);
3659
+ }
3660
+ .moon-navbar__item--active::after {
3661
+ content: "";
3662
+ position: absolute;
3663
+ bottom: -4px;
3664
+ left: 0;
3665
+ right: 0;
3666
+ height: 2px;
3667
+ background-color: var(--moon-color-primary, #ff4444);
3668
+ box-shadow: 0 0 8px var(--moon-color-primary, #ff4444);
3669
+ }
3670
+ .moon-navbar__toggle {
3671
+ display: none;
3672
+ align-items: center;
3673
+ justify-content: center;
3674
+ background: rgba(255, 77, 0, 0.08);
3675
+ border: 1.5px solid var(--moon-color-border-accent, rgba(255, 77, 0, 0.45));
3676
+ padding: 0.45rem 0.6rem;
3677
+ border-radius: 8px;
3678
+ cursor: pointer;
3679
+ outline: none;
3680
+ transition: all 0.15s ease;
3681
+ color: var(--moon-color-primary, #FF4D00);
3682
+ }
3683
+ .moon-navbar__toggle:focus-visible,
3684
+ .moon-navbar__toggle:hover {
3685
+ background: var(--moon-color-primary, #FF4D00);
3686
+ color: #000;
3687
+ box-shadow: 0 0 14px rgba(255, 77, 0, 0.45);
3688
+ }
3689
+ .moon-navbar__toggle-icon {
3690
+ display: flex;
3691
+ align-items: center;
3692
+ justify-content: center;
3693
+ transition: transform 0.2s ease;
3694
+ }
3695
+ .moon-navbar__menu {
3696
+ display: flex;
3697
+ flex-direction: column;
3698
+ position: absolute;
3699
+ top: calc(100% + 8px);
3700
+ left: 0;
3701
+ right: 0;
3702
+ background: rgba(13, 11, 18, 0.96);
3703
+ backdrop-filter: blur(20px);
3704
+ -webkit-backdrop-filter: blur(20px);
3705
+ border: 1.5px solid var(--moon-color-border-accent, rgba(255, 77, 0, 0.45));
3706
+ border-radius: 12px;
3707
+ box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8), 0 0 25px rgba(255, 77, 0, 0.2);
3708
+ z-index: 1001;
3709
+ padding: 1.25rem;
3710
+ animation: moonNavbarSlideDown 0.2s cubic-bezier(0.16, 1, 0.3, 1);
3711
+ box-sizing: border-box;
3712
+ }
3713
+ .moon-navbar__menu-content {
3714
+ display: flex;
3715
+ flex-direction: column;
3716
+ gap: var(--moon-space-md, 0.85rem);
3717
+ width: 100%;
3718
+ }
3719
+ .moon-navbar__menu .moon-navbar__item {
3720
+ padding: 0.35rem 0;
3721
+ font-size: 0.95rem;
3722
+ width: 100%;
3723
+ }
3724
+ .moon-navbar__menu .moon-navbar__item--active::after {
3725
+ display: none;
3726
+ }
3727
+ @keyframes moonNavbarSlideDown {
3728
+ from {
3729
+ opacity: 0;
3730
+ transform: translateY(-8px);
3731
+ }
3732
+ to {
3733
+ opacity: 1;
3734
+ transform: translateY(0);
3735
+ }
3736
+ }
3737
+ @media (max-width: 768px) {
3738
+ .moon-navbar__content {
3739
+ display: none !important;
3740
+ }
3741
+ .moon-navbar__toggle {
3742
+ display: flex !important;
3743
+ }
3744
+ }
3745
+ @media (min-width: 769px) {
3746
+ .moon-navbar__menu {
3747
+ display: none !important;
3748
+ }
3749
+ .moon-navbar__toggle {
3750
+ display: none !important;
3751
+ }
3752
+ .moon-navbar__content {
3753
+ display: flex !important;
3754
+ }
3755
+ }
3756
+
3757
+ /* src/DatePicker/DatePicker.css */
3758
+ .moon-datepicker {
3759
+ display: inline-flex;
3760
+ flex-direction: column;
3761
+ position: relative;
3762
+ font-family: var(--moon-font-mono, monospace);
3763
+ width: 100%;
3764
+ max-width: 320px;
3765
+ }
3766
+ .moon-datepicker__label {
3767
+ font-size: 0.85rem;
3768
+ font-weight: 600;
3769
+ color: var(--moon-color-text, #ffffff);
3770
+ margin-bottom: var(--moon-space-xs, 0.35rem);
3771
+ letter-spacing: 0.05em;
3772
+ text-transform: uppercase;
3773
+ }
3774
+ .moon-datepicker__trigger {
3775
+ display: flex;
3776
+ align-items: center;
3777
+ justify-content: space-between;
3778
+ width: 100%;
3779
+ padding: var(--moon-space-sm, 0.5rem) var(--moon-space-md, 0.75rem);
3780
+ background-color: var(--moon-bg-surface, rgba(18, 20, 28, 0.9));
3781
+ border: 1px solid var(--moon-color-border, rgba(255, 68, 68, 0.4));
3782
+ border-radius: var(--moon-radius-sm, 4px);
3783
+ color: var(--moon-color-text, #ffffff);
3784
+ font-family: inherit;
3785
+ font-size: 0.9rem;
3786
+ cursor: pointer;
3787
+ outline: none;
3788
+ transition: all 0.2s ease;
3789
+ }
3790
+ .moon-datepicker__trigger:focus-visible {
3791
+ border-color: var(--moon-color-primary, #ff4444);
3792
+ box-shadow: 0 0 10px rgba(255, 68, 68, 0.4);
3793
+ }
3794
+ .moon-datepicker__placeholder {
3795
+ color: var(--moon-color-text-muted, #707585);
3796
+ }
3797
+ .moon-datepicker__value {
3798
+ color: var(--moon-color-text, #ffffff);
3799
+ font-weight: 600;
3800
+ }
3801
+ .moon-datepicker__icon {
3802
+ font-size: 1rem;
3803
+ margin-left: 0.5rem;
3804
+ }
3805
+ .moon-datepicker__popover {
3806
+ position: absolute;
3807
+ top: calc(100% + 8px);
3808
+ left: 0;
3809
+ z-index: 1100;
3810
+ width: 280px;
3811
+ padding: var(--moon-space-md, 1rem);
3812
+ background-color: var(--moon-bg-surface, #0d0f14);
3813
+ border: 2px solid var(--moon-color-primary, #ff4444);
3814
+ border-radius: var(--moon-radius-md, 8px);
3815
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.8), 0 0 16px rgba(255, 68, 68, 0.2);
3816
+ backdrop-filter: blur(16px);
3817
+ }
3818
+ .moon-datepicker__header {
3819
+ display: flex;
3820
+ align-items: center;
3821
+ justify-content: space-between;
3822
+ margin-bottom: var(--moon-space-sm, 0.5rem);
3823
+ }
3824
+ .moon-datepicker__month-title {
3825
+ font-weight: 700;
3826
+ font-size: 0.9rem;
3827
+ color: var(--moon-color-text, #ffffff);
3828
+ text-transform: uppercase;
3829
+ letter-spacing: 0.05em;
3830
+ }
3831
+ .moon-datepicker__nav-btn {
3832
+ background: transparent;
3833
+ border: 1px solid var(--moon-color-border, rgba(255, 68, 68, 0.3));
3834
+ color: var(--moon-color-text, #ffffff);
3835
+ padding: 0.2rem 0.5rem;
3836
+ border-radius: var(--moon-radius-sm, 4px);
3837
+ cursor: pointer;
3838
+ font-family: inherit;
3839
+ font-weight: 700;
3840
+ transition: all 0.2s ease;
3841
+ }
3842
+ .moon-datepicker__nav-btn:hover {
3843
+ background-color: var(--moon-color-primary, #ff4444);
3844
+ color: #000;
3845
+ }
3846
+ .moon-datepicker__weekdays {
3847
+ display: grid;
3848
+ grid-template-columns: repeat(7, 1fr);
3849
+ gap: 2px;
3850
+ margin-bottom: 0.35rem;
3851
+ text-align: center;
3852
+ }
3853
+ .moon-datepicker__weekday {
3854
+ font-size: 0.75rem;
3855
+ font-weight: 700;
3856
+ color: var(--moon-color-text-muted, #707585);
3857
+ }
3858
+ .moon-datepicker__grid {
3859
+ display: grid;
3860
+ grid-template-columns: repeat(7, 1fr);
3861
+ gap: 4px;
3862
+ }
3863
+ .moon-datepicker__day {
3864
+ aspect-ratio: 1;
3865
+ display: flex;
3866
+ align-items: center;
3867
+ justify-content: center;
3868
+ background: transparent;
3869
+ border: 1px solid transparent;
3870
+ color: var(--moon-color-text, #ffffff);
3871
+ font-family: inherit;
3872
+ font-size: 0.85rem;
3873
+ border-radius: 4px;
3874
+ cursor: pointer;
3875
+ transition: all 0.15s ease;
3876
+ }
3877
+ .moon-datepicker__day:hover:not(.moon-datepicker__day--disabled) {
3878
+ background-color: rgba(255, 68, 68, 0.2);
3879
+ border-color: var(--moon-color-primary, #ff4444);
3880
+ }
3881
+ .moon-datepicker__day--focused {
3882
+ outline: 2px solid var(--moon-color-primary, #ff4444);
3883
+ outline-offset: 1px;
3884
+ }
3885
+ .moon-datepicker__day--selected {
3886
+ background-color: var(--moon-color-primary, #ff4444) !important;
3887
+ color: #000000 !important;
3888
+ font-weight: 700;
3889
+ box-shadow: 0 0 10px var(--moon-color-primary, #ff4444);
3890
+ }
3891
+ .moon-datepicker__day--disabled {
3892
+ opacity: 0.3;
3893
+ cursor: not-allowed;
3894
+ }
3895
+ .moon-datepicker__day--empty {
3896
+ aspect-ratio: 1;
3897
+ }
3898
+ .moon-datepicker--pixel .moon-datepicker__trigger {
3899
+ border: 2px solid var(--moon-color-primary, #ff4444);
3900
+ box-shadow: 2px 2px 0 #000;
3901
+ border-radius: 0;
3902
+ }
3903
+ .moon-datepicker--pixel .moon-datepicker__popover {
3904
+ border: 3px solid var(--moon-color-primary, #ff4444);
3905
+ border-radius: 0;
3906
+ box-shadow: 4px 4px 0 #000;
3907
+ }
3908
+ .moon-datepicker--pixel .moon-datepicker__day {
3909
+ border-radius: 0;
3910
+ }
3911
+
3912
+ /* src/HoloCard/HoloCard.css */
3913
+ .moon-holocard {
3914
+ position: relative;
3915
+ border-radius: var(--moon-radius-md, 12px);
3916
+ padding: var(--moon-space-lg, 1.5rem);
3917
+ background: var(--moon-bg-surface, rgba(13, 15, 20, 0.9));
3918
+ border: 1px solid var(--moon-color-border, rgba(255, 68, 68, 0.4));
3919
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
3920
+ transition: transform 0.15s ease-out, box-shadow 0.2s ease;
3921
+ transform-style: preserve-3d;
3922
+ overflow: hidden;
3923
+ box-sizing: border-box;
3924
+ }
3925
+ .moon-holocard__content {
3926
+ position: relative;
3927
+ z-index: 2;
3928
+ transform: translateZ(20px);
3929
+ }
3930
+ .moon-holocard__glare {
3931
+ position: absolute;
3932
+ top: 0;
3933
+ left: 0;
3934
+ right: 0;
3935
+ bottom: 0;
3936
+ pointer-events: none;
3937
+ z-index: 3;
3938
+ transition: opacity 0.2s ease;
3939
+ mix-blend-mode: overlay;
3940
+ }
3941
+ .moon-holocard--inferno {
3942
+ border-color: rgba(255, 68, 68, 0.5);
3943
+ box-shadow: 0 10px 30px rgba(255, 68, 68, 0.2);
3944
+ }
3945
+ .moon-holocard--cyber {
3946
+ border-color: rgba(0, 240, 255, 0.6);
3947
+ box-shadow: 0 10px 30px rgba(0, 240, 255, 0.2);
3948
+ }
3949
+ .moon-holocard--y2k {
3950
+ border-color: rgba(255, 0, 220, 0.6);
3951
+ box-shadow: 0 10px 30px rgba(255, 0, 220, 0.2);
3952
+ }
3953
+ @media (prefers-reduced-motion: reduce) {
3954
+ .moon-holocard {
3955
+ transform: none !important;
3956
+ transition: none !important;
3957
+ }
3958
+ .moon-holocard__glare {
3959
+ display: none !important;
3960
+ }
3961
+ }
3962
+
3963
+ /* src/CommandPalette/CommandPalette.css */
3964
+ .moon-command-palette__backdrop {
3965
+ position: fixed;
3966
+ top: 0;
3967
+ left: 0;
3968
+ right: 0;
3969
+ bottom: 0;
3970
+ z-index: 2000;
3971
+ background-color: rgba(0, 0, 0, 0.75);
3972
+ backdrop-filter: blur(8px);
3973
+ display: flex;
3974
+ align-items: flex-start;
3975
+ justify-content: center;
3976
+ padding-top: 12vh;
3977
+ box-sizing: border-box;
3978
+ animation: moonCommandFadeIn 0.15s ease-out;
3979
+ }
3980
+ .moon-command-palette {
3981
+ width: 100%;
3982
+ max-width: 600px;
3983
+ background-color: var(--moon-bg-surface, #0d0f14);
3984
+ border: 1px solid var(--moon-color-primary, #ff4444);
3985
+ border-radius: var(--moon-radius-md, 10px);
3986
+ box-shadow: 0 20px 60px rgba(0, 0, 0, 0.9), 0 0 30px rgba(255, 68, 68, 0.25);
3987
+ overflow: hidden;
3988
+ font-family: var(--moon-font-mono, monospace);
3989
+ color: var(--moon-color-text, #ffffff);
3990
+ }
3991
+ .moon-command-palette__search {
3992
+ display: flex;
3993
+ align-items: center;
3994
+ padding: var(--moon-space-md, 1rem);
3995
+ border-bottom: 1px solid var(--moon-color-border-subtle, rgba(255, 255, 255, 0.1));
3996
+ gap: var(--moon-space-sm, 0.5rem);
3997
+ }
3998
+ .moon-command-palette__search-icon {
3999
+ font-size: 1.1rem;
4000
+ color: var(--moon-color-text-muted, #707585);
4001
+ }
4002
+ .moon-command-palette__input {
4003
+ flex: 1;
4004
+ background: transparent;
4005
+ border: none;
4006
+ outline: none;
4007
+ font-family: inherit;
4008
+ font-size: 1rem;
4009
+ color: var(--moon-color-text, #ffffff);
4010
+ }
4011
+ .moon-command-palette__input::placeholder {
4012
+ color: var(--moon-color-text-muted, #707585);
4013
+ }
4014
+ .moon-command-palette__kbd {
4015
+ font-family: inherit;
4016
+ font-size: 0.75rem;
4017
+ font-weight: 700;
4018
+ padding: 0.2rem 0.4rem;
4019
+ border-radius: 4px;
4020
+ background-color: rgba(255, 255, 255, 0.1);
4021
+ color: var(--moon-color-text-muted, #a0a5b5);
4022
+ border: 1px solid rgba(255, 255, 255, 0.15);
4023
+ }
4024
+ .moon-command-palette__list {
4025
+ max-height: 360px;
4026
+ overflow-y: auto;
4027
+ padding: var(--moon-space-sm, 0.5rem);
4028
+ }
4029
+ .moon-command-palette__empty {
4030
+ padding: var(--moon-space-lg, 1.5rem);
4031
+ text-align: center;
4032
+ color: var(--moon-color-text-muted, #707585);
4033
+ font-size: 0.9rem;
4034
+ }
4035
+ .moon-command-palette__group {
4036
+ margin-bottom: var(--moon-space-sm, 0.5rem);
4037
+ }
4038
+ .moon-command-palette__group-title {
4039
+ padding: 0.4rem 0.6rem;
4040
+ font-size: 0.75rem;
4041
+ font-weight: 700;
4042
+ text-transform: uppercase;
4043
+ letter-spacing: 0.05em;
4044
+ color: var(--moon-color-text-muted, #707585);
4045
+ }
4046
+ .moon-command-palette__item {
4047
+ display: flex;
4048
+ align-items: center;
4049
+ justify-content: space-between;
4050
+ padding: 0.65rem 0.8rem;
4051
+ border-radius: var(--moon-radius-sm, 6px);
4052
+ cursor: pointer;
4053
+ transition: all 0.15s ease;
4054
+ }
4055
+ .moon-command-palette__item-left {
4056
+ display: flex;
4057
+ align-items: center;
4058
+ gap: var(--moon-space-sm, 0.5rem);
4059
+ }
4060
+ .moon-command-palette__item-icon {
4061
+ display: flex;
4062
+ align-items: center;
4063
+ color: var(--moon-color-text-muted, #a0a5b5);
4064
+ }
4065
+ .moon-command-palette__item-label {
4066
+ font-size: 0.9rem;
4067
+ }
4068
+ .moon-command-palette__item--selected {
4069
+ background-color: var(--moon-color-primary, #ff4444);
4070
+ color: #000000;
4071
+ font-weight: 600;
4072
+ }
4073
+ .moon-command-palette__item--selected .moon-command-palette__item-icon,
4074
+ .moon-command-palette__item--selected .moon-command-palette__item-label {
4075
+ color: #000000;
4076
+ }
4077
+ .moon-command-palette__shortcut {
4078
+ font-family: inherit;
4079
+ font-size: 0.75rem;
4080
+ padding: 0.15rem 0.35rem;
4081
+ border-radius: 4px;
4082
+ background-color: rgba(255, 255, 255, 0.15);
4083
+ color: inherit;
4084
+ }
4085
+ .moon-command-palette--pixel {
4086
+ border: 3px solid var(--moon-color-primary, #ff4444);
4087
+ border-radius: 0;
4088
+ box-shadow: 6px 6px 0 #000;
4089
+ }
4090
+ .moon-command-palette--pixel .moon-command-palette__item {
4091
+ border-radius: 0;
4092
+ }
4093
+ @keyframes moonCommandFadeIn {
4094
+ from {
4095
+ opacity: 0;
4096
+ }
4097
+ to {
4098
+ opacity: 1;
4099
+ }
4100
+ }