@mgks/docmd 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +2 -4
  2. package/assets/css/welcome.css +62 -374
  3. package/assets/images/preview-dark-1.webp +0 -0
  4. package/assets/images/preview-dark-2.webp +0 -0
  5. package/assets/images/preview-dark-3.webp +0 -0
  6. package/assets/images/preview-light-1.webp +0 -0
  7. package/assets/images/preview-light-2.webp +0 -0
  8. package/assets/images/preview-light-3.webp +0 -0
  9. package/config.js +31 -2
  10. package/docs/configuration.md +72 -3
  11. package/docs/content/containers/buttons.md +88 -0
  12. package/docs/content/containers/callouts.md +154 -0
  13. package/docs/content/containers/cards.md +93 -0
  14. package/docs/content/containers/index.md +35 -0
  15. package/docs/content/containers/nested-containers.md +329 -0
  16. package/docs/content/containers/steps.md +175 -0
  17. package/docs/content/containers/tabs.md +228 -0
  18. package/docs/content/frontmatter.md +2 -2
  19. package/docs/index.md +6 -9
  20. package/docs/plugins/seo.md +2 -0
  21. package/docs/theming/available-themes.md +17 -2
  22. package/docs/theming/light-dark-mode.md +12 -3
  23. package/package.json +9 -3
  24. package/src/assets/css/docmd-main.css +934 -573
  25. package/src/assets/css/docmd-theme-retro.css +812 -0
  26. package/src/assets/css/docmd-theme-ruby.css +26 -13
  27. package/src/assets/css/docmd-theme-sky.css +606 -605
  28. package/src/assets/js/docmd-image-lightbox.js +1 -3
  29. package/src/assets/js/docmd-main.js +97 -0
  30. package/src/commands/build.js +1 -1
  31. package/src/commands/init.js +19 -1
  32. package/src/core/file-processor.js +626 -363
  33. package/src/core/html-generator.js +20 -30
  34. package/src/plugins/seo.js +4 -0
  35. package/src/templates/layout.ejs +33 -7
  36. package/assets/images/preview-dark-1.png +0 -0
  37. package/assets/images/preview-dark-2.png +0 -0
  38. package/assets/images/preview-dark-3.png +0 -0
  39. package/assets/images/preview-light-1.png +0 -0
  40. package/assets/images/preview-light-2.png +0 -0
  41. package/assets/images/preview-light-3.png +0 -0
  42. package/docs/content/custom-containers.md +0 -129
  43. package/src/assets/js/docmd-theme-toggle.js +0 -59
@@ -1,651 +1,652 @@
1
1
  /* theme-sky.css - Sky theme for docmd */
2
2
 
3
3
  :root [data-theme="light"] {
4
- /* Font family */
5
- --font-family-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
6
- --font-family-mono: 'JetBrains Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
7
-
8
- /* Color palette */
9
- --sky-primary: #0097ff;
10
- --sky-primary-light: #e5f4ff;
11
- --sky-primary-dark: #0078cc;
12
- --sky-text: #1a1f36;
13
- --sky-text-light: #4a5568;
14
- --sky-text-lightest: #718096;
15
- --sky-background: #ffffff;
16
- --sky-background-alt: #f9fafb;
17
- --sky-border: #e2e8f0;
18
- --sky-border-light: #edf2f7;
19
-
20
- /* Apply colors to CSS variables */
21
- --bg-color: var(--sky-background);
22
- --text-color: var(--sky-text);
23
- --sidebar-bg: #f7fafc;
24
- --sidebar-text: var(--sky-text-light);
25
- --sidebar-link-active-bg: #e5f4ff;
26
- --sidebar-link-active-text: var(--sky-primary);
27
- --link-color: var(--sky-primary);
28
- --border-color: var(--sky-border);
29
- --code-bg: var(--sky-primary-light);
30
- --code-text: var(--sky-primary-dark);
31
- --header-bg: var(--sky-background);
32
- --header-border: var(--sky-border);
33
-
34
- /* Box shadows */
35
- --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
36
- --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
37
- --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
38
-
39
- /* Image styling variables */
40
- --image-border-color: var(--sky-border);
41
- --image-shadow: var(--shadow-md);
42
- --image-caption-bg: var(--sky-background-alt);
43
- --image-caption-text: var(--sky-text-light);
44
- --image-hover-transform: translateY(-2px);
45
- --image-hover-shadow: var(--shadow-lg);
46
- --image-border-radius: 8px;
47
- --image-transition: all 0.3s ease;
48
- }
49
-
50
- /* Dark mode */
51
- :root [data-theme="dark"] {
52
- /* Color palette dark */
53
- --sky-primary: #3b82f6;
54
- --sky-primary-light: #1e293b;
55
- --sky-primary-dark: #60a5fa;
56
- --sky-text: #f1f5f9;
57
- --sky-text-light: #cbd5e1;
58
- --sky-text-lightest: #94a3b8;
59
- --sky-background: #0f172a;
60
- --sky-background-alt: #1e293b;
61
- --sky-border: #334155;
62
- --sky-border-light: #1e293b;
63
-
64
- /* Apply colors to CSS variables */
65
- --bg-color: var(--sky-background);
66
- --text-color: var(--sky-text);
67
- --sidebar-bg: #0f172a;
68
- --sidebar-text: var(--sky-text-light);
69
- --sidebar-link-active-bg: #1e293b;
70
- --sidebar-link-active-text: var(--sky-primary);
71
- --link-color: var(--sky-primary);
72
- --border-color: var(--sky-border);
73
- --code-bg: var(--sky-primary-light);
74
- --code-text: var(--sky-text);
75
- --header-bg: var(--sky-background);
76
- --header-border: var(--sky-border);
77
-
78
- /* Box shadows for dark mode */
79
- --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
80
- --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
81
- --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2);
82
-
83
- /* Image styling variables for dark mode */
84
- --image-border-color: var(--sky-border);
85
- --image-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
86
- --image-caption-bg: var(--sky-background-alt);
87
- --image-caption-text: var(--sky-text-light);
88
- --image-hover-transform: translateY(-2px);
89
- --image-hover-shadow: 0 6px 12px rgba(0, 0, 0, 0.7);
90
- --image-border-radius: 8px;
91
- --image-transition: all 0.3s ease;
92
- }
93
-
94
- /* Apply theme styles */
95
-
96
- /* Typography improvements */
97
- body {
98
- font-feature-settings: "salt", "ss01", "ss02";
99
- letter-spacing: -0.01em;
100
- }
101
-
102
- h1, h2, h3, h4, h5, h6 {
103
- font-weight: 600;
104
- line-height: 1.3;
105
- margin-top: 2em;
106
- margin-bottom: 0.5em;
107
- color: var(--sky-text);
108
- }
109
-
110
- h1 {
111
- font-size: 2.25rem;
112
- font-weight: 700;
113
- margin-top: 0;
114
- }
115
-
116
- h2 {
117
- font-size: 1.75rem;
118
- border-bottom: 1px solid var(--sky-border-light);
119
- padding-bottom: 0.5rem;
120
- }
121
-
122
- h3 {
123
- font-size: 1.5rem;
124
- }
125
-
126
- h4 {
127
- font-size: 1.25rem;
128
- }
129
-
130
- a {
131
- color: var(--link-color);
132
- text-decoration: none;
133
- transition: color 0.2s ease;
134
- }
135
-
136
- a:hover {
137
- text-decoration: underline;
138
- }
139
-
140
- p {
141
- margin: .5em 0;
142
- padding: .5em 0;
143
- line-height: 1.7;
144
-
145
- }
146
-
147
- /* Sidebar refinements */
148
- .sidebar {
149
- box-shadow: var(--shadow-sm);
150
- }
151
-
152
- .sidebar nav li a {
153
- border-radius: 6px;
154
- margin-bottom: 2px;
155
- transition: all 0.2s ease;
156
- }
157
-
158
- .sidebar nav li a:hover {
159
- background-color: var(--sidebar-link-active-bg);
160
- color: var(--sidebar-link-active-text);
161
- }
162
-
163
- .sidebar nav li a.active {
164
- background-color: var(--sidebar-link-active-bg);
165
- color: var(--sidebar-link-active-text);
166
- font-weight: 500;
167
- }
168
-
169
- /* Content area */
170
- .content-area {
171
- padding: 2.5rem 5%;
172
-
173
- }
174
-
175
- /* Code blocks */
176
- pre {
177
- background-color: var(--code-bg);
178
- border-radius: 8px;
179
- margin: 1.5em 0;
180
- padding: 1.25em;
4
+ /* Font family */
5
+ --font-family-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
6
+ --font-family-mono: 'JetBrains Mono', 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
7
+
8
+ /* Color palette */
9
+ --sky-primary: #0097ff;
10
+ --sky-primary-light: #e5f4ff;
11
+ --sky-primary-dark: #0078cc;
12
+ --sky-text: #1a1f36;
13
+ --sky-text-light: #4a5568;
14
+ --sky-text-lightest: #718096;
15
+ --sky-background: #ffffff;
16
+ --sky-background-alt: #f9fafb;
17
+ --sky-border: #e2e8f0;
18
+ --sky-border-light: #edf2f7;
19
+
20
+ /* Apply colors to CSS variables */
21
+ --bg-color: var(--sky-background);
22
+ --text-color: var(--sky-text);
23
+ --sidebar-bg: #f7fafc;
24
+ --sidebar-text: var(--sky-text-light);
25
+ --sidebar-link-active-bg: #e5f4ff;
26
+ --sidebar-link-active-text: var(--sky-primary);
27
+ --link-color: var(--sky-primary);
28
+ --border-color: var(--sky-border);
29
+ --code-bg: var(--sky-primary-light);
30
+ --code-text: var(--sky-primary-dark);
31
+ --header-bg: var(--sky-background);
32
+ --header-border: var(--sky-border);
33
+
34
+ /* Box shadows */
35
+ --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
36
+ --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
37
+ --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
38
+
39
+ /* Image styling variables */
40
+ --image-border-color: var(--sky-border);
41
+ --image-shadow: var(--shadow-md);
42
+ --image-caption-bg: var(--sky-background-alt);
43
+ --image-caption-text: var(--sky-text-light);
44
+ --image-hover-transform: translateY(-2px);
45
+ --image-hover-shadow: var(--shadow-lg);
46
+ --image-border-radius: 8px;
47
+ --image-transition: all 0.3s ease;
48
+ }
49
+
50
+ /* Dark mode */
51
+ :root [data-theme="dark"] {
52
+ /* Color palette dark */
53
+ --sky-primary: #3b82f6;
54
+ --sky-primary-light: #1e293b;
55
+ --sky-primary-dark: #60a5fa;
56
+ --sky-text: #f1f5f9;
57
+ --sky-text-light: #cbd5e1;
58
+ --sky-text-lightest: #94a3b8;
59
+ --sky-background: #0f172a;
60
+ --sky-background-alt: #1e293b;
61
+ --sky-border: #334155;
62
+ --sky-border-light: #1e293b;
63
+
64
+ /* Apply colors to CSS variables */
65
+ --bg-color: var(--sky-background);
66
+ --text-color: var(--sky-text);
67
+ --sidebar-bg: #0f172a;
68
+ --sidebar-text: var(--sky-text-light);
69
+ --sidebar-link-active-bg: #1e293b;
70
+ --sidebar-link-active-text: var(--sky-primary);
71
+ --link-color: var(--sky-primary);
72
+ --border-color: var(--sky-border);
73
+ --code-bg: var(--sky-primary-light);
74
+ --code-text: var(--sky-text);
75
+ --header-bg: var(--sky-background);
76
+ --header-border: var(--sky-border);
77
+
78
+ /* Box shadows for dark mode */
79
+ --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
80
+ --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
81
+ --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -2px rgba(0, 0, 0, 0.2);
82
+
83
+ /* Image styling variables for dark mode */
84
+ --image-border-color: var(--sky-border);
85
+ --image-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);
86
+ --image-caption-bg: var(--sky-background-alt);
87
+ --image-caption-text: var(--sky-text-light);
88
+ --image-hover-transform: translateY(-2px);
89
+ --image-hover-shadow: 0 6px 12px rgba(0, 0, 0, 0.7);
90
+ --image-border-radius: 8px;
91
+ --image-transition: all 0.3s ease;
92
+ }
93
+
94
+ /* Apply theme styles */
95
+
96
+ /* Typography improvements */
97
+ body {
98
+ font-feature-settings: "salt", "ss01", "ss02";
99
+ letter-spacing: -0.01em;
100
+ }
101
+
102
+ h1, h2, h3, h4, h5, h6 {
103
+ font-weight: 600;
104
+ line-height: 1.3;
105
+ margin-top: 2em;
106
+ margin-bottom: 0.5em;
107
+ color: var(--sky-text);
108
+ }
109
+
110
+ h1 {
111
+ font-size: 2.25rem;
112
+ font-weight: 700;
113
+ margin-top: 0;
114
+ }
115
+
116
+ h2 {
117
+ font-size: 1.75rem;
118
+ border-bottom: 1px solid var(--sky-border-light);
119
+ padding-bottom: 0.5rem;
120
+ }
121
+
122
+ h3 {
123
+ font-size: 1.5rem;
124
+ }
125
+
126
+ h4 {
127
+ font-size: 1.25rem;
128
+ }
129
+
130
+ a {
131
+ color: var(--link-color);
132
+ text-decoration: none;
133
+ transition: color 0.2s ease;
134
+ }
135
+
136
+ a:hover {
137
+ text-decoration: underline;
138
+ }
139
+
140
+ p {
141
+ margin: .5em 0;
142
+ padding: .5em 0;
143
+ line-height: 1.7;
144
+
145
+ }
146
+
147
+ /* Sidebar refinements */
148
+ .sidebar {
149
+ box-shadow: var(--shadow-sm);
150
+ }
151
+
152
+ .sidebar nav li a {
153
+ border-radius: 6px;
154
+ margin-bottom: 2px;
155
+ transition: all 0.2s ease;
156
+ }
157
+
158
+ .sidebar nav li a:hover {
159
+ background-color: var(--sidebar-link-active-bg);
160
+ color: var(--sidebar-link-active-text);
161
+ }
162
+
163
+ .sidebar nav li a.active {
164
+ background-color: var(--sidebar-link-active-bg);
165
+ color: var(--sidebar-link-active-text);
166
+ font-weight: 500;
167
+ }
168
+
169
+ /* Content area */
170
+ .content-area {
171
+ padding: 2.5rem 5%;
172
+
173
+ }
174
+
175
+ /* Code blocks */
176
+ pre {
177
+ background-color: var(--code-bg);
178
+ border-radius: 8px;
179
+ margin: 1.5em 0;
180
+ padding: 1.25em;
181
+ box-shadow: var(--shadow-sm);
182
+ }
183
+
184
+ code {
185
+ font-size: 0.9em;
186
+ border-radius: 4px;
187
+ padding: 0.2em 0.4em;
188
+ }
189
+
190
+ /* Tables */
191
+ table {
192
+ width: 100%;
193
+ border-collapse: separate;
194
+ border-spacing: 0;
195
+ margin: 1.5em 0;
196
+ border-radius: 8px;
197
+ overflow: hidden;
198
+ box-shadow: var(--shadow-sm);
199
+ }
200
+
201
+ th {
202
+ background-color: var(--sky-background-alt);
203
+ text-align: left;
204
+ font-weight: 600;
205
+ padding: 0.75rem 1rem;
206
+ }
207
+
208
+ td {
209
+ padding: 0.75rem 1rem;
210
+ border-top: 1px solid var(--sky-border-light);
211
+ }
212
+
213
+ tr:hover {
214
+ background-color: var(--sky-background-alt);
215
+ }
216
+
217
+ /* Custom container styling for Sky theme */
218
+ .docmd-container {
219
+ padding: .5rem 1.5rem;
220
+ margin: 1.75rem 0;
221
+ border-radius: 10px;
222
+ border: 1px solid var(--sky-border-light);
223
+ background-color: var(--sky-background);
181
224
  box-shadow: var(--shadow-sm);
182
- }
183
-
184
- code {
185
- font-size: 0.9em;
186
- border-radius: 4px;
187
- padding: 0.2em 0.4em;
188
- }
189
-
190
- /* Tables */
191
- table {
192
- width: 100%;
193
- border-collapse: separate;
194
- border-spacing: 0;
195
- margin: 1.5em 0;
196
- border-radius: 8px;
225
+
226
+ }
227
+
228
+ /* Callouts */
229
+ .callout {
230
+ position: relative;
231
+ border: none;
232
+ border-left: 5px solid;
233
+ background-color: var(--card-bg);
234
+
235
+ }
236
+
237
+ .callout-title {
238
+ font-weight: 600;
239
+ margin-bottom: 0.75em;
240
+ display: flex;
241
+ align-items: center;
242
+ }
243
+
244
+ .callout-title::before {
245
+ margin-right: 0.5rem;
246
+ font-size: 1.1em;
247
+ }
248
+
249
+ .callout-info {
250
+ border-left-color: var(--sky-primary);
251
+ }
252
+
253
+ .callout-info .callout-title::before {
254
+ content: "ℹ️";
255
+ }
256
+
257
+ .callout-warning {
258
+ border-left-color: #f59e0b;
259
+ }
260
+
261
+ .callout-warning .callout-title::before {
262
+ content: "⚠️";
263
+ }
264
+
265
+ .callout-tip {
266
+ border-left-color: #10b981;
267
+ }
268
+
269
+ .callout-tip .callout-title::before {
270
+ content: "💡";
271
+ }
272
+
273
+ .callout-danger {
274
+ border-left-color: #ef4444;
275
+ }
276
+
277
+ .callout-danger .callout-title::before {
278
+ content: "🚨";
279
+ }
280
+
281
+ .callout-success {
282
+ border-left-color: #10b981;
283
+ }
284
+
285
+ .callout-success .callout-title::before {
286
+ content: "✅";
287
+ }
288
+
289
+ /* Cards */
290
+ .card {
291
+ border: 1px solid var(--sky-border);
292
+ background-color: var(--card-bg);
293
+ box-shadow: var(--text-color);
294
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
197
295
  overflow: hidden;
198
- box-shadow: var(--shadow-sm);
199
- }
200
-
201
- th {
202
- background-color: var(--sky-background-alt);
203
- text-align: left;
204
- font-weight: 600;
205
- padding: 0.75rem 1rem;
206
- }
207
-
208
- td {
209
- padding: 0.75rem 1rem;
210
- border-top: 1px solid var(--sky-border-light);
211
- }
212
-
213
- tr:hover {
214
- background-color: var(--sky-background-alt);
215
- }
216
-
217
- /* Custom container styling for Sky theme */
218
- .docmd-container {
219
- padding: .5rem 1.5rem;
220
- margin: 1.75rem 0;
221
- border-radius: 10px;
222
- border: 1px solid var(--sky-border-light);
223
- background-color: var(--sky-background);
224
- box-shadow: var(--shadow-sm);
225
-
226
- }
227
-
228
- /* Callouts */
229
- .callout {
230
- position: relative;
231
- border: none;
232
- border-left: 5px solid;
233
- background-color: var(--card-bg);
234
-
235
- }
236
-
237
- .callout-title {
238
- font-weight: 600;
239
- margin-bottom: 0.75em;
240
296
  display: flex;
241
- align-items: center;
242
- }
243
-
244
- .callout-title::before {
245
- margin-right: 0.5rem;
246
- font-size: 1.1em;
247
- }
248
-
249
- .callout-info {
250
- border-left-color: var(--sky-primary);
251
- }
252
-
253
- .callout-info .callout-title::before {
254
- content: "ℹ️";
255
- }
256
-
257
- .callout-warning {
258
- border-left-color: #f59e0b;
259
- }
260
-
261
- .callout-warning .callout-title::before {
262
- content: "⚠️";
263
- }
264
-
265
- .callout-tip {
266
- border-left-color: #10b981;
267
- }
268
-
269
- .callout-tip .callout-title::before {
270
- content: "💡";
271
- }
272
-
273
- .callout-danger {
274
- border-left-color: #ef4444;
275
- }
276
-
277
- .callout-danger .callout-title::before {
278
- content: "🚨";
279
- }
280
-
281
- .callout-success {
282
- border-left-color: #10b981;
283
- }
284
-
285
- .callout-success .callout-title::before {
286
- content: "✅";
287
- }
288
-
289
- /* Cards */
290
- .card {
291
- border: 1px solid var(--sky-border);
292
- background-color: var(--card-bg);
293
- box-shadow: var(--text-color);
294
- transition: transform 0.2s ease, box-shadow 0.2s ease;
295
- overflow: hidden;
296
- display: flex;
297
- flex-direction: column;
298
-
299
- }
300
-
301
- .card:hover {
302
- transform: translateY(-2px);
303
- box-shadow: var(--shadow-lg);
304
- }
305
-
306
- .card .card-title {
307
- padding: .5rem 1.5rem 1rem;
308
- border-bottom: 1px solid var(--sky-border);
309
- font-weight: 600;
310
- margin-top: 0;
311
-
312
- }
313
-
314
- .card .card-content {
315
- flex: 1;
316
- padding: .25rem;
317
-
318
- }
319
-
320
- .card .card-content > *:first-child {
297
+ flex-direction: column;
298
+
299
+ }
300
+
301
+ .card:hover {
302
+ transform: translateY(-2px);
303
+ box-shadow: var(--shadow-lg);
304
+ }
305
+
306
+ .card .card-title {
307
+ padding: .5rem 1.5rem 1rem;
308
+ border-bottom: 1px solid var(--sky-border);
309
+ font-weight: 600;
321
310
  margin-top: 0;
322
- }
323
-
324
- .card .card-content > *:last-child {
325
- margin-bottom: 0;
326
- }
327
-
328
- /* Steps - Mintlify-inspired connected style */
329
- .steps {
330
- counter-reset: step-counter;
331
- border: none;
332
- background-color: transparent;
333
- box-shadow: none;
334
- padding: 0;
311
+
312
+ }
313
+
314
+ .card .card-content {
315
+ flex: 1;
316
+ padding: .25rem;
317
+
318
+ }
319
+
320
+ .card .card-content > *:first-child {
321
+ margin-top: 0;
322
+ }
323
+
324
+ .card .card-content > *:last-child {
325
+ margin-bottom: 0;
326
+ }
327
+
328
+ /* Steps - Mintlify-inspired connected style */
329
+ .steps {
330
+ counter-reset: step-counter;
331
+ border: none;
332
+ background-color: transparent;
333
+ box-shadow: none;
334
+ padding: 0;
335
+ position: relative;
336
+ margin-left: 1rem;
337
+ }
338
+
339
+ /* The vertical line connecting steps */
340
+ .steps::before {
341
+ content: '';
342
+ position: absolute;
343
+ top: 0;
344
+ bottom: 0rem !important;
345
+ left: 1.5rem !important;
346
+ width: 3px !important;
347
+ background-color: var(--sky-border);
348
+ transform: translateX(-50%);
349
+ z-index: 0;
350
+
351
+ }
352
+
353
+ .steps .step {
335
354
  position: relative;
336
- margin-left: 1rem;
337
- }
338
-
339
- /* The vertical line connecting steps */
340
- .steps::before {
341
- content: '';
342
- position: absolute;
343
- top: 0;
344
- bottom: 0;
345
- left: .5rem;
346
- width: 2px;
347
- background-color: var(--sky-border);
348
- transform: translateX(-50%);
349
- z-index: 0;
350
-
351
- }
352
-
353
- .steps .step {
354
- position: relative;
355
- padding: .5rem 2.5em;
356
- border-radius: 10px;
357
- margin-bottom: 1em;
358
- display: block;
359
- background-color: var(--card-bg);
360
-
361
- }
362
-
363
- .steps .step:last-child {
364
- padding-bottom: 0;
365
- }
366
-
367
- /* Fix step headers */
368
- .steps h4,
369
- .steps ol li:first-child,
370
- .steps ol li strong:first-child {
371
- position: relative;
372
- counter-increment: step-counter;
373
- margin-bottom: 1rem;
374
- font-weight: 600;
375
- font-size: 1.1rem;
376
- display: block;
377
-
378
- }
379
-
380
- .steps h4::before,
381
- .steps ol li::before {
382
- content: counter(step-counter);
355
+ padding: .5rem 2.5em;
356
+ border-radius: 10px;
357
+ margin-bottom: 1em;
358
+ display: block;
359
+ background-color: var(--card-bg);
360
+
361
+ }
362
+
363
+ .steps .step:last-child {
364
+ padding-bottom: 0;
365
+ }
366
+
367
+ /* Fix step headers */
368
+ .steps h4,
369
+ .steps ol li:first-child,
370
+ .steps ol li strong:first-child {
371
+ position: relative;
372
+ counter-increment: step-counter;
373
+ margin-bottom: 1rem;
374
+ font-weight: 600;
375
+ font-size: 1.1rem;
376
+ display: block;
377
+
378
+ }
379
+
380
+ .steps h4::before,
381
+ .steps ol li::before {
382
+ content: counter(list-counter) !important;
383
383
  position: absolute;
384
- left: -2.5rem;
385
- top: 0;
384
+ left: -2.55rem;
385
+ top: .5rem;
386
386
  width: 2rem;
387
387
  height: 2rem;
388
388
  background-color: var(--sky-primary);
389
- color: white;
389
+ color: #fff !important;
390
390
  border-radius: 50%;
391
391
  display: flex;
392
392
  align-items: center;
393
393
  justify-content: center;
394
- font-size: 0.9rem;
395
- font-weight: 600;
394
+ font-size: 1rem !important;
395
+ font-weight: 500 !important;
396
396
  z-index: 1;
397
- }
398
-
399
- /* Step content container */
400
- .step-content {
401
- display: block;
402
- margin-top: 0.5rem;
403
- margin-bottom: 1rem;
404
- }
405
-
406
- .step-content > p,
407
- .step-content > div,
408
- .step-content > pre {
409
- display: block;
410
- margin-top: 0.5rem;
411
- margin-bottom: 1rem;
412
- }
413
-
414
- /* Additional styling for ordered lists in steps */
415
- .steps ol {
416
- list-style: none;
417
- padding-left: 0;
418
- margin-left: 0;
419
- display: block;
420
- }
421
-
422
- .steps ol li {
423
- position: relative;
424
- margin-bottom: 1rem;
425
- display: block;
426
- }
427
-
428
- /* Ensure the step number appears correctly */
429
- .steps .step h4 {
397
+
398
+ }
399
+
400
+ /* Step content container */
401
+ .step-content {
402
+ display: block;
403
+ margin-top: 0.5rem;
404
+ margin-bottom: 1rem;
405
+ }
406
+
407
+ .step-content > p,
408
+ .step-content > div,
409
+ .step-content > pre {
410
+ display: block;
411
+ margin-top: 0.5rem;
412
+ margin-bottom: 1rem;
413
+ }
414
+
415
+ /* Additional styling for ordered lists in steps */
416
+ .steps ol {
417
+ list-style: none;
418
+ padding-left: 0;
419
+ margin-left: 0;
420
+ display: block;
421
+ }
422
+
423
+ .steps ol li {
424
+ position: relative;
425
+ margin-bottom: 1rem;
426
+ display: block;
427
+ }
428
+
429
+ /* Ensure the step number appears correctly */
430
+ .steps .step h4 {
431
+ display: block;
432
+ font-weight: 600;
433
+ margin-bottom: 1rem;
434
+ }
435
+
436
+ /* Ensure content after the heading appears properly */
437
+ .steps .step > p,
438
+ .steps .step > div,
439
+ .steps .step > pre {
430
440
  display: block;
431
- font-weight: 600;
441
+
442
+ }
443
+
444
+ /* Fix for numerical steps in ordered lists */
445
+ .steps .step ol {
446
+ counter-reset: none;
447
+ list-style: decimal;
448
+ padding-left: 1.5rem;
449
+ margin-top: 0.5rem;
450
+ display: block;
451
+ }
452
+
453
+ .steps .step ol li {
454
+ padding-left: 0;
455
+ margin-bottom: 0.5rem;
456
+ display: list-item;
457
+ }
458
+
459
+ /* Remove the pseudo-element from nested list items */
460
+ .steps .step ol li::before {
461
+ display: none;
462
+ }
463
+
464
+ .steps pre {
465
+ margin-top: 1rem;
432
466
  margin-bottom: 1rem;
467
+
468
+ }
469
+
470
+ .steps ol + * {
471
+ margin-top: 1rem;
472
+
473
+ }
474
+
475
+ /* Buttons */
476
+ button, .button {
477
+ padding: 0.5rem 1rem;
478
+ background-color: var(--sky-primary);
479
+ color: white;
480
+ border: none;
481
+ border-radius: 6px;
482
+ font-weight: 500;
483
+ cursor: pointer;
484
+ transition: background-color 0.2s ease;
485
+ }
486
+
487
+ button:hover, .button:hover {
488
+ background-color: var(--sky-primary-dark);
489
+ }
490
+
491
+ /* Theme toggle improvements */
492
+ .theme-toggle-button {
493
+ background-color: var(--sky-background-alt);
494
+ border-color: var(--sky-border-light);
495
+ border-radius: 6px;
496
+ transition: all 0.2s ease;
497
+ }
498
+
499
+ .theme-toggle-button:hover {
500
+ background-color: var(--sky-primary-light);
501
+ }
502
+
503
+ /* Mobile responsiveness improvements */
504
+ @media (max-width: 768px) {
505
+ .content-area {
506
+ padding: 1.5rem 1rem;
433
507
  }
434
508
 
435
- /* Ensure content after the heading appears properly */
436
- .steps .step > p,
437
- .steps .step > div,
438
- .steps .step > pre {
439
- display: block;
440
-
441
- }
442
-
443
- /* Fix for numerical steps in ordered lists */
444
- .steps .step ol {
445
- counter-reset: none;
446
- list-style: decimal;
447
- padding-left: 1.5rem;
448
- margin-top: 0.5rem;
449
- display: block;
450
- }
451
-
452
- .steps .step ol li {
453
- padding-left: 0;
454
- margin-bottom: 0.5rem;
455
- display: list-item;
456
- }
457
-
458
- /* Remove the pseudo-element from nested list items */
459
- .steps .step ol li::before {
460
- display: none;
461
- }
462
-
463
- .steps pre {
464
- margin-top: 1rem;
465
- margin-bottom: 1rem;
466
-
467
- }
468
-
469
- .steps ol + * {
470
- margin-top: 1rem;
471
-
472
- }
473
-
474
- /* Buttons */
475
- button, .button {
476
- padding: 0.5rem 1rem;
477
- background-color: var(--sky-primary);
478
- color: white;
479
- border: none;
480
- border-radius: 6px;
481
- font-weight: 500;
482
- cursor: pointer;
483
- transition: background-color 0.2s ease;
484
- }
485
-
486
- button:hover, .button:hover {
487
- background-color: var(--sky-primary-dark);
488
- }
489
-
490
- /* Theme toggle improvements */
491
- .theme-toggle-button {
492
- background-color: var(--sky-background-alt);
493
- border-color: var(--sky-border-light);
494
- border-radius: 6px;
495
- transition: all 0.2s ease;
509
+ h1 {
510
+ font-size: 1.75rem;
496
511
  }
497
512
 
498
- .theme-toggle-button:hover {
499
- background-color: var(--sky-primary-light);
513
+ h2 {
514
+ font-size: 1.5rem;
500
515
  }
501
516
 
502
- /* Mobile responsiveness improvements */
503
- @media (max-width: 768px) {
504
- .content-area {
505
- padding: 1.5rem 1rem;
506
- }
507
-
508
- h1 {
509
- font-size: 1.75rem;
510
- }
511
-
512
- h2 {
513
- font-size: 1.5rem;
514
- }
515
-
516
- h3 {
517
- font-size: 1.25rem;
518
- }
519
- }
520
-
521
- /* Enhanced image styling for Sky theme */
522
- img {
523
- border-radius: var(--image-border-radius);
524
- transition: var(--image-transition);
517
+ h3 {
518
+ font-size: 1.25rem;
525
519
  }
520
+ }
526
521
 
527
- /* Enhanced borders and shadows */
528
- img.with-border {
529
- border: 1px solid var(--image-border-color);
530
- padding: 8px;
531
- background-color: var(--bg-color);
532
- }
522
+ /* Enhanced image styling for Sky theme */
523
+ img {
524
+ border-radius: var(--image-border-radius);
525
+ transition: var(--image-transition);
526
+ }
533
527
 
534
- img.with-shadow {
535
- box-shadow: var(--image-shadow);
536
- }
528
+ /* Enhanced borders and shadows */
529
+ img.with-border {
530
+ border: 1px solid var(--image-border-color);
531
+ padding: 8px;
532
+ background-color: var(--bg-color);
533
+ }
537
534
 
538
- img.with-shadow:hover {
539
- box-shadow: var(--image-hover-shadow);
540
- }
535
+ img.with-shadow {
536
+ box-shadow: var(--image-shadow);
537
+ }
541
538
 
542
- /* Beautiful figure styling */
543
- figure {
544
- border-radius: var(--image-border-radius);
545
- overflow: hidden;
546
- transition: var(--image-transition);
547
- box-shadow: var(--shadow-sm);
548
- }
539
+ img.with-shadow:hover {
540
+ box-shadow: var(--image-hover-shadow);
541
+ }
549
542
 
550
- figure:hover {
551
- box-shadow: var(--shadow-md);
552
- }
543
+ /* Beautiful figure styling */
544
+ figure {
545
+ border-radius: var(--image-border-radius);
546
+ overflow: hidden;
547
+ transition: var(--image-transition);
548
+ box-shadow: var(--shadow-sm);
549
+ }
553
550
 
554
- figure img {
555
- margin-bottom: 0;
556
- border-radius: var(--image-border-radius) var(--image-border-radius) 0 0;
557
- }
551
+ figure:hover {
552
+ box-shadow: var(--shadow-md);
553
+ }
558
554
 
559
- figcaption {
560
- background-color: var(--image-caption-bg);
561
- color: var(--image-caption-text);
562
- padding: 0.75rem 1rem;
563
- font-size: 0.9rem;
564
- font-weight: 500;
565
- }
555
+ figure img {
556
+ margin-bottom: 0;
557
+ border-radius: var(--image-border-radius) var(--image-border-radius) 0 0;
558
+ }
566
559
 
567
- /* Advanced image gallery */
568
- .image-gallery {
569
- display: grid;
570
- grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
571
- gap: 1.5rem;
572
- margin: 2rem 0;
573
- }
560
+ figcaption {
561
+ background-color: var(--image-caption-bg);
562
+ color: var(--image-caption-text);
563
+ padding: 0.75rem 1rem;
564
+ font-size: 0.9rem;
565
+ font-weight: 500;
566
+ }
574
567
 
575
- .image-gallery figure {
576
- height: 100%;
577
- display: flex;
578
- flex-direction: column;
579
- margin: 0;
580
- transition: var(--image-transition);
581
- }
568
+ /* Advanced image gallery */
569
+ .image-gallery {
570
+ display: grid;
571
+ grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
572
+ gap: 1.5rem;
573
+ margin: 2rem 0;
574
+ }
582
575
 
583
- .image-gallery figure:hover {
584
- transform: var(--image-hover-transform);
585
- }
576
+ .image-gallery figure {
577
+ height: 100%;
578
+ display: flex;
579
+ flex-direction: column;
580
+ margin: 0;
581
+ transition: var(--image-transition);
582
+ }
586
583
 
587
- .image-gallery img {
588
- height: 200px;
589
- width: 100%;
590
- object-fit: cover;
591
- margin: 0;
592
- }
584
+ .image-gallery figure:hover {
585
+ transform: var(--image-hover-transform);
586
+ }
593
587
 
594
- .image-gallery figcaption {
595
- flex: 1;
596
- display: flex;
597
- align-items: center;
598
- justify-content: center;
599
- text-align: center;
600
- }
588
+ .image-gallery img {
589
+ height: 200px;
590
+ width: 100%;
591
+ object-fit: cover;
592
+ margin: 0;
593
+ }
601
594
 
602
- /* Zoom effect on gallery images */
603
- .image-gallery.zoom img {
604
- transition: transform 0.5s ease;
605
- }
595
+ .image-gallery figcaption {
596
+ flex: 1;
597
+ display: flex;
598
+ align-items: center;
599
+ justify-content: center;
600
+ text-align: center;
601
+ }
606
602
 
607
- .image-gallery.zoom figure:hover img {
608
- transform: scale(1.05);
609
- }
603
+ /* Zoom effect on gallery images */
604
+ .image-gallery.zoom img {
605
+ transition: transform 0.5s ease;
606
+ }
610
607
 
611
- /* Lightbox effect - requires JavaScript implementation */
612
- img.lightbox {
613
- cursor: zoom-in;
614
- }
608
+ .image-gallery.zoom figure:hover img {
609
+ transform: scale(1.05);
610
+ }
615
611
 
616
- /* Image with frames */
617
- img.framed {
618
- border: 8px solid white;
619
- box-shadow: 0 0 0 1px var(--image-border-color), var(--image-shadow);
620
- box-sizing: border-box;
621
- }
612
+ /* Lightbox effect - requires JavaScript implementation */
613
+ img.lightbox {
614
+ cursor: zoom-in;
615
+ }
622
616
 
623
- /* Polaroid style */
624
- figure.polaroid {
625
- background: white;
626
- padding: 10px 10px 30px 10px;
627
- box-shadow: var(--shadow-md);
628
- }
617
+ /* Image with frames */
618
+ img.framed {
619
+ border: 8px solid white;
620
+ box-shadow: 0 0 0 1px var(--image-border-color), var(--image-shadow);
621
+ box-sizing: border-box;
622
+ }
629
623
 
630
- figure.polaroid img {
631
- border-radius: 0;
632
- box-shadow: none;
633
- }
624
+ /* Polaroid style */
625
+ figure.polaroid {
626
+ background: white;
627
+ padding: 10px 10px 30px 10px;
628
+ box-shadow: var(--shadow-md);
629
+ }
634
630
 
635
- figure.polaroid figcaption {
636
- background: white;
637
- color: var(--sky-text);
638
- font-family: 'Caveat', cursive, var(--font-family-sans);
639
- font-size: 1.1rem;
640
- }
631
+ figure.polaroid img {
632
+ border-radius: 0;
633
+ box-shadow: none;
634
+ }
641
635
 
642
- /* Responsive adjustments */
643
- @media (max-width: 768px) {
644
- .image-gallery {
645
- grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
646
- }
647
-
648
- .image-gallery img {
649
- height: 150px;
650
- }
651
- }
636
+ figure.polaroid figcaption {
637
+ background: white;
638
+ color: var(--sky-text);
639
+ font-family: 'Caveat', cursive, var(--font-family-sans);
640
+ font-size: 1.1rem;
641
+ }
642
+
643
+ /* Responsive adjustments */
644
+ @media (max-width: 768px) {
645
+ .image-gallery {
646
+ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
647
+ }
648
+
649
+ .image-gallery img {
650
+ height: 150px;
651
+ }
652
+ }