@mgks/docmd 0.3.6 → 0.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +86 -77
- package/bin/docmd.js +13 -16
- package/bin/postinstall.js +4 -4
- package/package.json +19 -16
- package/src/assets/css/docmd-highlight-dark.css +86 -1
- package/src/assets/css/docmd-highlight-light.css +86 -1
- package/src/assets/css/docmd-main.css +544 -464
- package/src/assets/css/docmd-theme-retro.css +105 -106
- package/src/assets/css/docmd-theme-ruby.css +92 -92
- package/src/assets/css/docmd-theme-sky.css +63 -64
- package/src/assets/favicon.ico +0 -0
- package/src/assets/images/docmd-logo-dark.png +0 -0
- package/src/assets/images/docmd-logo-light.png +0 -0
- package/src/assets/js/docmd-image-lightbox.js +2 -2
- package/src/assets/js/docmd-main.js +14 -6
- package/src/assets/js/docmd-mermaid.js +1 -1
- package/src/assets/js/docmd-search.js +1 -1
- package/src/commands/build.js +71 -370
- package/src/commands/dev.js +199 -72
- package/src/commands/init.js +135 -134
- package/src/commands/live.js +145 -0
- package/src/core/asset-manager.js +72 -0
- package/src/core/config-loader.js +2 -2
- package/src/core/config-validator.js +1 -1
- package/src/core/file-processor.js +13 -9
- package/src/core/fs-utils.js +40 -0
- package/src/core/html-formatter.js +97 -0
- package/src/core/html-generator.js +61 -65
- package/src/core/icon-renderer.js +1 -1
- package/src/core/logger.js +1 -1
- package/src/core/markdown/containers.js +1 -1
- package/src/core/markdown/renderers.js +1 -1
- package/src/core/markdown/rules.js +1 -2
- package/src/core/markdown/setup.js +1 -1
- package/src/core/navigation-helper.js +1 -1
- package/src/index.js +12 -0
- package/src/live/core.js +5 -1
- package/src/live/index.html +16 -1
- package/src/live/live.css +157 -68
- package/src/plugins/analytics.js +1 -1
- package/src/plugins/seo.js +26 -36
- package/src/plugins/sitemap.js +2 -2
- package/src/templates/layout.ejs +50 -81
- package/src/templates/navigation.ejs +23 -76
- package/src/templates/no-style.ejs +115 -129
- package/src/templates/partials/theme-init.js +1 -1
- package/src/templates/toc.ejs +6 -35
- package/docmd.config.js +0 -175
- package/scripts/build-live.js +0 -157
- package/scripts/test-live.js +0 -54
- package/src/assets/images/docmd-logo.png +0 -0
- package/src/live/templates.js +0 -9
|
@@ -1,11 +1,89 @@
|
|
|
1
|
-
/* Source file from the docmd project — https://github.com/
|
|
1
|
+
/* Source file from the docmd project — https://github.com/docmd-io/docmd */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
|
-
*
|
|
4
|
+
* Retro Theme
|
|
5
5
|
* Inspired by 1980s-90s computing aesthetics
|
|
6
6
|
* Features: Neon colors, scanlines, terminal styling, glow effects
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
+
:root {
|
|
10
|
+
--retro-primary: #0a0a0a;
|
|
11
|
+
--retro-secondary: #1a1a1a;
|
|
12
|
+
--retro-bg-light: #0f0f0f;
|
|
13
|
+
--retro-text: #00ff41;
|
|
14
|
+
--retro-text-secondary: #ffb000;
|
|
15
|
+
--retro-text-muted: #888;
|
|
16
|
+
--retro-accent: #0ff;
|
|
17
|
+
--retro-danger: #ff1493;
|
|
18
|
+
--retro-warning: #ffb000;
|
|
19
|
+
--retro-success: #00ff41;
|
|
20
|
+
--retro-info: #06f;
|
|
21
|
+
--retro-border: #333;
|
|
22
|
+
--retro-border-bright: #0ff;
|
|
23
|
+
--retro-glow: 0 0 10px currentColor;
|
|
24
|
+
--retro-glow-soft: 0 0 5px currentColor;
|
|
25
|
+
--retro-shadow: 0 0 20px #00ffff4d;
|
|
26
|
+
--retro-font-family: 'Fira Code', 'Courier New', Consolas, monospace;
|
|
27
|
+
--retro-font-family-alt: 'Share Tech Mono', 'Courier New', monospace;
|
|
28
|
+
--retro-spacing: 1rem;
|
|
29
|
+
--retro-spacing-small: .5rem;
|
|
30
|
+
--retro-spacing-large: 2rem
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
html[data-theme=light] {
|
|
34
|
+
--retro-primary: #f0f0f0;
|
|
35
|
+
--retro-secondary: #e0e0e0;
|
|
36
|
+
--retro-bg-light: #f5f5f5;
|
|
37
|
+
--retro-text: #2d5d2d;
|
|
38
|
+
--retro-text-secondary: #8b4500;
|
|
39
|
+
--retro-text-muted: #666;
|
|
40
|
+
--retro-accent: #066;
|
|
41
|
+
--retro-danger: #b71c42;
|
|
42
|
+
--retro-warning: #b8860b;
|
|
43
|
+
--retro-success: #228b22;
|
|
44
|
+
--retro-info: #4169e1;
|
|
45
|
+
--retro-border: #ccc;
|
|
46
|
+
--retro-border-bright: #066;
|
|
47
|
+
--retro-glow: 0 0 5px currentColor;
|
|
48
|
+
--retro-glow-soft: 0 0 3px currentColor;
|
|
49
|
+
--retro-shadow: 0 0 15px #0663
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
* {
|
|
53
|
+
box-sizing: border-box
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
body {
|
|
57
|
+
color: var(--retro-text);
|
|
58
|
+
line-height: 1.6;
|
|
59
|
+
margin: 0;
|
|
60
|
+
padding: 0;
|
|
61
|
+
min-height: 100vh;
|
|
62
|
+
overflow-x: hidden
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
body::before {
|
|
66
|
+
content: '';
|
|
67
|
+
position: fixed;
|
|
68
|
+
top: 0;
|
|
69
|
+
left: 0;
|
|
70
|
+
width: 100%;
|
|
71
|
+
height: 100%;
|
|
72
|
+
background: linear-gradient(transparent 50%, #00ff4108 50%);
|
|
73
|
+
background-size: 100% 4px;
|
|
74
|
+
pointer-events: none;
|
|
75
|
+
z-index: 1000;
|
|
76
|
+
animation: .1s linear infinite scanlines
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
html[data-theme=light]::before {
|
|
80
|
+
background: linear-gradient(transparent 50%, #2d5d2d05 50%)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
html[data-theme=light] .page-header {
|
|
84
|
+
box-shadow: 0 2px 10px #0663
|
|
85
|
+
}
|
|
86
|
+
|
|
9
87
|
a,
|
|
10
88
|
h1,
|
|
11
89
|
h2,
|
|
@@ -70,84 +148,6 @@ h6 {
|
|
|
70
148
|
font-family: var(--retro-font-family)
|
|
71
149
|
}
|
|
72
150
|
|
|
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
151
|
.page-container {
|
|
152
152
|
animation: 3s infinite flicker
|
|
153
153
|
}
|
|
@@ -230,7 +230,7 @@ code {
|
|
|
230
230
|
padding: .2rem .4rem;
|
|
231
231
|
border-radius: 3px;
|
|
232
232
|
border: 1px solid var(--retro-border);
|
|
233
|
-
box-shadow: inset 0 0 5px
|
|
233
|
+
box-shadow: inset 0 0 5px #00ff4133
|
|
234
234
|
}
|
|
235
235
|
|
|
236
236
|
.page-header,
|
|
@@ -255,7 +255,7 @@ pre::before {
|
|
|
255
255
|
|
|
256
256
|
html[data-theme=light] code {
|
|
257
257
|
color: var(--retro-text-secondary) !important;
|
|
258
|
-
box-shadow: inset 0 0 5px
|
|
258
|
+
box-shadow: inset 0 0 5px #2d5d2d33
|
|
259
259
|
}
|
|
260
260
|
|
|
261
261
|
pre::before {
|
|
@@ -271,7 +271,7 @@ pre::before {
|
|
|
271
271
|
.page-header {
|
|
272
272
|
background: linear-gradient(45deg, var(--retro-secondary), var(--retro-bg-light));
|
|
273
273
|
border-bottom: 2px solid var(--retro-border-bright);
|
|
274
|
-
box-shadow: 0 2px 10px
|
|
274
|
+
box-shadow: 0 2px 10px #00ffff4d
|
|
275
275
|
}
|
|
276
276
|
|
|
277
277
|
.page-header::after {
|
|
@@ -287,7 +287,7 @@ pre::before {
|
|
|
287
287
|
.sidebar {
|
|
288
288
|
background: var(--retro-secondary);
|
|
289
289
|
border-right: 2px solid var(--retro-border-bright);
|
|
290
|
-
box-shadow: 2px 0 10px
|
|
290
|
+
box-shadow: 2px 0 10px #0ff3
|
|
291
291
|
}
|
|
292
292
|
|
|
293
293
|
.sidebar-nav a {
|
|
@@ -301,14 +301,14 @@ pre::before {
|
|
|
301
301
|
.sidebar-nav a:hover {
|
|
302
302
|
background: var(--retro-bg-light);
|
|
303
303
|
border-left: 4px solid var(--retro-accent);
|
|
304
|
-
box-shadow: inset 0 0 10px
|
|
304
|
+
box-shadow: inset 0 0 10px #0ff3
|
|
305
305
|
}
|
|
306
306
|
|
|
307
307
|
html[data-theme=light] .sidebar-nav a.active,
|
|
308
308
|
html[data-theme=light] .sidebar-nav a:hover {
|
|
309
309
|
background: var(--retro-bg-light);
|
|
310
310
|
border-left: 4px solid var(--retro-accent);
|
|
311
|
-
box-shadow: inset 0 0 10px
|
|
311
|
+
box-shadow: inset 0 0 10px #0663
|
|
312
312
|
}
|
|
313
313
|
|
|
314
314
|
.btn,
|
|
@@ -324,7 +324,7 @@ button {
|
|
|
324
324
|
position: relative;
|
|
325
325
|
text-decoration: none;
|
|
326
326
|
display: inline-block;
|
|
327
|
-
box-shadow: 0 4px 15px
|
|
327
|
+
box-shadow: 0 4px 15px #00ffff4d
|
|
328
328
|
}
|
|
329
329
|
|
|
330
330
|
.btn:hover,
|
|
@@ -357,7 +357,7 @@ th {
|
|
|
357
357
|
.docmd-button:hover,
|
|
358
358
|
button:hover {
|
|
359
359
|
color: var(--retro-danger);
|
|
360
|
-
box-shadow: 0 6px 20px
|
|
360
|
+
box-shadow: 0 6px 20px #ff149366;
|
|
361
361
|
transform: translateY(-2px)
|
|
362
362
|
}
|
|
363
363
|
|
|
@@ -365,7 +365,7 @@ button:hover {
|
|
|
365
365
|
.docmd-button:active,
|
|
366
366
|
button:active {
|
|
367
367
|
transform: translateY(0);
|
|
368
|
-
box-shadow: 0 2px 10px
|
|
368
|
+
box-shadow: 0 2px 10px #00ffff80
|
|
369
369
|
}
|
|
370
370
|
|
|
371
371
|
.docmd-container {
|
|
@@ -389,23 +389,23 @@ button:active {
|
|
|
389
389
|
|
|
390
390
|
.docmd-container.callout.info {
|
|
391
391
|
border-color: var(--retro-info);
|
|
392
|
-
box-shadow: 0 0 15px
|
|
392
|
+
box-shadow: 0 0 15px #0066ff4d
|
|
393
393
|
}
|
|
394
394
|
|
|
395
395
|
.docmd-container.callout.warning {
|
|
396
396
|
border-color: var(--retro-warning);
|
|
397
|
-
box-shadow: 0 0 15px
|
|
397
|
+
box-shadow: 0 0 15px #ffb0004d
|
|
398
398
|
}
|
|
399
399
|
|
|
400
400
|
.docmd-container.callout.danger {
|
|
401
401
|
border-color: var(--retro-danger);
|
|
402
|
-
box-shadow: 0 0 15px
|
|
402
|
+
box-shadow: 0 0 15px #ff14934d
|
|
403
403
|
}
|
|
404
404
|
|
|
405
405
|
.docmd-container.callout.success,
|
|
406
406
|
.docmd-container.callout.tip {
|
|
407
407
|
border-color: var(--retro-success);
|
|
408
|
-
box-shadow: 0 0 15px
|
|
408
|
+
box-shadow: 0 0 15px #00ff414d
|
|
409
409
|
}
|
|
410
410
|
|
|
411
411
|
.docmd-tabs-nav,
|
|
@@ -461,7 +461,7 @@ th {
|
|
|
461
461
|
.docmd-container.card {
|
|
462
462
|
background: linear-gradient(145deg, var(--retro-secondary), var(--retro-bg-light));
|
|
463
463
|
border: 1px solid var(--retro-border-bright);
|
|
464
|
-
box-shadow: 0 4px 15px
|
|
464
|
+
box-shadow: 0 4px 15px #0ff3 inset 0 0 10px #00ff411a
|
|
465
465
|
}
|
|
466
466
|
|
|
467
467
|
.docmd-tabs {
|
|
@@ -472,7 +472,7 @@ th {
|
|
|
472
472
|
|
|
473
473
|
.theme-toggle-button,
|
|
474
474
|
img {
|
|
475
|
-
box-shadow: 0 0 10px
|
|
475
|
+
box-shadow: 0 0 10px #00ffff4d
|
|
476
476
|
}
|
|
477
477
|
|
|
478
478
|
.docmd-tabs::before {
|
|
@@ -514,14 +514,14 @@ th {
|
|
|
514
514
|
|
|
515
515
|
.docmd-tabs-nav-item:hover {
|
|
516
516
|
background: var(--retro-bg-light);
|
|
517
|
-
box-shadow: inset 0 0 10px
|
|
517
|
+
box-shadow: inset 0 0 10px #0ff3
|
|
518
518
|
}
|
|
519
519
|
|
|
520
520
|
.docmd-tabs-nav-item.active {
|
|
521
521
|
background: var(--retro-primary);
|
|
522
522
|
color: var(--retro-accent);
|
|
523
523
|
border-bottom: 2px solid var(--retro-accent);
|
|
524
|
-
box-shadow: 0 0 15px
|
|
524
|
+
box-shadow: 0 0 15px #00ffff80
|
|
525
525
|
}
|
|
526
526
|
|
|
527
527
|
.docmd-container.steps,
|
|
@@ -596,7 +596,7 @@ table {
|
|
|
596
596
|
font-weight: 700;
|
|
597
597
|
font-size: 1.2rem;
|
|
598
598
|
text-shadow: none;
|
|
599
|
-
box-shadow: 0 0 10px
|
|
599
|
+
box-shadow: 0 0 10px #00ffff80 inset 0 0 5px #0000004d;
|
|
600
600
|
animation: 2s ease-in-out infinite pulse-glow
|
|
601
601
|
}
|
|
602
602
|
|
|
@@ -657,11 +657,11 @@ td {
|
|
|
657
657
|
|
|
658
658
|
tr:hover {
|
|
659
659
|
background: var(--retro-bg-light);
|
|
660
|
-
box-shadow: inset 0 0 10px
|
|
660
|
+
box-shadow: inset 0 0 10px #00ff411a
|
|
661
661
|
}
|
|
662
662
|
|
|
663
663
|
html[data-theme=light] tr:hover {
|
|
664
|
-
box-shadow: inset 0 0 10px
|
|
664
|
+
box-shadow: inset 0 0 10px #2d5d2d1a
|
|
665
665
|
}
|
|
666
666
|
|
|
667
667
|
.theme-toggle-button {
|
|
@@ -676,15 +676,15 @@ html[data-theme=light] tr:hover {
|
|
|
676
676
|
.theme-toggle-button:hover {
|
|
677
677
|
background: var(--retro-accent);
|
|
678
678
|
color: var(--retro-primary);
|
|
679
|
-
box-shadow: 0 0 15px
|
|
679
|
+
box-shadow: 0 0 15px #0ff9
|
|
680
680
|
}
|
|
681
681
|
|
|
682
682
|
html[data-theme=light] .theme-toggle-button {
|
|
683
|
-
box-shadow: 0 0 10px
|
|
683
|
+
box-shadow: 0 0 10px #0066664d
|
|
684
684
|
}
|
|
685
685
|
|
|
686
686
|
html[data-theme=light] .theme-toggle-button:hover {
|
|
687
|
-
box-shadow: 0 0 15px
|
|
687
|
+
box-shadow: 0 0 15px #0669
|
|
688
688
|
}
|
|
689
689
|
|
|
690
690
|
.terminal-cursor::after {
|
|
@@ -774,7 +774,6 @@ html[data-theme=light] .theme-toggle-button:hover {
|
|
|
774
774
|
}
|
|
775
775
|
}
|
|
776
776
|
|
|
777
|
-
|
|
778
777
|
@keyframes scanlines {
|
|
779
778
|
0% {
|
|
780
779
|
transform: translateY(0)
|
|
@@ -859,10 +858,10 @@ html[data-theme=light] .theme-toggle-button:hover {
|
|
|
859
858
|
|
|
860
859
|
0%,
|
|
861
860
|
100% {
|
|
862
|
-
box-shadow: 0 0 10px
|
|
861
|
+
box-shadow: 0 0 10px #00ffff80 inset 0 0 5px #0000004d
|
|
863
862
|
}
|
|
864
863
|
|
|
865
864
|
50% {
|
|
866
|
-
box-shadow: 0 0 20px
|
|
865
|
+
box-shadow: 0 0 20px #0ffc inset 0 0 10px #00000080
|
|
867
866
|
}
|
|
868
867
|
}
|
|
@@ -1,92 +1,17 @@
|
|
|
1
|
-
/* Source file from the docmd project — https://github.com/
|
|
1
|
+
/* Source file from the docmd project — https://github.com/docmd-io/docmd */
|
|
2
2
|
|
|
3
3
|
/*
|
|
4
|
-
*
|
|
4
|
+
* Ruby Theme
|
|
5
5
|
* Inspired by the beauty of gemstones
|
|
6
6
|
* Features: Deep ruby red, elegant serif fonts, subtle gem-like effects
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
@import
|
|
10
|
-
|
|
11
|
-
.docmd-container,
|
|
12
|
-
.sidebar,
|
|
13
|
-
pre,
|
|
14
|
-
table {
|
|
15
|
-
box-shadow: var(--shadow-sm)
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
h1,
|
|
19
|
-
h2 {
|
|
20
|
-
padding-bottom: .5rem
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.sidebar nav li a.active,
|
|
24
|
-
pre {
|
|
25
|
-
border-left: 3px solid var(--ruby-primary)
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
pre,
|
|
29
|
-
table {
|
|
30
|
-
margin: 1.5em 0
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
a:hover,
|
|
34
|
-
th {
|
|
35
|
-
color: var(--ruby-primary-dark)
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.sidebar-header,
|
|
39
|
-
th {
|
|
40
|
-
border-bottom: 2px solid var(--ruby-border)
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
td,
|
|
44
|
-
th {
|
|
45
|
-
padding: .75rem 1rem
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
.content-area a:not(.button):not(.no-underline)::after,
|
|
49
|
-
.docmd-container::before,
|
|
50
|
-
h1::after {
|
|
51
|
-
background: linear-gradient(90deg, var(--ruby-primary), var(--ruby-accent));
|
|
52
|
-
position: absolute;
|
|
53
|
-
left: 0
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.callout,
|
|
57
|
-
.docmd-container,
|
|
58
|
-
.steps,
|
|
59
|
-
.steps h4,
|
|
60
|
-
a,
|
|
61
|
-
h1 {
|
|
62
|
-
position: relative
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.callout-info .callout-title,
|
|
66
|
-
.docmd-container.steps-reset ol.steps-list>li.step-item::before,
|
|
67
|
-
.sidebar nav li a:hover {
|
|
68
|
-
color: var(--ruby-primary)
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.card .card-content,
|
|
72
|
-
.card .card-title {
|
|
73
|
-
padding: 1rem 1.5rem
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
figure img,
|
|
77
|
-
img {
|
|
78
|
-
max-width: 100%
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
.image-gallery img,
|
|
82
|
-
.image-gallery.zoom img {
|
|
83
|
-
transition: transform .3s
|
|
84
|
-
}
|
|
9
|
+
@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Source+Sans+Pro:wght@300;400;600;700&display=swap";
|
|
85
10
|
|
|
86
11
|
:root {
|
|
87
12
|
--ruby-font-family-sans: "Source Sans Pro", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
|
88
13
|
--ruby-font-family-serif: "Playfair Display", Georgia, "Times New Roman", serif;
|
|
89
|
-
--ruby-font-family-mono: "JetBrains Mono",
|
|
14
|
+
--ruby-font-family-mono: "JetBrains Mono", SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace
|
|
90
15
|
}
|
|
91
16
|
|
|
92
17
|
:root[data-theme=light] {
|
|
@@ -98,7 +23,7 @@ img {
|
|
|
98
23
|
--ruby-text: #2d2d2d;
|
|
99
24
|
--ruby-text-light: #5a5a5a;
|
|
100
25
|
--ruby-text-lightest: #757575;
|
|
101
|
-
--ruby-background: #
|
|
26
|
+
--ruby-background: #fff;
|
|
102
27
|
--ruby-background-alt: #fafafa;
|
|
103
28
|
--ruby-border: #e0e0e0;
|
|
104
29
|
--ruby-border-light: #f0f0f0;
|
|
@@ -114,9 +39,9 @@ img {
|
|
|
114
39
|
--code-text: var(--ruby-primary-dark);
|
|
115
40
|
--header-bg: var(--ruby-background);
|
|
116
41
|
--header-border: var(--ruby-border);
|
|
117
|
-
--shadow-sm: 0 2px 4px
|
|
118
|
-
--shadow-md: 0 4px 8px
|
|
119
|
-
--shadow-lg: 0 8px 16px
|
|
42
|
+
--shadow-sm: 0 2px 4px #b300000d;
|
|
43
|
+
--shadow-md: 0 4px 8px #b300001a;
|
|
44
|
+
--shadow-lg: 0 8px 16px #b3000026;
|
|
120
45
|
--image-border-color: var(--ruby-border);
|
|
121
46
|
--image-shadow: var(--shadow-md);
|
|
122
47
|
--image-caption-bg: var(--ruby-background-alt);
|
|
@@ -124,7 +49,7 @@ img {
|
|
|
124
49
|
--image-hover-transform: translateY(-3px);
|
|
125
50
|
--image-hover-shadow: var(--shadow-lg);
|
|
126
51
|
--image-border-radius: 6px;
|
|
127
|
-
--image-transition: all
|
|
52
|
+
--image-transition: all .3s ease
|
|
128
53
|
}
|
|
129
54
|
|
|
130
55
|
:root[data-theme=dark] {
|
|
@@ -134,7 +59,7 @@ img {
|
|
|
134
59
|
--ruby-accent: #ce93d8;
|
|
135
60
|
--ruby-accent-light: #2a1a2a;
|
|
136
61
|
--ruby-text: #f0f0f0;
|
|
137
|
-
--ruby-text-light:
|
|
62
|
+
--ruby-text-light: silver;
|
|
138
63
|
--ruby-text-lightest: #a0a0a0;
|
|
139
64
|
--ruby-background: #1a0a0a;
|
|
140
65
|
--ruby-background-alt: #2a1515;
|
|
@@ -152,17 +77,17 @@ img {
|
|
|
152
77
|
--code-text: var(--ruby-text);
|
|
153
78
|
--header-bg: var(--ruby-background);
|
|
154
79
|
--header-border: var(--ruby-border);
|
|
155
|
-
--shadow-sm: 0 2px 4px
|
|
156
|
-
--shadow-md: 0 4px 8px
|
|
157
|
-
--shadow-lg: 0 8px 16px
|
|
80
|
+
--shadow-sm: 0 2px 4px #0000004d;
|
|
81
|
+
--shadow-md: 0 4px 8px #0006;
|
|
82
|
+
--shadow-lg: 0 8px 16px #00000080;
|
|
158
83
|
--image-border-color: var(--ruby-border);
|
|
159
|
-
--image-shadow: 0 4px 8px
|
|
84
|
+
--image-shadow: 0 4px 8px #00000080;
|
|
160
85
|
--image-caption-bg: var(--ruby-background-alt);
|
|
161
86
|
--image-caption-text: var(--ruby-text-light);
|
|
162
87
|
--image-hover-transform: translateY(-3px);
|
|
163
|
-
--image-hover-shadow: 0 6px 12px
|
|
88
|
+
--image-hover-shadow: 0 6px 12px #000000b3;
|
|
164
89
|
--image-border-radius: 6px;
|
|
165
|
-
--image-transition: all
|
|
90
|
+
--image-transition: all .3s ease
|
|
166
91
|
}
|
|
167
92
|
|
|
168
93
|
body {
|
|
@@ -171,6 +96,81 @@ body {
|
|
|
171
96
|
letter-spacing: .01em
|
|
172
97
|
}
|
|
173
98
|
|
|
99
|
+
.docmd-container,
|
|
100
|
+
.sidebar,
|
|
101
|
+
pre,
|
|
102
|
+
table {
|
|
103
|
+
box-shadow: var(--shadow-sm)
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
h1,
|
|
107
|
+
h2 {
|
|
108
|
+
padding-bottom: .5rem
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.sidebar nav li a.active,
|
|
112
|
+
pre {
|
|
113
|
+
border-left: 3px solid var(--ruby-primary)
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
pre,
|
|
117
|
+
table {
|
|
118
|
+
margin: 1.5em 0
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
a:hover,
|
|
122
|
+
th {
|
|
123
|
+
color: var(--ruby-primary-dark)
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.sidebar-header,
|
|
127
|
+
th {
|
|
128
|
+
border-bottom: 2px solid var(--ruby-border)
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
td,
|
|
132
|
+
th {
|
|
133
|
+
padding: .75rem 1rem
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.content-area a:not(.button):not(.no-underline)::after,
|
|
137
|
+
.docmd-container::before,
|
|
138
|
+
h1::after {
|
|
139
|
+
background: linear-gradient(90deg, var(--ruby-primary), var(--ruby-accent));
|
|
140
|
+
position: absolute;
|
|
141
|
+
left: 0
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.callout,
|
|
145
|
+
.docmd-container,
|
|
146
|
+
.steps,
|
|
147
|
+
.steps h4,
|
|
148
|
+
a,
|
|
149
|
+
h1 {
|
|
150
|
+
position: relative
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
.callout-info .callout-title,
|
|
154
|
+
.docmd-container.steps-reset ol.steps-list>li.step-item::before,
|
|
155
|
+
.sidebar nav li a:hover {
|
|
156
|
+
color: var(--ruby-primary)
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
.card .card-content,
|
|
160
|
+
.card .card-title {
|
|
161
|
+
padding: 1rem 1.5rem
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
figure img,
|
|
165
|
+
img {
|
|
166
|
+
max-width: 100%
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
.image-gallery img,
|
|
170
|
+
.image-gallery.zoom img {
|
|
171
|
+
transition: transform .3s
|
|
172
|
+
}
|
|
173
|
+
|
|
174
174
|
.callout-title,
|
|
175
175
|
.card .card-title,
|
|
176
176
|
.steps h4,
|
|
@@ -306,7 +306,7 @@ table {
|
|
|
306
306
|
table {
|
|
307
307
|
width: 100%;
|
|
308
308
|
border-collapse: separate;
|
|
309
|
-
border-spacing:
|
|
309
|
+
border-spacing: 0
|
|
310
310
|
}
|
|
311
311
|
|
|
312
312
|
th {
|