fnschool 20250109.80500.803__py3-none-any.whl → 20251011.80531.840__py3-none-any.whl

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.

Potentially problematic release.


This version of fnschool might be problematic. Click here for more details.

Files changed (276) hide show
  1. fnschoo1/__init__.py +52 -0
  2. fnschoo1/canteen/admin.py +3 -0
  3. fnschoo1/canteen/apps.py +6 -0
  4. fnschoo1/canteen/forms.py +84 -0
  5. fnschoo1/canteen/migrations/0001_initial.py +119 -0
  6. fnschoo1/canteen/migrations/0002_ingredient_is_disabled.py +20 -0
  7. fnschoo1/canteen/migrations/0003_consumption_is_disabled_alter_ingredient_is_disabled.py +23 -0
  8. fnschoo1/canteen/migrations/0004_alter_ingredient_name_category_and_more.py +66 -0
  9. fnschoo1/canteen/migrations/0005_alter_category_created_at_alter_category_name_and_more.py +41 -0
  10. fnschoo1/canteen/migrations/0006_category_is_disabled_alter_category_user_and_more.py +49 -0
  11. fnschoo1/canteen/migrations/0007_alter_consumption_amount_used_and_more.py +30 -0
  12. fnschoo1/canteen/migrations/0008_category_abbreviation_mealtype.py +67 -0
  13. fnschoo1/canteen/migrations/0009_alter_category_abbreviation_and_more.py +55 -0
  14. fnschoo1/canteen/migrations/0010_alter_consumption_options_alter_ingredient_options_and_more.py +215 -0
  15. fnschoo1/canteen/migrations/0011_category_pin_to_consumptions_top.py +23 -0
  16. fnschoo1/canteen/migrations/0012_alter_ingredient_storage_date.py +18 -0
  17. fnschoo1/canteen/models.py +179 -0
  18. fnschoo1/canteen/templates/canteen/category/create.html +17 -0
  19. fnschoo1/canteen/templates/canteen/category/delete.html +61 -0
  20. fnschoo1/canteen/templates/canteen/category/list.html +63 -0
  21. fnschoo1/canteen/templates/canteen/category/update.html +23 -0
  22. fnschoo1/canteen/templates/canteen/close.html +11 -0
  23. fnschoo1/canteen/templates/canteen/consumption/_create.html +19 -0
  24. fnschoo1/canteen/templates/canteen/consumption/create.html +456 -0
  25. fnschoo1/canteen/templates/canteen/ingredient/close.html +11 -0
  26. fnschoo1/canteen/templates/canteen/ingredient/create.html +19 -0
  27. fnschoo1/canteen/templates/canteen/ingredient/create_one.html +17 -0
  28. fnschoo1/canteen/templates/canteen/ingredient/delete.html +41 -0
  29. fnschoo1/canteen/templates/canteen/ingredient/list.html +128 -0
  30. fnschoo1/canteen/templates/canteen/ingredient/update.html +23 -0
  31. fnschoo1/canteen/templates/canteen/meal_type/create.html +17 -0
  32. fnschoo1/canteen/templates/canteen/meal_type/delete.html +56 -0
  33. fnschoo1/canteen/templates/canteen/meal_type/list.html +59 -0
  34. fnschoo1/canteen/templates/canteen/meal_type/update.html +23 -0
  35. fnschoo1/canteen/tests.py +3 -0
  36. fnschoo1/canteen/urls.py +116 -0
  37. fnschoo1/canteen/views.py +814 -0
  38. fnschoo1/canteen/workbook/generate.py +2098 -0
  39. fnschoo1/db.sqlite3 +0 -0
  40. fnschoo1/fnschool/__init__.py +13 -0
  41. fnschoo1/fnschool/asgi.py +16 -0
  42. fnschoo1/fnschool/settings.py +167 -0
  43. fnschoo1/fnschool/templatetags/fnschool_tags.py +27 -0
  44. fnschoo1/fnschool/urls.py +30 -0
  45. fnschoo1/fnschool/views.py +9 -0
  46. fnschoo1/fnschool/wsgi.py +16 -0
  47. fnschoo1/locale/en/LC_MESSAGES/django.mo +0 -0
  48. fnschoo1/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
  49. fnschoo1/manage.py +25 -0
  50. fnschoo1/profiles/admin.py +27 -0
  51. fnschoo1/profiles/apps.py +12 -0
  52. fnschoo1/profiles/forms.py +67 -0
  53. fnschoo1/profiles/migrations/0001_initial.py +192 -0
  54. fnschoo1/profiles/migrations/0002_alter_profile_bio.py +20 -0
  55. fnschoo1/profiles/migrations/0003_alter_profile_options_alter_profile_address_and_more.py +67 -0
  56. fnschoo1/profiles/migrations/0004_profile_gender.py +26 -0
  57. fnschoo1/profiles/migrations/0005_alter_profile_gender.py +23 -0
  58. fnschoo1/profiles/models.py +60 -0
  59. fnschoo1/profiles/signals.py +20 -0
  60. fnschoo1/profiles/templates/profiles/create.html +16 -0
  61. fnschoo1/profiles/templates/profiles/detail.html +14 -0
  62. fnschoo1/profiles/templates/profiles/edit.html +12 -0
  63. fnschoo1/profiles/templates/profiles/log_in.html +20 -0
  64. fnschoo1/profiles/templates/profiles/log_out.html +12 -0
  65. fnschoo1/profiles/tests.py +3 -0
  66. fnschoo1/profiles/urls.py +15 -0
  67. fnschoo1/profiles/views.py +63 -0
  68. fnschoo1/static/css/bootstrap.min.css +11776 -0
  69. fnschoo1/static/css/fnschool.css +26 -0
  70. fnschoo1/static/js/bootstrap.bundle.min.js +4223 -0
  71. fnschoo1/static/js/bootstrap.min.js +2919 -0
  72. fnschoo1/static/js/fnschool.js +84 -0
  73. fnschoo1/static/js/jquery.min.js +5413 -0
  74. fnschoo1/static/js/jquery.slim.min.js +4331 -0
  75. fnschoo1/static/js/popper.min.js +1306 -0
  76. fnschoo1/static_collected/admin/css/autocomplete.css +377 -0
  77. fnschoo1/static_collected/admin/css/base.css +1224 -0
  78. fnschoo1/static_collected/admin/css/changelists.css +334 -0
  79. fnschoo1/static_collected/admin/css/dark_mode.css +136 -0
  80. fnschoo1/static_collected/admin/css/dashboard.css +30 -0
  81. fnschoo1/static_collected/admin/css/forms.css +546 -0
  82. fnschoo1/static_collected/admin/css/login.css +62 -0
  83. fnschoo1/static_collected/admin/css/nav_sidebar.css +145 -0
  84. fnschoo1/static_collected/admin/css/responsive.css +1043 -0
  85. fnschoo1/static_collected/admin/css/responsive_rtl.css +84 -0
  86. fnschoo1/static_collected/admin/css/rtl.css +311 -0
  87. fnschoo1/static_collected/admin/css/vendor/select2/select2.css +708 -0
  88. fnschoo1/static_collected/admin/css/vendor/select2/select2.min.css +1 -0
  89. fnschoo1/static_collected/admin/css/widgets.css +639 -0
  90. fnschoo1/static_collected/admin/js/SelectBox.js +128 -0
  91. fnschoo1/static_collected/admin/js/SelectFilter2.js +503 -0
  92. fnschoo1/static_collected/admin/js/actions.js +232 -0
  93. fnschoo1/static_collected/admin/js/admin/DateTimeShortcuts.js +496 -0
  94. fnschoo1/static_collected/admin/js/admin/RelatedObjectLookups.js +276 -0
  95. fnschoo1/static_collected/admin/js/autocomplete.js +33 -0
  96. fnschoo1/static_collected/admin/js/calendar.js +251 -0
  97. fnschoo1/static_collected/admin/js/cancel.js +29 -0
  98. fnschoo1/static_collected/admin/js/change_form.js +21 -0
  99. fnschoo1/static_collected/admin/js/collapse.js +43 -0
  100. fnschoo1/static_collected/admin/js/core.js +174 -0
  101. fnschoo1/static_collected/admin/js/filters.js +37 -0
  102. fnschoo1/static_collected/admin/js/inlines.js +439 -0
  103. fnschoo1/static_collected/admin/js/jquery.init.js +8 -0
  104. fnschoo1/static_collected/admin/js/nav_sidebar.js +81 -0
  105. fnschoo1/static_collected/admin/js/popup_response.js +24 -0
  106. fnschoo1/static_collected/admin/js/prepopulate.js +43 -0
  107. fnschoo1/static_collected/admin/js/prepopulate_init.js +20 -0
  108. fnschoo1/static_collected/admin/js/theme.js +57 -0
  109. fnschoo1/static_collected/admin/js/urlify.js +529 -0
  110. fnschoo1/static_collected/admin/js/vendor/jquery/jquery.js +10913 -0
  111. fnschoo1/static_collected/admin/js/vendor/jquery/jquery.min.js +2 -0
  112. fnschoo1/static_collected/admin/js/vendor/select2/i18n/af.js +43 -0
  113. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ar.js +36 -0
  114. fnschoo1/static_collected/admin/js/vendor/select2/i18n/az.js +33 -0
  115. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bg.js +38 -0
  116. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bn.js +39 -0
  117. fnschoo1/static_collected/admin/js/vendor/select2/i18n/bs.js +48 -0
  118. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ca.js +41 -0
  119. fnschoo1/static_collected/admin/js/vendor/select2/i18n/cs.js +62 -0
  120. fnschoo1/static_collected/admin/js/vendor/select2/i18n/da.js +37 -0
  121. fnschoo1/static_collected/admin/js/vendor/select2/i18n/de.js +41 -0
  122. fnschoo1/static_collected/admin/js/vendor/select2/i18n/dsb.js +51 -0
  123. fnschoo1/static_collected/admin/js/vendor/select2/i18n/el.js +43 -0
  124. fnschoo1/static_collected/admin/js/vendor/select2/i18n/en.js +41 -0
  125. fnschoo1/static_collected/admin/js/vendor/select2/i18n/es.js +41 -0
  126. fnschoo1/static_collected/admin/js/vendor/select2/i18n/et.js +38 -0
  127. fnschoo1/static_collected/admin/js/vendor/select2/i18n/eu.js +45 -0
  128. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fa.js +42 -0
  129. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fi.js +42 -0
  130. fnschoo1/static_collected/admin/js/vendor/select2/i18n/fr.js +43 -0
  131. fnschoo1/static_collected/admin/js/vendor/select2/i18n/gl.js +40 -0
  132. fnschoo1/static_collected/admin/js/vendor/select2/i18n/he.js +44 -0
  133. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hi.js +40 -0
  134. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hr.js +45 -0
  135. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hsb.js +51 -0
  136. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hu.js +44 -0
  137. fnschoo1/static_collected/admin/js/vendor/select2/i18n/hy.js +40 -0
  138. fnschoo1/static_collected/admin/js/vendor/select2/i18n/id.js +36 -0
  139. fnschoo1/static_collected/admin/js/vendor/select2/i18n/is.js +37 -0
  140. fnschoo1/static_collected/admin/js/vendor/select2/i18n/it.js +43 -0
  141. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ja.js +40 -0
  142. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ka.js +42 -0
  143. fnschoo1/static_collected/admin/js/vendor/select2/i18n/km.js +38 -0
  144. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ko.js +42 -0
  145. fnschoo1/static_collected/admin/js/vendor/select2/i18n/lt.js +45 -0
  146. fnschoo1/static_collected/admin/js/vendor/select2/i18n/lv.js +41 -0
  147. fnschoo1/static_collected/admin/js/vendor/select2/i18n/mk.js +42 -0
  148. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ms.js +38 -0
  149. fnschoo1/static_collected/admin/js/vendor/select2/i18n/nb.js +38 -0
  150. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ne.js +44 -0
  151. fnschoo1/static_collected/admin/js/vendor/select2/i18n/nl.js +46 -0
  152. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pl.js +43 -0
  153. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ps.js +41 -0
  154. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pt-BR.js +39 -0
  155. fnschoo1/static_collected/admin/js/vendor/select2/i18n/pt.js +41 -0
  156. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ro.js +43 -0
  157. fnschoo1/static_collected/admin/js/vendor/select2/i18n/ru.js +48 -0
  158. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sk.js +61 -0
  159. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sl.js +41 -0
  160. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sq.js +43 -0
  161. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sr-Cyrl.js +48 -0
  162. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sr.js +48 -0
  163. fnschoo1/static_collected/admin/js/vendor/select2/i18n/sv.js +40 -0
  164. fnschoo1/static_collected/admin/js/vendor/select2/i18n/th.js +36 -0
  165. fnschoo1/static_collected/admin/js/vendor/select2/i18n/tk.js +36 -0
  166. fnschoo1/static_collected/admin/js/vendor/select2/i18n/tr.js +40 -0
  167. fnschoo1/static_collected/admin/js/vendor/select2/i18n/uk.js +59 -0
  168. fnschoo1/static_collected/admin/js/vendor/select2/i18n/vi.js +37 -0
  169. fnschoo1/static_collected/admin/js/vendor/select2/i18n/zh-CN.js +36 -0
  170. fnschoo1/static_collected/admin/js/vendor/select2/i18n/zh-TW.js +33 -0
  171. fnschoo1/static_collected/admin/js/vendor/select2/select2.full.js +7115 -0
  172. fnschoo1/static_collected/admin/js/vendor/select2/select2.full.min.js +2 -0
  173. fnschoo1/static_collected/admin/js/vendor/xregexp/xregexp.js +4993 -0
  174. fnschoo1/static_collected/admin/js/vendor/xregexp/xregexp.min.js +160 -0
  175. fnschoo1/static_collected/css/bootstrap.min.css +11776 -0
  176. fnschoo1/static_collected/css/fnschool.css +26 -0
  177. fnschoo1/static_collected/js/bootstrap.bundle.min.js +4223 -0
  178. fnschoo1/static_collected/js/bootstrap.min.js +2919 -0
  179. fnschoo1/static_collected/js/fnschool.js +84 -0
  180. fnschoo1/static_collected/js/jquery.min.js +5413 -0
  181. fnschoo1/static_collected/js/jquery.slim.min.js +4331 -0
  182. fnschoo1/static_collected/js/popper.min.js +1306 -0
  183. fnschoo1/templates/base/_css.html +1 -0
  184. fnschoo1/templates/base/_js.html +15 -0
  185. fnschoo1/templates/base/content.html +30 -0
  186. fnschoo1/templates/base/header_content_footer.html +35 -0
  187. fnschoo1/templates/close.html +11 -0
  188. fnschoo1/templates/home.html +51 -0
  189. fnschoo1/templates/includes/_footer.html +39 -0
  190. fnschoo1/templates/includes/_header.html +77 -0
  191. fnschoo1/templates/includes/_navigation.html +0 -0
  192. fnschoo1/templates/includes/_paginator.html +27 -0
  193. fnschoo1/templates/registration/logged_out.html +0 -0
  194. fnschoo1/templates/registration/login.html +0 -0
  195. fnschool-20251011.80531.840.dist-info/METADATA +179 -0
  196. fnschool-20251011.80531.840.dist-info/RECORD +207 -0
  197. {fnschool-20250109.80500.803.dist-info → fnschool-20251011.80531.840.dist-info}/WHEEL +1 -1
  198. fnschool-20251011.80531.840.dist-info/entry_points.txt +2 -0
  199. fnschool-20251011.80531.840.dist-info/top_level.txt +1 -0
  200. fnschool/__init__.py +0 -35
  201. fnschool/__main__.py +0 -16
  202. fnschool/app.py +0 -103
  203. fnschool/canteen/__init__.py +0 -3
  204. fnschool/canteen/__main__.py +0 -3
  205. fnschool/canteen/bill.py +0 -253
  206. fnschool/canteen/canteen.py +0 -1
  207. fnschool/canteen/canteen.toml +0 -61
  208. fnschool/canteen/config.py +0 -10
  209. fnschool/canteen/consuming.py +0 -53
  210. fnschool/canteen/currency.py +0 -17
  211. fnschool/canteen/data/bill.i18n.xlsx +0 -0
  212. fnschool/canteen/data/bill.xlsx +0 -0
  213. fnschool/canteen/data/consuming.xlsx +0 -0
  214. fnschool/canteen/data/purchase_list.xlsx +0 -0
  215. fnschool/canteen/entry.py +0 -40
  216. fnschool/canteen/food.py +0 -206
  217. fnschool/canteen/food_classes.py +0 -33
  218. fnschool/canteen/food_classes.toml +0 -64
  219. fnschool/canteen/operator.py +0 -91
  220. fnschool/canteen/path.py +0 -28
  221. fnschool/canteen/spreadsheet/base.py +0 -212
  222. fnschool/canteen/spreadsheet/consuming.py +0 -310
  223. fnschool/canteen/spreadsheet/consumingsum.py +0 -76
  224. fnschool/canteen/spreadsheet/cover.py +0 -64
  225. fnschool/canteen/spreadsheet/ctspreadsheet.py +0 -351
  226. fnschool/canteen/spreadsheet/food.py +0 -680
  227. fnschool/canteen/spreadsheet/inventory.py +0 -375
  228. fnschool/canteen/spreadsheet/merging.py +0 -340
  229. fnschool/canteen/spreadsheet/preconsuming.py +0 -329
  230. fnschool/canteen/spreadsheet/purchasing.py +0 -885
  231. fnschool/canteen/spreadsheet/purchasingsum.py +0 -110
  232. fnschool/canteen/spreadsheet/spreadsheet.py +0 -363
  233. fnschool/canteen/spreadsheet/translating.py +0 -12
  234. fnschool/canteen/spreadsheet/unwarehousing.py +0 -178
  235. fnschool/canteen/spreadsheet/unwarehousingsum.py +0 -11
  236. fnschool/canteen/spreadsheet/warehousing.py +0 -360
  237. fnschool/canteen/spreadsheet/workbook.py +0 -17
  238. fnschool/canteen/test.py +0 -97
  239. fnschool/config.py +0 -48
  240. fnschool/entry.py +0 -67
  241. fnschool/exam/__init__.py +0 -8
  242. fnschool/exam/data/parental_emails.xlsx +0 -0
  243. fnschool/exam/data/score.xlsx +0 -0
  244. fnschool/exam/email.py +0 -349
  245. fnschool/exam/entry.py +0 -36
  246. fnschool/exam/language.py +0 -19
  247. fnschool/exam/path.py +0 -24
  248. fnschool/exam/score.py +0 -1191
  249. fnschool/exam/subject.py +0 -20
  250. fnschool/exam/teacher.py +0 -54
  251. fnschool/external.py +0 -89
  252. fnschool/games/__init__.py +0 -1
  253. fnschool/games/__main__.py +0 -1
  254. fnschool/games/games.py +0 -1
  255. fnschool/inoutput.py +0 -97
  256. fnschool/language.py +0 -40
  257. fnschool/locales/en_US/LC_MESSAGES/fnschool.mo +0 -0
  258. fnschool/locales/zh_CN/LC_MESSAGES/fnschool.mo +0 -0
  259. fnschool/locales/zh_HK/LC_MESSAGES/fnschool.mo +0 -0
  260. fnschool/locales/zh_SG/LC_MESSAGES/fnschool.mo +0 -0
  261. fnschool/locales/zh_TW/LC_MESSAGES/fnschool.mo +0 -0
  262. fnschool/path.py +0 -45
  263. fnschool/test.py +0 -24
  264. fnschool/user.py +0 -262
  265. fnschool-20250109.80500.803.dist-info/METADATA +0 -342
  266. fnschool-20250109.80500.803.dist-info/RECORD +0 -78
  267. fnschool-20250109.80500.803.dist-info/entry_points.txt +0 -5
  268. fnschool-20250109.80500.803.dist-info/top_level.txt +0 -1
  269. /fnschool/canteen/consume.py → /fnschoo1/canteen/__init__.py +0 -0
  270. /fnschool/canteen/food_recount.toml → /fnschoo1/canteen/migrations/__init__.py +0 -0
  271. {fnschool/canteen/spreadsheet → fnschoo1/canteen/workbook}/__init__.py +0 -0
  272. /fnschool/exam/__main__.py → /fnschoo1/fnschool/templatetags/__init__.py +0 -0
  273. /fnschool/canteen/food_recounts.toml → /fnschoo1/profiles/__init__.py +0 -0
  274. /fnschool/canteen/warehouse.py → /fnschoo1/profiles/migrations/__init__.py +0 -0
  275. /fnschool/canteen/workbook.toml → /fnschoo1/templates/base/_content.html +0 -0
  276. {fnschool-20250109.80500.803.dist-info → fnschool-20251011.80531.840.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,1224 @@
1
+ /*
2
+ DJANGO Admin styles
3
+ */
4
+
5
+ /* VARIABLE DEFINITIONS */
6
+ html[data-theme='light'],
7
+ :root {
8
+ --primary: #79aec8;
9
+ --secondary: #417690;
10
+ --accent: #f5dd5d;
11
+ --primary-fg: #fff;
12
+
13
+ --body-fg: #333;
14
+ --body-bg: #fff;
15
+ --body-quiet-color: #666;
16
+ --body-loud-color: #000;
17
+
18
+ --header-color: #ffc;
19
+ --header-branding-color: var(--accent);
20
+ --header-bg: var(--secondary);
21
+ --header-link-color: var(--primary-fg);
22
+
23
+ --breadcrumbs-fg: #c4dce8;
24
+ --breadcrumbs-link-fg: var(--body-bg);
25
+ --breadcrumbs-bg: var(--primary);
26
+
27
+ --link-fg: #417893;
28
+ --link-hover-color: #036;
29
+ --link-selected-fg: #5b80b2;
30
+
31
+ --hairline-color: #e8e8e8;
32
+ --border-color: #ccc;
33
+
34
+ --error-fg: #ba2121;
35
+
36
+ --message-success-bg: #dfd;
37
+ --message-warning-bg: #ffc;
38
+ --message-error-bg: #ffefef;
39
+
40
+ --darkened-bg: #f8f8f8; /* A bit darker than --body-bg */
41
+ --selected-bg: #e4e4e4; /* E.g. selected table cells */
42
+ --selected-row: #ffc;
43
+
44
+ --button-fg: #fff;
45
+ --button-bg: var(--primary);
46
+ --button-hover-bg: #609ab6;
47
+ --default-button-bg: var(--secondary);
48
+ --default-button-hover-bg: #205067;
49
+ --close-button-bg: #747474;
50
+ --close-button-hover-bg: #333;
51
+ --delete-button-bg: #ba2121;
52
+ --delete-button-hover-bg: #a41515;
53
+
54
+ --object-tools-fg: var(--button-fg);
55
+ --object-tools-bg: var(--close-button-bg);
56
+ --object-tools-hover-bg: var(--close-button-hover-bg);
57
+
58
+ --font-family-primary:
59
+ -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, Roboto,
60
+ 'Helvetica Neue', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
61
+ 'Segoe UI Symbol', 'Noto Color Emoji';
62
+ --font-family-monospace:
63
+ ui-monospace, Menlo, Monaco, 'Cascadia Mono', 'Segoe UI Mono',
64
+ 'Roboto Mono', 'Oxygen Mono', 'Ubuntu Monospace', 'Source Code Pro',
65
+ 'Fira Mono', 'Droid Sans Mono', 'Courier New', monospace,
66
+ 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
67
+ }
68
+
69
+ html,
70
+ body {
71
+ height: 100%;
72
+ }
73
+
74
+ body {
75
+ margin: 0;
76
+ padding: 0;
77
+ font-size: 0.875rem;
78
+ font-family: var(--font-family-primary);
79
+ color: var(--body-fg);
80
+ background: var(--body-bg);
81
+ }
82
+
83
+ /* LINKS */
84
+
85
+ a:link,
86
+ a:visited {
87
+ color: var(--link-fg);
88
+ text-decoration: none;
89
+ transition:
90
+ color 0.15s,
91
+ background 0.15s;
92
+ }
93
+
94
+ a:focus,
95
+ a:hover {
96
+ color: var(--link-hover-color);
97
+ }
98
+
99
+ a:focus {
100
+ text-decoration: underline;
101
+ }
102
+
103
+ a img {
104
+ border: none;
105
+ }
106
+
107
+ a.section:link,
108
+ a.section:visited {
109
+ color: var(--header-link-color);
110
+ text-decoration: none;
111
+ }
112
+
113
+ a.section:focus,
114
+ a.section:hover {
115
+ text-decoration: underline;
116
+ }
117
+
118
+ /* GLOBAL DEFAULTS */
119
+
120
+ p,
121
+ ol,
122
+ ul,
123
+ dl {
124
+ margin: 0.2em 0 0.8em 0;
125
+ }
126
+
127
+ p {
128
+ padding: 0;
129
+ line-height: 140%;
130
+ }
131
+
132
+ h1,
133
+ h2,
134
+ h3,
135
+ h4,
136
+ h5 {
137
+ font-weight: bold;
138
+ }
139
+
140
+ h1 {
141
+ margin: 0 0 20px;
142
+ font-weight: 300;
143
+ font-size: 1.25rem;
144
+ color: var(--body-quiet-color);
145
+ }
146
+
147
+ h2 {
148
+ font-size: 1rem;
149
+ margin: 1em 0 0.5em 0;
150
+ }
151
+
152
+ h2.subhead {
153
+ font-weight: normal;
154
+ margin-top: 0;
155
+ }
156
+
157
+ h3 {
158
+ font-size: 0.875rem;
159
+ margin: 0.8em 0 0.3em 0;
160
+ color: var(--body-quiet-color);
161
+ font-weight: bold;
162
+ }
163
+
164
+ h4 {
165
+ font-size: 0.75rem;
166
+ margin: 1em 0 0.8em 0;
167
+ padding-bottom: 3px;
168
+ }
169
+
170
+ h5 {
171
+ font-size: 0.625rem;
172
+ margin: 1.5em 0 0.5em 0;
173
+ color: var(--body-quiet-color);
174
+ text-transform: uppercase;
175
+ letter-spacing: 1px;
176
+ }
177
+
178
+ ul > li {
179
+ list-style-type: square;
180
+ padding: 1px 0;
181
+ }
182
+
183
+ li ul {
184
+ margin-bottom: 0;
185
+ }
186
+
187
+ li,
188
+ dt,
189
+ dd {
190
+ font-size: 0.8125rem;
191
+ line-height: 1.25rem;
192
+ }
193
+
194
+ dt {
195
+ font-weight: bold;
196
+ margin-top: 4px;
197
+ }
198
+
199
+ dd {
200
+ margin-left: 0;
201
+ }
202
+
203
+ form {
204
+ margin: 0;
205
+ padding: 0;
206
+ }
207
+
208
+ fieldset {
209
+ margin: 0;
210
+ min-width: 0;
211
+ padding: 0;
212
+ border: none;
213
+ border-top: 1px solid var(--hairline-color);
214
+ }
215
+
216
+ blockquote {
217
+ font-size: 0.6875rem;
218
+ color: #777;
219
+ margin-left: 2px;
220
+ padding-left: 10px;
221
+ border-left: 5px solid #ddd;
222
+ }
223
+
224
+ code,
225
+ pre {
226
+ font-family: var(--font-family-monospace);
227
+ color: var(--body-quiet-color);
228
+ font-size: 0.75rem;
229
+ overflow-x: auto;
230
+ }
231
+
232
+ pre.literal-block {
233
+ margin: 10px;
234
+ background: var(--darkened-bg);
235
+ padding: 6px 8px;
236
+ }
237
+
238
+ code strong {
239
+ color: #930;
240
+ }
241
+
242
+ hr {
243
+ clear: both;
244
+ color: var(--hairline-color);
245
+ background-color: var(--hairline-color);
246
+ height: 1px;
247
+ border: none;
248
+ margin: 0;
249
+ padding: 0;
250
+ line-height: 1px;
251
+ }
252
+
253
+ /* TEXT STYLES & MODIFIERS */
254
+
255
+ .small {
256
+ font-size: 0.6875rem;
257
+ }
258
+
259
+ .mini {
260
+ font-size: 0.625rem;
261
+ }
262
+
263
+ .help,
264
+ p.help,
265
+ form p.help,
266
+ div.help,
267
+ form div.help,
268
+ div.help li {
269
+ font-size: 0.6875rem;
270
+ color: var(--body-quiet-color);
271
+ }
272
+
273
+ div.help ul {
274
+ margin-bottom: 0;
275
+ }
276
+
277
+ .help-tooltip {
278
+ cursor: help;
279
+ }
280
+
281
+ p img,
282
+ h1 img,
283
+ h2 img,
284
+ h3 img,
285
+ h4 img,
286
+ td img {
287
+ vertical-align: middle;
288
+ }
289
+
290
+ .quiet,
291
+ a.quiet:link,
292
+ a.quiet:visited {
293
+ color: var(--body-quiet-color);
294
+ font-weight: normal;
295
+ }
296
+
297
+ .clear {
298
+ clear: both;
299
+ }
300
+
301
+ .nowrap {
302
+ white-space: nowrap;
303
+ }
304
+
305
+ .hidden {
306
+ display: none !important;
307
+ }
308
+
309
+ /* TABLES */
310
+
311
+ table {
312
+ border-collapse: collapse;
313
+ border-color: var(--border-color);
314
+ }
315
+
316
+ td,
317
+ th {
318
+ font-size: 0.8125rem;
319
+ line-height: 1rem;
320
+ border-bottom: 1px solid var(--hairline-color);
321
+ vertical-align: top;
322
+ padding: 8px;
323
+ }
324
+
325
+ th {
326
+ font-weight: 600;
327
+ text-align: left;
328
+ }
329
+
330
+ thead th,
331
+ tfoot td {
332
+ color: var(--body-quiet-color);
333
+ padding: 5px 10px;
334
+ font-size: 0.6875rem;
335
+ background: var(--body-bg);
336
+ border: none;
337
+ border-top: 1px solid var(--hairline-color);
338
+ border-bottom: 1px solid var(--hairline-color);
339
+ }
340
+
341
+ tfoot td {
342
+ border-bottom: none;
343
+ border-top: 1px solid var(--hairline-color);
344
+ }
345
+
346
+ thead th.required {
347
+ color: var(--body-loud-color);
348
+ }
349
+
350
+ tr.alt {
351
+ background: var(--darkened-bg);
352
+ }
353
+
354
+ tr:nth-child(odd),
355
+ .row-form-errors {
356
+ background: var(--body-bg);
357
+ }
358
+
359
+ tr:nth-child(even),
360
+ tr:nth-child(even) .errorlist,
361
+ tr:nth-child(odd) + .row-form-errors,
362
+ tr:nth-child(odd) + .row-form-errors .errorlist {
363
+ background: var(--darkened-bg);
364
+ }
365
+
366
+ /* SORTABLE TABLES */
367
+
368
+ thead th {
369
+ padding: 5px 10px;
370
+ line-height: normal;
371
+ text-transform: uppercase;
372
+ background: var(--darkened-bg);
373
+ }
374
+
375
+ thead th a:link,
376
+ thead th a:visited {
377
+ color: var(--body-quiet-color);
378
+ }
379
+
380
+ thead th.sorted {
381
+ background: var(--selected-bg);
382
+ }
383
+
384
+ thead th.sorted .text {
385
+ padding-right: 42px;
386
+ }
387
+
388
+ table thead th .text span {
389
+ padding: 8px 10px;
390
+ display: block;
391
+ }
392
+
393
+ table thead th .text a {
394
+ display: block;
395
+ cursor: pointer;
396
+ padding: 8px 10px;
397
+ }
398
+
399
+ table thead th .text a:focus,
400
+ table thead th .text a:hover {
401
+ background: var(--selected-bg);
402
+ }
403
+
404
+ thead th.sorted a.sortremove {
405
+ visibility: hidden;
406
+ }
407
+
408
+ table thead th.sorted:hover a.sortremove {
409
+ visibility: visible;
410
+ }
411
+
412
+ table thead th.sorted .sortoptions {
413
+ display: block;
414
+ padding: 9px 5px 0 5px;
415
+ float: right;
416
+ text-align: right;
417
+ }
418
+
419
+ table thead th.sorted .sortpriority {
420
+ font-size: 0.8em;
421
+ min-width: 12px;
422
+ text-align: center;
423
+ vertical-align: 3px;
424
+ margin-left: 2px;
425
+ margin-right: 2px;
426
+ }
427
+
428
+ table thead th.sorted .sortoptions a {
429
+ position: relative;
430
+ width: 14px;
431
+ height: 14px;
432
+ display: inline-block;
433
+ background: url(../img/sorting-icons.svg) 0 0 no-repeat;
434
+ background-size: 14px auto;
435
+ }
436
+
437
+ table thead th.sorted .sortoptions a.sortremove {
438
+ background-position: 0 0;
439
+ }
440
+
441
+ table thead th.sorted .sortoptions a.sortremove:after {
442
+ content: '\\';
443
+ position: absolute;
444
+ top: -6px;
445
+ left: 3px;
446
+ font-weight: 200;
447
+ font-size: 1.125rem;
448
+ color: var(--body-quiet-color);
449
+ }
450
+
451
+ table thead th.sorted .sortoptions a.sortremove:focus:after,
452
+ table thead th.sorted .sortoptions a.sortremove:hover:after {
453
+ color: var(--link-fg);
454
+ }
455
+
456
+ table thead th.sorted .sortoptions a.sortremove:focus,
457
+ table thead th.sorted .sortoptions a.sortremove:hover {
458
+ background-position: 0 -14px;
459
+ }
460
+
461
+ table thead th.sorted .sortoptions a.ascending {
462
+ background-position: 0 -28px;
463
+ }
464
+
465
+ table thead th.sorted .sortoptions a.ascending:focus,
466
+ table thead th.sorted .sortoptions a.ascending:hover {
467
+ background-position: 0 -42px;
468
+ }
469
+
470
+ table thead th.sorted .sortoptions a.descending {
471
+ top: 1px;
472
+ background-position: 0 -56px;
473
+ }
474
+
475
+ table thead th.sorted .sortoptions a.descending:focus,
476
+ table thead th.sorted .sortoptions a.descending:hover {
477
+ background-position: 0 -70px;
478
+ }
479
+
480
+ /* FORM DEFAULTS */
481
+
482
+ input,
483
+ textarea,
484
+ select,
485
+ .form-row p,
486
+ form .button {
487
+ margin: 2px 0;
488
+ padding: 2px 3px;
489
+ vertical-align: middle;
490
+ font-family: var(--font-family-primary);
491
+ font-weight: normal;
492
+ font-size: 0.8125rem;
493
+ }
494
+ .form-row div.help {
495
+ padding: 2px 3px;
496
+ }
497
+
498
+ textarea {
499
+ vertical-align: top;
500
+ }
501
+
502
+ input[type='text'],
503
+ input[type='password'],
504
+ input[type='email'],
505
+ input[type='url'],
506
+ input[type='number'],
507
+ input[type='tel'],
508
+ textarea,
509
+ select,
510
+ .vTextField {
511
+ border: 1px solid var(--border-color);
512
+ border-radius: 4px;
513
+ padding: 5px 6px;
514
+ margin-top: 0;
515
+ color: var(--body-fg);
516
+ background-color: var(--body-bg);
517
+ }
518
+
519
+ input[type='text']:focus,
520
+ input[type='password']:focus,
521
+ input[type='email']:focus,
522
+ input[type='url']:focus,
523
+ input[type='number']:focus,
524
+ input[type='tel']:focus,
525
+ textarea:focus,
526
+ select:focus,
527
+ .vTextField:focus {
528
+ border-color: var(--body-quiet-color);
529
+ }
530
+
531
+ select {
532
+ height: 1.875rem;
533
+ }
534
+
535
+ select[multiple] {
536
+ /* Allow HTML size attribute to override the height in the rule above. */
537
+ height: auto;
538
+ min-height: 150px;
539
+ }
540
+
541
+ /* FORM BUTTONS */
542
+
543
+ .button,
544
+ input[type='submit'],
545
+ input[type='button'],
546
+ .submit-row input,
547
+ a.button {
548
+ background: var(--button-bg);
549
+ padding: 10px 15px;
550
+ border: none;
551
+ border-radius: 4px;
552
+ color: var(--button-fg);
553
+ cursor: pointer;
554
+ transition: background 0.15s;
555
+ }
556
+
557
+ a.button {
558
+ padding: 4px 5px;
559
+ }
560
+
561
+ .button:active,
562
+ input[type='submit']:active,
563
+ input[type='button']:active,
564
+ .button:focus,
565
+ input[type='submit']:focus,
566
+ input[type='button']:focus,
567
+ .button:hover,
568
+ input[type='submit']:hover,
569
+ input[type='button']:hover {
570
+ background: var(--button-hover-bg);
571
+ }
572
+
573
+ .button[disabled],
574
+ input[type='submit'][disabled],
575
+ input[type='button'][disabled] {
576
+ opacity: 0.4;
577
+ }
578
+
579
+ .button.default,
580
+ input[type='submit'].default,
581
+ .submit-row input.default {
582
+ border: none;
583
+ font-weight: 400;
584
+ background: var(--default-button-bg);
585
+ }
586
+
587
+ .button.default:active,
588
+ input[type='submit'].default:active,
589
+ .button.default:focus,
590
+ input[type='submit'].default:focus,
591
+ .button.default:hover,
592
+ input[type='submit'].default:hover {
593
+ background: var(--default-button-hover-bg);
594
+ }
595
+
596
+ .button[disabled].default,
597
+ input[type='submit'][disabled].default,
598
+ input[type='button'][disabled].default {
599
+ opacity: 0.4;
600
+ }
601
+
602
+ /* MODULES */
603
+
604
+ .module {
605
+ border: none;
606
+ margin-bottom: 30px;
607
+ background: var(--body-bg);
608
+ }
609
+
610
+ .module p,
611
+ .module ul,
612
+ .module h3,
613
+ .module h4,
614
+ .module dl,
615
+ .module pre {
616
+ padding-left: 10px;
617
+ padding-right: 10px;
618
+ }
619
+
620
+ .module blockquote {
621
+ margin-left: 12px;
622
+ }
623
+
624
+ .module ul,
625
+ .module ol {
626
+ margin-left: 1.5em;
627
+ }
628
+
629
+ .module h3 {
630
+ margin-top: 0.6em;
631
+ }
632
+
633
+ .module h2,
634
+ .module caption,
635
+ .inline-group h2 {
636
+ margin: 0;
637
+ padding: 8px;
638
+ font-weight: 400;
639
+ font-size: 0.8125rem;
640
+ text-align: left;
641
+ background: var(--primary);
642
+ color: var(--header-link-color);
643
+ }
644
+
645
+ .module caption,
646
+ .inline-group h2 {
647
+ font-size: 0.75rem;
648
+ letter-spacing: 0.5px;
649
+ text-transform: uppercase;
650
+ }
651
+
652
+ .module table {
653
+ border-collapse: collapse;
654
+ }
655
+
656
+ /* MESSAGES & ERRORS */
657
+
658
+ ul.messagelist {
659
+ padding: 0;
660
+ margin: 0;
661
+ }
662
+
663
+ ul.messagelist li {
664
+ display: block;
665
+ font-weight: 400;
666
+ font-size: 0.8125rem;
667
+ padding: 10px 10px 10px 65px;
668
+ margin: 0 0 10px 0;
669
+ background: var(--message-success-bg) url(../img/icon-yes.svg) 40px 12px
670
+ no-repeat;
671
+ background-size: 16px auto;
672
+ color: var(--body-fg);
673
+ word-break: break-word;
674
+ }
675
+
676
+ ul.messagelist li.warning {
677
+ background: var(--message-warning-bg) url(../img/icon-alert.svg) 40px 14px
678
+ no-repeat;
679
+ background-size: 14px auto;
680
+ }
681
+
682
+ ul.messagelist li.error {
683
+ background: var(--message-error-bg) url(../img/icon-no.svg) 40px 12px
684
+ no-repeat;
685
+ background-size: 16px auto;
686
+ }
687
+
688
+ .errornote {
689
+ font-size: 0.875rem;
690
+ font-weight: 700;
691
+ display: block;
692
+ padding: 10px 12px;
693
+ margin: 0 0 10px 0;
694
+ color: var(--error-fg);
695
+ border: 1px solid var(--error-fg);
696
+ border-radius: 4px;
697
+ background-color: var(--body-bg);
698
+ background-position: 5px 12px;
699
+ overflow-wrap: break-word;
700
+ }
701
+
702
+ ul.errorlist {
703
+ margin: 0 0 4px;
704
+ padding: 0;
705
+ color: var(--error-fg);
706
+ background: var(--body-bg);
707
+ }
708
+
709
+ ul.errorlist li {
710
+ font-size: 0.8125rem;
711
+ display: block;
712
+ margin-bottom: 4px;
713
+ overflow-wrap: break-word;
714
+ }
715
+
716
+ ul.errorlist li:first-child {
717
+ margin-top: 0;
718
+ }
719
+
720
+ ul.errorlist li a {
721
+ color: inherit;
722
+ text-decoration: underline;
723
+ }
724
+
725
+ td ul.errorlist {
726
+ margin: 0;
727
+ padding: 0;
728
+ }
729
+
730
+ td ul.errorlist li {
731
+ margin: 0;
732
+ }
733
+
734
+ .form-row.errors {
735
+ margin: 0;
736
+ border: none;
737
+ border-bottom: 1px solid var(--hairline-color);
738
+ background: none;
739
+ }
740
+
741
+ .form-row.errors ul.errorlist li {
742
+ padding-left: 0;
743
+ }
744
+
745
+ .errors input,
746
+ .errors select,
747
+ .errors textarea,
748
+ td ul.errorlist + input,
749
+ td ul.errorlist + select,
750
+ td ul.errorlist + textarea {
751
+ border: 1px solid var(--error-fg);
752
+ }
753
+
754
+ .description {
755
+ font-size: 0.75rem;
756
+ padding: 5px 0 0 12px;
757
+ }
758
+
759
+ /* BREADCRUMBS */
760
+
761
+ div.breadcrumbs {
762
+ background: var(--breadcrumbs-bg);
763
+ padding: 10px 40px;
764
+ border: none;
765
+ color: var(--breadcrumbs-fg);
766
+ text-align: left;
767
+ }
768
+
769
+ div.breadcrumbs a {
770
+ color: var(--breadcrumbs-link-fg);
771
+ }
772
+
773
+ div.breadcrumbs a:focus,
774
+ div.breadcrumbs a:hover {
775
+ color: var(--breadcrumbs-fg);
776
+ }
777
+
778
+ /* ACTION ICONS */
779
+
780
+ .viewlink,
781
+ .inlineviewlink {
782
+ padding-left: 16px;
783
+ background: url(../img/icon-viewlink.svg) 0 1px no-repeat;
784
+ }
785
+
786
+ .addlink {
787
+ padding-left: 16px;
788
+ background: url(../img/icon-addlink.svg) 0 1px no-repeat;
789
+ }
790
+
791
+ .changelink,
792
+ .inlinechangelink {
793
+ padding-left: 16px;
794
+ background: url(../img/icon-changelink.svg) 0 1px no-repeat;
795
+ }
796
+
797
+ .deletelink {
798
+ padding-left: 16px;
799
+ background: url(../img/icon-deletelink.svg) 0 1px no-repeat;
800
+ }
801
+
802
+ a.deletelink:link,
803
+ a.deletelink:visited {
804
+ color: #cc3434; /* XXX Probably unused? */
805
+ }
806
+
807
+ a.deletelink:focus,
808
+ a.deletelink:hover {
809
+ color: #993333; /* XXX Probably unused? */
810
+ text-decoration: none;
811
+ }
812
+
813
+ /* OBJECT TOOLS */
814
+
815
+ .object-tools {
816
+ font-size: 0.625rem;
817
+ font-weight: bold;
818
+ padding-left: 0;
819
+ float: right;
820
+ position: relative;
821
+ margin-top: -48px;
822
+ }
823
+
824
+ .object-tools li {
825
+ display: block;
826
+ float: left;
827
+ margin-left: 5px;
828
+ height: 1rem;
829
+ }
830
+
831
+ .object-tools a {
832
+ border-radius: 15px;
833
+ }
834
+
835
+ .object-tools a:link,
836
+ .object-tools a:visited {
837
+ display: block;
838
+ float: left;
839
+ padding: 3px 12px;
840
+ background: var(--object-tools-bg);
841
+ color: var(--object-tools-fg);
842
+ font-weight: 400;
843
+ font-size: 0.6875rem;
844
+ text-transform: uppercase;
845
+ letter-spacing: 0.5px;
846
+ }
847
+
848
+ .object-tools a:focus,
849
+ .object-tools a:hover {
850
+ background-color: var(--object-tools-hover-bg);
851
+ }
852
+
853
+ .object-tools a:focus {
854
+ text-decoration: none;
855
+ }
856
+
857
+ .object-tools a.viewsitelink,
858
+ .object-tools a.addlink {
859
+ background-repeat: no-repeat;
860
+ background-position: right 7px center;
861
+ padding-right: 26px;
862
+ }
863
+
864
+ .object-tools a.viewsitelink {
865
+ background-image: url(../img/tooltag-arrowright.svg);
866
+ }
867
+
868
+ .object-tools a.addlink {
869
+ background-image: url(../img/tooltag-add.svg);
870
+ }
871
+
872
+ /* OBJECT HISTORY */
873
+
874
+ #change-history table {
875
+ width: 100%;
876
+ }
877
+
878
+ #change-history table tbody th {
879
+ width: 16em;
880
+ }
881
+
882
+ #change-history .paginator {
883
+ color: var(--body-quiet-color);
884
+ border-bottom: 1px solid var(--hairline-color);
885
+ background: var(--body-bg);
886
+ overflow: hidden;
887
+ }
888
+
889
+ /* PAGE STRUCTURE */
890
+
891
+ #container {
892
+ position: relative;
893
+ width: 100%;
894
+ min-width: 980px;
895
+ padding: 0;
896
+ display: flex;
897
+ flex-direction: column;
898
+ height: 100%;
899
+ }
900
+
901
+ #container > div {
902
+ flex-shrink: 0;
903
+ }
904
+
905
+ #container > .main {
906
+ display: flex;
907
+ flex: 1 0 auto;
908
+ }
909
+
910
+ .main > .content {
911
+ flex: 1 0;
912
+ max-width: 100%;
913
+ }
914
+
915
+ .skip-to-content-link {
916
+ position: absolute;
917
+ top: -999px;
918
+ margin: 5px;
919
+ padding: 5px;
920
+ background: var(--body-bg);
921
+ z-index: 1;
922
+ }
923
+
924
+ .skip-to-content-link:focus {
925
+ left: 0px;
926
+ top: 0px;
927
+ }
928
+
929
+ #content {
930
+ padding: 20px 40px;
931
+ }
932
+
933
+ .dashboard #content {
934
+ width: 600px;
935
+ }
936
+
937
+ #content-main {
938
+ float: left;
939
+ width: 100%;
940
+ }
941
+
942
+ #content-related {
943
+ float: right;
944
+ width: 260px;
945
+ position: relative;
946
+ margin-right: -300px;
947
+ }
948
+
949
+ #footer {
950
+ clear: both;
951
+ padding: 10px;
952
+ }
953
+
954
+ /* COLUMN TYPES */
955
+
956
+ .colMS {
957
+ margin-right: 300px;
958
+ }
959
+
960
+ .colSM {
961
+ margin-left: 300px;
962
+ }
963
+
964
+ .colSM #content-related {
965
+ float: left;
966
+ margin-right: 0;
967
+ margin-left: -300px;
968
+ }
969
+
970
+ .colSM #content-main {
971
+ float: right;
972
+ }
973
+
974
+ .popup .colM {
975
+ width: auto;
976
+ }
977
+
978
+ /* HEADER */
979
+
980
+ #header {
981
+ width: auto;
982
+ height: auto;
983
+ display: flex;
984
+ justify-content: space-between;
985
+ align-items: center;
986
+ padding: 10px 40px;
987
+ background: var(--header-bg);
988
+ color: var(--header-color);
989
+ overflow: hidden;
990
+ }
991
+
992
+ #header a:link,
993
+ #header a:visited,
994
+ #logout-form button {
995
+ color: var(--header-link-color);
996
+ }
997
+
998
+ #header a:focus,
999
+ #header a:hover {
1000
+ text-decoration: underline;
1001
+ }
1002
+
1003
+ #branding {
1004
+ display: flex;
1005
+ }
1006
+
1007
+ #branding h1 {
1008
+ padding: 0;
1009
+ margin: 0;
1010
+ margin-inline-end: 20px;
1011
+ font-weight: 300;
1012
+ font-size: 1.5rem;
1013
+ color: var(--header-branding-color);
1014
+ }
1015
+
1016
+ #branding h1 a:link,
1017
+ #branding h1 a:visited {
1018
+ color: var(--accent);
1019
+ }
1020
+
1021
+ #branding h2 {
1022
+ padding: 0 10px;
1023
+ font-size: 0.875rem;
1024
+ margin: -8px 0 8px 0;
1025
+ font-weight: normal;
1026
+ color: var(--header-color);
1027
+ }
1028
+
1029
+ #branding a:hover {
1030
+ text-decoration: none;
1031
+ }
1032
+
1033
+ #logout-form {
1034
+ display: inline;
1035
+ }
1036
+
1037
+ #logout-form button {
1038
+ background: none;
1039
+ border: 0;
1040
+ cursor: pointer;
1041
+ font-family: var(--font-family-primary);
1042
+ }
1043
+
1044
+ #user-tools {
1045
+ float: right;
1046
+ margin: 0 0 0 20px;
1047
+ text-align: right;
1048
+ }
1049
+
1050
+ #user-tools,
1051
+ #logout-form button {
1052
+ padding: 0;
1053
+ font-weight: 300;
1054
+ font-size: 0.6875rem;
1055
+ letter-spacing: 0.5px;
1056
+ text-transform: uppercase;
1057
+ }
1058
+
1059
+ #user-tools a,
1060
+ #logout-form button {
1061
+ border-bottom: 1px solid rgba(255, 255, 255, 0.25);
1062
+ }
1063
+
1064
+ #user-tools a:focus,
1065
+ #user-tools a:hover,
1066
+ #logout-form button:active,
1067
+ #logout-form button:hover {
1068
+ text-decoration: none;
1069
+ border-bottom: 0;
1070
+ }
1071
+
1072
+ #logout-form button:active,
1073
+ #logout-form button:hover {
1074
+ margin-bottom: 1px;
1075
+ }
1076
+
1077
+ /* SIDEBAR */
1078
+
1079
+ #content-related {
1080
+ background: var(--darkened-bg);
1081
+ }
1082
+
1083
+ #content-related .module {
1084
+ background: none;
1085
+ }
1086
+
1087
+ #content-related h3 {
1088
+ color: var(--body-quiet-color);
1089
+ padding: 0 16px;
1090
+ margin: 0 0 16px;
1091
+ }
1092
+
1093
+ #content-related h4 {
1094
+ font-size: 0.8125rem;
1095
+ }
1096
+
1097
+ #content-related p {
1098
+ padding-left: 16px;
1099
+ padding-right: 16px;
1100
+ }
1101
+
1102
+ #content-related .actionlist {
1103
+ padding: 0;
1104
+ margin: 16px;
1105
+ }
1106
+
1107
+ #content-related .actionlist li {
1108
+ line-height: 1.2;
1109
+ margin-bottom: 10px;
1110
+ padding-left: 18px;
1111
+ }
1112
+
1113
+ #content-related .module h2 {
1114
+ background: none;
1115
+ padding: 16px;
1116
+ margin-bottom: 16px;
1117
+ border-bottom: 1px solid var(--hairline-color);
1118
+ font-size: 1.125rem;
1119
+ color: var(--body-fg);
1120
+ }
1121
+
1122
+ .delete-confirmation form input[type='submit'] {
1123
+ background: var(--delete-button-bg);
1124
+ border-radius: 4px;
1125
+ padding: 10px 15px;
1126
+ color: var(--button-fg);
1127
+ }
1128
+
1129
+ .delete-confirmation form input[type='submit']:active,
1130
+ .delete-confirmation form input[type='submit']:focus,
1131
+ .delete-confirmation form input[type='submit']:hover {
1132
+ background: var(--delete-button-hover-bg);
1133
+ }
1134
+
1135
+ .delete-confirmation form .cancel-link {
1136
+ display: inline-block;
1137
+ vertical-align: middle;
1138
+ height: 0.9375rem;
1139
+ line-height: 0.9375rem;
1140
+ border-radius: 4px;
1141
+ padding: 10px 15px;
1142
+ color: var(--button-fg);
1143
+ background: var(--close-button-bg);
1144
+ margin: 0 0 0 10px;
1145
+ }
1146
+
1147
+ .delete-confirmation form .cancel-link:active,
1148
+ .delete-confirmation form .cancel-link:focus,
1149
+ .delete-confirmation form .cancel-link:hover {
1150
+ background: var(--close-button-hover-bg);
1151
+ }
1152
+
1153
+ /* POPUP */
1154
+ .popup #content {
1155
+ padding: 20px;
1156
+ }
1157
+
1158
+ .popup #container {
1159
+ min-width: 0;
1160
+ }
1161
+
1162
+ .popup #header {
1163
+ padding: 10px 20px;
1164
+ }
1165
+
1166
+ /* PAGINATOR */
1167
+
1168
+ .paginator {
1169
+ display: flex;
1170
+ align-items: center;
1171
+ gap: 4px;
1172
+ font-size: 0.8125rem;
1173
+ padding-top: 10px;
1174
+ padding-bottom: 10px;
1175
+ line-height: 22px;
1176
+ margin: 0;
1177
+ border-top: 1px solid var(--hairline-color);
1178
+ width: 100%;
1179
+ }
1180
+
1181
+ .paginator a:link,
1182
+ .paginator a:visited {
1183
+ padding: 2px 6px;
1184
+ background: var(--button-bg);
1185
+ text-decoration: none;
1186
+ color: var(--button-fg);
1187
+ }
1188
+
1189
+ .paginator a.showall {
1190
+ border: none;
1191
+ background: none;
1192
+ color: var(--link-fg);
1193
+ }
1194
+
1195
+ .paginator a.showall:focus,
1196
+ .paginator a.showall:hover {
1197
+ background: none;
1198
+ color: var(--link-hover-color);
1199
+ }
1200
+
1201
+ .paginator .end {
1202
+ margin-right: 6px;
1203
+ }
1204
+
1205
+ .paginator .this-page {
1206
+ padding: 2px 6px;
1207
+ font-weight: bold;
1208
+ font-size: 0.8125rem;
1209
+ vertical-align: top;
1210
+ }
1211
+
1212
+ .paginator a:focus,
1213
+ .paginator a:hover {
1214
+ color: white;
1215
+ background: var(--link-hover-color);
1216
+ }
1217
+
1218
+ .paginator input {
1219
+ margin-left: auto;
1220
+ }
1221
+
1222
+ .base-svgs {
1223
+ display: none;
1224
+ }