less copy protection, more size visualization
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 
 

555 líneas
9.3 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: #111;
  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. @media (max-aspect-ratio: 1/1) {
  136. .options-row {
  137. flex-direction: column;
  138. }
  139. .options-row > .options-field-numeric {
  140. width: 100%;
  141. }
  142. .options-row > .options-field-unit {
  143. width: 100%;
  144. }
  145. }
  146. .options-header {
  147. text-align: center;
  148. font-size: 24pt;
  149. margin-top: 10px;
  150. margin-bottom: 10px;
  151. }
  152. .options-selector {
  153. font-size: 150%;
  154. width: 100%;
  155. }
  156. #entities {
  157. position: absolute;
  158. user-select: none;
  159. width: 100%;
  160. height: 100%;
  161. }
  162. #world {
  163. position: relative;
  164. flex: 1 0 85vw;
  165. height: 100%;
  166. overflow: hidden;
  167. }
  168. #menubar {
  169. display: flex;
  170. flex: 1 0 5vh;
  171. flex-direction: row;
  172. justify-content: space-evenly;
  173. align-items: center;
  174. flex-wrap: wrap;
  175. min-width: 100vw;
  176. background: #222;
  177. }
  178. #menubar.hover-delete {
  179. background: #922;
  180. }
  181. .menubar-group {
  182. display: flex;
  183. flex-direction: row;
  184. justify-content: center;
  185. align-items: center;
  186. }
  187. .menu-item {
  188. font-size: 24px;
  189. color: #ccc;
  190. margin: 20px;
  191. }
  192. select.menu-item {
  193. color: #000;
  194. }
  195. #display {
  196. width: 100%;
  197. height: 100%;
  198. background: #333;
  199. }
  200. #options .options-label {
  201. flex: 0 1;
  202. width: 100%;
  203. font-size: 150%;
  204. }
  205. .options-label {
  206. text-align: center;
  207. }
  208. .options-row .options-field-numeric {
  209. flex: 1 1 60%;
  210. min-width: 0px;
  211. font-size: 150%;
  212. }
  213. .options-row .options-field-text {
  214. flex: 1 1 100%;
  215. min-width: 0px;
  216. font-size: 150%;
  217. }
  218. .options-row .options-field-unit {
  219. flex: 1 1 40%;
  220. min-width: 0px;
  221. font-size: 150%;
  222. }
  223. .options-row .options-button {
  224. flex: 1;
  225. width: 100%;
  226. font-size: 150%;
  227. }
  228. .options-block .options-button {
  229. flex: 1;
  230. width: 100%;
  231. font-size: 150%;
  232. }
  233. .options-row label {
  234. flex: 1;
  235. width: 100%;
  236. font-size: 150%;
  237. }
  238. body #test-canvas {
  239. position: fixed;
  240. top: 500vh;
  241. }
  242. .switch {
  243. height: 24pt;
  244. }
  245. .switch input {
  246. transform: scale(2);
  247. }
  248. .top-name {
  249. display: none;
  250. text-align: center;
  251. position: fixed;
  252. max-width: 150px;
  253. height: 50px;
  254. transform: translate(-50%, 20pt);
  255. z-index: 1001;
  256. }
  257. body.toggle-top-name .top-name.top-name-needed {
  258. display: block;
  259. }
  260. .top-name::after {
  261. display: block;
  262. background-image: url("./media/ui/arrow.svg");
  263. width: 70px;
  264. height: 70px;
  265. background-size: 70px 70px;
  266. background-repeat: no-repeat;
  267. content: "";
  268. transform: translate(0, -120%);
  269. }
  270. .bottom-name {
  271. display: none;
  272. text-align: center;
  273. position: fixed;
  274. width: 150px;
  275. height: 50px;
  276. transform: translate(-50%, 20pt);
  277. }
  278. body.toggle-bottom-name .bottom-name {
  279. display: inline;
  280. }
  281. #menubar select {
  282. max-width: 200pt;
  283. height: 60pt;
  284. max-height: 180pt;
  285. overflow: hidden;
  286. white-space: pre-wrap;
  287. word-break: normal;
  288. text-overflow: ellipsis;
  289. }
  290. #spawners > button {
  291. display: none;
  292. font-size: 24pt;
  293. }
  294. #spawners > select {
  295. display: none;
  296. font-size: 24pt;
  297. }
  298. #spawners > select#category-picker {
  299. display: inline;
  300. }
  301. #spawners > button.category-visible,
  302. #spawners > select.category-visible {
  303. display: inline;
  304. }
  305. #menubar button {
  306. font-size: 48pt;
  307. }
  308. #help {
  309. display: none;
  310. flex-direction: column;
  311. justify-content: space-evenly;
  312. align-items: center;
  313. position: absolute;
  314. width: 60vw;
  315. height: 60vh;
  316. margin: 0pt;
  317. padding-top: 20vh;
  318. padding-bottom: 20vh;
  319. padding-left: 20vw;
  320. padding-right: 20vw;
  321. transition: 1s;
  322. text-align: center;
  323. background: #333;
  324. opacity: 0;
  325. z-index: 9999999;
  326. }
  327. #help.visible {
  328. display: flex;
  329. opacity: 0.9;
  330. transition: 1s;
  331. }
  332. #help h1 {
  333. font-size: 150%;
  334. }
  335. #help p {
  336. font-size: 125%;
  337. }
  338. #help button {
  339. width: 20vw;
  340. height: 10vh;
  341. font-size: 9vh;
  342. }
  343. a {
  344. color: #999;
  345. }
  346. #options-attribution-authors {
  347. text-align: center;
  348. }
  349. #options-attribution-owners {
  350. text-align: center;
  351. }
  352. #options-attribution-source {
  353. text-align: center;
  354. }
  355. .floating-slider {
  356. display: none;
  357. position: absolute;
  358. z-index: 1000;
  359. width: 250px;
  360. height: 50px;
  361. }
  362. body.toggle-scale-sliders .floating-slider {
  363. display: block;
  364. }
  365. #slider-scale {
  366. top: 1%;
  367. left: 5%;
  368. }
  369. #slider-scale:before {
  370. content: "World scale";
  371. position: absolute;
  372. left: 50%;
  373. transform: translate(-50%, 0%);
  374. font-size: 20px;
  375. }
  376. #slider-entity-scale {
  377. top: 1%;
  378. right: 5%;
  379. }
  380. #slider-entity-scale:before {
  381. content: "Entity scale";
  382. position: absolute;
  383. left: 50%;
  384. transform: translate(-50%, 0%);
  385. font-size: 20px;
  386. }
  387. .no-transition {
  388. transition: 0s !important;
  389. }
  390. .corner-ribbon {
  391. width: 200px;
  392. background: #e43;
  393. position: fixed;
  394. top: 25px;
  395. left: -50px;
  396. text-align: center;
  397. padding: 10px;
  398. letter-spacing: 1px;
  399. color: #f0f0f0;
  400. transform: rotate(-45deg);
  401. -webkit-transform: rotate(-45deg);
  402. }
  403. .corner-ribbon.bottom-right{
  404. top: auto;
  405. right: -50px;
  406. bottom: 25px;
  407. left: auto;
  408. transform: rotate(-45deg);
  409. -webkit-transform: rotate(-45deg);
  410. }
  411. a.corner-ribbon {
  412. text-decoration: none;
  413. }
  414. input[type=checkbox] {
  415. transform: scale(2);
  416. margin-left: 10px;
  417. margin-right: 10px;
  418. }
  419. input ~ label {
  420. user-select: none;
  421. }
  422. body.toggle-height-bars .height-bar,
  423. .entity-box.selected .height-bar {
  424. display: block;
  425. }
  426. .height-bar {
  427. display: none;
  428. min-width: calc(var(--xpos));
  429. min-height: 3px;
  430. height: 3px;
  431. position: absolute;
  432. opacity: 50%;
  433. background: repeating-linear-gradient(90deg, #ffffff, #ffffff 20px, #ffffff00 20px, #ffffff00 40px);
  434. top: calc(-100% + var(--extra));
  435. left: calc(-1 * var(--xpos));
  436. transition: 0s all;
  437. z-index: -1;
  438. }
  439. .height-bar::before {
  440. display: block;
  441. background: gray;
  442. position: absolute;
  443. content: var(--entity-height);
  444. transition: 0s all;
  445. }
  446. .height-bar::after {
  447. display: block;
  448. min-width: 24px;
  449. min-height: 3px;
  450. background: #ffffff;
  451. position: absolute;
  452. left: calc(var(--xpos) - 24px);
  453. transition: 0s all;
  454. content: "";
  455. }
  456. .sr-only {
  457. position: absolute;
  458. width: 1px;
  459. height: 1px;
  460. padding: 0;
  461. margin: -1px;
  462. overflow: hidden;
  463. clip: rect(0,0,0,0);
  464. border: 0;
  465. }
  466. .bottom-cover {
  467. display: none;
  468. position: absolute;
  469. width: 100%;
  470. height: 10vh;
  471. left: 0%;
  472. top: calc(100% - 51px);
  473. background: black;
  474. }
  475. body.toggle-bottom-cover .bottom-cover {
  476. display: inline-block;
  477. }