hexo-theme-gnix 1.1.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 (143) hide show
  1. package/README.md +106 -0
  2. package/include/hexo/filter/locals.js +109 -0
  3. package/include/hexo/generator/categories.js +12 -0
  4. package/include/hexo/generator/category.js +52 -0
  5. package/include/hexo/generator/insight.js +50 -0
  6. package/include/hexo/generator/manifest.js +23 -0
  7. package/include/hexo/generator/tags.js +12 -0
  8. package/include/hexo/helper/cdn.js +21 -0
  9. package/include/hexo/helper/page.js +27 -0
  10. package/include/hexo/view.js +40 -0
  11. package/include/register.js +11 -0
  12. package/include/util/common.js +33 -0
  13. package/languages/en.yml +47 -0
  14. package/languages/fr.yml +46 -0
  15. package/languages/ja.yml +46 -0
  16. package/languages/zh-CN.yml +47 -0
  17. package/languages/zh-TW.yml +47 -0
  18. package/layout/archive.jsx +118 -0
  19. package/layout/categories.jsx +137 -0
  20. package/layout/category.jsx +38 -0
  21. package/layout/comment/disqus.jsx +79 -0
  22. package/layout/comment/disqusjs.jsx +127 -0
  23. package/layout/comment/giscus.jsx +193 -0
  24. package/layout/comment/gitalk.jsx +141 -0
  25. package/layout/comment/twikoo.jsx +63 -0
  26. package/layout/comment/utterances.jsx +86 -0
  27. package/layout/comment/valine.jsx +143 -0
  28. package/layout/comment/waline.jsx +156 -0
  29. package/layout/common/article.jsx +131 -0
  30. package/layout/common/article_cover.jsx +33 -0
  31. package/layout/common/article_media.jsx +34 -0
  32. package/layout/common/comment.jsx +38 -0
  33. package/layout/common/footer.jsx +228 -0
  34. package/layout/common/head.jsx +242 -0
  35. package/layout/common/navbar.jsx +219 -0
  36. package/layout/common/plugins.jsx +39 -0
  37. package/layout/common/scripts.jsx +49 -0
  38. package/layout/common/search.jsx +22 -0
  39. package/layout/common/theme_selector.jsx +79 -0
  40. package/layout/common/toc.jsx +53 -0
  41. package/layout/index.jsx +29 -0
  42. package/layout/layout.jsx +34 -0
  43. package/layout/misc/article_licensing.jsx +114 -0
  44. package/layout/misc/meta.jsx +61 -0
  45. package/layout/misc/open_graph.jsx +164 -0
  46. package/layout/misc/paginator.jsx +90 -0
  47. package/layout/misc/structured_data.jsx +110 -0
  48. package/layout/misc/web_app.jsx +106 -0
  49. package/layout/page.jsx +12 -0
  50. package/layout/plugin/bing_webmaster.jsx +47 -0
  51. package/layout/plugin/busuanzi.jsx +40 -0
  52. package/layout/plugin/clarity.jsx +22 -0
  53. package/layout/plugin/cookie_consent.jsx +136 -0
  54. package/layout/plugin/google_analytics.jsx +66 -0
  55. package/layout/plugin/google_tag_mamager.jsx +41 -0
  56. package/layout/plugin/netlify.jsx +39 -0
  57. package/layout/plugin/pjax.jsx +20 -0
  58. package/layout/plugin/statcounter.jsx +69 -0
  59. package/layout/plugin/twitter_conversion_tracking.jsx +51 -0
  60. package/layout/post.jsx +16 -0
  61. package/layout/search/insight.jsx +53 -0
  62. package/layout/tag.jsx +29 -0
  63. package/layout/tags.jsx +55 -0
  64. package/package.json +42 -0
  65. package/scripts/index.js +1 -0
  66. package/source/css/callout_blocks.css +204 -0
  67. package/source/css/default.css +1590 -0
  68. package/source/css/font/woff2/Futura-Book.woff2 +0 -0
  69. package/source/css/font/woff2/Paris2024-Variable.woff2 +0 -0
  70. package/source/css/font/woff2/doto.woff2 +0 -0
  71. package/source/css/optional/chinese.css +17 -0
  72. package/source/css/responsive/desktop.css +164 -0
  73. package/source/css/responsive/mobile.css +46 -0
  74. package/source/css/responsive/tablet.css +46 -0
  75. package/source/css/responsive/touch.css +254 -0
  76. package/source/css/shiki/shiki.min.css +1 -0
  77. package/source/css/twikoo.css +2143 -0
  78. package/source/img/avatar.webp +0 -0
  79. package/source/img/background.webp +0 -0
  80. package/source/img/favicon.svg +6 -0
  81. package/source/img/logo.svg +9 -0
  82. package/source/img/og_image.png +0 -0
  83. package/source/js/busuanzi.js +46 -0
  84. package/source/js/host/cookieconsent/3.1.1/build/cookieconsent.min.css +6 -0
  85. package/source/js/host/cookieconsent/3.1.1/build/cookieconsent.min.js +1 -0
  86. package/source/js/host/iconify-icon/3.0.2/iconify-icon.min.js +12 -0
  87. package/source/js/host/medium-zoom/dist/medium-zoom.min.js +2 -0
  88. package/source/js/host/mermaid/mermaid.min.js +2811 -0
  89. package/source/js/host/pjax/0.2.8/pjax.min.js +1 -0
  90. package/source/js/host/twikoo/1.6.41/dist/twikoo.all.min.js +2 -0
  91. package/source/js/insight.js +330 -0
  92. package/source/js/instant-page.min.js +1 -0
  93. package/source/js/live2d_Asoul/Model/Ava/Ava.4096/texture_00.webp +0 -0
  94. package/source/js/live2d_Asoul/Model/Ava/Ava.moc3 +0 -0
  95. package/source/js/live2d_Asoul/Model/Ava/Ava.model3.json +323 -0
  96. package/source/js/live2d_Asoul/Model/Ava/Ava.physics3.json +1225 -0
  97. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_idle.motion3.json +1 -0
  98. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_shake01.motion3.json +1 -0
  99. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_shake02.motion3.json +1 -0
  100. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap01.motion3.json +1 -0
  101. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap02.motion3.json +1 -0
  102. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap03.motion3.json +1 -0
  103. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap04.motion3.json +1 -0
  104. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap05.motion3.json +1 -0
  105. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap06.motion3.json +1 -0
  106. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap07.motion3.json +1 -0
  107. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap08.motion3.json +1 -0
  108. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap09.motion3.json +1 -0
  109. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap10.motion3.json +1 -0
  110. package/source/js/live2d_Asoul/Model/Ava/motions/Ava_tap11.motion3.json +1 -0
  111. package/source/js/live2d_Asoul/Model/Ava/raw.ex.json +16 -0
  112. package/source/js/live2d_Asoul/Model/Ava/raw.model3.json +321 -0
  113. package/source/js/live2d_Asoul/Model/Diana/Diana.4096/texture_00.webp +0 -0
  114. package/source/js/live2d_Asoul/Model/Diana/Diana.moc3 +0 -0
  115. package/source/js/live2d_Asoul/Model/Diana/Diana.model3.json +212 -0
  116. package/source/js/live2d_Asoul/Model/Diana/Diana.physics3.json +764 -0
  117. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_idle.motion3.json +1 -0
  118. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap01.motion3.json +1 -0
  119. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap02.motion3.json +1 -0
  120. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap03.motion3.json +1 -0
  121. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap04.motion3.json +1 -0
  122. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap05.motion3.json +1 -0
  123. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap06.motion3.json +1 -0
  124. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap07.motion3.json +1 -0
  125. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap08.motion3.json +1 -0
  126. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap09.motion3.json +1 -0
  127. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap10.motion3.json +1 -0
  128. package/source/js/live2d_Asoul/Model/Diana/motions/Diana_tap11.motion3.json +1 -0
  129. package/source/js/live2d_Asoul/Model/Diana/raw.ex.json +16 -0
  130. package/source/js/live2d_Asoul/Model/Diana/raw.model3.json +210 -0
  131. package/source/js/live2d_Asoul/TweenLite.js +12 -0
  132. package/source/js/live2d_Asoul/cubism4.min.js +2 -0
  133. package/source/js/live2d_Asoul/live2dcubismcore.min.js +9 -0
  134. package/source/js/live2d_Asoul/load.js +231 -0
  135. package/source/js/live2d_Asoul/pio.css +161 -0
  136. package/source/js/live2d_Asoul/pio.js +296 -0
  137. package/source/js/live2d_Asoul/pio_sdk4.js +149 -0
  138. package/source/js/live2d_Asoul/pixi.min.js +9 -0
  139. package/source/js/main.js +218 -0
  140. package/source/js/pjax.js +29 -0
  141. package/source/js/shiki/shiki.js +191 -0
  142. package/source/js/theme-selector.js +206 -0
  143. package/util/cache.js +47 -0
@@ -0,0 +1,1590 @@
1
+ @charset "UTF-8";
2
+ /* #region Color */
3
+ :where([data-theme="latte"]) {
4
+ color-scheme: light;
5
+ --rosewater: #dc8a78;
6
+ --flamingo: #dd7878;
7
+ --pink: #ea76cb;
8
+ --mauve: #8839ef;
9
+ --red: #d20f39;
10
+ --maroon: #e64553;
11
+ --peach: #fe640b;
12
+ --yellow: #df8e1d;
13
+ --green: #40a02b;
14
+ --teal: #179299;
15
+ --sky: #04a5e5;
16
+ --sapphire: #209fb5;
17
+ --blue: #1e66f5;
18
+ --lavender: #7287fd;
19
+ --text: #4c4f69;
20
+ --subtext1: #5c5f77;
21
+ --subtext0: #6c6f85;
22
+ --overlay2: #7c7f93;
23
+ --overlay1: #8c8fa1;
24
+ --overlay0: #9ca0b0;
25
+ --surface2: #acb0be;
26
+ --surface1: #bcc0cc;
27
+ --surface0: #ccd0da;
28
+ --base: #eff1f5;
29
+ --mantle: #e6e9ef;
30
+ --crust: #dce0e8;
31
+ }
32
+
33
+ :where([data-theme="macchiato"]) {
34
+ color-scheme: dark;
35
+ --rosewater: #f4dbd6;
36
+ --flamingo: #f0c6c6;
37
+ --pink: #f5bde6;
38
+ --mauve: #c6a0f6;
39
+ --red: #ed8796;
40
+ --maroon: #ee99a0;
41
+ --peach: #f5a97f;
42
+ --yellow: #eed49f;
43
+ --green: #a6da95;
44
+ --teal: #8bd5ca;
45
+ --sky: #91d7e3;
46
+ --sapphire: #7dc4e4;
47
+ --blue: #8aadf4;
48
+ --lavender: #b7bdf8;
49
+ --text: #cad3f5;
50
+ --subtext1: #b8c0e0;
51
+ --subtext0: #a5adcb;
52
+ --overlay2: #939ab7;
53
+ --overlay1: #8087a2;
54
+ --overlay0: #6e738d;
55
+ --surface2: #5b6078;
56
+ --surface1: #494d64;
57
+ --surface0: #363a4f;
58
+ --base: #24273a;
59
+ --mantle: #1e2030;
60
+ --crust: #181926;
61
+ }
62
+
63
+ :where([data-theme="nord"]) {
64
+ color-scheme: light;
65
+ --rosewater: #bf616a;
66
+ --flamingo: #d08770;
67
+ --pink: #b48ead;
68
+ --mauve: #b48ead;
69
+ --red: #bf616a;
70
+ --maroon: #a3be8c;
71
+ --peach: #d08770;
72
+ --yellow: #ebcb8b;
73
+ --green: #a3be8c;
74
+ --teal: #8fbcbb;
75
+ --sky: #81a1c1;
76
+ --sapphire: #5e81ac;
77
+ --blue: #81a1c1;
78
+ --lavender: #5e81ac;
79
+ --text: #2e3440;
80
+ --subtext1: #3b4252;
81
+ --subtext0: #434c5e;
82
+ --overlay2: #4c566a;
83
+ --overlay1: #5a657a;
84
+ --overlay0: #686e7e;
85
+ --surface2: #76809f;
86
+ --surface1: #7d8fa3;
87
+ --surface0: #8fa3b0;
88
+ --base: #eceff4;
89
+ --mantle: #e5e9f0;
90
+ --crust: #d8dee9;
91
+ }
92
+
93
+ :where([data-theme="mocha"]) {
94
+ color-scheme: dark;
95
+ --rosewater: #f5e0dc;
96
+ --flamingo: #f2cdcd;
97
+ --pink: #f5c2e7;
98
+ --mauve: #cba6f7;
99
+ --red: #f38ba8;
100
+ --maroon: #eba0ac;
101
+ --peach: #fab387;
102
+ --yellow: #f9e2af;
103
+ --green: #a6e3a1;
104
+ --teal: #94e2d5;
105
+ --sky: #89dceb;
106
+ --sapphire: #74c7ec;
107
+ --blue: #89b4fa;
108
+ --lavender: #b4befe;
109
+ --text: #cdd6f4;
110
+ --subtext1: #bac2de;
111
+ --subtext0: #a6adc8;
112
+ --overlay2: #9399b2;
113
+ --overlay1: #7f849c;
114
+ --overlay0: #6c7086;
115
+ --surface2: #585b70;
116
+ --surface1: #45475a;
117
+ --surface0: #313244;
118
+ --base: #1e1e2e;
119
+ --mantle: #181825;
120
+ --crust: #11111b;
121
+ }
122
+
123
+ :where([data-theme="tokyo_night"]) {
124
+ color-scheme: dark;
125
+ --rosewater: #f7768e;
126
+ --flamingo: #ff9e64;
127
+ --pink: #bb9af7;
128
+ --mauve: #bb9af7;
129
+ --red: #f7768e;
130
+ --maroon: #db4b4b;
131
+ --peach: #ff9e64;
132
+ --yellow: #e0af68;
133
+ --green: #9ece6a;
134
+ --teal: #1abc9c;
135
+ --sky: #7dcfff;
136
+ --sapphire: #2ac3de;
137
+ --blue: #7aa2f7;
138
+ --lavender: #82aaff;
139
+ --text: #c0caf5;
140
+ --subtext1: #a9b1d6;
141
+ --subtext0: #9aa5ce;
142
+ --overlay2: #787c99;
143
+ --overlay1: #565f89;
144
+ --overlay0: #414868;
145
+ --surface2: #414868;
146
+ --surface1: #33467c;
147
+ --surface0: #24283b;
148
+ --base: #1a1b26;
149
+ --mantle: #16161e;
150
+ --crust: #101014;
151
+ }
152
+
153
+ :where([data-theme="nord_night"]) {
154
+ color-scheme: dark;
155
+ --rosewater: #b48ead;
156
+ --flamingo: #d08770;
157
+ --pink: #b48ead;
158
+ --mauve: #b48ead;
159
+ --red: #bf616a;
160
+ --maroon: #bf616a;
161
+ --peach: #d08770;
162
+ --yellow: #ebcb8b;
163
+ --green: #a3be8c;
164
+ --teal: #8fbcbb;
165
+ --sky: #88c0d0;
166
+ --sapphire: #81a1c1;
167
+ --blue: #5e81ac;
168
+ --lavender: #81a1c1;
169
+ --text: #eceff4;
170
+ --subtext1: #e5e9f0;
171
+ --subtext0: #d8dee9;
172
+ --overlay2: #4c566a;
173
+ --overlay1: #434c5e;
174
+ --overlay0: #3b4252;
175
+ --surface2: #434c5e;
176
+ --surface1: #3b4252;
177
+ --surface0: #3b4252;
178
+ --base: #2e3440;
179
+ --mantle: #292e39;
180
+ --crust: #242933;
181
+ }
182
+
183
+ a {
184
+ color: var(--lavender);
185
+ }
186
+
187
+ a:hover {
188
+ color: var(--blue);
189
+ }
190
+
191
+ .title {
192
+ color: var(--lavender);
193
+ }
194
+
195
+ .article .title a:hover {
196
+ background: linear-gradient(to right, var(--blue), var(--mauve), var(--pink));
197
+ background-clip: text;
198
+ -webkit-background-clip: text;
199
+ -webkit-text-fill-color: transparent;
200
+ }
201
+
202
+ h2 {
203
+ color: var(--peach);
204
+ }
205
+
206
+ h3 {
207
+ color: var(--yellow);
208
+ }
209
+
210
+ h4 {
211
+ color: var(--green);
212
+ }
213
+
214
+ h5 {
215
+ color: var(--blue);
216
+ }
217
+
218
+ h6 {
219
+ color: var(--mauve);
220
+ }
221
+
222
+ mark {
223
+ background-color: var(--yellow);
224
+ }
225
+
226
+ .task-list-item-checkbox {
227
+ accent-color: var(--lavender);
228
+ }
229
+
230
+ .task-list-item-checkbox:checked {
231
+ accent-color: var(--mauve);
232
+ }
233
+
234
+ strong {
235
+ color: var(--red);
236
+ }
237
+
238
+ blockquote::before {
239
+ color: var(--red);
240
+ }
241
+
242
+ code {
243
+ background-color: var(--base);
244
+ color: var(--subtext1);
245
+ border: 1px solid var(--surface0);
246
+ }
247
+
248
+ .article-licensing {
249
+ color: var(--subtext1);
250
+ background-color: var(--base);
251
+ }
252
+
253
+ .navbar-main,
254
+ .navbar-menu {
255
+ background: hsl(from var(--mantle) h s l / 0.95);
256
+ }
257
+
258
+ .navbar-item.is-active {
259
+ color: var(--flamingo);
260
+ }
261
+
262
+ .navbar-item:focus,
263
+ .navbar-item:hover {
264
+ color: var(--lavender);
265
+ }
266
+
267
+ .tag {
268
+ color: var(--text);
269
+ border-color: var(--surface0);
270
+ }
271
+
272
+ .tag:first-child {
273
+ background: var(--base);
274
+ }
275
+
276
+ .tag:last-child {
277
+ background: var(--mantle);
278
+ }
279
+
280
+ body {
281
+ background: var(--mantle);
282
+ color: var(--text);
283
+ }
284
+
285
+ .card {
286
+ background: var(--mantle);
287
+ border: 0.1px dashed var(--surface0);
288
+ }
289
+
290
+ input.task-list-item-checkbox:checked {
291
+ background-color: var(--green);
292
+ border-color: var(--green);
293
+ }
294
+
295
+ .navbar-item {
296
+ color: var(--text);
297
+ }
298
+
299
+ hr {
300
+ background-color: var(--surface0);
301
+ }
302
+
303
+ input:-webkit-autofill {
304
+ -webkit-text-fill-color: var(--text);
305
+ box-shadow: 0 0 0 1000px var(--surface0) inset;
306
+ }
307
+
308
+ .breadcrumb {
309
+ color: var(--blue);
310
+ }
311
+
312
+ .breadcrumb li a {
313
+ color: var(--yellow);
314
+ }
315
+
316
+ .breadcrumb li.is-active a {
317
+ color: var(--mauve);
318
+ }
319
+
320
+ .pagination-link.is-current,
321
+ .pagination-link:hover,
322
+ .pagination-next:hover,
323
+ .pagination-previous:hover {
324
+ background-color: var(--lavender);
325
+ color: var(--base);
326
+ }
327
+
328
+ .searchbox-container {
329
+ background-color: var(--mantle);
330
+ border: 2px solid var(--surface0);
331
+ color: var(--text);
332
+ }
333
+
334
+ .searchbox-input {
335
+ color: var(--text);
336
+ background-color: var(--mantle);
337
+ border: none;
338
+ }
339
+
340
+ .searchbox-result-item.active span {
341
+ color: var(--yellow);
342
+ }
343
+
344
+ .searchbox-result-item:hover span {
345
+ color: var(--mauve);
346
+ }
347
+
348
+ /* #endregion Color */
349
+
350
+ /* #region Font */
351
+ @font-face {
352
+ font-family: doto;
353
+ font-style: normal;
354
+ font-weight: 400;
355
+ font-display: swap;
356
+ src: url(/css/font/woff2/doto.woff2) format("woff2");
357
+ }
358
+
359
+ @font-face {
360
+ font-family: Paris2024;
361
+ font-style: normal;
362
+ font-weight: 400;
363
+ font-display: swap;
364
+ src:
365
+ local("paris2024"),
366
+ url(/css/font/woff2/Paris2024-Variable.woff2) format("woff2");
367
+ }
368
+
369
+ @font-face {
370
+ font-family: Futura;
371
+ font-weight: 400;
372
+ src:
373
+ local("Futura"),
374
+ url(/css/font/woff2/Futura-Book.woff2) format("woff2");
375
+ }
376
+ /* #endregion */
377
+
378
+ blockquote,
379
+ body,
380
+ dd,
381
+ dl,
382
+ dt,
383
+ figure,
384
+ h1,
385
+ h2,
386
+ h3,
387
+ h4,
388
+ h5,
389
+ h6,
390
+ hr,
391
+ html,
392
+ iframe,
393
+ legend,
394
+ li,
395
+ ol,
396
+ p,
397
+ pre,
398
+ textarea,
399
+ ul {
400
+ margin: 0;
401
+ padding: 0;
402
+ }
403
+
404
+ ul {
405
+ list-style: none;
406
+ }
407
+
408
+ button,
409
+ input,
410
+ select,
411
+ textarea {
412
+ margin: 0;
413
+ }
414
+
415
+ html {
416
+ box-sizing: border-box;
417
+ height: 100%;
418
+ font-size: 16px;
419
+ scroll-behavior: smooth;
420
+ min-width: 300px;
421
+ overflow-x: hidden;
422
+ overflow-y: scroll;
423
+ }
424
+
425
+ body {
426
+ min-height: 100%;
427
+ font-weight: 400;
428
+ font-family:
429
+ -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
430
+ font-size: 1em;
431
+ line-height: 1.5;
432
+ display: flex;
433
+ flex-direction: column;
434
+ }
435
+
436
+ img,
437
+ video {
438
+ height: auto;
439
+ max-width: 100%;
440
+ }
441
+
442
+ .breadcrumb,
443
+ .pagination-ellipsis,
444
+ .pagination-link,
445
+ .pagination-next,
446
+ .pagination-previous {
447
+ -webkit-touch-callout: none;
448
+ -webkit-user-select: none;
449
+ -moz-user-select: none;
450
+ -ms-user-select: none;
451
+ user-select: none;
452
+ }
453
+
454
+ .content p:not(:last-child),
455
+ .breadcrumb:not(:last-child),
456
+ .content:not(:last-child),
457
+ .level:not(:last-child),
458
+ .pagination:not(:last-child) {
459
+ margin-bottom: 0.5rem;
460
+ }
461
+
462
+ .breadcrumb {
463
+ white-space: nowrap;
464
+ font-family: monospace;
465
+ }
466
+
467
+ .breadcrumb a {
468
+ align-items: center;
469
+ display: flex;
470
+ justify-content: center;
471
+ padding: 0 0.1em;
472
+ }
473
+
474
+ .breadcrumb li {
475
+ align-items: center;
476
+ display: flex;
477
+ }
478
+
479
+ .breadcrumb li:first-child a {
480
+ padding-left: 0;
481
+ }
482
+
483
+ .breadcrumb li.is-active a {
484
+ cursor: default;
485
+ pointer-events: none;
486
+ }
487
+
488
+ .breadcrumb li + li::before {
489
+ content: "\0002f";
490
+ }
491
+
492
+ .breadcrumb ol,
493
+ .breadcrumb ul {
494
+ align-items: flex-start;
495
+ display: flex;
496
+ flex-wrap: wrap;
497
+ justify-content: flex-start;
498
+ }
499
+
500
+ .footer,
501
+ .widget {
502
+ font-family:
503
+ Futura, Paris2024, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
504
+ }
505
+
506
+ .card {
507
+ max-width: 100%;
508
+ position: relative;
509
+ border-radius: 24px;
510
+ overflow: visible;
511
+ }
512
+
513
+ .card + .card {
514
+ margin-top: 1.5rem;
515
+ }
516
+
517
+ .card-image {
518
+ display: block;
519
+ position: relative;
520
+ border-radius: 24px;
521
+ overflow: hidden;
522
+ }
523
+
524
+ .card-image .cover-lqip,
525
+ .card-image .fill {
526
+ position: absolute;
527
+ top: 0;
528
+ left: 0;
529
+ width: 100%;
530
+ height: 100%;
531
+ object-fit: cover;
532
+ }
533
+
534
+ .card-image .cover-lqip {
535
+ z-index: 1;
536
+ transition: opacity 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
537
+ }
538
+
539
+ .card-image .fill.loaded + .cover-lqip {
540
+ display: none;
541
+ }
542
+
543
+ .card-content {
544
+ padding: 1.25rem;
545
+ border-radius: 0;
546
+ }
547
+
548
+ .level {
549
+ align-items: center;
550
+ justify-content: space-between;
551
+ }
552
+
553
+ .level img {
554
+ display: inline-block;
555
+ vertical-align: top;
556
+ }
557
+
558
+ .level.is-mobile {
559
+ display: flex;
560
+ }
561
+
562
+ .level.is-mobile .level-item:not(:last-child) {
563
+ margin-bottom: 0;
564
+ margin-right: 0.4rem;
565
+ }
566
+
567
+ .level.is-mobile .level-item:not(.is-narrow) {
568
+ flex-grow: 1;
569
+ }
570
+
571
+ .level-item {
572
+ align-items: center;
573
+ display: flex;
574
+ flex-basis: auto;
575
+ flex-grow: 0;
576
+ flex-shrink: 0;
577
+ justify-content: center;
578
+ }
579
+
580
+ /* #region Navbar */
581
+
582
+ .navbar {
583
+ min-height: 4rem;
584
+ position: sticky;
585
+ top: 0;
586
+ left: 0;
587
+ right: 0;
588
+ transition: transform 0.3s ease-in-out;
589
+ z-index: 100;
590
+ font-family:
591
+ Futura, Paris2024, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
592
+ }
593
+ .navbar-container {
594
+ flex-grow: 1;
595
+ margin: 0 auto;
596
+ width: auto;
597
+ display: flex;
598
+ min-height: 4rem;
599
+ }
600
+
601
+ .navbar button {
602
+ background: 0 0;
603
+ border: none;
604
+ cursor: pointer;
605
+ }
606
+
607
+ .navbar-main.navbar--hidden {
608
+ transform: translateY(-100%);
609
+ }
610
+
611
+ .navbar-menu {
612
+ display: none;
613
+ }
614
+
615
+ .navbar-item {
616
+ align-items: center;
617
+ display: flex;
618
+ font-size: 1.1rem;
619
+ padding: 0 0.4rem;
620
+ position: relative;
621
+ flex-grow: 0;
622
+ flex-shrink: 0;
623
+ }
624
+
625
+ .navbar-item svg {
626
+ width: 15px;
627
+ }
628
+
629
+ .navbar-menu {
630
+ flex-grow: 1;
631
+ flex-shrink: 0;
632
+ }
633
+
634
+ .navbar-start {
635
+ justify-content: flex-start;
636
+ margin-right: auto;
637
+ }
638
+
639
+ .navbar-end {
640
+ justify-content: flex-end;
641
+ margin-left: auto;
642
+ }
643
+
644
+ /* #endregion Navbar */
645
+
646
+ /* #region Theme Selector */
647
+
648
+ .theme-selector-modal {
649
+ position: fixed;
650
+ inset: 0;
651
+ z-index: 9999;
652
+ display: flex;
653
+ align-items: center;
654
+ justify-content: center;
655
+ opacity: 0;
656
+ visibility: hidden;
657
+ pointer-events: none;
658
+ transition:
659
+ opacity 0.2s ease,
660
+ visibility 0.2s ease;
661
+ }
662
+
663
+ .theme-selector-content {
664
+ position: relative;
665
+ z-index: 1;
666
+ background-color: var(--crust);
667
+ border-radius: 16px;
668
+ border: 2px solid var(--surface0);
669
+ padding: 2rem;
670
+ width: 90%;
671
+ max-width: 480px;
672
+ transform: scale(0.9);
673
+ opacity: 0;
674
+ transition:
675
+ transform 0.2s ease,
676
+ opacity 0.2s ease;
677
+ }
678
+
679
+ .theme-selector-modal.is-active {
680
+ opacity: 1;
681
+ visibility: visible;
682
+ pointer-events: auto;
683
+ .theme-selector-content {
684
+ transform: scale(1);
685
+ opacity: 1;
686
+ }
687
+ }
688
+
689
+ .theme-selector-header {
690
+ margin-bottom: 1.5rem;
691
+ text-align: center;
692
+ }
693
+
694
+ .theme-selector-title {
695
+ font-size: 1.75rem;
696
+ font-weight: 700;
697
+ color: var(--text);
698
+ margin-bottom: 0.5rem;
699
+ }
700
+
701
+ .theme-selector-hint {
702
+ font-size: 0.875rem;
703
+ color: var(--subtext0);
704
+ font-family: "Maple Mono NF CN", monospace;
705
+ }
706
+
707
+ .theme-selector-list {
708
+ display: flex;
709
+ flex-direction: column;
710
+ gap: 0.5rem;
711
+ max-height: 60vh;
712
+ overflow-y: auto;
713
+ padding: 0.5rem;
714
+ }
715
+
716
+ .theme-option {
717
+ display: flex;
718
+ align-items: center;
719
+ gap: 1rem;
720
+ padding: 1rem 1.25rem;
721
+ background-color: var(--mantle);
722
+ border-radius: 12px;
723
+ cursor: pointer;
724
+ transition: all 0.2s ease;
725
+ position: relative;
726
+ &:hover {
727
+ background-color: var(--surface0);
728
+ border-color: var(--blue);
729
+ transform: translateX(4px);
730
+ }
731
+ &.is-focused {
732
+ background-color: var(--surface1);
733
+ transform: translateX(8px);
734
+ }
735
+ .theme-name {
736
+ flex: 1;
737
+ font-size: 1.125rem;
738
+ font-weight: 600;
739
+ }
740
+ .theme-check {
741
+ font-size: 1rem;
742
+ color: var(--green);
743
+ opacity: 0;
744
+ transition: opacity 0.2s ease;
745
+ }
746
+ }
747
+
748
+ .theme-option.is-active .theme-check {
749
+ opacity: 1;
750
+ }
751
+
752
+ .theme-selector-trigger {
753
+ cursor: pointer;
754
+ transition: all 0.2s ease;
755
+ &:hover {
756
+ color: var(--blue);
757
+ transform: scale(1.1);
758
+ }
759
+ }
760
+
761
+ /* #endregion Theme Selector */
762
+
763
+ /* #region Pagination */
764
+
765
+ .pagination {
766
+ margin: -0.25rem;
767
+ }
768
+
769
+ .pagination,
770
+ .pagination-list {
771
+ align-items: center;
772
+ display: flex;
773
+ justify-content: center;
774
+ text-align: center;
775
+ }
776
+
777
+ .pagination-ellipsis,
778
+ .pagination-link,
779
+ .pagination-next,
780
+ .pagination-previous {
781
+ height: 2.5em;
782
+ border-radius: 4px;
783
+ font-size: 1.1em;
784
+ margin: 0.25rem;
785
+ padding: 0 0.5em;
786
+ justify-content: center;
787
+ text-align: center;
788
+ align-items: center;
789
+ display: inline-flex;
790
+ line-height: 1.5;
791
+ position: relative;
792
+ vertical-align: top;
793
+ }
794
+
795
+ .pagination-link,
796
+ .pagination-next,
797
+ .pagination-previous {
798
+ min-width: 1.5em;
799
+ }
800
+
801
+ .pagination-next,
802
+ .pagination-previous {
803
+ padding-left: 0.75em;
804
+ padding-right: 0.75em;
805
+ white-space: nowrap;
806
+ }
807
+
808
+ .pagination-ellipsis {
809
+ pointer-events: none;
810
+ }
811
+
812
+ .pagination-list {
813
+ flex-wrap: wrap;
814
+ }
815
+
816
+ /* #endregion Pagination */
817
+
818
+ /* #region Tabs */
819
+
820
+ .tabs-tabs-wrapper {
821
+ overflow: hidden;
822
+ margin: 10px auto;
823
+ }
824
+
825
+ .tabs-tabs-header {
826
+ display: flex;
827
+ padding: 0 10px;
828
+ }
829
+
830
+ .tabs-tab-button {
831
+ flex: 1;
832
+ padding: 16px 5px;
833
+ border: none;
834
+ background: 0 0;
835
+ font-size: 15px;
836
+ font-weight: 500;
837
+ cursor: pointer;
838
+ position: relative;
839
+ transition: color 0.3s ease;
840
+ outline: 0;
841
+ &:hover {
842
+ color: var(--lavender);
843
+ }
844
+ }
845
+
846
+ .tabs-tab-button.active,
847
+ .tabs-tab-button[data-active] {
848
+ color: var(--lavender);
849
+ font-weight: bolder;
850
+ }
851
+
852
+ .tabs-tab-button.active::after {
853
+ content: "";
854
+ position: absolute;
855
+ bottom: 0;
856
+ left: 0;
857
+ width: 100%;
858
+ height: 2px;
859
+ background-color: var(--lavender);
860
+ border-radius: 2px 2px 0 0;
861
+ animation: slideIn 0.3s ease;
862
+ }
863
+
864
+ .tabs-tabs-container {
865
+ padding: 18px 0 10px 0;
866
+ }
867
+
868
+ .tabs-tab-content {
869
+ display: none;
870
+ }
871
+
872
+ .tabs-tab-content.active,
873
+ .tabs-tab-content[data-active] {
874
+ display: block;
875
+ }
876
+
877
+ /* #endregion Tabs */
878
+
879
+ .section {
880
+ padding: 3rem 1.5rem;
881
+ flex-grow: 1;
882
+ }
883
+
884
+ .main-content {
885
+ -webkit-justify-content: center;
886
+ justify-content: center;
887
+ flex-grow: 1;
888
+ margin: 0 auto;
889
+ position: relative;
890
+ max-width: 900px;
891
+ }
892
+
893
+ /* #region Footer */
894
+
895
+ .footer {
896
+ padding: 3rem 1.5rem 6rem;
897
+ position: relative;
898
+ iconify-icon {
899
+ font-size: 1.2rem;
900
+ }
901
+ }
902
+
903
+ .footer-grid {
904
+ display: grid;
905
+ grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
906
+ grid-gap: 1.5rem;
907
+ align-items: start;
908
+ }
909
+
910
+ .footer-column {
911
+ display: flex;
912
+ flex-direction: column;
913
+ gap: 0.5rem;
914
+ }
915
+
916
+ .footer-title {
917
+ font-weight: bolder;
918
+ font-size: 1.1rem;
919
+ margin-bottom: 0.25rem;
920
+ }
921
+
922
+ .footer-heading {
923
+ font-weight: bolder;
924
+ font-size: 1.1rem;
925
+ margin-bottom: 0.25rem;
926
+ }
927
+
928
+ .footer-meta {
929
+ font-size: 0.75rem;
930
+ color: var(--subtext0);
931
+ line-height: 1.6;
932
+ }
933
+
934
+ .footer-links {
935
+ display: flex;
936
+ flex-wrap: wrap;
937
+ gap: 0.5rem 1rem;
938
+ align-items: center;
939
+ }
940
+
941
+ .footer-link {
942
+ display: inline-flex;
943
+ align-items: center;
944
+ gap: 0.4rem;
945
+ color: var(--subtext0);
946
+ text-decoration: none;
947
+ &:hover {
948
+ text-decoration: underline;
949
+ }
950
+ }
951
+
952
+ /* #endregion Footer */
953
+
954
+ ::-webkit-scrollbar {
955
+ display: none;
956
+ }
957
+
958
+ /* #region Content */
959
+
960
+ .content {
961
+ overflow: auto;
962
+ word-wrap: break-word;
963
+ font-size: 1.15rem;
964
+
965
+ h2 {
966
+ text-align: center;
967
+ font-size: 1.75em;
968
+ margin-bottom: 0.5714em;
969
+ }
970
+ h2:not(:first-child) {
971
+ margin-top: 1.1428em;
972
+ }
973
+ h3 {
974
+ font-size: 1.5em;
975
+ margin-bottom: 0.6666em;
976
+ }
977
+ h4 {
978
+ font-size: 1.25em;
979
+ margin-bottom: 0.8em;
980
+ }
981
+ h5 {
982
+ font-size: 1.125em;
983
+ margin-bottom: 0.8888em;
984
+ }
985
+ h6 {
986
+ font-size: 1em;
987
+ margin-bottom: 1em;
988
+ }
989
+ li + li {
990
+ margin-top: 0.25em;
991
+ }
992
+ img,
993
+ video {
994
+ display: block;
995
+ margin: 0 auto;
996
+ margin-bottom: 1.5rem;
997
+ border-radius: 2px;
998
+ }
999
+
1000
+ img:hover,
1001
+ video:hover {
1002
+ cursor: pointer;
1003
+ }
1004
+
1005
+ code {
1006
+ font-family:
1007
+ Maple Mono NF CN,
1008
+ SF Pro,
1009
+ monospace;
1010
+ border-radius: 6px;
1011
+ padding: 1px 6px;
1012
+ }
1013
+
1014
+ ol {
1015
+ list-style-position: outside;
1016
+ margin-left: 2em;
1017
+ margin-top: 1em;
1018
+ }
1019
+
1020
+ ul {
1021
+ list-style: disc outside;
1022
+ margin-left: 2em;
1023
+ margin-top: 1em;
1024
+ }
1025
+
1026
+ ul ul {
1027
+ list-style-type: circle;
1028
+ margin-top: 0.5em;
1029
+ }
1030
+
1031
+ ul ul ul {
1032
+ list-style-type: square;
1033
+ }
1034
+
1035
+ dd {
1036
+ margin-left: 2em;
1037
+ }
1038
+
1039
+ figure {
1040
+ margin-left: 2em;
1041
+ margin-right: 2em;
1042
+ text-align: center;
1043
+ }
1044
+
1045
+ figure:not(:first-child) {
1046
+ margin-top: 2em;
1047
+ }
1048
+
1049
+ figure:not(:last-child) {
1050
+ margin-bottom: 2em;
1051
+ }
1052
+
1053
+ figure img {
1054
+ display: inline-block;
1055
+ }
1056
+
1057
+ figure figcaption {
1058
+ font-style: italic;
1059
+ }
1060
+
1061
+ pre {
1062
+ -webkit-overflow-scrolling: touch;
1063
+ overflow-x: auto;
1064
+ font-size: 0.85em;
1065
+ padding: 1.25em 1.5em;
1066
+ white-space: pre;
1067
+ word-wrap: normal;
1068
+ }
1069
+
1070
+ sub,
1071
+ sup {
1072
+ font-size: 75%;
1073
+ }
1074
+
1075
+ abbr[title] {
1076
+ text-decoration: underline dotted;
1077
+ cursor: help;
1078
+ position: relative;
1079
+ }
1080
+
1081
+ a[href*="apple"]::before,
1082
+ a[href*="github"]::before,
1083
+ a[href*="wikipedia"]::before,
1084
+ a[href*="youtube"]::before {
1085
+ font-family: "Maple Mono NF CN", monospace;
1086
+ font-size: 1em;
1087
+ padding-left: 0.5em;
1088
+ color: var(--lavender);
1089
+ }
1090
+
1091
+ a[href*="github"]::before {
1092
+ content: "󰊤 ";
1093
+ }
1094
+
1095
+ a[href*="wikipedia"]::before {
1096
+ content: "󰖬 ";
1097
+ }
1098
+
1099
+ a[href*="youtube"]::before {
1100
+ content: " ";
1101
+ }
1102
+
1103
+ a[href*="apple"]::before {
1104
+ content: " ";
1105
+ }
1106
+ }
1107
+
1108
+ .footnotes {
1109
+ font-family: serif;
1110
+ font-size: 0.9em;
1111
+ }
1112
+
1113
+ table {
1114
+ width: 100%;
1115
+ border-collapse: separate;
1116
+ border-spacing: 0;
1117
+ border-radius: 8px;
1118
+ overflow: hidden;
1119
+ margin: 2em 0;
1120
+ font-size: 0.875em;
1121
+ border: 1px solid var(--surface0);
1122
+ }
1123
+
1124
+ table td,
1125
+ table th {
1126
+ vertical-align: middle;
1127
+ padding: 0.75em 1em;
1128
+ }
1129
+
1130
+ table thead th {
1131
+ font-weight: 700;
1132
+ border-bottom: 1px solid var(--surface0);
1133
+ padding: 1em;
1134
+ }
1135
+
1136
+ table td:not([align]),
1137
+ table th:not([align]) {
1138
+ text-align: left;
1139
+ }
1140
+
1141
+ table tbody tr td {
1142
+ border-bottom: 1px solid var(--surface0);
1143
+ }
1144
+
1145
+ table tbody tr:last-child td {
1146
+ border-bottom: none;
1147
+ }
1148
+
1149
+ blockquote {
1150
+ position: relative;
1151
+ padding: 1.5rem 2rem 1.5rem 3rem;
1152
+ margin: 1.5rem 0;
1153
+ border-left: 4px solid var(--red);
1154
+ border-radius: 0 8px 8px 0;
1155
+ font-weight: bolder;
1156
+ font-family: serif;
1157
+ font-style: italic;
1158
+ font-size: 1.05rem;
1159
+ line-height: 1.6;
1160
+ }
1161
+
1162
+ blockquote:before {
1163
+ content: '"';
1164
+ position: absolute;
1165
+ left: 0.5rem;
1166
+ top: 0.2rem;
1167
+ font-size: 3rem;
1168
+ font-weight: 700;
1169
+ opacity: 0.3;
1170
+ line-height: 1;
1171
+ }
1172
+
1173
+ ul.contains-task-list {
1174
+ list-style-type: none;
1175
+ }
1176
+
1177
+ li.task-list-item {
1178
+ display: flex;
1179
+ align-items: center;
1180
+ gap: 0.75rem;
1181
+ font-size: 1rem;
1182
+ }
1183
+
1184
+ input.task-list-item-checkbox {
1185
+ appearance: none;
1186
+ -webkit-appearance: none;
1187
+ width: 1.2rem;
1188
+ height: 1.2rem;
1189
+ border: 2px solid var(--surface1);
1190
+ border-radius: 0.375rem;
1191
+ position: relative;
1192
+ }
1193
+
1194
+ input.task-list-item-checkbox:checked::before {
1195
+ content: "";
1196
+ font-family: "Maple Mono NF CN", monospace;
1197
+ color: var(--base);
1198
+ position: absolute;
1199
+ top: 50%;
1200
+ left: 40%;
1201
+ transform: translate(-50%, -50%);
1202
+ font-size: 0.9rem;
1203
+ font-weight: 700;
1204
+ }
1205
+
1206
+ .medium-zoom-overlay {
1207
+ backdrop-filter: blur(8px);
1208
+ -webkit-backdrop-filter: blur(8px);
1209
+ z-index: 150 !important;
1210
+ }
1211
+
1212
+ .medium-zoom-image--opened {
1213
+ z-index: 151;
1214
+ position: fixed;
1215
+ }
1216
+
1217
+ .heimu {
1218
+ color: var(--text);
1219
+ background-color: var(--text);
1220
+ }
1221
+
1222
+ .heimu:hover {
1223
+ color: var(--base);
1224
+ }
1225
+
1226
+ .title {
1227
+ word-break: break-word;
1228
+ margin-bottom: 0.4em;
1229
+ position: relative;
1230
+ display: inline-block;
1231
+ transition: color 0.3s ease-out;
1232
+ font-size: 2.3em;
1233
+ font-weight: 800;
1234
+ line-height: 1.2;
1235
+ }
1236
+
1237
+ .title .tag {
1238
+ vertical-align: middle;
1239
+ }
1240
+
1241
+ code {
1242
+ font-size: 0.875em;
1243
+ font-weight: 400;
1244
+ padding: 0.25em 0.5em 0.25em;
1245
+ }
1246
+
1247
+ strong {
1248
+ font-weight: 700;
1249
+ }
1250
+
1251
+ hr {
1252
+ border: none;
1253
+ display: block;
1254
+ height: 2px;
1255
+ margin: 1.5rem 0;
1256
+ }
1257
+
1258
+ a {
1259
+ cursor: pointer;
1260
+ text-decoration: none;
1261
+ }
1262
+
1263
+ a strong {
1264
+ color: currentColor;
1265
+ }
1266
+
1267
+ img {
1268
+ height: auto;
1269
+ max-width: 100%;
1270
+ }
1271
+
1272
+ input[type="checkbox"],
1273
+ input[type="radio"] {
1274
+ vertical-align: baseline;
1275
+ }
1276
+
1277
+ small {
1278
+ font-size: 0.875em;
1279
+ }
1280
+
1281
+ /* #endregion Content */
1282
+
1283
+ .image {
1284
+ display: block;
1285
+ position: relative;
1286
+ }
1287
+
1288
+ .image img {
1289
+ display: block;
1290
+ height: auto;
1291
+ width: 100%;
1292
+ }
1293
+
1294
+ .image.is-7by3 {
1295
+ padding-top: 42.8%;
1296
+ }
1297
+
1298
+ .image.is-7by3 img {
1299
+ bottom: 0;
1300
+ left: 0;
1301
+ position: absolute;
1302
+ right: 0;
1303
+ top: 0;
1304
+ }
1305
+
1306
+ .image .fill {
1307
+ object-fit: cover;
1308
+ width: 100%;
1309
+ height: 100%;
1310
+ }
1311
+
1312
+ /* #region Tags */
1313
+
1314
+ .tags {
1315
+ font-family: monospace;
1316
+ flex-wrap: wrap;
1317
+ justify-content: flex-start;
1318
+ padding: 0.5rem 0.5rem;
1319
+ display: inline-flex;
1320
+ align-items: center;
1321
+ transition: all 0.3s ease;
1322
+ &:hover {
1323
+ transform: translateY(-2px);
1324
+ }
1325
+ }
1326
+
1327
+ .tag {
1328
+ padding: 0 0.75em;
1329
+ transition: all 0.3s ease;
1330
+ border-style: solid;
1331
+ align-items: center;
1332
+ border-radius: 5px;
1333
+ display: inline-flex;
1334
+ font-size: 0.75rem;
1335
+ height: 2em;
1336
+ white-space: nowrap;
1337
+ }
1338
+
1339
+ .tag:first-child {
1340
+ border-width: 1px 0 1px 1px;
1341
+ border-radius: 5px 0 0 5px;
1342
+ }
1343
+
1344
+ .tag:first-child::before {
1345
+ content: "#";
1346
+ opacity: 0.7;
1347
+ margin-right: 0.25em;
1348
+ }
1349
+
1350
+ .tag:last-child {
1351
+ border-width: 1px 1px 1px 0;
1352
+ border-radius: 0 5px 5px 0;
1353
+ }
1354
+
1355
+ /* #endregion Tags */
1356
+
1357
+ :target {
1358
+ scroll-margin-top: 20vh;
1359
+ }
1360
+
1361
+ article,
1362
+ aside,
1363
+ figure,
1364
+ footer,
1365
+ header,
1366
+ hgroup,
1367
+ section {
1368
+ display: block;
1369
+ }
1370
+
1371
+ .article:has(.article-licensing) {
1372
+ padding-bottom: 0 !important;
1373
+ }
1374
+
1375
+ .article-meta {
1376
+ font-family: "Maple Mono NF CN", monospace;
1377
+ font-size: 0.8rem;
1378
+ overflow-x: auto;
1379
+ margin-bottom: 0.1rem;
1380
+ }
1381
+
1382
+ .article-meta a {
1383
+ color: var(--text);
1384
+ &:hover {
1385
+ color: var(--peach);
1386
+ }
1387
+ }
1388
+
1389
+ .article-meta span {
1390
+ padding-right: 0.5rem;
1391
+ }
1392
+
1393
+ /* #region Licensing */
1394
+
1395
+ .article-licensing {
1396
+ display: block;
1397
+ position: relative;
1398
+ margin-left: -1.25rem;
1399
+ margin-right: -1.25rem;
1400
+ padding: 1.25rem;
1401
+ z-index: 0;
1402
+ border-radius: 0 0 24px 24px;
1403
+ box-shadow: none;
1404
+ overflow: hidden;
1405
+ }
1406
+
1407
+ .article-licensing-bg-icon {
1408
+ position: absolute;
1409
+ z-index: -1;
1410
+ right: -50px;
1411
+ top: -88px;
1412
+ font-size: 200px;
1413
+ opacity: 0.1;
1414
+ pointer-events: none;
1415
+ }
1416
+
1417
+ .licensing-title {
1418
+ margin-bottom: 0.75rem;
1419
+ line-height: 1.2;
1420
+ }
1421
+
1422
+ .licensing-title p:not(:last-child) {
1423
+ margin-bottom: 0.25rem;
1424
+ }
1425
+
1426
+ .licensing-title a {
1427
+ font-size: 0.75rem;
1428
+ }
1429
+
1430
+ .licensing-meta .level-item {
1431
+ margin-right: 1.5rem;
1432
+ font-size: 0.75rem;
1433
+ }
1434
+
1435
+ .licensing-meta iconify-icon {
1436
+ font-size: 1.5em;
1437
+ vertical-align: bottom;
1438
+ }
1439
+
1440
+ .licensing-meta a {
1441
+ color: inherit;
1442
+ }
1443
+
1444
+ /* #endregion Licensing */
1445
+
1446
+ /* #region Search */
1447
+
1448
+ .searchbox {
1449
+ position: fixed;
1450
+ top: 0;
1451
+ left: 0;
1452
+ width: 100%;
1453
+ height: 100%;
1454
+ z-index: 100;
1455
+ font-family:
1456
+ Maple Mono NF CN,
1457
+ monospace;
1458
+ line-height: 0;
1459
+ opacity: 0;
1460
+ visibility: hidden;
1461
+ display: flex;
1462
+ }
1463
+
1464
+ .searchbox.show {
1465
+ opacity: 1;
1466
+ visibility: visible;
1467
+ backdrop-filter: blur(5px);
1468
+ -webkit-backdrop-filter: blur(5px);
1469
+ }
1470
+
1471
+ input.searchbox-input {
1472
+ font-size: 1rem;
1473
+ font-family: inherit;
1474
+ border: none;
1475
+ outline: 0;
1476
+ box-shadow: none;
1477
+ border-radius: 0;
1478
+ flex-grow: 1;
1479
+ box-sizing: border-box;
1480
+ padding: 0.75em 0 0.75em 1.25em;
1481
+ }
1482
+
1483
+ .searchbox,
1484
+ .searchbox-container {
1485
+ align-items: center;
1486
+ flex-direction: column;
1487
+ line-height: 1.25em;
1488
+ }
1489
+
1490
+ .searchbox-container {
1491
+ position: fixed;
1492
+ z-index: 101;
1493
+ display: flex;
1494
+ overflow: hidden;
1495
+ border-radius: 24px;
1496
+ width: 640px;
1497
+ top: 100px;
1498
+ }
1499
+
1500
+ .searchbox-body,
1501
+ .searchbox-footer {
1502
+ width: 100%;
1503
+ }
1504
+
1505
+ .searchbox-input-container {
1506
+ width: 100%;
1507
+ display: flex;
1508
+ flex-direction: row;
1509
+ line-height: 1.5em;
1510
+ font-weight: 400;
1511
+ min-height: 3rem;
1512
+ }
1513
+
1514
+ .searchbox-body {
1515
+ flex-grow: 1;
1516
+ overflow-y: auto;
1517
+ border-top: 1px solid var(--base);
1518
+ }
1519
+
1520
+ .searchbox-result-item,
1521
+ .searchbox-result-section header {
1522
+ padding: 0.75em 1em;
1523
+ }
1524
+
1525
+ .searchbox-result-section {
1526
+ border-bottom: 1px dotted var(--base);
1527
+ }
1528
+
1529
+ .searchbox-result-item {
1530
+ display: flex;
1531
+ flex-direction: row;
1532
+ }
1533
+
1534
+ .searchbox-result-icon {
1535
+ margin-right: 1em;
1536
+ }
1537
+
1538
+ .searchbox-result-content {
1539
+ overflow: hidden;
1540
+ }
1541
+
1542
+ .searchbox-result-preview {
1543
+ color: var(--subtext0);
1544
+ }
1545
+ .searchbox-result-preview,
1546
+ .searchbox-result-title {
1547
+ display: block;
1548
+ overflow: hidden;
1549
+ white-space: nowrap;
1550
+ text-overflow: ellipsis;
1551
+ }
1552
+
1553
+ .searchbox-result-preview {
1554
+ margin-top: 0.25em;
1555
+ }
1556
+
1557
+ .searchbox-footer {
1558
+ padding: 0.5em 1em;
1559
+ }
1560
+
1561
+ .searchbox-pagination {
1562
+ margin: 0;
1563
+ padding: 0;
1564
+ list-style: none;
1565
+ text-align: center;
1566
+ }
1567
+
1568
+ .searchbox-pagination .searchbox-pagination-item {
1569
+ margin: 0 0.25rem;
1570
+ }
1571
+
1572
+ .searchbox-pagination .searchbox-pagination-item,
1573
+ .searchbox-pagination .searchbox-pagination-link {
1574
+ display: inline-block;
1575
+ }
1576
+
1577
+ .searchbox-pagination .searchbox-pagination-link {
1578
+ overflow: hidden;
1579
+ padding: 0.5em 0.8em;
1580
+ border-radius: 24px;
1581
+ }
1582
+
1583
+ .searchbox
1584
+ .searchbox-pagination
1585
+ .searchbox-pagination-item.disabled
1586
+ .searchbox-pagination-link {
1587
+ cursor: not-allowed;
1588
+ }
1589
+
1590
+ /* #endregion Search */