base.css 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. @import url("../fonts/poppins/poppins.css");
  2. @import url("../fonts/opensans/opensans.css");
  3. @import url("reset.css");
  4. @import url("widgets/buttons.css");
  5. @import url("widgets/sections.css");
  6. @media(prefers-color-scheme:dark) {
  7. select:not([multiple]) {
  8. background: var(--gradient),url("../images/select_drop_dark.png") no-repeat center right 5px !important;
  9. background-size: cover,16px !important;
  10. }
  11. }
  12. @media(prefers-color-scheme:light) {
  13. select:not([multiple]) {
  14. background: var(--gradient),url("../images/select_drop_light.png") no-repeat center right 5px !important;
  15. background-size: cover,16px !important;
  16. background-blend-mode: saturation;
  17. }
  18. }
  19. .icon {
  20. align-self: center;
  21. fill: var(--foreground);
  22. }
  23. .active {
  24. font-size: 1.1em;
  25. font-family: 'Poppins', sans-serif;
  26. font-weight: 600;
  27. }
  28. .anchor-hidden {
  29. width: 1px;
  30. height: 1px;
  31. overflow: hidden;
  32. }
  33. .accessibility-menu {
  34. display: block;
  35. position: absolute;
  36. z-index: 999;
  37. top: -90%;
  38. left: -90%;
  39. width: 30%;
  40. height: min-content;
  41. padding: var(--smaller);
  42. border-radius: var(--smaller);
  43. background-color: var(--background-hard) !important;
  44. border: 2px solid var(--border);
  45. }
  46. .accessibility-menu ul {
  47. list-style-type: disc;
  48. margin-left: var(--small);
  49. }
  50. .accessibility-menu:focus-within:not(:active) {
  51. top: var(--smaller);
  52. left: var(--smaller);
  53. }
  54. html {
  55. scroll-margin-top: var(--big);
  56. }
  57. .page-header {
  58. z-index: 1;
  59. font-family: 'Poppins',sans-serif;
  60. font-size: var(--medium);
  61. height: var(--big);
  62. display: flex;
  63. justify-content: center;
  64. position: fixed;
  65. top: 0;
  66. align-self: center;
  67. align-items: center;
  68. padding: var(--smaller);
  69. background: var(--gradient) !important;
  70. box-shadow: var(--shadow);
  71. }
  72. .header-instance {
  73. display: flex;
  74. position: absolute;
  75. text-align: center;
  76. align-items: center;
  77. align-self: center;
  78. margin-left: auto;
  79. }
  80. .header-instance > * {
  81. margin: unset;
  82. }
  83. .header-extra-actions {
  84. justify-self: flex-end;
  85. margin-left: auto;
  86. }
  87. .header-extra-actions[open] > *:not(summary) {
  88. z-index: 2;
  89. position: absolute;
  90. top: 100%;
  91. right: 0;
  92. width: 16.5vw;
  93. font-size: var(--default);
  94. border-radius: 0 0 var(--smaller) var(--smaller);
  95. padding: var(--smaller);
  96. background: var(--background-hard);
  97. box-shadow: var(--shadow);
  98. }
  99. .header-panel {
  100. display: flex;
  101. flex-direction: column;
  102. font-family: 'Open Sans',sans-serif;
  103. font-size: var(--default);
  104. position: fixed;
  105. top: 0;
  106. margin-top: var(--big);
  107. height: calc(100% - var(--big));
  108. padding: var(--smaller);
  109. overflow-y: auto;
  110. }
  111. .panel-content {
  112. display: flex;
  113. flex-direction: column;
  114. }
  115. .page-content-wrapper {
  116. position: relative;
  117. top: var(--big);
  118. margin-left: auto;
  119. margin-right: auto;
  120. justify-content: center;
  121. padding: var(--smaller) var(--smaller) 0;
  122. }
  123. .page-content {
  124. display: flex;
  125. flex-direction: column;
  126. width: 100%;
  127. }
  128. .markdown-blocks {
  129. border-radius: 0 0 var(--smaller) var(--smaller);
  130. padding: var(--smaller);
  131. background-color: var(--background-card) !important;
  132. }
  133. .markdown-blocks ul {
  134. margin-left: 1em;
  135. list-style: disc;
  136. }
  137. .markdown-blocks ul li {
  138. margin-bottom: 0.2em;
  139. }
  140. .doc-navigation {
  141. border-radius: var(--smaller) var(--smaller) 0 0;
  142. border-bottom: 0;
  143. padding: var(--smaller);
  144. background-color: var(--background-card) !important;
  145. }
  146. .doc-navigation ul {
  147. display: flex;
  148. justify-content: space-evenly;
  149. font-size: var(--medium);
  150. }
  151. #replyform {
  152. padding: var(--smaller);
  153. margin-top: var(--smaller);
  154. border-radius: var(--smaller);
  155. display: flex;
  156. flex-direction: column;
  157. font-size: var(--default);
  158. background-color: var(--background-card) !important;
  159. }
  160. #replyform textarea {
  161. width: 100%;
  162. resize: vertical;
  163. margin-top: var(--smaller);
  164. padding: var(--smaller);
  165. }
  166. @media only screen and (max-width:1280px) {
  167. .page-header {
  168. width: 100%;
  169. }
  170. .page-content-wrapper {
  171. width: 100%;
  172. }
  173. .page-content {
  174. max-width: 100%;
  175. }
  176. .header-extra-actions[open] > *:not(summary) {
  177. width: 100%;
  178. }
  179. #panel-left-toggle:not(:checked)+.header-panel,
  180. #panel-right-toggle:not(:checked)+.header-panel {
  181. display: none;
  182. }
  183. #panel-left-toggle:checked+.header-panel,
  184. #panel-right-toggle:checked+.header-panel,
  185. a[id|="anchor"]:target ~ .panel-content {
  186. display: flex;
  187. width: 100%;
  188. background-size: 100% 100%;
  189. z-index: auto;
  190. background-color: var(--background-hard) !important;
  191. }
  192. }
  193. /* > 720p */
  194. @media only screen and (min-width:1281px) {
  195. /*
  196. * Using the Van de Graaf Canon and Tschichold’s recommended 2:3 page-size ratio
  197. * Except we use the whole page
  198. *
  199. * > .page-content-wrapper
  200. * 100% * 2/3 = 66%
  201. *
  202. * > .header-panel
  203. * 100 - 66% = 34%
  204. * 34% / 2 = 17%
  205. */
  206. .page-header {
  207. width: 100%;
  208. }
  209. .header-panel {
  210. width: 17vw;
  211. }
  212. .page-content-wrapper {
  213. width: 66vw;
  214. }
  215. a[id|="anchor"]:target+.accessibility-target {
  216. animation-name: highlight;
  217. animation-duration: 600ms;
  218. animation-timing-function: ease-in-out;
  219. }
  220. }
  221. /* > 1080p */
  222. @media only screen and (min-width:1921px) {
  223. /*
  224. * Using the Van de Graaf Canon and Tschichold’s recommended 2:3 page-size ratio
  225. *
  226. * 100% * 2/3 = 66%
  227. *
  228. * > .page-content-wrapper
  229. * 66% * 2/3 = 44%
  230. *
  231. * > .header-panel
  232. * 66% - 44% = 22%
  233. * 22% / 2 = 11%
  234. */
  235. .page-header {
  236. width: 66vw;
  237. }
  238. .header-panel {
  239. width: 11vw;
  240. }
  241. .page-content-wrapper {
  242. width: 44vw;
  243. }
  244. }
  245. @keyframes fadeIn {
  246. 0% {
  247. opacity: 0;
  248. transform: translateY(-10px);
  249. }
  250. 100% {
  251. opacity: unset;
  252. transform: none;
  253. }
  254. }
  255. @keyframes fadeOut {
  256. 100% {
  257. opacity: 0;
  258. transform: translateY(-10px);
  259. }
  260. 0% {
  261. opacity: unset;
  262. transform: none;
  263. }
  264. }
  265. @media (prefers-color-scheme: dark) {
  266. @keyframes highlight {
  267. 0% {
  268. box-shadow: initial;
  269. border-radius: var(--smaller);
  270. }
  271. 50% {
  272. border-radius: var(--smaller);
  273. box-shadow: inset 0 20px 40px #FFF;
  274. transition: box-shadow 0.3s ease-in-out;
  275. z-index: 666;
  276. }
  277. 100% {
  278. box-shadow: initial;
  279. border-radius: var(--smaller);
  280. }
  281. }
  282. }
  283. @media (prefers-color-scheme: light) {
  284. @keyframes highlight {
  285. 0% {
  286. box-shadow: initial;
  287. border-radius: var(--smaller);
  288. }
  289. 50% {
  290. border-radius: var(--smaller);
  291. box-shadow: inset 0 20px 40px #000;
  292. transition: box-shadow 0.3s ease-in-out;
  293. }
  294. 100% {
  295. box-shadow: initial;
  296. border-radius: var(--smaller);
  297. }
  298. }
  299. }