@dr-ishaan/remake-blocks 1.2.0 → 1.4.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.
@@ -0,0 +1,610 @@
1
+ /**
2
+ * remake-blocks – Docusaurus Theme
3
+ *
4
+ * Docusaurus Infima-style: full rounded card, colored left border + tinted bg,
5
+ * subtle shadow, bold sans-serif title. Matches docusaurus.io admonitions.
6
+ *
7
+ * Usage:
8
+ * import "@dr-ishaan/remake-blocks/theme/docusaurus.css";
9
+ *
10
+ * Dark mode: triggered by `prefers-color-scheme: dark` (when no
11
+ * `data-theme="light"` is set) AND/OR `data-theme="dark"` / `data-theme="dim"`
12
+ * on <html>. Uses darker solid backgrounds + lighter borders.
13
+ */
14
+
15
+ /* ========================================================================
16
+ 1. CSS Custom Properties (Docusaurus Light Mode Defaults)
17
+ ======================================================================== */
18
+
19
+ :root {
20
+ /* -- Layout (Docusaurus: rounded card, comfortable padding) ---------- */
21
+ --callout-radius: 8px;
22
+ --callout-padding-y: 14px;
23
+ --callout-padding-x: 18px;
24
+ --callout-gap: 8px;
25
+ --callout-title-font-size: 1.05em;
26
+ --callout-body-font-size: 1em;
27
+ --callout-icon-size: 20px;
28
+ --callout-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
29
+ --callout-border-width: 4px;
30
+ --callout-inline-width: 50%;
31
+
32
+ /* -- GFM (5) — Infima palette (soft, slightly muted) ----------------- */
33
+ --callout-note-border: #4d6eaa; --callout-note-bg: #eef2f8;
34
+ --callout-tip-border: #2e8b57; --callout-tip-bg: #e8f5ee;
35
+ --callout-important-border: #8250df; --callout-important-bg: #f3eef9;
36
+ --callout-warning-border: #b8860b; --callout-warning-bg: #fdf6e3;
37
+ --callout-caution-border: #c0392b; --callout-caution-bg: #fbeae8;
38
+
39
+ /* -- Obsidian (10) ---------------------------------------------------- */
40
+ --callout-abstract-border: #1e6091; --callout-abstract-bg: #e6f0f7;
41
+ --callout-info-border: #4d6eaa; --callout-info-bg: #eef2f8;
42
+ --callout-success-border: #2e8b57; --callout-success-bg: #e8f5ee;
43
+ --callout-question-border: #b8860b; --callout-question-bg: #fdf6e3;
44
+ --callout-failure-border: #c0392b; --callout-failure-bg: #fbeae8;
45
+ --callout-danger-border: #c0392b; --callout-danger-bg: #fbeae8;
46
+ --callout-quote-border: #57606a; --callout-quote-bg: #f6f8fa;
47
+ --callout-bug-border: #b8324f; --callout-bug-bg: #fbeaee;
48
+ --callout-example-border: #8250df; --callout-example-bg: #f3eef9;
49
+ --callout-todo-border: #2980b9; --callout-todo-bg: #e8f1f8;
50
+
51
+ /* -- Promoted Aliases (12) -------------------------------------------- */
52
+ --callout-summary-border: #1e6091; --callout-summary-bg: #e6f0f7;
53
+ --callout-tldr-border: #1e6091; --callout-tldr-bg: #e6f0f7;
54
+ --callout-hint-border: #2e8b57; --callout-hint-bg: #e8f5ee;
55
+ --callout-check-border: #16a085; --callout-check-bg: #e0f5f1;
56
+ --callout-done-border: #2e8b57; --callout-done-bg: #e8f5ee;
57
+ --callout-help-border: #b8860b; --callout-help-bg: #fdf6e3;
58
+ --callout-faq-border: #b8860b; --callout-faq-bg: #fdf6e3;
59
+ --callout-attention-border: #d4a017; --callout-attention-bg: #fdf6e3;
60
+ --callout-fail-border: #b8324f; --callout-fail-bg: #fbeaee;
61
+ --callout-missing-border: #a04040; --callout-missing-bg: #fbeaea;
62
+ --callout-error-border: #c0392b; --callout-error-bg: #fbeae8;
63
+ --callout-cite-border: #5a72b0; --callout-cite-bg: #edf0f8;
64
+
65
+ /* -- Enhanced Blockquote ---------------------------------------------- */
66
+ --blockquote-enhanced-border: #d0d7de;
67
+ --blockquote-enhanced-bg: #f6f8fa;
68
+ --blockquote-enhanced-color: #57606a;
69
+ --blockquote-padding: 14px 18px;
70
+ --blockquote-margin: 14px 0;
71
+
72
+ /* -- Disclosure Widget ------------------------------------------------ */
73
+ --disclosure-border: #d0d7de;
74
+ --disclosure-bg: #f6f8fa;
75
+ --disclosure-title-color: #24292f;
76
+ --disclosure-body-color: inherit;
77
+ --disclosure-radius: 8px;
78
+ --disclosure-padding: 14px 18px;
79
+ --disclosure-title-font-size: 1.05em;
80
+ --disclosure-body-font-size: 1em;
81
+ }
82
+
83
+ /* ========================================================================
84
+ 2. Dark Mode — prefers-color-scheme
85
+ ======================================================================== */
86
+
87
+ @media (prefers-color-scheme: dark) {
88
+ :root:not([data-theme="light"]) {
89
+ --callout-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
90
+
91
+ --callout-note-border: #6b8ec9; --callout-note-bg: #1a2438;
92
+ --callout-tip-border: #4caf7a; --callout-tip-bg: #122818;
93
+ --callout-important-border: #a875e0; --callout-important-bg: #261838;
94
+ --callout-warning-border: #d4a82e; --callout-warning-bg: #2e2410;
95
+ --callout-caution-border: #e05a4a; --callout-caution-bg: #341814;
96
+
97
+ --callout-abstract-border: #4d8fc4; --callout-abstract-bg: #0e2233;
98
+ --callout-info-border: #6b8ec9; --callout-info-bg: #1a2438;
99
+ --callout-success-border: #4caf7a; --callout-success-bg: #122818;
100
+ --callout-question-border: #d4a82e; --callout-question-bg: #2e2410;
101
+ --callout-failure-border: #e05a4a; --callout-failure-bg: #341814;
102
+ --callout-danger-border: #e05a4a; --callout-danger-bg: #341814;
103
+ --callout-quote-border: #8b949e; --callout-quote-bg: #1c2028;
104
+ --callout-bug-border: #d04860; --callout-bug-bg: #341420;
105
+ --callout-example-border: #a875e0; --callout-example-bg: #261838;
106
+ --callout-todo-border: #4ba3d8; --callout-todo-bg: #0e2233;
107
+
108
+ --callout-summary-border: #4d8fc4; --callout-summary-bg: #0e2233;
109
+ --callout-tldr-border: #4d8fc4; --callout-tldr-bg: #0e2233;
110
+ --callout-hint-border: #4caf7a; --callout-hint-bg: #122818;
111
+ --callout-check-border: #2eb89a; --callout-check-bg: #0e2a26;
112
+ --callout-done-border: #4caf7a; --callout-done-bg: #122818;
113
+ --callout-help-border: #d4a82e; --callout-help-bg: #2e2410;
114
+ --callout-faq-border: #d4a82e; --callout-faq-bg: #2e2410;
115
+ --callout-attention-border: #e8b54a; --callout-attention-bg: #2e2410;
116
+ --callout-fail-border: #d04860; --callout-fail-bg: #341420;
117
+ --callout-missing-border: #c87070; --callout-missing-bg: #341818;
118
+ --callout-error-border: #e05a4a; --callout-error-bg: #341814;
119
+ --callout-cite-border: #7a8ed4; --callout-cite-bg: #1c2238;
120
+
121
+ --blockquote-enhanced-border: #444c56;
122
+ --blockquote-enhanced-bg: #161b22;
123
+ --blockquote-enhanced-color: #c9d1d9;
124
+
125
+ --disclosure-border: #444c56;
126
+ --disclosure-bg: #161b22;
127
+ --disclosure-title-color: #e6edf3;
128
+ }
129
+ }
130
+
131
+ /* ========================================================================
132
+ 2b. Dark Mode — manual via data-theme attribute
133
+ ======================================================================== */
134
+
135
+ [data-theme="dark"],
136
+ [data-theme="dim"] {
137
+ --callout-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
138
+
139
+ --callout-note-border: #6b8ec9; --callout-note-bg: #1a2438;
140
+ --callout-tip-border: #4caf7a; --callout-tip-bg: #122818;
141
+ --callout-important-border: #a875e0; --callout-important-bg: #261838;
142
+ --callout-warning-border: #d4a82e; --callout-warning-bg: #2e2410;
143
+ --callout-caution-border: #e05a4a; --callout-caution-bg: #341814;
144
+
145
+ --callout-abstract-border: #4d8fc4; --callout-abstract-bg: #0e2233;
146
+ --callout-info-border: #6b8ec9; --callout-info-bg: #1a2438;
147
+ --callout-success-border: #4caf7a; --callout-success-bg: #122818;
148
+ --callout-question-border: #d4a82e; --callout-question-bg: #2e2410;
149
+ --callout-failure-border: #e05a4a; --callout-failure-bg: #341814;
150
+ --callout-danger-border: #e05a4a; --callout-danger-bg: #341814;
151
+ --callout-quote-border: #8b949e; --callout-quote-bg: #1c2028;
152
+ --callout-bug-border: #d04860; --callout-bug-bg: #341420;
153
+ --callout-example-border: #a875e0; --callout-example-bg: #261838;
154
+ --callout-todo-border: #4ba3d8; --callout-todo-bg: #0e2233;
155
+
156
+ --callout-summary-border: #4d8fc4; --callout-summary-bg: #0e2233;
157
+ --callout-tldr-border: #4d8fc4; --callout-tldr-bg: #0e2233;
158
+ --callout-hint-border: #4caf7a; --callout-hint-bg: #122818;
159
+ --callout-check-border: #2eb89a; --callout-check-bg: #0e2a26;
160
+ --callout-done-border: #4caf7a; --callout-done-bg: #122818;
161
+ --callout-help-border: #d4a82e; --callout-help-bg: #2e2410;
162
+ --callout-faq-border: #d4a82e; --callout-faq-bg: #2e2410;
163
+ --callout-attention-border: #e8b54a; --callout-attention-bg: #2e2410;
164
+ --callout-fail-border: #d04860; --callout-fail-bg: #341420;
165
+ --callout-missing-border: #c87070; --callout-missing-bg: #341818;
166
+ --callout-error-border: #e05a4a; --callout-error-bg: #341814;
167
+ --callout-cite-border: #7a8ed4; --callout-cite-bg: #1c2238;
168
+
169
+ --blockquote-enhanced-border: #444c56;
170
+ --blockquote-enhanced-bg: #161b22;
171
+ --blockquote-enhanced-color: #c9d1d9;
172
+
173
+ --disclosure-border: #444c56;
174
+ --disclosure-bg: #161b22;
175
+ --disclosure-title-color: #e6edf3;
176
+ }
177
+
178
+ /* ========================================================================
179
+ 3. Callout Container (Docusaurus: rounded card, 4px left border, shadow)
180
+ ======================================================================== */
181
+
182
+ .callout {
183
+ position: relative;
184
+ display: flex;
185
+ flex-direction: column;
186
+ gap: var(--callout-gap);
187
+ padding: var(--callout-padding-y) var(--callout-padding-x);
188
+ border-radius: var(--callout-radius);
189
+ border-left: var(--callout-border-width) solid var(--callout-color, var(--callout-note-border));
190
+ background: var(--callout-bg, transparent);
191
+ margin: 14px 0;
192
+ box-shadow: var(--callout-shadow);
193
+ }
194
+
195
+ /* ========================================================================
196
+ 4. Callout Type Variants
197
+ ======================================================================== */
198
+
199
+ .callout-note { --callout-color: var(--callout-note-border); background: var(--callout-note-bg); }
200
+ .callout-tip { --callout-color: var(--callout-tip-border); background: var(--callout-tip-bg); }
201
+ .callout-important { --callout-color: var(--callout-important-border); background: var(--callout-important-bg); }
202
+ .callout-warning { --callout-color: var(--callout-warning-border); background: var(--callout-warning-bg); }
203
+ .callout-caution { --callout-color: var(--callout-caution-border); background: var(--callout-caution-bg); }
204
+ .callout-abstract { --callout-color: var(--callout-abstract-border); background: var(--callout-abstract-bg); }
205
+ .callout-info { --callout-color: var(--callout-info-border); background: var(--callout-info-bg); }
206
+ .callout-success { --callout-color: var(--callout-success-border); background: var(--callout-success-bg); }
207
+ .callout-question { --callout-color: var(--callout-question-border); background: var(--callout-question-bg); }
208
+ .callout-failure { --callout-color: var(--callout-failure-border); background: var(--callout-failure-bg); }
209
+ .callout-danger { --callout-color: var(--callout-danger-border); background: var(--callout-danger-bg); }
210
+ .callout-quote { --callout-color: var(--callout-quote-border); background: var(--callout-quote-bg); }
211
+ .callout-bug { --callout-color: var(--callout-bug-border); background: var(--callout-bug-bg); }
212
+ .callout-example { --callout-color: var(--callout-example-border); background: var(--callout-example-bg); }
213
+ .callout-todo { --callout-color: var(--callout-todo-border); background: var(--callout-todo-bg); }
214
+ .callout-summary { --callout-color: var(--callout-summary-border); background: var(--callout-summary-bg); }
215
+ .callout-tldr { --callout-color: var(--callout-tldr-border); background: var(--callout-tldr-bg); }
216
+ .callout-hint { --callout-color: var(--callout-hint-border); background: var(--callout-hint-bg); }
217
+ .callout-check { --callout-color: var(--callout-check-border); background: var(--callout-check-bg); }
218
+ .callout-done { --callout-color: var(--callout-done-border); background: var(--callout-done-bg); }
219
+ .callout-help { --callout-color: var(--callout-help-border); background: var(--callout-help-bg); }
220
+ .callout-faq { --callout-color: var(--callout-faq-border); background: var(--callout-faq-bg); }
221
+ .callout-attention { --callout-color: var(--callout-attention-border); background: var(--callout-attention-bg); }
222
+ .callout-fail { --callout-color: var(--callout-fail-border); background: var(--callout-fail-bg); }
223
+ .callout-missing { --callout-color: var(--callout-missing-border); background: var(--callout-missing-bg); }
224
+ .callout-error { --callout-color: var(--callout-error-border); background: var(--callout-error-bg); }
225
+ .callout-cite { --callout-color: var(--callout-cite-border); background: var(--callout-cite-bg); }
226
+
227
+ /* ========================================================================
228
+ 5. Callout Title (Docusaurus: bold, takes callout's color)
229
+ ======================================================================== */
230
+
231
+ .callout-title {
232
+ display: flex;
233
+ align-items: center;
234
+ gap: 8px;
235
+ font-weight: 700;
236
+ font-size: var(--callout-title-font-size);
237
+ line-height: 1.3;
238
+ color: var(--callout-color);
239
+ user-select: none;
240
+ }
241
+
242
+ .callout-icon {
243
+ display: inline-flex;
244
+ align-items: center;
245
+ justify-content: center;
246
+ flex-shrink: 0;
247
+ width: var(--callout-icon-size);
248
+ height: var(--callout-icon-size);
249
+ }
250
+
251
+ .callout-icon svg {
252
+ width: 100%;
253
+ height: 100%;
254
+ stroke-width: 2;
255
+ }
256
+
257
+ .callout-title-text {
258
+ font-weight: 700;
259
+ }
260
+
261
+ /* ========================================================================
262
+ 6. Callout Body
263
+ ======================================================================== */
264
+
265
+ .callout-body {
266
+ font-size: var(--callout-body-font-size);
267
+ line-height: 1.55;
268
+ color: inherit;
269
+ }
270
+
271
+ .callout-body > *:first-child { margin-top: 0; }
272
+ .callout-body > *:last-child { margin-bottom: 0; }
273
+ .callout-body p { margin: 0.25em 0; }
274
+
275
+ .callout-body code {
276
+ font-size: 0.9em;
277
+ padding: 0.15em 0.4em;
278
+ border-radius: 4px;
279
+ background-color: rgba(0, 0, 0, 0.06);
280
+ }
281
+
282
+ .callout-body pre {
283
+ margin: 0.4em 0;
284
+ padding: 8px 10px;
285
+ border-radius: 4px;
286
+ background-color: rgba(0, 0, 0, 0.04);
287
+ overflow-x: auto;
288
+ }
289
+
290
+ .callout-body pre code {
291
+ padding: 0;
292
+ background: none;
293
+ font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
294
+ font-size: 0.9375em;
295
+ }
296
+
297
+ .callout-body ul,
298
+ .callout-body ol {
299
+ padding-left: 1.3em;
300
+ margin: 0.25em 0;
301
+ }
302
+
303
+ .callout-body li { margin: 0.1em 0; }
304
+
305
+ .callout-body a {
306
+ color: var(--callout-color);
307
+ text-decoration: underline;
308
+ text-underline-offset: 2px;
309
+ }
310
+
311
+ .callout-body a:hover { opacity: 0.85; }
312
+
313
+ /* ========================================================================
314
+ 7. Enhanced Blockquote
315
+ ======================================================================== */
316
+
317
+ .blockquote-enhanced {
318
+ margin: var(--blockquote-margin);
319
+ padding: 0;
320
+ }
321
+
322
+ .blockquote-enhanced blockquote {
323
+ position: relative;
324
+ margin: 0;
325
+ padding: var(--blockquote-padding);
326
+ border-left: 4px solid var(--blockquote-enhanced-border);
327
+ background-color: var(--blockquote-enhanced-bg);
328
+ border-radius: var(--callout-radius);
329
+ color: var(--blockquote-enhanced-color);
330
+ font-style: italic;
331
+ line-height: 1.5;
332
+ box-shadow: var(--callout-shadow);
333
+ }
334
+
335
+ .blockquote-enhanced blockquote > *:first-child { margin-top: 0; }
336
+ .blockquote-enhanced blockquote > *:last-child { margin-bottom: 0; }
337
+ .blockquote-enhanced blockquote p { margin: 0.2em 0; }
338
+
339
+ /* ========================================================================
340
+ 8. Collapsible Callout (<details>/<summary>)
341
+ ======================================================================== */
342
+
343
+ .callout.collapsible { cursor: pointer; }
344
+
345
+ .callout.collapsible > summary {
346
+ display: flex;
347
+ align-items: center;
348
+ gap: 8px;
349
+ font-weight: 700;
350
+ font-size: var(--callout-title-font-size);
351
+ line-height: 1.3;
352
+ color: var(--callout-color);
353
+ user-select: none;
354
+ list-style: none;
355
+ padding: 0;
356
+ }
357
+
358
+ .callout.collapsible > summary::-webkit-details-marker { display: none; }
359
+ .callout.collapsible > summary::marker { display: none; content: ""; }
360
+
361
+ .callout.collapsible > summary::after {
362
+ content: "";
363
+ margin-left: auto;
364
+ width: 6px;
365
+ height: 6px;
366
+ border-right: 1.5px solid currentColor;
367
+ border-bottom: 1.5px solid currentColor;
368
+ transform: rotate(45deg);
369
+ transition: transform 0.2s ease;
370
+ flex-shrink: 0;
371
+ }
372
+
373
+ .callout.collapsible[open] > summary::after {
374
+ transform: rotate(-135deg);
375
+ }
376
+
377
+ .callout.collapsible > .callout-body {
378
+ animation: callout-fade-in 0.15s ease-out;
379
+ }
380
+
381
+ /* ========================================================================
382
+ 9. Disclosure Widget
383
+ ======================================================================== */
384
+
385
+ .disclosure {
386
+ margin: 14px 0;
387
+ border: 1px solid var(--disclosure-border);
388
+ border-radius: var(--disclosure-radius);
389
+ background: var(--disclosure-bg);
390
+ overflow: hidden;
391
+ box-shadow: var(--callout-shadow);
392
+ }
393
+
394
+ .disclosure > summary {
395
+ display: flex;
396
+ align-items: center;
397
+ gap: 6px;
398
+ padding: var(--disclosure-padding);
399
+ font-weight: 700;
400
+ font-size: var(--disclosure-title-font-size);
401
+ line-height: 1.3;
402
+ color: var(--disclosure-title-color);
403
+ cursor: pointer;
404
+ user-select: none;
405
+ list-style: none;
406
+ transition: background-color 0.15s ease;
407
+ }
408
+
409
+ .disclosure > summary:hover {
410
+ background-color: rgba(0, 0, 0, 0.03);
411
+ }
412
+
413
+ .disclosure > summary::-webkit-details-marker { display: none; }
414
+ .disclosure > summary::marker { display: none; content: ""; }
415
+
416
+ .disclosure > summary::before {
417
+ content: "";
418
+ flex-shrink: 0;
419
+ width: 6px;
420
+ height: 6px;
421
+ border-right: 1.5px solid currentColor;
422
+ border-bottom: 1.5px solid currentColor;
423
+ transform: rotate(45deg);
424
+ transition: transform 0.2s ease;
425
+ }
426
+
427
+ .disclosure[open] > summary::before {
428
+ transform: rotate(-135deg);
429
+ }
430
+
431
+ .disclosure-title {
432
+ display: flex;
433
+ align-items: center;
434
+ gap: 6px;
435
+ padding: var(--disclosure-padding);
436
+ font-weight: 700;
437
+ font-size: var(--disclosure-title-font-size);
438
+ line-height: 1.3;
439
+ color: var(--disclosure-title-color);
440
+ user-select: none;
441
+ list-style: none;
442
+ }
443
+
444
+ .disclosure-body {
445
+ padding: 0 var(--disclosure-padding) var(--disclosure-padding);
446
+ font-size: var(--disclosure-body-font-size);
447
+ line-height: 1.5;
448
+ color: var(--disclosure-body-color);
449
+ animation: callout-fade-in 0.15s ease-out;
450
+ }
451
+
452
+ .disclosure-body > *:first-child { margin-top: 0; }
453
+ .disclosure-body > *:last-child { margin-bottom: 0; }
454
+ .disclosure-body p { margin: 0.25em 0; }
455
+
456
+ .disclosure-body code {
457
+ font-size: 0.9em;
458
+ padding: 0.15em 0.4em;
459
+ border-radius: 4px;
460
+ background-color: rgba(0, 0, 0, 0.06);
461
+ }
462
+
463
+ .disclosure-body pre {
464
+ margin: 0.4em 0;
465
+ padding: 8px 10px;
466
+ border-radius: 4px;
467
+ background-color: rgba(0, 0, 0, 0.04);
468
+ overflow-x: auto;
469
+ }
470
+
471
+ .disclosure-body pre code {
472
+ padding: 0;
473
+ background: none;
474
+ font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
475
+ font-size: 0.9375em;
476
+ }
477
+
478
+ .disclosure-body ul,
479
+ .disclosure-body ol {
480
+ padding-left: 1.3em;
481
+ margin: 0.25em 0;
482
+ }
483
+
484
+ .disclosure-body li { margin: 0.1em 0; }
485
+
486
+ /* ========================================================================
487
+ 10. Accordion
488
+ ======================================================================== */
489
+
490
+ .disclosure-accordion {
491
+ margin: 14px 0;
492
+ border: 1px solid var(--disclosure-border);
493
+ border-radius: var(--disclosure-radius);
494
+ overflow: hidden;
495
+ box-shadow: var(--callout-shadow);
496
+ }
497
+
498
+ .disclosure-accordion > .disclosure {
499
+ margin: 0;
500
+ border: none;
501
+ border-radius: 0;
502
+ box-shadow: none;
503
+ }
504
+
505
+ .disclosure-accordion > .disclosure + .disclosure {
506
+ border-top: 1px solid var(--disclosure-border);
507
+ }
508
+
509
+ .disclosure-accordion > .disclosure > summary:hover {
510
+ background-color: rgba(0, 0, 0, 0.04);
511
+ }
512
+
513
+ /* ========================================================================
514
+ 11. Tree View
515
+ ======================================================================== */
516
+
517
+ .disclosure-tree {
518
+ margin-left: 16px;
519
+ border-left: 2px solid var(--disclosure-border);
520
+ border-top: none;
521
+ border-right: none;
522
+ border-bottom: none;
523
+ border-radius: 0;
524
+ }
525
+
526
+ .disclosure-tree > summary {
527
+ padding-left: calc(var(--disclosure-padding) + 4px);
528
+ }
529
+
530
+ .disclosure[data-depth="1"] { margin-left: 16px; }
531
+ .disclosure[data-depth="2"] { margin-left: 32px; }
532
+ .disclosure[data-depth="3"] { margin-left: 48px; }
533
+ .disclosure[data-depth="4"] { margin-left: 64px; }
534
+ .disclosure[data-depth="5"] { margin-left: 80px; }
535
+
536
+ .disclosure[data-depth] > summary::after {
537
+ content: "";
538
+ position: absolute;
539
+ left: -16px;
540
+ top: 50%;
541
+ width: 12px;
542
+ height: 0;
543
+ border-top: 2px solid var(--disclosure-border);
544
+ }
545
+
546
+ .disclosure[data-depth] > summary {
547
+ position: relative;
548
+ }
549
+
550
+ .disclosure-tree .disclosure-body {
551
+ border-left: 2px solid var(--disclosure-border);
552
+ margin-left: 8px;
553
+ padding-left: calc(var(--disclosure-padding) + 4px);
554
+ }
555
+
556
+ /* ========================================================================
557
+ 12. Animations
558
+ ======================================================================== */
559
+
560
+ @keyframes callout-fade-in {
561
+ from { opacity: 0; transform: translateY(4px); }
562
+ to { opacity: 1; transform: translateY(0); }
563
+ }
564
+
565
+ .callout { animation: callout-fade-in 0.25s ease-out; }
566
+
567
+ @media (prefers-reduced-motion: reduce) {
568
+ .callout { animation: none; }
569
+ .disclosure > .disclosure-body { animation: none; }
570
+ }
571
+
572
+ /* ========================================================================
573
+ 13. Print Styles
574
+ ======================================================================== */
575
+
576
+ @media print {
577
+ .callout { box-shadow: none; break-inside: avoid; }
578
+ .blockquote-enhanced blockquote { background: none; border-left-width: 2px; box-shadow: none; }
579
+ .disclosure { border-width: 1px; box-shadow: none; }
580
+ .disclosure-accordion { border-width: 1px; box-shadow: none; }
581
+ .disclosure-tree { border-left-width: 1px; }
582
+ }
583
+
584
+ /* ========================================================================
585
+ 14. Inline Callouts (v1.3.0+)
586
+ ======================================================================== */
587
+
588
+ .callout-inline {
589
+ float: left;
590
+ width: var(--callout-inline-width, 50%);
591
+ margin: 0 1em 1em 0;
592
+ clear: left;
593
+ }
594
+
595
+ .callout-inline-end {
596
+ float: right;
597
+ width: var(--callout-inline-width, 50%);
598
+ margin: 0 0 1em 1em;
599
+ clear: right;
600
+ }
601
+
602
+ @media (max-width: 768px) {
603
+ .callout-inline,
604
+ .callout-inline-end {
605
+ float: none;
606
+ width: 100%;
607
+ margin: 1em 0;
608
+ clear: both;
609
+ }
610
+ }