style.css 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. @font-face {
  2. font-family: "Play";
  3. src: url("/fonts/Play/Play-Regular.ttf") format("truetype");
  4. font-weight: 400;
  5. }
  6. @font-face {
  7. font-family: "Play";
  8. src: url("/fonts/Play/Play-Bold.ttf") format("truetype");
  9. font-weight: 700;
  10. }
  11. body {
  12. margin: 0;
  13. padding: 0;
  14. background-color: #443f3b;
  15. font-family: 'Play', monospace, sans-serif;
  16. font-weight: 400;
  17. -webkit-font-smoothing: antialiased;
  18. -moz-osx-font-smoothing: grayscale;
  19. }
  20. .left {
  21. display: flex;
  22. flex-direction: column;
  23. align-items: center;
  24. }
  25. .left > .left-header {
  26. display: flex;
  27. flex-direction: column;
  28. align-items: center;
  29. }
  30. .left > .left-header > .search-module {
  31. width: 100%;
  32. }
  33. .sources-updating {
  34. display: flex;
  35. flex-direction: column;
  36. height: 100%;
  37. justify-content: center;
  38. align-items: center;
  39. }
  40. .sources-updating > .message-container {
  41. display: flex;
  42. flex-direction: column;
  43. align-items: center;
  44. width: 400px;
  45. border: 2px dashed #d1d1d1;
  46. padding: 10px;
  47. }
  48. .main-title {
  49. display: flex;
  50. align-items: center;
  51. justify-content: space-around;
  52. color: #f36;
  53. font-size: 40px;
  54. user-select: none;
  55. cursor: pointer;
  56. width: 340px;
  57. }
  58. .sources-updating > .message-container > .message {
  59. color: #d1d1d1;
  60. font-size: 24px;
  61. }
  62. .main-title > .logo {
  63. background: url(/favicon.png);
  64. background-size: cover;
  65. width: 50px;
  66. height: 50px;
  67. }
  68. .sources-updating .main-title > .logo {
  69. background: url(/img/loading_pink.svg);
  70. }
  71. /* >>> 404 page */
  72. body.page-not-found {
  73. display: flex;
  74. justify-content: center;
  75. }
  76. body.page-not-found > .message-container {
  77. display: flex;
  78. flex-direction: column;
  79. align-items: center;
  80. justify-content: center;
  81. color: #d1d1d1;
  82. }
  83. body.page-not-found > .message-container > .page-not-found-text {
  84. font-size: 30px;
  85. text-align: center;
  86. margin-top: 30px;
  87. }
  88. body.page-not-found > .message-container > .page-not-found-image {
  89. margin-top: 20px;
  90. background: url(/img/404.svg);
  91. background-size: cover;
  92. width: 256px;
  93. height: 256px;
  94. }
  95. /* <<< 404 page */
  96. .main {
  97. display: flex;
  98. flex-direction: row;
  99. height: 100%;
  100. }
  101. .right {
  102. width: 100%;
  103. min-width: 800px;
  104. height: 100vh;
  105. min-height: 1000px;
  106. }
  107. .left {
  108. min-width: 350px;
  109. width: 20%;
  110. }
  111. .left > .left-header > .left-header-toolbar {
  112. display: flex;
  113. align-items: center;
  114. padding-bottom: 10px;
  115. width: 100%;
  116. justify-content: center;
  117. }
  118. .left > .left-header > .left-header-toolbar > .class-list-mode-text {
  119. color: #d1d1d1;
  120. margin-right: 15px;
  121. }
  122. .left > .left-header > .left-header-toolbar > .class-list-mode-button,
  123. .left > .left-header > .left-header-toolbar > .faq-button,
  124. .left > .left-header > .left-header-toolbar > .refresh-button {
  125. width: 24px;
  126. height: 24px;
  127. border: 1px solid #d1d1d1;
  128. border-radius: 5px;
  129. background-size: 18px;
  130. background-repeat: no-repeat;
  131. background-position: center;
  132. cursor: pointer;
  133. }
  134. .left > .left-header > .left-header-toolbar > .class-list-mode-button.selected,
  135. .left > .left-header > .left-header-toolbar > .class-list-mode-button:hover,
  136. .left > .left-header > .left-header-toolbar > .faq-button:hover,
  137. .left > .left-header > .left-header-toolbar > .refresh-button:hover {
  138. background-color: #ffffff40;
  139. }
  140. .left > .left-header > .left-header-toolbar > .class-list-mode-button.structurized {
  141. background-image: url(/img/file-structure.svg);
  142. margin-right: 5px;
  143. }
  144. .left > .left-header > .left-header-toolbar > .class-list-mode-button.unstructurized {
  145. background-image: url(/img/fa-bars.svg);
  146. }
  147. .left > .left-header > .left-header-toolbar > .faq-button {
  148. background-image: url(/img/faq.svg);
  149. margin-left: 10px;
  150. }
  151. .left > .left-header > .left-header-toolbar > .refresh-button {
  152. background-image: url(/img/refresh.svg);
  153. margin-left: 10px;
  154. }
  155. .left > .left-header > .left-header-toolbar > .auth-button {
  156. width: 24px;
  157. height: 24px;
  158. background-size: cover;
  159. margin-right: 40px;
  160. cursor: pointer;
  161. }
  162. .left > .left-header > .left-header-toolbar > .auth-button.login-button {
  163. background-image: url(/img/user.svg);
  164. }
  165. .left > .left-header > .left-header-toolbar > .auth-button.logout-button {
  166. background-image: url(/img/logout.svg);
  167. }
  168. /* Class/Dir items >>> */
  169. .class-item, .dir-item>.dir-name {
  170. align-items: center;
  171. cursor: pointer;
  172. padding: 3px 0;
  173. min-width: 100%;
  174. white-space: nowrap;
  175. }
  176. .class-item.selected,
  177. .class-item:hover,
  178. .dir-item>.dir-name:hover {
  179. background-color: rgba(0, 0, 0, 0.2);
  180. }
  181. .class-item > .class-icon {
  182. background: url(/img/jsfile.svg);
  183. width: 16px;
  184. height: 16px;
  185. background-size: cover;
  186. margin-right: 5px;
  187. display: inline-block;
  188. }
  189. .class-item > .class-name {
  190. display: inline-block;
  191. color: #d1d1d1;
  192. }
  193. .dir-item {
  194. color: #d1d1d1;
  195. }
  196. .dir-item > .dir-name > .dir-collapsed-icon {
  197. background: url(/img/chevron.svg);
  198. transform: rotate(90deg);
  199. width: 16px;
  200. height: 16px;
  201. background-size: cover;
  202. margin-right: 5px;
  203. display: inline-block;
  204. transition: transform 0.2s ease-in-out;
  205. }
  206. .dir-item.collapsed > .dir-name > .dir-collapsed-icon {
  207. transform: rotate(0deg);
  208. }
  209. .dir-item > .dir-name > .dir-icon {
  210. background: url(/img/folder.svg);
  211. width: 16px;
  212. height: 16px;
  213. background-size: cover;
  214. margin-right: 5px;
  215. display: inline-block;
  216. }
  217. .dir-item > .dir-content {
  218. padding-left: 8px;
  219. overflow: hidden;
  220. border-left: 1px solid #d1d1d1;
  221. margin-left: 8px;
  222. }
  223. .dir-item.collapsed > .dir-content {
  224. height: 0 !important;
  225. }
  226. a, a:visited {
  227. color: #d1d1d1;
  228. }
  229. /* <<< Class/Dir items */
  230. .context-menu {
  231. position: absolute;
  232. display: flex;
  233. flex-direction: column;
  234. z-index: 10000;
  235. color: #d1d1d1;
  236. width: fit-content;
  237. background-color: #312d2a;
  238. border: 1px solid #d1d1d1;
  239. box-shadow: 3px 3px 3px #0004;
  240. }
  241. .context-menu > .context-menu-item {
  242. padding: 5px 10px;
  243. user-select: none;
  244. cursor: pointer;
  245. }
  246. .context-menu > .context-menu-item {
  247. margin: 3px 0;
  248. }
  249. .context-menu > .context-menu-item:hover {
  250. background-color: #ffffff40;
  251. }
  252. .context-menu > .context-menu-delimiter {
  253. border-bottom: 1px solid #d1d1d1;
  254. width: 100%;
  255. }
  256. .context-menu-overlay {
  257. position: absolute;
  258. top: 0;
  259. left: 0;
  260. right: 0;
  261. bottom: 0;
  262. margin: auto;
  263. z-index: 9999;
  264. }
  265. .hidden {
  266. display: none !important;
  267. visibility: hidden !important;
  268. opacity: 0 !important;
  269. }
  270. ::-webkit-scrollbar {
  271. width: 8px;
  272. height: 8px;
  273. }
  274. ::-webkit-scrollbar-track {
  275. background: #00000015;
  276. }
  277. ::-webkit-scrollbar-thumb {
  278. background: #888;
  279. border-radius: 5px;
  280. }
  281. ::-webkit-scrollbar-thumb:hover {
  282. background: #555;
  283. }
  284. ::-webkit-scrollbar-corner {
  285. background: #00000015;
  286. }