less copy protection, more size visualization
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 

584 wiersze
9.8 KiB

  1. @import url('https://fonts.googleapis.com/css?family=Coda&display=swap');
  2. html {
  3. height: 100%;
  4. overflow-x: hidden;
  5. overflow-y: hidden;
  6. color: #eee;
  7. }
  8. body {
  9. background: #333;
  10. display: flex;
  11. flex-direction: column;
  12. align-items: center;
  13. justify-content: flex-start;
  14. height: 100%;
  15. width: 100%;
  16. font-family: 'Coda', cursive;
  17. }
  18. .entity-box {
  19. position: absolute;
  20. --height: 100px;
  21. max-height: var(--height);
  22. height: var(--height);
  23. text-align: center;
  24. -webkit-user-drag: none;
  25. -khtml-user-drag: none;
  26. -moz-user-drag: none;
  27. -o-user-drag: none;
  28. pointer-events: none;
  29. transition: left 0.2s cubic-bezier(.1,.41,.18,.99), top 0.2s cubic-bezier(.1,.41,.18,.99), height 0.2s cubic-bezier(.1,.41,.18,.99), max-height 0.2s cubic-bezier(.1,.41,.18,.99);
  30. }
  31. .entity-image {
  32. position: absolute;
  33. height: 100%;
  34. pointer-events: auto;
  35. -webkit-user-drag: none;
  36. -khtml-user-drag: none;
  37. -moz-user-drag: none;
  38. -o-user-drag: none;
  39. --offset: -100%;
  40. transform: translate(-50%, var(--offset));
  41. }
  42. .entity-name {
  43. display: none;
  44. position: absolute;
  45. top: calc(-100% + var(--extra) / 2);
  46. left: 0%;
  47. transform: translate(-50%, -36px);
  48. font-size: 24px;
  49. pointer-events: none;
  50. max-width: 250px;
  51. width: 250px;
  52. transition: all 0s;
  53. }
  54. body.toggle-entity-name .entity-name,
  55. .entity-box.selected .entity-name {
  56. display: inline;
  57. }
  58. .entity-box.selected > img {
  59. filter: drop-shadow(0px 0px 5px gold);
  60. }
  61. body.toggle-entity-glow .entity-box:not(.selected) > img{
  62. filter: drop-shadow(0px 0px 2px white);
  63. }
  64. #main-area {
  65. min-height: 0px;
  66. display: flex;
  67. flex: 1 1 90vh;
  68. width: 100%;
  69. flex-direction: row;
  70. }
  71. #options {
  72. min-width: 120pt;
  73. flex: 1 0 15vw;
  74. display: flex;
  75. justify-content: start;
  76. flex-direction: column;
  77. background: #444;
  78. overflow-x: hidden;
  79. overflow-y: scroll;
  80. height: 100%;
  81. scrollbar-color: #e1e1e1 #888;
  82. }
  83. #options-attribution {
  84. display: none;
  85. }
  86. #options::-webkit-scrollbar {
  87. height: 2px;
  88. }
  89. #options::-webkit-scrollbar-button {
  90. width: 0px;
  91. height: 0px;
  92. }
  93. #options::-webkit-scrollbar-thumb {
  94. background: #e1e1e1;
  95. border: 0px none #ffffff;
  96. border-radius: 50px;
  97. }
  98. #options::-webkit-scrollbar-thumb:hover {
  99. background: #ffffff;
  100. }
  101. #options::-webkit-scrollbar-thumb:active {
  102. background: #000000;
  103. }
  104. #options::-webkit-scrollbar-track {
  105. background: #00000000;
  106. border: 0px none #ffffff;
  107. border-radius: 50px;
  108. }
  109. #options::-webkit-scrollbar-track:hover {
  110. background: #666666;
  111. }
  112. #options::-webkit-scrollbar-track:active {
  113. background: #333333;
  114. }
  115. #options::-webkit-scrollbar-corner {
  116. background: transparent;
  117. }
  118. .options-two-buttons {
  119. display: flex;
  120. justify-content: space-evenly;
  121. }
  122. .options-row {
  123. display: flex;
  124. text-align: center;
  125. width: 100%;
  126. margin-top: 10px;
  127. margin-bottom: 10px;
  128. }
  129. .options-block {
  130. display: flex;
  131. text-align: center;
  132. min-width: 100%;
  133. flex-direction: column;
  134. }
  135. .options-block.options-block-optional {
  136. display: none;
  137. }
  138. body.show-extra-options .options-block.options-block-optional {
  139. display: flex;
  140. }
  141. @media (max-aspect-ratio: 1/1) {
  142. .options-row {
  143. flex-direction: column;
  144. }
  145. .options-row > .options-field-numeric {
  146. width: 100%;
  147. }
  148. .options-row > .options-field-unit {
  149. width: 100%;
  150. }
  151. }
  152. .options-header {
  153. text-align: center;
  154. font-size: 24pt;
  155. margin-top: 10px;
  156. margin-bottom: 10px;
  157. }
  158. .options-banner {
  159. text-align: center;
  160. font-size: 24pt;
  161. margin-top: 10px;
  162. margin-bottom: 10px;
  163. background: #232;
  164. text-decoration: none;
  165. }
  166. .options-banner:hover {
  167. background: #454;
  168. }
  169. .options-selector {
  170. font-size: 150%;
  171. width: 100%;
  172. }
  173. #entities {
  174. position: absolute;
  175. user-select: none;
  176. width: 100%;
  177. height: 100%;
  178. }
  179. #world {
  180. position: relative;
  181. flex: 1 0 85vw;
  182. height: 100%;
  183. overflow: hidden;
  184. }
  185. #menubar {
  186. display: flex;
  187. flex: 1 0 5vh;
  188. flex-direction: row;
  189. justify-content: space-evenly;
  190. align-items: center;
  191. flex-wrap: wrap;
  192. min-width: 100vw;
  193. background: #222;
  194. }
  195. #menubar.hover-delete {
  196. background: #922;
  197. }
  198. .menubar-group {
  199. display: flex;
  200. flex-direction: row;
  201. justify-content: center;
  202. align-items: center;
  203. }
  204. .menu-item {
  205. font-size: 24px;
  206. color: #ccc;
  207. margin: 20px;
  208. }
  209. select.menu-item {
  210. color: #000;
  211. }
  212. #display {
  213. display: none;
  214. width: 100%;
  215. height: 100%;
  216. background: #333;
  217. }
  218. body.toggle-scale #display {
  219. display: block;
  220. }
  221. #options .options-label,
  222. #options .options-banner {
  223. flex: 0 1;
  224. width: 100%;
  225. font-size: 150%;
  226. }
  227. .options-label {
  228. text-align: center;
  229. }
  230. .options-row .options-field-numeric {
  231. flex: 1 1 60%;
  232. min-width: 0px;
  233. font-size: 150%;
  234. }
  235. .options-row .options-field-text {
  236. flex: 1 1 100%;
  237. min-width: 0px;
  238. font-size: 150%;
  239. }
  240. .options-row .options-field-unit {
  241. flex: 1 1 40%;
  242. min-width: 0px;
  243. font-size: 150%;
  244. }
  245. .options-row .options-button {
  246. flex: 1;
  247. width: 100%;
  248. font-size: 150%;
  249. }
  250. .options-block .options-button {
  251. flex: 1;
  252. width: 100%;
  253. font-size: 150%;
  254. }
  255. .options-row label {
  256. flex: 1;
  257. width: 100%;
  258. font-size: 150%;
  259. }
  260. body #test-canvas {
  261. position: fixed;
  262. top: 500vh;
  263. }
  264. .switch {
  265. height: 24pt;
  266. }
  267. .switch input {
  268. transform: scale(2);
  269. }
  270. .top-name {
  271. display: none;
  272. text-align: center;
  273. position: fixed;
  274. max-width: 150px;
  275. height: 50px;
  276. transform: translate(-50%, 20pt);
  277. z-index: 1001;
  278. }
  279. body.toggle-top-name .top-name.top-name-needed {
  280. display: block;
  281. }
  282. .top-name::after {
  283. display: block;
  284. background-image: url("./media/ui/arrow.svg");
  285. width: 70px;
  286. height: 70px;
  287. background-size: 70px 70px;
  288. background-repeat: no-repeat;
  289. content: "";
  290. transform: translate(0, -120%);
  291. }
  292. .bottom-name {
  293. display: none;
  294. text-align: center;
  295. position: fixed;
  296. width: 150px;
  297. height: 50px;
  298. transform: translate(-50%, 20pt);
  299. }
  300. body.toggle-bottom-name .bottom-name {
  301. display: inline;
  302. }
  303. #menubar select {
  304. max-width: 200pt;
  305. height: 60pt;
  306. max-height: 180pt;
  307. overflow: hidden;
  308. white-space: pre-wrap;
  309. word-break: normal;
  310. text-overflow: ellipsis;
  311. }
  312. #spawners > button {
  313. display: none;
  314. font-size: 24pt;
  315. }
  316. #spawners > select {
  317. display: none;
  318. font-size: 24pt;
  319. }
  320. #spawners > select#category-picker {
  321. display: inline;
  322. }
  323. #spawners > button.category-visible,
  324. #spawners > select.category-visible {
  325. display: inline;
  326. }
  327. #menubar button {
  328. font-size: 48pt;
  329. }
  330. #help {
  331. display: none;
  332. flex-direction: column;
  333. justify-content: space-evenly;
  334. align-items: center;
  335. position: absolute;
  336. width: 60vw;
  337. height: 60vh;
  338. margin: 0pt;
  339. padding-top: 20vh;
  340. padding-bottom: 20vh;
  341. padding-left: 20vw;
  342. padding-right: 20vw;
  343. transition: 1s;
  344. text-align: center;
  345. background: #333;
  346. opacity: 0;
  347. z-index: 9999999;
  348. }
  349. #help.visible {
  350. display: flex;
  351. opacity: 0.9;
  352. transition: 1s;
  353. }
  354. #help h1 {
  355. font-size: 150%;
  356. }
  357. #help p {
  358. font-size: 125%;
  359. }
  360. #help button {
  361. width: 20vw;
  362. height: 10vh;
  363. font-size: 9vh;
  364. }
  365. a {
  366. color: #999;
  367. }
  368. #options-attribution-authors {
  369. text-align: center;
  370. }
  371. #options-attribution-owners {
  372. text-align: center;
  373. }
  374. #options-attribution-source {
  375. text-align: center;
  376. }
  377. .floating-slider {
  378. display: none;
  379. position: absolute;
  380. z-index: 1000;
  381. width: 250px;
  382. height: 50px;
  383. transform: scale(1.5);
  384. }
  385. body.toggle-scale-sliders .floating-slider {
  386. display: block;
  387. }
  388. #slider-scale {
  389. top: 5%;
  390. left: 5%;
  391. }
  392. #slider-scale:before {
  393. content: "World scale";
  394. position: absolute;
  395. left: 50%;
  396. transform: translate(-50%, 0%);
  397. font-size: 20px;
  398. }
  399. #slider-entity-scale {
  400. top: 5%;
  401. right: 5%;
  402. }
  403. #slider-entity-scale:before {
  404. content: "Entity scale";
  405. position: absolute;
  406. left: 50%;
  407. transform: translate(-50%, 0%);
  408. font-size: 20px;
  409. }
  410. .no-transition {
  411. transition: 0s !important;
  412. }
  413. .corner-ribbon {
  414. width: 200px;
  415. background: #e43;
  416. position: fixed;
  417. top: 25px;
  418. left: -50px;
  419. text-align: center;
  420. padding: 10px;
  421. letter-spacing: 1px;
  422. color: #f0f0f0;
  423. transform: rotate(-45deg);
  424. -webkit-transform: rotate(-45deg);
  425. }
  426. .corner-ribbon.bottom-right{
  427. top: auto;
  428. right: -50px;
  429. bottom: 25px;
  430. left: auto;
  431. transform: rotate(-45deg);
  432. -webkit-transform: rotate(-45deg);
  433. }
  434. a.corner-ribbon {
  435. text-decoration: none;
  436. }
  437. input[type=checkbox] {
  438. transform: scale(2);
  439. margin-left: 10px;
  440. margin-right: 10px;
  441. }
  442. input ~ label {
  443. user-select: none;
  444. }
  445. body.toggle-height-bars .height-bar,
  446. .entity-box.selected .height-bar {
  447. display: block;
  448. }
  449. .height-bar {
  450. display: none;
  451. min-width: calc(var(--xpos));
  452. min-height: 3px;
  453. height: 3px;
  454. position: absolute;
  455. opacity: 50%;
  456. background: repeating-linear-gradient(90deg, #ffffff, #ffffff 20px, #ffffff00 20px, #ffffff00 40px);
  457. top: calc(-100% + var(--extra));
  458. left: calc(-1 * var(--xpos));
  459. transition: 0s all;
  460. z-index: -1;
  461. }
  462. .height-bar::before {
  463. display: block;
  464. background: gray;
  465. position: absolute;
  466. content: var(--entity-height);
  467. transition: 0s all;
  468. }
  469. .height-bar::after {
  470. display: block;
  471. min-width: 24px;
  472. min-height: 3px;
  473. background: #ffffff;
  474. position: absolute;
  475. left: calc(var(--xpos) - 24px);
  476. transition: 0s all;
  477. content: "";
  478. }
  479. .sr-only {
  480. position: absolute;
  481. width: 1px;
  482. height: 1px;
  483. padding: 0;
  484. margin: -1px;
  485. overflow: hidden;
  486. clip: rect(0,0,0,0);
  487. border: 0;
  488. }
  489. .bottom-cover {
  490. display: none;
  491. position: absolute;
  492. width: 100%;
  493. height: 10vh;
  494. left: 0%;
  495. top: calc(100% - 51px);
  496. background: black;
  497. }
  498. body.toggle-bottom-cover .bottom-cover {
  499. display: inline-block;
  500. }