style.scss 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283
  1. ---
  2. ---
  3. :root {
  4. --color-container: #FFF;
  5. --color-shadow: rgba(0, 0, 0, 0.7);
  6. --color-on-secondary: #FFF;
  7. --color-badge: #949494;
  8. --corner-radius-big: 35px;
  9. --corner-radius-small: 20px;
  10. --margin: 15px;
  11. --clamped-max-width: 1000px;
  12. --top-level-card-max-width: 800px;
  13. --product-card-width: 250px;
  14. --button-icon-size: 25px;
  15. --source-badge-padding: 5px;
  16. --source-badge-margin: 10px;
  17. --code-block-background: #EFF1F3;
  18. --code-block-corner-radius: 6px;
  19. --code-block-vertical-padding: 2px;
  20. --code-block-horizontal-padding: 6px;
  21. --blockquote-bar-width: 4px;
  22. --blockquote-bar-color: #D0D7DE;
  23. --blockquote-text-color: #656d76;
  24. }
  25. // Fonts
  26. :root {
  27. @font-face {
  28. font-family: "OpenSans";
  29. src: url("/assets/fonts/opensans.ttf") format("truetype");
  30. }
  31. @font-face {
  32. font-family: "OpenSans Light";
  33. src: url("/assets/fonts/opensans-light.ttf") format("truetype");
  34. }
  35. @font-face {
  36. font-family: "IBM Plex Sans";
  37. src: url("/assets/fonts/ibm-plex-sans.ttf") format("truetype");
  38. }
  39. @font-face {
  40. font-family: "IBM Plex Mono";
  41. src: url("/assets/fonts/ibm-plex-mono.ttf") format("truetype");
  42. }
  43. @font-face {
  44. font-family: "JetBrains Mono";
  45. src: url("/assets/fonts/jetbrains-mono.ttf") format("truetype");
  46. }
  47. }
  48. // Animations
  49. :root {
  50. @keyframes appear-from-blur {
  51. from {
  52. opacity: 0;
  53. transform: translateY(10px);
  54. }
  55. to {
  56. opacity: 1;
  57. transform: translateY(0px);
  58. }
  59. }
  60. // Used from product-carousel.js
  61. @keyframes card-appearance {
  62. to {
  63. transform: translate(0, 0);
  64. }
  65. }
  66. @keyframes transparent-fly-in {
  67. from {
  68. transform: translateY(-20px);
  69. }
  70. to {
  71. transform: translateY(0px);
  72. }
  73. }
  74. }
  75. // Markdown stuff
  76. .markdown {
  77. code, pre.highlight {
  78. background: var(--code-block-background);
  79. font-family: "IBM Plex Mono", monospace;
  80. padding: var(--code-block-vertical-padding) var(--code-block-horizontal-padding);
  81. line-height: calc(100% + 10px);
  82. border-radius: var(--code-block-corner-radius);
  83. font-weight: 100 !important;
  84. }
  85. div.highlight {
  86. overflow: hidden;
  87. border-radius: var(--code-block-corner-radius);
  88. pre.highlight {
  89. overflow-x: scroll;
  90. margin: 0;
  91. }
  92. }
  93. blockquote {
  94. position: relative;
  95. margin-right: 0;
  96. margin-left: calc(var(--blockquote-bar-width) + var(--margin));
  97. color: var(--blockquote-text-color);
  98. &::before {
  99. content: "";
  100. position: absolute;
  101. display: block;
  102. width: var(--blockquote-bar-width);
  103. height: 100%;
  104. background: var(--blockquote-bar-color);
  105. left: calc(-1 * var(--margin));
  106. border-radius: var(--blockquote-bar-width);
  107. }
  108. }
  109. }
  110. body {
  111. padding: 0;
  112. margin: 0;
  113. font-family: 'OpenSans', sans-serif, serif;
  114. overflow-x: hidden;
  115. background-color: var(--color-on-secondary);
  116. }
  117. .animated-enter {
  118. animation: 1s ease forwards appear-from-blur;
  119. }
  120. .container {
  121. position: relative;
  122. margin: var(--margin);
  123. border-radius: var(--corner-radius-big);
  124. padding: var(--margin);
  125. background-color: var(--color-container);
  126. }
  127. .rounded-shadow {
  128. &:after {
  129. content: "";
  130. background-color: var(--color-shadow);
  131. position: absolute;
  132. width: 100%;
  133. height: 100%;
  134. left: 0;
  135. top: 0;
  136. border-radius: var(--corner-radius-big);
  137. filter: blur(10px);
  138. transition: filter .1s ease;
  139. z-index: -10;
  140. }
  141. &.hover-reactive:active::after {
  142. filter: blur(4px) !important;
  143. }
  144. }
  145. @media (any-hover: hover) {
  146. .rounded-shadow.hover-reactive:hover:after {
  147. filter: blur(7px);
  148. }
  149. }
  150. .clamped {
  151. max-width: var(--clamped-max-width);
  152. }
  153. .horizontally-centered {
  154. margin-left: auto;
  155. margin-right: auto;
  156. }
  157. .content-width {
  158. width: fit-content;
  159. }
  160. .no-url-highlighting a, a.no-url-highlighting {
  161. color: inherit;
  162. text-decoration: inherit;
  163. }
  164. .top-level-card {
  165. width: calc(100% - var(--margin) * 4);
  166. max-width: var(--top-level-card-max-width);
  167. }
  168. .badge {
  169. border-radius: calc(var(--corner-radius-small) / 2);
  170. background-color: var(--color-shadow);
  171. padding: calc(var(--margin) / 2);
  172. margin: auto var(--margin);
  173. color: var(--color-container);
  174. }
  175. .button {
  176. border-radius: var(--corner-radius-small);
  177. color: var(--color-on-secondary);
  178. padding: var(--margin);
  179. display: flex;
  180. flex-direction: row;
  181. font-size: calc(var(--button-icon-size) / 1.2);
  182. text-decoration: none;
  183. img {
  184. width: var(--button-icon-size);
  185. height: var(--button-icon-size);
  186. margin-inline-end: var(--margin);
  187. }
  188. .navigation-icon {
  189. margin-inline-start: auto;
  190. margin-inline-end: 0;
  191. }
  192. }
  193. .source-badge {
  194. width: var(--button-icon-size);
  195. height: var(--button-icon-size);
  196. border-radius: 50%;
  197. padding: var(--source-badge-padding);
  198. img {
  199. width: 100%;
  200. height: 100%;
  201. }
  202. }
  203. .source-badge[data-type="github"] {
  204. background-color: #24292F;
  205. }
  206. .source-badge[data-type="itch"] {
  207. background-color: #FA5C5C;
  208. }
  209. .source-badge[data-type="google-play"] {
  210. background-color: #059B70;
  211. }
  212. .source-badge[data-type="download"] {
  213. background-color: #00AAD5;
  214. }
  215. .source-badge[data-type="documentation"] {
  216. background-color: #3F627F;
  217. }