@mgks/docmd 0.3.3 → 0.3.4

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.
@@ -0,0 +1,868 @@
1
+ /* Source file from the docmd project — https://github.com/mgks/docmd */
2
+
3
+ /*
4
+ * docmd Retro Theme
5
+ * Inspired by 1980s-90s computing aesthetics
6
+ * Features: Neon colors, scanlines, terminal styling, glow effects
7
+ */
8
+
9
+ a,
10
+ h1,
11
+ h2,
12
+ h3,
13
+ h4,
14
+ h5,
15
+ h6 {
16
+ color: var(--retro-accent)
17
+ }
18
+
19
+ a,
20
+ body {
21
+ position: relative
22
+ }
23
+
24
+ html[data-theme=light] pre,
25
+ pre {
26
+ color: var(--retro-text) !important;
27
+ background: var(--retro-secondary) !important
28
+ }
29
+
30
+ html[data-theme=light] code,
31
+ html[data-theme=light] pre,
32
+ pre {
33
+ background: var(--retro-secondary) !important
34
+ }
35
+
36
+ body,
37
+ pre::before {
38
+ background: var(--retro-primary)
39
+ }
40
+
41
+ .page-header::after,
42
+ html[data-theme=light] .page-header::after {
43
+ background: linear-gradient(90deg, transparent, var(--retro-accent), transparent)
44
+ }
45
+
46
+ .btn,
47
+ .docmd-button,
48
+ .docmd-tabs-nav-item,
49
+ .theme-toggle-button,
50
+ button {
51
+ cursor: pointer;
52
+ transition: .3s;
53
+ font-family: var(--retro-font-family)
54
+ }
55
+
56
+ .btn,
57
+ .docmd-button,
58
+ .docmd-tabs-nav-item,
59
+ .sidebar-nav a,
60
+ .theme-toggle-button,
61
+ body,
62
+ button,
63
+ code,
64
+ h1,
65
+ h2,
66
+ h3,
67
+ h4,
68
+ h5,
69
+ h6 {
70
+ font-family: var(--retro-font-family)
71
+ }
72
+
73
+ :root {
74
+ --retro-primary: #0a0a0a;
75
+ --retro-secondary: #1a1a1a;
76
+ --retro-bg-light: #0f0f0f;
77
+ --retro-text: #00ff41;
78
+ --retro-text-secondary: #ffb000;
79
+ --retro-text-muted: #888888;
80
+ --retro-accent: #00ffff;
81
+ --retro-danger: #ff1493;
82
+ --retro-warning: #ffb000;
83
+ --retro-success: #00ff41;
84
+ --retro-info: #0066ff;
85
+ --retro-border: #333333;
86
+ --retro-border-bright: #00ffff;
87
+ --retro-glow: 0 0 10px currentColor;
88
+ --retro-glow-soft: 0 0 5px currentColor;
89
+ --retro-shadow: 0 0 20px rgba(0, 255, 255, 0.3);
90
+ --retro-font-family: 'Fira Code', 'Courier New', 'Consolas', monospace;
91
+ --retro-font-family-alt: 'Share Tech Mono', 'Courier New', monospace;
92
+ --retro-spacing: 1rem;
93
+ --retro-spacing-small: 0.5rem;
94
+ --retro-spacing-large: 2rem
95
+ }
96
+
97
+ html[data-theme=light] {
98
+ --retro-primary: #f0f0f0;
99
+ --retro-secondary: #e0e0e0;
100
+ --retro-bg-light: #f5f5f5;
101
+ --retro-text: #2d5d2d;
102
+ --retro-text-secondary: #8b4500;
103
+ --retro-text-muted: #666666;
104
+ --retro-accent: #006666;
105
+ --retro-danger: #b71c42;
106
+ --retro-warning: #b8860b;
107
+ --retro-success: #228b22;
108
+ --retro-info: #4169e1;
109
+ --retro-border: #cccccc;
110
+ --retro-border-bright: #006666;
111
+ --retro-glow: 0 0 5px currentColor;
112
+ --retro-glow-soft: 0 0 3px currentColor;
113
+ --retro-shadow: 0 0 15px rgba(0, 102, 102, 0.2)
114
+ }
115
+
116
+ * {
117
+ box-sizing: border-box
118
+ }
119
+
120
+ body {
121
+ color: var(--retro-text);
122
+ line-height: 1.6;
123
+ margin: 0;
124
+ padding: 0;
125
+ min-height: 100vh;
126
+ overflow-x: hidden
127
+ }
128
+
129
+ body::before {
130
+ content: '';
131
+ position: fixed;
132
+ top: 0;
133
+ left: 0;
134
+ width: 100%;
135
+ height: 100%;
136
+ background: linear-gradient(transparent 50%, rgba(0, 255, 65, .03) 50%);
137
+ background-size: 100% 4px;
138
+ pointer-events: none;
139
+ z-index: 1000;
140
+ animation: .1s linear infinite scanlines
141
+ }
142
+
143
+ html[data-theme=light]::before {
144
+ background: linear-gradient(transparent 50%, rgba(45, 93, 45, .02) 50%)
145
+ }
146
+
147
+ html[data-theme=light] .page-header {
148
+ box-shadow: 0 2px 10px rgba(0, 102, 102, .2)
149
+ }
150
+
151
+ .page-container {
152
+ animation: 3s infinite flicker
153
+ }
154
+
155
+ h1,
156
+ h2,
157
+ h3,
158
+ h4,
159
+ h5,
160
+ h6 {
161
+ text-transform: uppercase;
162
+ letter-spacing: 2px;
163
+ text-shadow: var(--retro-glow-soft);
164
+ margin: var(--retro-spacing-large) 0 var(--retro-spacing)
165
+ }
166
+
167
+ code,
168
+ h2 {
169
+ color: var(--retro-text-secondary)
170
+ }
171
+
172
+ h1 {
173
+ font-size: 2.5rem;
174
+ border-bottom: 2px solid var(--retro-accent);
175
+ padding-bottom: .5rem;
176
+ animation: 2s ease-in-out infinite alternate glow-pulse
177
+ }
178
+
179
+ h2 {
180
+ font-size: 2rem
181
+ }
182
+
183
+ h3,
184
+ html[data-theme=light] .sidebar-nav a {
185
+ color: var(--retro-text)
186
+ }
187
+
188
+ h3 {
189
+ font-size: 1.5rem
190
+ }
191
+
192
+ p {
193
+ margin: var(--retro-spacing) 0;
194
+ text-shadow: 0 0 2px currentColor
195
+ }
196
+
197
+ .callout-title,
198
+ a {
199
+ text-shadow: var(--retro-glow-soft)
200
+ }
201
+
202
+ a {
203
+ text-decoration: none;
204
+ transition: .3s
205
+ }
206
+
207
+ a:hover {
208
+ color: var(--retro-danger);
209
+ text-shadow: var(--retro-glow)
210
+ }
211
+
212
+ .page-content a:before,
213
+ .sidebar-nav a:before {
214
+ content: '>';
215
+ margin-right: .25rem;
216
+ animation: 1s infinite blink
217
+ }
218
+
219
+ .docmd-button:before,
220
+ .docmd-container.steps ol.steps-list>li.step-item:last-child::after,
221
+ .docmd-container.steps ol:not(.steps-list) li::before,
222
+ .docmd-container.steps ul li::before,
223
+ .page-header a:before,
224
+ .page-nav a:before {
225
+ display: none
226
+ }
227
+
228
+ code {
229
+ background: var(--retro-secondary);
230
+ padding: .2rem .4rem;
231
+ border-radius: 3px;
232
+ border: 1px solid var(--retro-border);
233
+ box-shadow: inset 0 0 5px rgba(0, 255, 65, .2)
234
+ }
235
+
236
+ .page-header,
237
+ pre {
238
+ padding: var(--retro-spacing);
239
+ position: relative
240
+ }
241
+
242
+ pre {
243
+ border-radius: 8px;
244
+ border: 1px solid var(--retro-border-bright);
245
+ box-shadow: var(--retro-shadow);
246
+ overflow-x: auto;
247
+ padding-top: 2rem
248
+ }
249
+
250
+ .docmd-container::before,
251
+ pre::before {
252
+ position: absolute;
253
+ border: 1px solid var(--retro-border-bright)
254
+ }
255
+
256
+ html[data-theme=light] code {
257
+ color: var(--retro-text-secondary) !important;
258
+ box-shadow: inset 0 0 5px rgba(45, 93, 45, .2)
259
+ }
260
+
261
+ pre::before {
262
+ content: '[TERMINAL]';
263
+ top: 5px;
264
+ left: 5px;
265
+ color: var(--retro-accent);
266
+ padding: .2rem .5rem;
267
+ font-size: .7rem;
268
+ border-radius: 3px
269
+ }
270
+
271
+ .page-header {
272
+ background: linear-gradient(45deg, var(--retro-secondary), var(--retro-bg-light));
273
+ border-bottom: 2px solid var(--retro-border-bright);
274
+ box-shadow: 0 2px 10px rgba(0, 255, 255, .3)
275
+ }
276
+
277
+ .page-header::after {
278
+ content: '';
279
+ position: absolute;
280
+ bottom: -2px;
281
+ left: 0;
282
+ width: 100%;
283
+ height: 2px;
284
+ animation: 2s ease-in-out infinite scan
285
+ }
286
+
287
+ .sidebar {
288
+ background: var(--retro-secondary);
289
+ border-right: 2px solid var(--retro-border-bright);
290
+ box-shadow: 2px 0 10px rgba(0, 255, 255, .2)
291
+ }
292
+
293
+ .sidebar-nav a {
294
+ display: block;
295
+ padding: .75rem var(--retro-spacing);
296
+ border-bottom: 1px solid var(--retro-border);
297
+ transition: .3s
298
+ }
299
+
300
+ .sidebar-nav a.active,
301
+ .sidebar-nav a:hover {
302
+ background: var(--retro-bg-light);
303
+ border-left: 4px solid var(--retro-accent);
304
+ box-shadow: inset 0 0 10px rgba(0, 255, 255, .2)
305
+ }
306
+
307
+ html[data-theme=light] .sidebar-nav a.active,
308
+ html[data-theme=light] .sidebar-nav a:hover {
309
+ background: var(--retro-bg-light);
310
+ border-left: 4px solid var(--retro-accent);
311
+ box-shadow: inset 0 0 10px rgba(0, 102, 102, .2)
312
+ }
313
+
314
+ .btn,
315
+ .docmd-button,
316
+ button {
317
+ background: linear-gradient(145deg, var(--retro-secondary), var(--retro-bg-light));
318
+ color: var(--retro-accent);
319
+ border: 2px solid var(--retro-border-bright);
320
+ padding: .75rem 1.5rem;
321
+ font-weight: 700;
322
+ text-transform: uppercase;
323
+ letter-spacing: 1px;
324
+ position: relative;
325
+ text-decoration: none;
326
+ display: inline-block;
327
+ box-shadow: 0 4px 15px rgba(0, 255, 255, .3)
328
+ }
329
+
330
+ .btn:hover,
331
+ .docmd-button:hover,
332
+ button:hover,
333
+ th {
334
+ background: linear-gradient(145deg, var(--retro-bg-light), var(--retro-secondary))
335
+ }
336
+
337
+ .docmd-container.steps::before,
338
+ .docmd-tabs-nav-item {
339
+ color: var(--retro-text-secondary);
340
+ letter-spacing: 1px
341
+ }
342
+
343
+ .docmd-container,
344
+ td,
345
+ th {
346
+ padding: var(--retro-spacing)
347
+ }
348
+
349
+ .docmd-container,
350
+ .docmd-tabs {
351
+ background: var(--retro-secondary);
352
+ box-shadow: var(--retro-shadow);
353
+ position: relative
354
+ }
355
+
356
+ .btn:hover,
357
+ .docmd-button:hover,
358
+ button:hover {
359
+ color: var(--retro-danger);
360
+ box-shadow: 0 6px 20px rgba(255, 20, 147, .4);
361
+ transform: translateY(-2px)
362
+ }
363
+
364
+ .btn:active,
365
+ .docmd-button:active,
366
+ button:active {
367
+ transform: translateY(0);
368
+ box-shadow: 0 2px 10px rgba(0, 255, 255, .5)
369
+ }
370
+
371
+ .docmd-container {
372
+ border: 2px solid var(--retro-border);
373
+ border-radius: 8px;
374
+ margin: var(--retro-spacing) 0
375
+ }
376
+
377
+ .docmd-container::before {
378
+ content: attr(data-type);
379
+ top: -15px;
380
+ left: 5px;
381
+ background: var(--retro-primary);
382
+ color: var(--retro-accent);
383
+ padding: .25rem .75rem;
384
+ border-radius: 3px;
385
+ font-size: .8rem;
386
+ text-transform: uppercase;
387
+ letter-spacing: 1px
388
+ }
389
+
390
+ .docmd-container.callout.info {
391
+ border-color: var(--retro-info);
392
+ box-shadow: 0 0 15px rgba(0, 102, 255, .3)
393
+ }
394
+
395
+ .docmd-container.callout.warning {
396
+ border-color: var(--retro-warning);
397
+ box-shadow: 0 0 15px rgba(255, 176, 0, .3)
398
+ }
399
+
400
+ .docmd-container.callout.danger {
401
+ border-color: var(--retro-danger);
402
+ box-shadow: 0 0 15px rgba(255, 20, 147, .3)
403
+ }
404
+
405
+ .docmd-container.callout.success,
406
+ .docmd-container.callout.tip {
407
+ border-color: var(--retro-success);
408
+ box-shadow: 0 0 15px rgba(0, 255, 65, .3)
409
+ }
410
+
411
+ .docmd-tabs-nav,
412
+ th {
413
+ border-bottom: 2px solid var(--retro-border-bright)
414
+ }
415
+
416
+ .callout-title {
417
+ font-weight: 700;
418
+ margin-bottom: .75em;
419
+ display: flex;
420
+ align-items: center;
421
+ text-transform: uppercase;
422
+ letter-spacing: 1px
423
+ }
424
+
425
+ .callout-title::before {
426
+ margin-right: .5rem;
427
+ font-size: 1.2em;
428
+ text-shadow: none
429
+ }
430
+
431
+ .docmd-container.steps::before,
432
+ .docmd-tabs::before {
433
+ top: -12px;
434
+ left: 20px;
435
+ padding: .25rem .75rem;
436
+ font-size: .7rem;
437
+ position: absolute;
438
+ text-transform: uppercase
439
+ }
440
+
441
+ .callout-info .callout-title::before {
442
+ content: "🖥️"
443
+ }
444
+
445
+ .callout-warning .callout-title::before {
446
+ content: "⚠️"
447
+ }
448
+
449
+ .callout-tip .callout-title::before {
450
+ content: "💾"
451
+ }
452
+
453
+ .callout-danger .callout-title::before {
454
+ content: "🚨"
455
+ }
456
+
457
+ .callout-success .callout-title::before {
458
+ content: "✅"
459
+ }
460
+
461
+ .docmd-container.card {
462
+ background: linear-gradient(145deg, var(--retro-secondary), var(--retro-bg-light));
463
+ border: 1px solid var(--retro-border-bright);
464
+ box-shadow: 0 4px 15px rgba(0, 255, 255, .2), inset 0 0 10px rgba(0, 255, 65, .1)
465
+ }
466
+
467
+ .docmd-tabs {
468
+ border: 2px solid var(--retro-border-bright);
469
+ border-radius: 8px;
470
+ overflow: hidden
471
+ }
472
+
473
+ .theme-toggle-button,
474
+ img {
475
+ box-shadow: 0 0 10px rgba(0, 255, 255, .3)
476
+ }
477
+
478
+ .docmd-tabs::before {
479
+ content: '[TABS]';
480
+ background: var(--retro-primary);
481
+ color: var(--retro-accent);
482
+ border: 1px solid var(--retro-border-bright);
483
+ border-radius: 3px;
484
+ z-index: 1
485
+ }
486
+
487
+ .docmd-tabs-nav {
488
+ background: linear-gradient(90deg, var(--retro-bg-light), var(--retro-secondary));
489
+ display: flex
490
+ }
491
+
492
+ .theme-toggle-button,
493
+ table {
494
+ background: var(--retro-secondary)
495
+ }
496
+
497
+ .docmd-tabs-nav-item {
498
+ padding: 1rem 1.5rem;
499
+ font-weight: 700;
500
+ border-right: 1px solid var(--retro-border);
501
+ position: relative;
502
+ text-transform: uppercase
503
+ }
504
+
505
+ .docmd-tabs-nav-item:hover,
506
+ .theme-toggle-button,
507
+ th {
508
+ color: var(--retro-accent)
509
+ }
510
+
511
+ .docmd-tabs-nav-item:last-child {
512
+ border-right: none
513
+ }
514
+
515
+ .docmd-tabs-nav-item:hover {
516
+ background: var(--retro-bg-light);
517
+ box-shadow: inset 0 0 10px rgba(0, 255, 255, .2)
518
+ }
519
+
520
+ .docmd-tabs-nav-item.active {
521
+ background: var(--retro-primary);
522
+ color: var(--retro-accent);
523
+ border-bottom: 2px solid var(--retro-accent);
524
+ box-shadow: 0 0 15px rgba(0, 255, 255, .5)
525
+ }
526
+
527
+ .docmd-container.steps,
528
+ table {
529
+ box-shadow: var(--retro-shadow)
530
+ }
531
+
532
+ .docmd-tabs-nav-item.active::after {
533
+ content: '_';
534
+ animation: 1s infinite blink;
535
+ margin-left: .25rem
536
+ }
537
+
538
+ .docmd-tab-pane {
539
+ display: none;
540
+ padding: var(--retro-spacing-large);
541
+ animation: .5s fadeInCRT
542
+ }
543
+
544
+ .docmd-tab-pane.active {
545
+ display: block
546
+ }
547
+
548
+ .docmd-container.steps {
549
+ background: linear-gradient(145deg, var(--retro-secondary), var(--retro-bg-light));
550
+ border: 2px solid var(--retro-border-bright);
551
+ border-radius: 8px;
552
+ padding: var(--retro-spacing-large);
553
+ position: relative
554
+ }
555
+
556
+ .docmd-container.steps::before {
557
+ content: '[SEQUENCE]';
558
+ background: var(--retro-primary);
559
+ border: 1px solid var(--retro-border-bright);
560
+ border-radius: 3px
561
+ }
562
+
563
+ .docmd-container.steps ol.steps-list {
564
+ counter-reset: step-counter;
565
+ list-style: none;
566
+ padding-left: 0
567
+ }
568
+
569
+ .docmd-container.steps ol.steps-list>li.step-item {
570
+ counter-increment: step-counter;
571
+ position: relative;
572
+ padding: var(--retro-spacing) 0 var(--retro-spacing) 4rem;
573
+ border-bottom: 1px solid var(--retro-border);
574
+ margin-bottom: var(--retro-spacing)
575
+ }
576
+
577
+ .docmd-container.steps ol.steps-list>li.step-item:last-child {
578
+ border-bottom: none;
579
+ margin-bottom: 0
580
+ }
581
+
582
+ .docmd-container.steps ol.steps-list>li.step-item::before {
583
+ content: counter(step-counter);
584
+ position: absolute;
585
+ left: 0;
586
+ top: var(--retro-spacing);
587
+ width: 2.5rem;
588
+ height: 2.5rem;
589
+ background: linear-gradient(145deg, var(--retro-accent), var(--retro-info));
590
+ color: var(--retro-primary);
591
+ border: 2px solid var(--retro-border-bright);
592
+ border-radius: 4px;
593
+ display: flex;
594
+ align-items: center;
595
+ justify-content: center;
596
+ font-weight: 700;
597
+ font-size: 1.2rem;
598
+ text-shadow: none;
599
+ box-shadow: 0 0 10px rgba(0, 255, 255, .5), inset 0 0 5px rgba(0, 0, 0, .3);
600
+ animation: 2s ease-in-out infinite pulse-glow
601
+ }
602
+
603
+ .docmd-container.steps ol.steps-list>li.step-item::after {
604
+ content: '';
605
+ position: absolute;
606
+ left: 1.2rem;
607
+ top: 4rem;
608
+ bottom: -1rem;
609
+ width: 2px;
610
+ background: linear-gradient(180deg, var(--retro-accent), transparent);
611
+ box-shadow: 0 0 3px var(--retro-accent)
612
+ }
613
+
614
+ .docmd-container.steps ol:not(.steps-list),
615
+ .docmd-container.steps ul {
616
+ list-style: initial;
617
+ padding-left: 2rem;
618
+ margin: var(--retro-spacing) 0
619
+ }
620
+
621
+ .docmd-container.steps ol:not(.steps-list) li,
622
+ .docmd-container.steps ul li {
623
+ padding: .25rem 0;
624
+ border: none;
625
+ margin: 0
626
+ }
627
+
628
+ .logo-link img {
629
+ border: 0;
630
+ box-shadow: none
631
+ }
632
+
633
+ img {
634
+ max-width: 100%;
635
+ height: auto;
636
+ border: 1px solid var(--retro-border);
637
+ border-radius: 4px;
638
+ filter: brightness(.9) contrast(1.1)
639
+ }
640
+
641
+ table {
642
+ width: 100%;
643
+ border-collapse: collapse;
644
+ border: 2px solid var(--retro-border-bright);
645
+ border-radius: 8px;
646
+ overflow: hidden
647
+ }
648
+
649
+ th {
650
+ text-transform: uppercase;
651
+ letter-spacing: 1px
652
+ }
653
+
654
+ td {
655
+ border-bottom: 1px solid var(--retro-border)
656
+ }
657
+
658
+ tr:hover {
659
+ background: var(--retro-bg-light);
660
+ box-shadow: inset 0 0 10px rgba(0, 255, 65, .1)
661
+ }
662
+
663
+ html[data-theme=light] tr:hover {
664
+ box-shadow: inset 0 0 10px rgba(45, 93, 45, .1)
665
+ }
666
+
667
+ .theme-toggle-button {
668
+ border: 2px solid var(--retro-accent);
669
+ padding: .5rem;
670
+ border-radius: 4px;
671
+ text-transform: uppercase;
672
+ font-size: .8rem;
673
+ letter-spacing: 1px
674
+ }
675
+
676
+ .theme-toggle-button:hover {
677
+ background: var(--retro-accent);
678
+ color: var(--retro-primary);
679
+ box-shadow: 0 0 15px rgba(0, 255, 255, .6)
680
+ }
681
+
682
+ html[data-theme=light] .theme-toggle-button {
683
+ box-shadow: 0 0 10px rgba(0, 102, 102, .3)
684
+ }
685
+
686
+ html[data-theme=light] .theme-toggle-button:hover {
687
+ box-shadow: 0 0 15px rgba(0, 102, 102, .6)
688
+ }
689
+
690
+ .terminal-cursor::after {
691
+ content: '█';
692
+ animation: 1s infinite blink;
693
+ color: var(--retro-accent)
694
+ }
695
+
696
+ .retro-divider {
697
+ height: 2px;
698
+ background: linear-gradient(90deg, transparent, var(--retro-accent), var(--retro-danger), var(--retro-accent), transparent);
699
+ margin: var(--retro-spacing-large) 0;
700
+ animation: 3s ease-in-out infinite scan
701
+ }
702
+
703
+ @media (max-width:768px) {
704
+ body::before {
705
+ background-size: 100% 2px
706
+ }
707
+
708
+ @keyframes scanlines {
709
+ 0% {
710
+ transform: translateY(0)
711
+ }
712
+
713
+ 100% {
714
+ transform: translateY(2px)
715
+ }
716
+ }
717
+
718
+ h1 {
719
+ font-size: 2rem
720
+ }
721
+
722
+ .docmd-tabs-nav {
723
+ flex-direction: column
724
+ }
725
+
726
+ .docmd-tabs-nav-item {
727
+ border-right: none;
728
+ border-bottom: 1px solid var(--retro-border)
729
+ }
730
+
731
+ .docmd-container.steps ol.steps-list>li.step-item {
732
+ padding-left: 3rem
733
+ }
734
+
735
+ .docmd-container.steps ol.steps-list>li.step-item::before {
736
+ width: 2rem;
737
+ height: 2rem;
738
+ font-size: 1rem
739
+ }
740
+
741
+ .docmd-container.steps ol.steps-list>li.step-item::after {
742
+ left: 1rem
743
+ }
744
+ }
745
+
746
+ @media (prefers-reduced-motion:reduce) {
747
+
748
+ *,
749
+ ::after,
750
+ ::before {
751
+ animation-duration: 0s !important;
752
+ animation-iteration-count: 1 !important;
753
+ transition-duration: 0s !important
754
+ }
755
+
756
+ body::before {
757
+ display: none
758
+ }
759
+ }
760
+
761
+ @media print {
762
+ body::before {
763
+ display: none
764
+ }
765
+
766
+ .docmd-container {
767
+ box-shadow: none;
768
+ border: 1px solid #000
769
+ }
770
+
771
+ * {
772
+ text-shadow: none !important;
773
+ box-shadow: none !important
774
+ }
775
+ }
776
+
777
+
778
+ @keyframes scanlines {
779
+ 0% {
780
+ transform: translateY(0)
781
+ }
782
+
783
+ 100% {
784
+ transform: translateY(4px)
785
+ }
786
+ }
787
+
788
+ @keyframes flicker {
789
+
790
+ 0%,
791
+ 100% {
792
+ opacity: 1
793
+ }
794
+
795
+ 98% {
796
+ opacity: .98
797
+ }
798
+
799
+ 99% {
800
+ opacity: .99
801
+ }
802
+ }
803
+
804
+ @keyframes glow-pulse {
805
+ from {
806
+ text-shadow: 0 0 5px var(--retro-accent)
807
+ }
808
+
809
+ to {
810
+ text-shadow: 0 0 15px var(--retro-accent), 0 0 25px var(--retro-accent)
811
+ }
812
+ }
813
+
814
+ @keyframes blink {
815
+
816
+ 0%,
817
+ 50% {
818
+ opacity: 1
819
+ }
820
+
821
+ 100%,
822
+ 51% {
823
+ opacity: 0
824
+ }
825
+ }
826
+
827
+ @keyframes scan {
828
+
829
+ 0%,
830
+ 100% {
831
+ transform: scaleX(0)
832
+ }
833
+
834
+ 50% {
835
+ transform: scaleX(1)
836
+ }
837
+ }
838
+
839
+ @keyframes fadeInCRT {
840
+ 0% {
841
+ opacity: 0;
842
+ transform: scaleY(.1) scaleX(1);
843
+ filter: brightness(2)
844
+ }
845
+
846
+ 50% {
847
+ opacity: .5;
848
+ transform: scaleY(.5) scaleX(1)
849
+ }
850
+
851
+ 100% {
852
+ opacity: 1;
853
+ transform: scaleY(1) scaleX(1);
854
+ filter: brightness(1)
855
+ }
856
+ }
857
+
858
+ @keyframes pulse-glow {
859
+
860
+ 0%,
861
+ 100% {
862
+ box-shadow: 0 0 10px rgba(0, 255, 255, .5), inset 0 0 5px rgba(0, 0, 0, .3)
863
+ }
864
+
865
+ 50% {
866
+ box-shadow: 0 0 20px rgba(0, 255, 255, .8), inset 0 0 10px rgba(0, 0, 0, .5)
867
+ }
868
+ }