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