You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

387 lines
7.0 KiB

4 years ago
  1. /* http://meyerweb.com/eric/tools/css/reset/
  2. v2.0 | 20110126
  3. License: none (public domain)
  4. */
  5. html, body, div, span, applet, object, iframe,
  6. h1, h2, h3, h4, h5, h6, p, blockquote, pre,
  7. a, abbr, acronym, address, big, cite, code,
  8. del, dfn, em, img, ins, kbd, q, s, samp,
  9. small, strike, strong, sub, sup, tt, var,
  10. b, u, i, center,
  11. dl, dt, dd, ol, ul, li,
  12. fieldset, form, label, legend,
  13. table, caption, tbody, tfoot, thead, tr, th, td,
  14. article, aside, canvas, details, embed,
  15. figure, figcaption, footer, header, hgroup,
  16. menu, nav, output, ruby, section, summary,
  17. time, mark, audio, video {
  18. margin: 0;
  19. padding: 0;
  20. border: 0;
  21. font-size: 100%;
  22. font: inherit;
  23. vertical-align: baseline;
  24. }
  25. article, aside, details, figcaption, figure,
  26. footer, header, hgroup, menu, nav, section {
  27. display: block;
  28. }
  29. body {
  30. line-height: 1;
  31. }
  32. ol, ul {
  33. list-style: none;
  34. }
  35. blockquote, q {
  36. quotes: none;
  37. }
  38. blockquote:before, blockquote:after,
  39. q:before, q:after {
  40. content: '';
  41. content: none;
  42. }
  43. table {
  44. border-collapse: collapse;
  45. border-spacing: 0;
  46. }
  47. /* Styling Rules go here */
  48. :root {
  49. --border-radius: 4px;
  50. --border-width: 8px;
  51. --border-width-negative: -8px;
  52. --content-width: 660px;
  53. /* Base colors */
  54. --color-black: black;
  55. --color-white: white;
  56. --color-navy: #1F2E4C;
  57. /* Primary colors */
  58. --color-gray: #707372;
  59. --color-red: #EB5757;
  60. --color-purple: #90489C;
  61. /* Accent colors */
  62. --color-yellow: #F2C94C;
  63. --color-light-orange: #F7E6CA;
  64. --color-light-green: #98E0B0;
  65. }
  66. * {
  67. box-sizing: border-box;
  68. }
  69. body {
  70. font-family: "Fira Mono", monaco, monospace;
  71. background: var(--color-navy);
  72. color: var(--color-white);
  73. font-weight: 500;
  74. margin: 2em .5em;
  75. font-size: 18px;
  76. -webkit-font-smoothing: antialiased;
  77. }
  78. code {
  79. color: var(--color-light-green);
  80. }
  81. header {
  82. text-align: center;
  83. }
  84. footer {
  85. opacity: .5;
  86. }
  87. a {
  88. color: inherit;
  89. }
  90. h1, h2, h3 {
  91. -webkit-font-smoothing: none;
  92. font-family: "Press Start 2P", "Helvetica Neue", helvetica, arial, sans-serif;
  93. font-weight: normal;
  94. }
  95. h1 {
  96. margin-bottom: .5em;
  97. text-align: center;
  98. font-size: 24px;
  99. color: var(--color-light-orange);
  100. text-shadow: 0 4px 0 rgba(0,0,0,.25);
  101. }
  102. header h1 a {
  103. text-decoration: none;
  104. }
  105. header h1 a:hover {
  106. text-decoration: underline
  107. }
  108. h2 {
  109. font-size: 20px;
  110. text-shadow: 0 4px 0 rgba(0,0,0,.25);
  111. }
  112. h3 {
  113. font-size: 16px;
  114. text-shadow: 0 4px 0 rgba(0,0,0,.25);
  115. }
  116. p, h1, h2, h3, pre {
  117. padding: .8em .4em;
  118. line-height: 1.25em;
  119. text-shadow: 0 2px 0 rgba(0,0,0,.25);
  120. }
  121. pre {
  122. font-size: .75em;
  123. overflow: scroll;
  124. }
  125. hr {
  126. border-style: solid;
  127. border-width: calc(var(--border-width) / 2);
  128. /* border-radius: var(--border-radius); */
  129. max-width: var(--content-width);
  130. margin: calc(var(--border-width) * 2);
  131. opacity: .35;
  132. }
  133. blockquote, pre {
  134. position: relative;
  135. z-index: 1;
  136. }
  137. blockquote:before {
  138. content: ' ';
  139. position: absolute;
  140. top: 0;
  141. left: 0;
  142. z-index: -1;
  143. width: 100%;
  144. height: 100%;
  145. background-color: var(--color-black);
  146. opacity: .35;
  147. }
  148. pre {
  149. background-color: rgba(0,0,0,.35);
  150. }
  151. .text-center {
  152. text-align: center;
  153. }
  154. img, iframe {
  155. max-width: 100%;
  156. }
  157. .highlight {
  158. color: var(--color-yellow);
  159. }
  160. .highlight-green {
  161. color: var(--color-light-green);
  162. }
  163. /* Buttons */
  164. .btn {
  165. display: inline-block;
  166. padding: .75em 1em;
  167. font-family: "Press Start 2P", "Helvetica Neue", helvetica, arial, sans-serif;
  168. font-size: 15px;
  169. text-align: left;
  170. text-decoration: none;
  171. text-shadow: none;
  172. border: none;
  173. background: var(--color-white);
  174. color: var(--color-black);
  175. }
  176. .btn:hover {
  177. background: var(--color-yellow);
  178. }
  179. .btn span {
  180. float: right;
  181. padding-left: 1ch;
  182. margin-top: -2px;
  183. }
  184. span.arrow {
  185. margin-top: -4px;
  186. font-size: 18px;
  187. }
  188. span.arrow:after {
  189. content: '▶';
  190. }
  191. /* Outside of the box layout */
  192. .content {
  193. max-width: var(--content-width);
  194. margin: 0 auto calc(var(--border-width) * 4) auto;
  195. padding: 0 var(--border-width);
  196. }
  197. /* Box layout */
  198. .box {
  199. position: relative;
  200. display: flex;
  201. max-width: var(--content-width);
  202. flex-direction: column;
  203. margin: 0 auto calc(var(--border-width) * 4) auto;
  204. padding: 0;
  205. background: transparent;
  206. border: var(--border-width) solid var(--color-gray);
  207. border-radius: var(--border-radius);
  208. }
  209. .box p, .box h1, .box h2, .box h3, .box pre {
  210. padding: .8em .8em;
  211. }
  212. .box-layout-sidebar {
  213. flex-direction: row;
  214. }
  215. .box-header {
  216. display: inline-block;
  217. position: absolute;
  218. top: 0;
  219. left: 0;
  220. padding:
  221. calc(1em - var(--border-width))
  222. 1em
  223. 1em
  224. calc(1em - var(--border-width))!important;
  225. background: var(--color-gray);
  226. font-size: 15px;
  227. }
  228. .box-content {
  229. margin-top: 2em;
  230. }
  231. .box-footer {
  232. text-align: right;
  233. }
  234. .box-footer {
  235. margin-right: var(--border-width-negative);
  236. }
  237. .box-layout-default .box-footer {
  238. display: inline-flex;
  239. align-self: flex-end;
  240. }
  241. .box-layout-sidebar .box-footer {
  242. background: var(--color-gray);
  243. color: var(--color-white);
  244. min-width: 240px;
  245. }
  246. .box-layout-sidebar .box-footer .btn {
  247. display: block;
  248. }
  249. .box-layout-sidebar .box-footer .btn:first-of-type {
  250. border-top-width: 0px;
  251. }
  252. .box-layout-fullwidth .box-footer {
  253. display: flex;
  254. flex-wrap: wrap;
  255. align-content: stretch;
  256. margin-left: var(--border-width-negative);
  257. text-align: right;
  258. background: var(--color-gray);
  259. }
  260. .box-layout-fullwidth .box-footer .btn {
  261. display: inline-flex;
  262. flex-grow: 1;
  263. }
  264. .box-layout-fullwidth .box-footer .btn span {
  265. padding-left: 1ch;
  266. margin-left: auto;
  267. }
  268. .box .box-footer .btn {
  269. border-top: var(--border-width) solid var(--color-gray);
  270. border-left: var(--border-width) solid var(--color-gray);
  271. }
  272. /* Mobile box layout */
  273. @media only screen and (max-width: 600px) {
  274. .box-layout-sidebar {
  275. flex-direction: column;
  276. }
  277. .box-layout-default .box-footer {
  278. width: calc(100% + var(--border-width) * 2);
  279. }
  280. .box-layout-sidebar .box-footer .btn:first-of-type {
  281. border-top-width: var(--border-width);
  282. }
  283. .box .box-footer {
  284. display: block;
  285. margin-left: var(--border-width-negative);
  286. }
  287. .box .box-footer .btn {
  288. display: block;
  289. position: relative;
  290. padding-right: 2.5em;
  291. }
  292. .box .box-footer .btn span {
  293. position: absolute;
  294. top: 0;
  295. padding: .75em 0;
  296. right: 1em;
  297. }
  298. }
  299. /* Box color variants */
  300. .box-gray, .box-gray .box-footer .btn {
  301. border-color: var(--color-gray);
  302. }
  303. .box-gray .box-header, .box-gray.box-layout-sidebar .box-footer,
  304. .box-gray.box-layout-fullwidth .box-footer,
  305. .box-gray blockquote:before {
  306. background-color: var(--color-gray);
  307. }
  308. .box-gray .arrow {
  309. color: var(--color-gray);
  310. }
  311. .box-red, .box-red .box-footer .btn {
  312. border-color: var(--color-red);
  313. }
  314. .box-red .box-header, .box-red.box-layout-sidebar .box-footer,
  315. .box-red.box-layout-fullwidth .box-footer,
  316. .box-red blockquote:before {
  317. background-color: var(--color-red);
  318. }
  319. .box-red .arrow {
  320. color: var(--color-red);
  321. }
  322. .box-purple, .box-purple .box-footer .btn {
  323. border-color: var(--color-purple);
  324. }
  325. .box-purple .box-header, .box-purple.box-layout-sidebar .box-footer,
  326. .box-purple.box-layout-fullwidth .box-footer,
  327. .box-purple blockquote:before {
  328. background-color: var(--color-purple);
  329. }
  330. .box-purple .arrow {
  331. color: var(--color-purple);
  332. }