al_folio_core 1.0.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 (274) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +12 -0
  3. data/LICENSE +20 -0
  4. data/README.md +28 -0
  5. data/_includes/audio 2.liquid +30 -0
  6. data/_includes/audio.liquid +30 -0
  7. data/_includes/bib_search 2.liquid +4 -0
  8. data/_includes/bib_search.liquid +4 -0
  9. data/_includes/calendar 2.liquid +25 -0
  10. data/_includes/calendar.liquid +25 -0
  11. data/_includes/citation 2.liquid +26 -0
  12. data/_includes/citation.liquid +26 -0
  13. data/_includes/course_schedule 2.liquid +71 -0
  14. data/_includes/course_schedule.liquid +71 -0
  15. data/_includes/courses 2.liquid +37 -0
  16. data/_includes/courses.liquid +37 -0
  17. data/_includes/disqus 2.liquid +13 -0
  18. data/_includes/disqus.liquid +13 -0
  19. data/_includes/figure 2.liquid +86 -0
  20. data/_includes/figure.liquid +86 -0
  21. data/_includes/footer 2.liquid +34 -0
  22. data/_includes/footer.liquid +34 -0
  23. data/_includes/giscus 2.liquid +25 -0
  24. data/_includes/giscus.liquid +25 -0
  25. data/_includes/head 2.liquid +147 -0
  26. data/_includes/head.liquid +147 -0
  27. data/_includes/header 2.liquid +149 -0
  28. data/_includes/header.liquid +149 -0
  29. data/_includes/latest_posts 2.liquid +48 -0
  30. data/_includes/latest_posts.liquid +48 -0
  31. data/_includes/metadata 2.liquid +247 -0
  32. data/_includes/metadata.liquid +247 -0
  33. data/_includes/news 2.liquid +34 -0
  34. data/_includes/news.liquid +34 -0
  35. data/_includes/newsletter 2.liquid +68 -0
  36. data/_includes/newsletter.liquid +68 -0
  37. data/_includes/pagination 2.liquid +21 -0
  38. data/_includes/pagination.liquid +21 -0
  39. data/_includes/plugins/al_analytics_scripts 2.liquid +4 -0
  40. data/_includes/plugins/al_analytics_scripts.liquid +4 -0
  41. data/_includes/plugins/al_charts_scripts 2.liquid +4 -0
  42. data/_includes/plugins/al_charts_scripts.liquid +4 -0
  43. data/_includes/plugins/al_comments 2.liquid +4 -0
  44. data/_includes/plugins/al_comments.liquid +4 -0
  45. data/_includes/plugins/al_cookie_scripts 2.liquid +4 -0
  46. data/_includes/plugins/al_cookie_scripts.liquid +4 -0
  47. data/_includes/plugins/al_cookie_styles 2.liquid +4 -0
  48. data/_includes/plugins/al_cookie_styles.liquid +4 -0
  49. data/_includes/plugins/al_img_tools_scripts 2.liquid +4 -0
  50. data/_includes/plugins/al_img_tools_scripts.liquid +4 -0
  51. data/_includes/plugins/al_img_tools_styles 2.liquid +4 -0
  52. data/_includes/plugins/al_img_tools_styles.liquid +4 -0
  53. data/_includes/plugins/al_math_scripts 2.liquid +4 -0
  54. data/_includes/plugins/al_math_scripts.liquid +4 -0
  55. data/_includes/plugins/al_math_styles 2.liquid +4 -0
  56. data/_includes/plugins/al_math_styles.liquid +4 -0
  57. data/_includes/plugins/al_newsletter_form_center 2.liquid +4 -0
  58. data/_includes/plugins/al_newsletter_form_center.liquid +4 -0
  59. data/_includes/plugins/al_newsletter_form_center_margin 2.liquid +1 -0
  60. data/_includes/plugins/al_newsletter_form_center_margin.liquid +1 -0
  61. data/_includes/plugins/al_newsletter_form_left 2.liquid +1 -0
  62. data/_includes/plugins/al_newsletter_form_left.liquid +1 -0
  63. data/_includes/plugins/al_newsletter_scripts 2.liquid +1 -0
  64. data/_includes/plugins/al_newsletter_scripts.liquid +1 -0
  65. data/_includes/plugins/al_search_assets 2.liquid +5 -0
  66. data/_includes/plugins/al_search_assets.liquid +5 -0
  67. data/_includes/projects 2.liquid +35 -0
  68. data/_includes/projects.liquid +35 -0
  69. data/_includes/projects_horizontal 2.liquid +34 -0
  70. data/_includes/projects_horizontal.liquid +34 -0
  71. data/_includes/related_posts 2.liquid +40 -0
  72. data/_includes/related_posts.liquid +40 -0
  73. data/_includes/repository/repo 2.liquid +47 -0
  74. data/_includes/repository/repo.liquid +47 -0
  75. data/_includes/repository/repo_trophies 2.liquid +42 -0
  76. data/_includes/repository/repo_trophies.liquid +42 -0
  77. data/_includes/repository/repo_user 2.liquid +34 -0
  78. data/_includes/repository/repo_user.liquid +34 -0
  79. data/_includes/scripts 2.liquid +123 -0
  80. data/_includes/scripts.liquid +123 -0
  81. data/_includes/selected_papers 2.liquid +3 -0
  82. data/_includes/selected_papers.liquid +3 -0
  83. data/_includes/video 2.liquid +97 -0
  84. data/_includes/video.liquid +97 -0
  85. data/_layouts/about 2.liquid +84 -0
  86. data/_layouts/about.liquid +84 -0
  87. data/_layouts/archive 2.liquid +38 -0
  88. data/_layouts/archive.liquid +38 -0
  89. data/_layouts/bib 2.liquid +395 -0
  90. data/_layouts/bib.liquid +395 -0
  91. data/_layouts/book-review 2.liquid +265 -0
  92. data/_layouts/book-review.liquid +265 -0
  93. data/_layouts/book-shelf 2.liquid +49 -0
  94. data/_layouts/book-shelf.liquid +49 -0
  95. data/_layouts/course 2.liquid +75 -0
  96. data/_layouts/course.liquid +75 -0
  97. data/_layouts/cv 2.liquid +18 -0
  98. data/_layouts/cv.liquid +18 -0
  99. data/_layouts/default 2.liquid +56 -0
  100. data/_layouts/default.liquid +56 -0
  101. data/_layouts/distill 2.liquid +21 -0
  102. data/_layouts/distill.liquid +21 -0
  103. data/_layouts/none 2.liquid +1 -0
  104. data/_layouts/none.liquid +1 -0
  105. data/_layouts/page 2.liquid +31 -0
  106. data/_layouts/page.liquid +31 -0
  107. data/_layouts/post 2.liquid +94 -0
  108. data/_layouts/post.liquid +94 -0
  109. data/_layouts/profiles 2.liquid +36 -0
  110. data/_layouts/profiles.liquid +36 -0
  111. data/_sass/_blog 2.scss +204 -0
  112. data/_sass/_blog.scss +204 -0
  113. data/_sass/_components 2.scss +261 -0
  114. data/_sass/_components.scss +261 -0
  115. data/_sass/_footer 2.scss +35 -0
  116. data/_sass/_footer.scss +35 -0
  117. data/_sass/_layout 2.scss +58 -0
  118. data/_sass/_layout.scss +58 -0
  119. data/_sass/_navbar 2.scss +190 -0
  120. data/_sass/_navbar.scss +190 -0
  121. data/_sass/_publications 2.scss +188 -0
  122. data/_sass/_publications.scss +188 -0
  123. data/_sass/_tabs 2.scss +48 -0
  124. data/_sass/_tabs.scss +48 -0
  125. data/_sass/_teachings 2.scss +77 -0
  126. data/_sass/_teachings.scss +77 -0
  127. data/_sass/_themes 2.scss +208 -0
  128. data/_sass/_themes.scss +208 -0
  129. data/_sass/_typograms 2.scss +132 -0
  130. data/_sass/_typograms.scss +132 -0
  131. data/_sass/_typography 2.scss +136 -0
  132. data/_sass/_typography.scss +136 -0
  133. data/_sass/_utilities 2.scss +607 -0
  134. data/_sass/_utilities.scss +607 -0
  135. data/_sass/_variables 2.scss +52 -0
  136. data/_sass/_variables.scss +52 -0
  137. data/_sass/font-awesome/_animated 2.scss +150 -0
  138. data/_sass/font-awesome/_animated.scss +150 -0
  139. data/_sass/font-awesome/_bordered 2.scss +24 -0
  140. data/_sass/font-awesome/_bordered.scss +24 -0
  141. data/_sass/font-awesome/_core 2.scss +29 -0
  142. data/_sass/font-awesome/_core.scss +29 -0
  143. data/_sass/font-awesome/_fa 2.scss +3 -0
  144. data/_sass/font-awesome/_fa.scss +3 -0
  145. data/_sass/font-awesome/_functions 2.scss +8 -0
  146. data/_sass/font-awesome/_functions.scss +8 -0
  147. data/_sass/font-awesome/_icons 2.scss +15 -0
  148. data/_sass/font-awesome/_icons.scss +15 -0
  149. data/_sass/font-awesome/_list 2.scss +19 -0
  150. data/_sass/font-awesome/_list.scss +19 -0
  151. data/_sass/font-awesome/_mixins 2.scss +28 -0
  152. data/_sass/font-awesome/_mixins.scss +28 -0
  153. data/_sass/font-awesome/_pulled 2.scss +15 -0
  154. data/_sass/font-awesome/_pulled.scss +15 -0
  155. data/_sass/font-awesome/_rotated-flipped 2.scss +32 -0
  156. data/_sass/font-awesome/_rotated-flipped.scss +32 -0
  157. data/_sass/font-awesome/_shims 2.scss +2193 -0
  158. data/_sass/font-awesome/_shims.scss +2193 -0
  159. data/_sass/font-awesome/_sizing 2.scss +18 -0
  160. data/_sass/font-awesome/_sizing.scss +18 -0
  161. data/_sass/font-awesome/_stacked 2.scss +33 -0
  162. data/_sass/font-awesome/_stacked.scss +33 -0
  163. data/_sass/font-awesome/_variables 2.scss +5130 -0
  164. data/_sass/font-awesome/_variables.scss +5130 -0
  165. data/_sass/font-awesome/_widths 2.scss +12 -0
  166. data/_sass/font-awesome/_widths.scss +12 -0
  167. data/_sass/font-awesome/brands 2.scss +45 -0
  168. data/_sass/font-awesome/brands.scss +45 -0
  169. data/_sass/font-awesome/fontawesome 2.scss +18 -0
  170. data/_sass/font-awesome/fontawesome.scss +18 -0
  171. data/_sass/font-awesome/regular 2.scss +51 -0
  172. data/_sass/font-awesome/regular.scss +51 -0
  173. data/_sass/font-awesome/solid 2.scss +51 -0
  174. data/_sass/font-awesome/solid.scss +51 -0
  175. data/_sass/font-awesome/v4-shims 2.scss +11 -0
  176. data/_sass/font-awesome/v4-shims.scss +11 -0
  177. data/_scripts/giscus-setup 2.js +48 -0
  178. data/_scripts/giscus-setup.js +48 -0
  179. data/assets/css/academicons.min 2.css +1 -0
  180. data/assets/css/academicons.min.css +1 -0
  181. data/assets/css/jekyll-pygments-themes-github 2.css +209 -0
  182. data/assets/css/jekyll-pygments-themes-github.css +209 -0
  183. data/assets/css/jekyll-pygments-themes-native 2.css +232 -0
  184. data/assets/css/jekyll-pygments-themes-native.css +232 -0
  185. data/assets/css/jupyter 2.css +383 -0
  186. data/assets/css/jupyter-grade3 2.css +3758 -0
  187. data/assets/css/jupyter-grade3.css +3758 -0
  188. data/assets/css/jupyter-monokai 2.css +3758 -0
  189. data/assets/css/jupyter-monokai.css +3758 -0
  190. data/assets/css/jupyter.css +383 -0
  191. data/assets/css/main 2.scss +37 -0
  192. data/assets/css/main.scss +37 -0
  193. data/assets/css/scholar-icons 2.css +386 -0
  194. data/assets/css/scholar-icons.css +386 -0
  195. data/assets/css/tailwind 2.css +2 -0
  196. data/assets/css/tailwind.css +2 -0
  197. data/assets/js/bibsearch 2.js +70 -0
  198. data/assets/js/bibsearch.js +70 -0
  199. data/assets/js/calendar-setup 2.js +16 -0
  200. data/assets/js/calendar-setup.js +16 -0
  201. data/assets/js/common 2.js +137 -0
  202. data/assets/js/common.js +137 -0
  203. data/assets/js/copy_code 2.js +56 -0
  204. data/assets/js/copy_code.js +56 -0
  205. data/assets/js/highlight-search-term 2.js +110 -0
  206. data/assets/js/highlight-search-term.js +110 -0
  207. data/assets/js/jupyter_new_tab 2.js +18 -0
  208. data/assets/js/jupyter_new_tab.js +18 -0
  209. data/assets/js/masonry 2.js +12 -0
  210. data/assets/js/masonry.js +12 -0
  211. data/assets/js/nav-toggle 2.js +102 -0
  212. data/assets/js/nav-toggle.js +102 -0
  213. data/assets/js/no_defer 2.js +31 -0
  214. data/assets/js/no_defer.js +31 -0
  215. data/assets/js/progress-bar 2.js +69 -0
  216. data/assets/js/progress-bar.js +69 -0
  217. data/assets/js/search/hotkeys-js/hotkeys.esm.min 2.js +18 -0
  218. data/assets/js/search/hotkeys-js/hotkeys.esm.min.js +18 -0
  219. data/assets/js/search/lit/decorators.min 2.js +7 -0
  220. data/assets/js/search/lit/decorators.min.js +7 -0
  221. data/assets/js/search/lit/directives/class-map.min.js +7 -0
  222. data/assets/js/search/lit/directives/join.min.js +7 -0
  223. data/assets/js/search/lit/directives/live.min.js +7 -0
  224. data/assets/js/search/lit/directives/ref.min.js +7 -0
  225. data/assets/js/search/lit/directives/repeat.min.js +7 -0
  226. data/assets/js/search/lit/directives/unsafe-html.min.js +7 -0
  227. data/assets/js/search/lit/index.min 2.js +7 -0
  228. data/assets/js/search/lit/index.min.js +7 -0
  229. data/assets/js/search/lit-element/lit-element.min 2.js +12 -0
  230. data/assets/js/search/lit-element/lit-element.min.js +12 -0
  231. data/assets/js/search/lit-html/directives/class-map.min.js +22 -0
  232. data/assets/js/search/lit-html/directives/join.min.js +12 -0
  233. data/assets/js/search/lit-html/directives/live.min.js +28 -0
  234. data/assets/js/search/lit-html/directives/ref.min.js +32 -0
  235. data/assets/js/search/lit-html/directives/repeat.min.js +27 -0
  236. data/assets/js/search/lit-html/directives/unsafe-html.min.js +22 -0
  237. data/assets/js/search/lit-html/is-server.min 2.js +12 -0
  238. data/assets/js/search/lit-html/is-server.min.js +12 -0
  239. data/assets/js/search/lit-html/lit-html.min 2.js +12 -0
  240. data/assets/js/search/lit-html/lit-html.min.js +12 -0
  241. data/assets/js/search/reactive-element/decorators/custom-element.min.js +12 -0
  242. data/assets/js/search/reactive-element/decorators/event-options.min.js +12 -0
  243. data/assets/js/search/reactive-element/decorators/property.min.js +22 -0
  244. data/assets/js/search/reactive-element/decorators/query-all.min.js +17 -0
  245. data/assets/js/search/reactive-element/decorators/query-assigned-elements.min.js +17 -0
  246. data/assets/js/search/reactive-element/decorators/query-assigned-nodes.min.js +17 -0
  247. data/assets/js/search/reactive-element/decorators/query-async.min.js +17 -0
  248. data/assets/js/search/reactive-element/decorators/query.min.js +17 -0
  249. data/assets/js/search/reactive-element/decorators/state.min.js +27 -0
  250. data/assets/js/search/reactive-element/reactive-element.min 2.js +17 -0
  251. data/assets/js/search/reactive-element/reactive-element.min.js +17 -0
  252. data/assets/js/tabs.min 2.js +5 -0
  253. data/assets/js/tabs.min.js +5 -0
  254. data/assets/js/theme 2.js +329 -0
  255. data/assets/js/theme.js +329 -0
  256. data/assets/js/tooltips-setup 2.js +116 -0
  257. data/assets/js/tooltips-setup.js +116 -0
  258. data/assets/js/typograms 2.js +1341 -0
  259. data/assets/js/typograms.js +1341 -0
  260. data/assets/js/vanilla-back-to-top.min 2.js +1 -0
  261. data/assets/js/vanilla-back-to-top.min.js +1 -0
  262. data/assets/tailwind/app 2.css +855 -0
  263. data/assets/tailwind/app.css +855 -0
  264. data/assets/tailwind/bootstrap-compat.input 2.css +54 -0
  265. data/assets/tailwind/bootstrap-compat.input.css +54 -0
  266. data/assets/tailwind/input 2.css +2 -0
  267. data/assets/tailwind/input.css +2 -0
  268. data/lib/al_folio_core/version.rb +5 -0
  269. data/lib/al_folio_core.rb +282 -0
  270. data/migrations/1.0.0_to_1.1.0 2.yml +26 -0
  271. data/migrations/1.0.0_to_1.1.0.yml +26 -0
  272. data/migrations/1.1.0_to_1.2.0 2.yml +17 -0
  273. data/migrations/1.1.0_to_1.2.0.yml +17 -0
  274. metadata +393 -0
@@ -0,0 +1,12 @@
1
+ // icon widths
2
+ // -------------------------
3
+ @use 'variables' as v;
4
+
5
+ .#{v.$css-prefix}-width-auto {
6
+ --#{v.$css-prefix}-width: auto;
7
+ }
8
+
9
+ .#{v.$css-prefix}-fw,
10
+ .#{v.$css-prefix}-width-fixed {
11
+ --#{v.$css-prefix}-width: #{v.$fw-width};
12
+ }
@@ -0,0 +1,12 @@
1
+ // icon widths
2
+ // -------------------------
3
+ @use 'variables' as v;
4
+
5
+ .#{v.$css-prefix}-width-auto {
6
+ --#{v.$css-prefix}-width: auto;
7
+ }
8
+
9
+ .#{v.$css-prefix}-fw,
10
+ .#{v.$css-prefix}-width-fixed {
11
+ --#{v.$css-prefix}-width: #{v.$fw-width};
12
+ }
@@ -0,0 +1,45 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-brands: 'Font Awesome 7 Brands';
12
+ --#{v.$css-prefix}-font-brands: normal 400 1em/1 var(--#{v.$css-prefix}-family-brands);
13
+ }
14
+
15
+ @font-face {
16
+ font-family: 'Font Awesome 7 Brands';
17
+ font-style: normal;
18
+ font-weight: 400;
19
+ font-display: v.$font-display;
20
+ src: url('#{v.$font-path}/fa-brands-400.woff2');
21
+ }
22
+
23
+ .fab,
24
+ .#{v.$css-prefix}-brands,
25
+ .#{v.$css-prefix}-classic.#{v.$css-prefix}-brands {
26
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-brands);
27
+ --#{v.$css-prefix}-style: 400;
28
+ }
29
+
30
+ @each $name, $icon in v.$brand-icons {
31
+ .#{v.$css-prefix}-#{$name} {
32
+ #{v.$icon-property}: string.unquote("\"#{ $icon }\"");
33
+ }
34
+ }
35
+
36
+ // convenience mixin for declaring pseudo-elements by CSS variable,
37
+ // including all style-specific font properties and ::before elements.
38
+ @mixin icon($var) {
39
+ @include m.fa-icon(Font Awesome 7 Brands);
40
+ @extend .#{v.$css-prefix}-brands;
41
+
42
+ &::before {
43
+ content: string.unquote("\"#{ $var }\"");
44
+ }
45
+ }
@@ -0,0 +1,45 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-brands: 'Font Awesome 7 Brands';
12
+ --#{v.$css-prefix}-font-brands: normal 400 1em/1 var(--#{v.$css-prefix}-family-brands);
13
+ }
14
+
15
+ @font-face {
16
+ font-family: 'Font Awesome 7 Brands';
17
+ font-style: normal;
18
+ font-weight: 400;
19
+ font-display: v.$font-display;
20
+ src: url('#{v.$font-path}/fa-brands-400.woff2');
21
+ }
22
+
23
+ .fab,
24
+ .#{v.$css-prefix}-brands,
25
+ .#{v.$css-prefix}-classic.#{v.$css-prefix}-brands {
26
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-brands);
27
+ --#{v.$css-prefix}-style: 400;
28
+ }
29
+
30
+ @each $name, $icon in v.$brand-icons {
31
+ .#{v.$css-prefix}-#{$name} {
32
+ #{v.$icon-property}: string.unquote("\"#{ $icon }\"");
33
+ }
34
+ }
35
+
36
+ // convenience mixin for declaring pseudo-elements by CSS variable,
37
+ // including all style-specific font properties and ::before elements.
38
+ @mixin icon($var) {
39
+ @include m.fa-icon(Font Awesome 7 Brands);
40
+ @extend .#{v.$css-prefix}-brands;
41
+
42
+ &::before {
43
+ content: string.unquote("\"#{ $var }\"");
44
+ }
45
+ }
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ // Font Awesome core compile (Web Fonts-based)
7
+ // -------------------------
8
+
9
+ @use 'core';
10
+ @use 'sizing';
11
+ @use 'widths';
12
+ @use 'list';
13
+ @use 'bordered';
14
+ @use 'pulled';
15
+ @use 'animated';
16
+ @use 'rotated-flipped';
17
+ @use 'stacked';
18
+ @use 'icons';
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ // Font Awesome core compile (Web Fonts-based)
7
+ // -------------------------
8
+
9
+ @use 'core';
10
+ @use 'sizing';
11
+ @use 'widths';
12
+ @use 'list';
13
+ @use 'bordered';
14
+ @use 'pulled';
15
+ @use 'animated';
16
+ @use 'rotated-flipped';
17
+ @use 'stacked';
18
+ @use 'icons';
@@ -0,0 +1,51 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-regular: normal 400 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
16
+ }
17
+
18
+
19
+ @font-face {
20
+ font-family: 'Font Awesome 7 Free';
21
+ font-style: normal;
22
+ font-weight: 400;
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-regular-400.woff2');
25
+ }
26
+
27
+
28
+ .far {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 400;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-regular {
38
+ --#{v.$css-prefix}-style: 400;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Free);
45
+ @extend .#{v.$css-prefix}-regular;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
51
+ }
@@ -0,0 +1,51 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-regular: normal 400 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
16
+ }
17
+
18
+
19
+ @font-face {
20
+ font-family: 'Font Awesome 7 Free';
21
+ font-style: normal;
22
+ font-weight: 400;
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-regular-400.woff2');
25
+ }
26
+
27
+
28
+ .far {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 400;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-regular {
38
+ --#{v.$css-prefix}-style: 400;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Free);
45
+ @extend .#{v.$css-prefix}-regular;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
51
+ }
@@ -0,0 +1,51 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-solid: normal 900 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
16
+ }
17
+
18
+
19
+ @font-face {
20
+ font-family: 'Font Awesome 7 Free';
21
+ font-style: normal;
22
+ font-weight: 900;
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-solid-900.woff2');
25
+ }
26
+
27
+
28
+ .fas {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 900;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-solid {
38
+ --#{v.$css-prefix}-style: 900;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Free);
45
+ @extend .#{v.$css-prefix}-solid;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
51
+ }
@@ -0,0 +1,51 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ @use "sass:string";
7
+ @use 'variables' as v;
8
+ @use 'mixins' as m;
9
+
10
+ :root, :host {
11
+ --#{v.$css-prefix}-family-classic: '#{ v.$family }';
12
+ --#{v.$css-prefix}-font-solid: normal 900 1em/1 var(--#{v.$css-prefix}-family-classic);
13
+
14
+ /* deprecated: this older custom property will be removed next major release */
15
+ --#{v.$css-prefix}-style-family-classic: var(--#{v.$css-prefix}-family-classic);
16
+ }
17
+
18
+
19
+ @font-face {
20
+ font-family: 'Font Awesome 7 Free';
21
+ font-style: normal;
22
+ font-weight: 900;
23
+ font-display: v.$font-display;
24
+ src: url('#{v.$font-path}/fa-solid-900.woff2');
25
+ }
26
+
27
+
28
+ .fas {
29
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
30
+ --#{v.$css-prefix}-style: 900;
31
+ }
32
+
33
+ .#{v.$css-prefix}-classic {
34
+ --#{v.$css-prefix}-family: var(--#{v.$css-prefix}-family-classic);
35
+ }
36
+
37
+ .#{v.$css-prefix}-solid {
38
+ --#{v.$css-prefix}-style: 900;
39
+ }
40
+
41
+ // convenience mixin for declaring pseudo-elements by CSS variable,
42
+ // including all style-specific font properties and ::before elements.
43
+ @mixin icon($var) {
44
+ @include m.fa-icon(Font Awesome 7 Free);
45
+ @extend .#{v.$css-prefix}-solid;
46
+ @extend .#{v.$css-prefix}-classic;
47
+
48
+ &::before {
49
+ content: string.unquote("\"#{ $var }\"");
50
+ }
51
+ }
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ // V4 shims compile (Web Fonts-based)
7
+ // -------------------------
8
+
9
+ @use 'functions';
10
+ @use 'variables' as v;
11
+ @use 'shims';
@@ -0,0 +1,11 @@
1
+ /*!
2
+ * Font Awesome Free 7.0.0 by @fontawesome - https://fontawesome.com
3
+ * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4
+ * Copyright 2025 Fonticons, Inc.
5
+ */
6
+ // V4 shims compile (Web Fonts-based)
7
+ // -------------------------
8
+
9
+ @use 'functions';
10
+ @use 'variables' as v;
11
+ @use 'shims';
@@ -0,0 +1,48 @@
1
+ ---
2
+ permalink: /assets/js/giscus-setup.js
3
+ ---
4
+
5
+ function determineGiscusTheme() {
6
+ {% if site.enable_darkmode %}
7
+ let theme =
8
+ localStorage.getItem("theme") ||
9
+ document.documentElement.getAttribute("data-theme") ||
10
+ "system";
11
+
12
+ if (theme === "dark") return "{{ site.giscus.dark_theme }}";
13
+ if (theme === "light") return "{{ site.giscus.light_theme }}";
14
+
15
+ const prefersDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
16
+ return prefersDark ? "{{ site.giscus.dark_theme }}" : "{{ site.giscus.light_theme }}";
17
+ {% else %}
18
+ return "{{ site.giscus.light_theme }}";
19
+ {% endif %}
20
+ }
21
+
22
+ (function setupGiscus() {
23
+ let giscusTheme = determineGiscusTheme();
24
+
25
+ let giscusAttributes = {
26
+ src: "https://giscus.app/client.js",
27
+ "data-repo": "{{ site.giscus.repo }}",
28
+ "data-repo-id": "{{ site.giscus.repo_id }}",
29
+ "data-category": "{{ site.giscus.category }}",
30
+ "data-category-id": "{{ site.giscus.category_id }}",
31
+ "data-mapping": "{{ site.giscus.mapping }}",
32
+ "data-strict": "{{ site.giscus.strict }}",
33
+ "data-reactions-enabled": "{{ site.giscus.reactions_enabled }}",
34
+ "data-emit-metadata": "{{ site.giscus.emit_metadata }}",
35
+ "data-input-position": "{{ site.giscus.input_position }}",
36
+ "data-theme": giscusTheme,
37
+ "data-lang": "{{ site.giscus.lang }}",
38
+ crossorigin: "anonymous",
39
+ async: true,
40
+ };
41
+
42
+ let giscusScript = document.createElement("script");
43
+ Object.entries(giscusAttributes).forEach(([key, value]) =>
44
+ giscusScript.setAttribute(key, value)
45
+ );
46
+ document.getElementById("giscus_thread").appendChild(giscusScript);
47
+ })();
48
+
@@ -0,0 +1,48 @@
1
+ ---
2
+ permalink: /assets/js/giscus-setup.js
3
+ ---
4
+
5
+ function determineGiscusTheme() {
6
+ {% if site.enable_darkmode %}
7
+ let theme =
8
+ localStorage.getItem("theme") ||
9
+ document.documentElement.getAttribute("data-theme") ||
10
+ "system";
11
+
12
+ if (theme === "dark") return "{{ site.giscus.dark_theme }}";
13
+ if (theme === "light") return "{{ site.giscus.light_theme }}";
14
+
15
+ const prefersDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
16
+ return prefersDark ? "{{ site.giscus.dark_theme }}" : "{{ site.giscus.light_theme }}";
17
+ {% else %}
18
+ return "{{ site.giscus.light_theme }}";
19
+ {% endif %}
20
+ }
21
+
22
+ (function setupGiscus() {
23
+ let giscusTheme = determineGiscusTheme();
24
+
25
+ let giscusAttributes = {
26
+ src: "https://giscus.app/client.js",
27
+ "data-repo": "{{ site.giscus.repo }}",
28
+ "data-repo-id": "{{ site.giscus.repo_id }}",
29
+ "data-category": "{{ site.giscus.category }}",
30
+ "data-category-id": "{{ site.giscus.category_id }}",
31
+ "data-mapping": "{{ site.giscus.mapping }}",
32
+ "data-strict": "{{ site.giscus.strict }}",
33
+ "data-reactions-enabled": "{{ site.giscus.reactions_enabled }}",
34
+ "data-emit-metadata": "{{ site.giscus.emit_metadata }}",
35
+ "data-input-position": "{{ site.giscus.input_position }}",
36
+ "data-theme": giscusTheme,
37
+ "data-lang": "{{ site.giscus.lang }}",
38
+ crossorigin: "anonymous",
39
+ async: true,
40
+ };
41
+
42
+ let giscusScript = document.createElement("script");
43
+ Object.entries(giscusAttributes).forEach(([key, value]) =>
44
+ giscusScript.setAttribute(key, value)
45
+ );
46
+ document.getElementById("giscus_thread").appendChild(giscusScript);
47
+ })();
48
+
@@ -0,0 +1 @@
1
+ @font-face {font-family: 'Academicons';font-style: normal;font-weight: 400;font-display: block;src:url('../fonts/academicons.eot');src:url('../fonts/academicons.eot') format('embedded-opentype'), url('../fonts/academicons.ttf') format('truetype'), url('../fonts/academicons.woff') format('woff'), url('../fonts/academicons.svg') format('svg');}.ai {font-family: 'Academicons';font-weight: 400;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;display: inline-block;font-style: normal;font-variant: normal;text-rendering: auto;line-height: 1;}.ai-academia:before {content: "\e9af";}.ai-academia-square:before {content: "\e93d";}.ai-acclaim:before {content: "\e92e";}.ai-acclaim-square:before {content: "\e93a";}.ai-acm:before {content: "\e93c";}.ai-acm-square:before {content: "\e95d";}.ai-acmdl:before {content: "\e96a";}.ai-acmdl-square:before {content: "\e9d3";}.ai-ads:before {content: "\e9cb";}.ai-ads-square:before {content: "\e94a";}.ai-africarxiv:before {content: "\e91b";}.ai-africarxiv-square:before {content: "\e90b";}.ai-archive:before {content: "\e955";}.ai-archive-square:before {content: "\e956";}.ai-arxiv:before {content: "\e974";}.ai-arxiv-square:before {content: "\e9a6";}.ai-biorxiv:before {content: "\e9a2";}.ai-biorxiv-square:before {content: "\e98b";}.ai-ceur:before {content: "\e96d";}.ai-ceur-square:before {content: "\e92f";}.ai-ciencia-vitae:before {content: "\e912";}.ai-ciencia-vitae-square:before {content: "\e913";}.ai-clarivate:before {content: "\e924";}.ai-clarivate-square:before {content: "\e925";}.ai-closed-access:before {content: "\e942";}.ai-closed-access-square:before {content: "\e943";}.ai-conversation:before {content: "\e94c";}.ai-conversation-square:before {content: "\e915";}.ai-coursera:before {content: "\e95f";}.ai-coursera-square:before {content: "\e97f";}.ai-crossref:before {content: "\e918";}.ai-crossref-square:before {content: "\e919";}.ai-cv:before {content: "\e9a5";}.ai-cv-square:before {content: "\e90a";}.ai-datacite:before {content: "\e91c";}.ai-datacite-square:before {content: "\e91d";}.ai-dataverse:before {content: "\e9f7";}.ai-dataverse-square:before {content: "\e9e4";}.ai-dblp:before {content: "\e94f";}.ai-dblp-square:before {content: "\e93f";}.ai-depsy:before {content: "\e97a";}.ai-depsy-square:before {content: "\e94b";}.ai-doi:before {content: "\e97e";}.ai-doi-square:before {content: "\e98f";}.ai-dryad:before {content: "\e97c";}.ai-dryad-square:before {content: "\e98c";}.ai-elsevier:before {content: "\e961";}.ai-elsevier-square:before {content: "\e910";}.ai-figshare:before {content: "\e981";}.ai-figshare-square:before {content: "\e9e7";}.ai-google-scholar:before {content: "\e9d4";}.ai-google-scholar-square:before {content: "\e9f9";}.ai-hal:before {content: "\e92c";}.ai-hal-square:before {content: "\e92d";}.ai-hypothesis:before {content: "\e95a";}.ai-hypothesis-square:before {content: "\e95b";}.ai-ideas-repec:before {content: "\e9ed";}.ai-ideas-repec-square:before {content: "\e9f8";}.ai-ieee:before {content: "\e929";}.ai-ieee-square:before {content: "\e9b9";}.ai-impactstory:before {content: "\e9cf";}.ai-impactstory-square:before {content: "\e9aa";}.ai-inaturalist:before {content: "\e900";}.ai-inaturalist-square:before {content: "\e901";}.ai-inpn:before {content: "\e902";}.ai-inpn-square:before {content: "\e903";}.ai-inspire:before {content: "\e9e9";}.ai-inspire-square:before {content: "\e9fe";}.ai-isidore:before {content: "\e936";}.ai-isidore-square:before {content: "\e954";}.ai-isni:before {content: "\e957";}.ai-isni-square:before {content: "\e958";}.ai-jstor:before {content: "\e938";}.ai-jstor-square:before {content: "\e944";}.ai-lattes:before {content: "\e9b3";}.ai-lattes-square:before {content: "\e99c";}.ai-mathoverflow:before {content: "\e9f6";}.ai-mathoverflow-square:before {content: "\e97b";}.ai-mendeley:before {content: "\e9f0";}.ai-mendeley-square:before {content: "\e9f3";}.ai-moodle:before {content: "\e907";}.ai-moodle-square:before {content: "\e908";}.ai-mtmt:before {content: "\e950";}.ai-mtmt-square:before {content: "\e951";}.ai-nakala:before {content: "\e940";}.ai-nakala-square:before {content: "\e941";}.ai-obp:before {content: "\e92a";}.ai-obp-square:before {content: "\e92b";}.ai-open-access:before {content: "\e939";}.ai-open-access-square:before {content: "\e9f4";}.ai-open-data:before {content: "\e966";}.ai-open-data-square:before {content: "\e967";}.ai-open-materials:before {content: "\e968";}.ai-open-materials-square:before {content: "\e969";}.ai-openedition:before {content: "\e946";}.ai-openedition-square:before {content: "\e947";}.ai-orcid:before {content: "\e9d9";}.ai-orcid-square:before {content: "\e9c3";}.ai-osf:before {content: "\e9ef";}.ai-osf-square:before {content: "\e931";}.ai-overleaf:before {content: "\e914";}.ai-overleaf-square:before {content: "\e98d";}.ai-philpapers:before {content: "\e98a";}.ai-philpapers-square:before {content: "\e96f";}.ai-piazza:before {content: "\e99a";}.ai-piazza-square:before {content: "\e90c";}.ai-preregistered:before {content: "\e906";}.ai-preregistered-square:before {content: "\e96b";}.ai-protocols:before {content: "\e952";}.ai-protocols-square:before {content: "\e953";}.ai-psyarxiv:before {content: "\e90e";}.ai-psyarxiv-square:before {content: "\e90f";}.ai-publons:before {content: "\e937";}.ai-publons-square:before {content: "\e94e";}.ai-pubmed:before {content: "\e99f";}.ai-pubmed-square:before {content: "\e97d";}.ai-pubpeer:before {content: "\e922";}.ai-pubpeer-square:before {content: "\e923";}.ai-researcherid:before {content: "\e91a";}.ai-researcherid-square:before {content: "\e95c";}.ai-researchgate:before {content: "\e95e";}.ai-researchgate-square:before {content: "\e99e";}.ai-ror:before {content: "\e948";}.ai-ror-square:before {content: "\e949";}.ai-sci-hub:before {content: "\e959";}.ai-sci-hub-square:before {content: "\e905";}.ai-scirate:before {content: "\e98e";}.ai-scirate-square:before {content: "\e99d";}.ai-scopus:before {content: "\e91e";}.ai-scopus-square:before {content: "\e91f";}.ai-semantic-scholar:before {content: "\e96e";}.ai-semantic-scholar-square:before {content: "\e96c";}.ai-springer:before {content: "\e928";}.ai-springer-square:before {content: "\e99b";}.ai-ssrn:before {content: "\e916";}.ai-ssrn-square:before {content: "\e917";}.ai-stackoverflow:before {content: "\e920";}.ai-stackoverflow-square:before {content: "\e921";}.ai-viaf:before {content: "\e933";}.ai-viaf-square:before {content: "\e934";}.ai-wiley:before {content: "\e926";}.ai-wiley-square:before {content: "\e927";}.ai-zenodo:before {content: "\e911";}.ai-zotero:before {content: "\e962";}.ai-zotero-square:before {content: "\e932";}.ai-lg {font-size: 1.33333em;line-height: 0.75em;vertical-align: -.0667em;}.ai-xs {font-size: .75em;}.ai-sm {font-size: .875em;}.ai-1x {font-size: 1em;}.ai-2x {font-size: 2em;}.ai-3x {font-size: 3em;}.ai-4x {font-size: 4em;}.ai-5x {font-size: 5em;}.ai-6x {font-size: 6em;}.ai-7x {font-size: 7em;}.ai-8x {font-size: 8em;}.ai-9x {font-size: 9em;}.ai-10x {font-size: 10em;}.ai-fw {text-align: center;width: 1.25em;}.ai-ul {list-style-type: none;margin-left: 2.5em;padding-left: 0;}.ai-ul > li {position: relative;}.ai-li {left: -2em;position: absolute;text-align: center;width: 2em;line-height: inherit;}.ai-border {border: solid 0.08em #eee;border-radius: .1em;padding: .2em .25em .15em;}.ai-pull-left {float: left;}.ai-pull-right {float: right;}.ai.ai-pull-left {margin-right: .3em;}.ai.ai-pull-right {margin-right: .3em;}.ai-stack {display: inline-block;height: 2em;line-height: 2em;position: relative;vertical-align: middle;width: 2.5em;}.ai-stack-1x, .ai-stack-2x {left: 0;position: absolute;text-align: center;width: 100%;}.ai-stack-1x {line-height: inherit;}.ai-stack-2x {font-size: 2em;}.ai-inverse {color: #fff;}
@@ -0,0 +1 @@
1
+ @font-face {font-family: 'Academicons';font-style: normal;font-weight: 400;font-display: block;src:url('../fonts/academicons.eot');src:url('../fonts/academicons.eot') format('embedded-opentype'), url('../fonts/academicons.ttf') format('truetype'), url('../fonts/academicons.woff') format('woff'), url('../fonts/academicons.svg') format('svg');}.ai {font-family: 'Academicons';font-weight: 400;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;display: inline-block;font-style: normal;font-variant: normal;text-rendering: auto;line-height: 1;}.ai-academia:before {content: "\e9af";}.ai-academia-square:before {content: "\e93d";}.ai-acclaim:before {content: "\e92e";}.ai-acclaim-square:before {content: "\e93a";}.ai-acm:before {content: "\e93c";}.ai-acm-square:before {content: "\e95d";}.ai-acmdl:before {content: "\e96a";}.ai-acmdl-square:before {content: "\e9d3";}.ai-ads:before {content: "\e9cb";}.ai-ads-square:before {content: "\e94a";}.ai-africarxiv:before {content: "\e91b";}.ai-africarxiv-square:before {content: "\e90b";}.ai-archive:before {content: "\e955";}.ai-archive-square:before {content: "\e956";}.ai-arxiv:before {content: "\e974";}.ai-arxiv-square:before {content: "\e9a6";}.ai-biorxiv:before {content: "\e9a2";}.ai-biorxiv-square:before {content: "\e98b";}.ai-ceur:before {content: "\e96d";}.ai-ceur-square:before {content: "\e92f";}.ai-ciencia-vitae:before {content: "\e912";}.ai-ciencia-vitae-square:before {content: "\e913";}.ai-clarivate:before {content: "\e924";}.ai-clarivate-square:before {content: "\e925";}.ai-closed-access:before {content: "\e942";}.ai-closed-access-square:before {content: "\e943";}.ai-conversation:before {content: "\e94c";}.ai-conversation-square:before {content: "\e915";}.ai-coursera:before {content: "\e95f";}.ai-coursera-square:before {content: "\e97f";}.ai-crossref:before {content: "\e918";}.ai-crossref-square:before {content: "\e919";}.ai-cv:before {content: "\e9a5";}.ai-cv-square:before {content: "\e90a";}.ai-datacite:before {content: "\e91c";}.ai-datacite-square:before {content: "\e91d";}.ai-dataverse:before {content: "\e9f7";}.ai-dataverse-square:before {content: "\e9e4";}.ai-dblp:before {content: "\e94f";}.ai-dblp-square:before {content: "\e93f";}.ai-depsy:before {content: "\e97a";}.ai-depsy-square:before {content: "\e94b";}.ai-doi:before {content: "\e97e";}.ai-doi-square:before {content: "\e98f";}.ai-dryad:before {content: "\e97c";}.ai-dryad-square:before {content: "\e98c";}.ai-elsevier:before {content: "\e961";}.ai-elsevier-square:before {content: "\e910";}.ai-figshare:before {content: "\e981";}.ai-figshare-square:before {content: "\e9e7";}.ai-google-scholar:before {content: "\e9d4";}.ai-google-scholar-square:before {content: "\e9f9";}.ai-hal:before {content: "\e92c";}.ai-hal-square:before {content: "\e92d";}.ai-hypothesis:before {content: "\e95a";}.ai-hypothesis-square:before {content: "\e95b";}.ai-ideas-repec:before {content: "\e9ed";}.ai-ideas-repec-square:before {content: "\e9f8";}.ai-ieee:before {content: "\e929";}.ai-ieee-square:before {content: "\e9b9";}.ai-impactstory:before {content: "\e9cf";}.ai-impactstory-square:before {content: "\e9aa";}.ai-inaturalist:before {content: "\e900";}.ai-inaturalist-square:before {content: "\e901";}.ai-inpn:before {content: "\e902";}.ai-inpn-square:before {content: "\e903";}.ai-inspire:before {content: "\e9e9";}.ai-inspire-square:before {content: "\e9fe";}.ai-isidore:before {content: "\e936";}.ai-isidore-square:before {content: "\e954";}.ai-isni:before {content: "\e957";}.ai-isni-square:before {content: "\e958";}.ai-jstor:before {content: "\e938";}.ai-jstor-square:before {content: "\e944";}.ai-lattes:before {content: "\e9b3";}.ai-lattes-square:before {content: "\e99c";}.ai-mathoverflow:before {content: "\e9f6";}.ai-mathoverflow-square:before {content: "\e97b";}.ai-mendeley:before {content: "\e9f0";}.ai-mendeley-square:before {content: "\e9f3";}.ai-moodle:before {content: "\e907";}.ai-moodle-square:before {content: "\e908";}.ai-mtmt:before {content: "\e950";}.ai-mtmt-square:before {content: "\e951";}.ai-nakala:before {content: "\e940";}.ai-nakala-square:before {content: "\e941";}.ai-obp:before {content: "\e92a";}.ai-obp-square:before {content: "\e92b";}.ai-open-access:before {content: "\e939";}.ai-open-access-square:before {content: "\e9f4";}.ai-open-data:before {content: "\e966";}.ai-open-data-square:before {content: "\e967";}.ai-open-materials:before {content: "\e968";}.ai-open-materials-square:before {content: "\e969";}.ai-openedition:before {content: "\e946";}.ai-openedition-square:before {content: "\e947";}.ai-orcid:before {content: "\e9d9";}.ai-orcid-square:before {content: "\e9c3";}.ai-osf:before {content: "\e9ef";}.ai-osf-square:before {content: "\e931";}.ai-overleaf:before {content: "\e914";}.ai-overleaf-square:before {content: "\e98d";}.ai-philpapers:before {content: "\e98a";}.ai-philpapers-square:before {content: "\e96f";}.ai-piazza:before {content: "\e99a";}.ai-piazza-square:before {content: "\e90c";}.ai-preregistered:before {content: "\e906";}.ai-preregistered-square:before {content: "\e96b";}.ai-protocols:before {content: "\e952";}.ai-protocols-square:before {content: "\e953";}.ai-psyarxiv:before {content: "\e90e";}.ai-psyarxiv-square:before {content: "\e90f";}.ai-publons:before {content: "\e937";}.ai-publons-square:before {content: "\e94e";}.ai-pubmed:before {content: "\e99f";}.ai-pubmed-square:before {content: "\e97d";}.ai-pubpeer:before {content: "\e922";}.ai-pubpeer-square:before {content: "\e923";}.ai-researcherid:before {content: "\e91a";}.ai-researcherid-square:before {content: "\e95c";}.ai-researchgate:before {content: "\e95e";}.ai-researchgate-square:before {content: "\e99e";}.ai-ror:before {content: "\e948";}.ai-ror-square:before {content: "\e949";}.ai-sci-hub:before {content: "\e959";}.ai-sci-hub-square:before {content: "\e905";}.ai-scirate:before {content: "\e98e";}.ai-scirate-square:before {content: "\e99d";}.ai-scopus:before {content: "\e91e";}.ai-scopus-square:before {content: "\e91f";}.ai-semantic-scholar:before {content: "\e96e";}.ai-semantic-scholar-square:before {content: "\e96c";}.ai-springer:before {content: "\e928";}.ai-springer-square:before {content: "\e99b";}.ai-ssrn:before {content: "\e916";}.ai-ssrn-square:before {content: "\e917";}.ai-stackoverflow:before {content: "\e920";}.ai-stackoverflow-square:before {content: "\e921";}.ai-viaf:before {content: "\e933";}.ai-viaf-square:before {content: "\e934";}.ai-wiley:before {content: "\e926";}.ai-wiley-square:before {content: "\e927";}.ai-zenodo:before {content: "\e911";}.ai-zotero:before {content: "\e962";}.ai-zotero-square:before {content: "\e932";}.ai-lg {font-size: 1.33333em;line-height: 0.75em;vertical-align: -.0667em;}.ai-xs {font-size: .75em;}.ai-sm {font-size: .875em;}.ai-1x {font-size: 1em;}.ai-2x {font-size: 2em;}.ai-3x {font-size: 3em;}.ai-4x {font-size: 4em;}.ai-5x {font-size: 5em;}.ai-6x {font-size: 6em;}.ai-7x {font-size: 7em;}.ai-8x {font-size: 8em;}.ai-9x {font-size: 9em;}.ai-10x {font-size: 10em;}.ai-fw {text-align: center;width: 1.25em;}.ai-ul {list-style-type: none;margin-left: 2.5em;padding-left: 0;}.ai-ul > li {position: relative;}.ai-li {left: -2em;position: absolute;text-align: center;width: 2em;line-height: inherit;}.ai-border {border: solid 0.08em #eee;border-radius: .1em;padding: .2em .25em .15em;}.ai-pull-left {float: left;}.ai-pull-right {float: right;}.ai.ai-pull-left {margin-right: .3em;}.ai.ai-pull-right {margin-right: .3em;}.ai-stack {display: inline-block;height: 2em;line-height: 2em;position: relative;vertical-align: middle;width: 2.5em;}.ai-stack-1x, .ai-stack-2x {left: 0;position: absolute;text-align: center;width: 100%;}.ai-stack-1x {line-height: inherit;}.ai-stack-2x {font-size: 2em;}.ai-inverse {color: #fff;}