@import url('https://fonts.googleapis.com/css?family=Coda&display=swap'); html { height: 100%; width: 100%; box-sizing: border-box; overflow-x: hidden; overflow-y: hidden; color: #eee; } body { position: relative; background: #333; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; height: 100%; width: 100%; font-family: 'Coda', sans-serif; } .entity-box { position: absolute; --height: 100px; max-height: var(--height); height: var(--height); text-align: center; -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; pointer-events: none; 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); } .entity-image { display: block; height: 100%; pointer-events: auto; -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; --offset: -100%; transform: translate(-50%, var(--offset)); } .entity-name { display: none; position: absolute; top: calc(-100% + var(--extra) / 2); left: 0%; transform: translate(-50%, -36px); font-size: 24px; pointer-events: none; max-width: 250px; width: 250px; transition: all 0s; } body.toggle-entity-name .entity-name, .entity-box.selected .entity-name { display: inline; } .entity-box.selected > img { filter: drop-shadow(0px 0px 5px gold); } body.toggle-entity-glow .entity-box:not(.selected) > img{ filter: drop-shadow(0px 0px 2px white); } #main-area { min-height: 0px; display: flex; flex: 1 1 90vh; width: 100%; flex-direction: row; } #options { position: relative; flex: 1 1 15vw; min-width: 100pt; display: flex; justify-content: start; flex-direction: column; background: #444; overflow-x: hidden; overflow-y: auto; height: 100%; scrollbar-color: #e1e1e1 #888; } #options.hidden { min-width: 0pt; flex: 0 1 0vw; } #options-attribution { display: none; } #options::-webkit-scrollbar { height: 2px; } #options::-webkit-scrollbar-button { width: 0px; height: 0px; } #options::-webkit-scrollbar-thumb { background: #e1e1e1; border: 0px none #ffffff; border-radius: 50px; } #options::-webkit-scrollbar-thumb:hover { background: #ffffff; } #options::-webkit-scrollbar-thumb:active { background: #000000; } #options::-webkit-scrollbar-track { background: #00000000; border: 0px none #ffffff; border-radius: 50px; } #options::-webkit-scrollbar-track:hover { background: #666666; } #options::-webkit-scrollbar-track:active { background: #333333; } #options::-webkit-scrollbar-corner { background: transparent; } .options-two-buttons { display: flex; justify-content: space-evenly; } .options-category { position: relative; } .options-row { position: relative; flex-direction: column; display: flex; text-align: center; align-items: center; margin-left: auto; margin-right: auto; margin-top: 8px; margin-bottom: 8px; max-width: 90%; } .options-row.full { min-width: 90%; } .options-block { display: flex; text-align: center; min-width: 90%; width: 90%; margin: auto; flex-direction: column; } .options-label { text-align: center; user-select: none; margin-top: 12px; margin-bottom: 4px; } .options-block.options-block-optional { display: none; } body.show-extra-options .options-block.options-block-optional { display: flex; } .options-header { text-align: center; font-size: 24pt; margin-top: 10px; margin-bottom: 10px; background: #333; user-select: none; } .options-banner { text-align: center; font-size: 24pt; margin-top: 10px; margin-bottom: 10px; background: #232; text-decoration: none; user-select: none; } .options-banner:hover { color: #222; background: #494; } .options-selector { font-size: 150%; width: 100%; } #entities { position: absolute; user-select: none; width: 100%; height: 100%; } #world { position: relative; flex: 1 1 85vw; height: 100%; overflow: hidden; } #menubar { display: flex; flex: 1 0 5vh; flex-direction: row; justify-content: space-evenly; align-items: center; flex-wrap: wrap; min-width: 100vw; background: #222; } #menubar.hover-delete { background: #922; } .menubar-group { display: flex; flex-direction: row; } .popout-group { margin: 20px; display: flex; flex-direction: column; } .menu-item { font-size: 24px; color: #ccc; margin: 20px; } select.menu-item { color: #000; } #display { display: none; width: 100%; height: 100%; background: #333; } body.toggle-scale #display { display: block; } #options .options-label, #options .options-banner { flex: 0 1; width: 100%; font-size: 150%; } .options-row .options-field-numeric { flex: 1 1 100%; max-width: 90%; font-size: 150%; } .options-row .options-field-text { flex: 1 0 90%; max-width: 90%; font-size: 150%; } .options-row .options-field-unit { flex: 1 1 10%; max-width: 90%; font-size: 150%; } .options-row .options-field-picker { flex: 1; width: 100%; min-width: 90%; max-width: 90%; font-size: 150%; overflow: hidden; white-space: pre-wrap; word-break: normal; text-overflow: ellipsis; } .options-row .symbol-button { width: 75px; font-size: 70px; } .options-row .options-button { flex: 1; width: 100%; font-size: 150%; } .options-block .options-button { flex: 1; width: 100%; font-size: 150%; } .options-row label { flex: 1; width: 100%; font-size: 150%; } body #test-canvas { position: fixed; top: 500vh; } .switch { height: 24pt; } .switch input { transform: scale(2); } .top-name { display: none; text-align: center; position: fixed; max-width: 150px; height: 50px; transform: translate(-50%, 20pt); z-index: 1001; } body.toggle-top-name .top-name.top-name-needed { display: block; } .top-name::after { display: block; background-image: url("./media/ui/arrow.svg"); width: 70px; height: 70px; background-size: 70px 70px; background-repeat: no-repeat; content: ""; transform: translate(0, -120%); } .bottom-name { display: none; text-align: center; position: fixed; width: 150px; height: 50px; z-index: 10001; transform: translate(-50%, 0pt); } body.toggle-bottom-name .bottom-name { display: inline; } #menubar select { font-size: 16pt; max-width: 200pt; min-width: 120pt; height: 40pt; max-height: 180pt; overflow: hidden; white-space: pre-wrap; word-break: normal; text-overflow: ellipsis; } #menubar button { position: relative; font-size: 32pt; height: 40pt; z-index: 1; } #open-help { padding-top: 1pt; } #open-help.highlighted::before { position: absolute; top: 0; left: 0; content: " "; display: block; height: 100%; width: 100%; background: white; filter: drop-shadow(0px 0px 10px white) drop-shadow(0px 0px 10px white); z-index: -1; animation: pulsing 5s linear 0s infinite; } @keyframes pulsing { 0% { opacity: 100%; } 50% { opacity: 25%; } 100% { opacity: 100%; } } a { color: #999; } #options-attribution-authors { text-align: center; } #options-attribution-owners { text-align: center; } #options-attribution-source { text-align: center; } .no-transition { transition: 0s !important; } .corner-ribbon { width: 200px; background: #e43; position: fixed; top: 25px; left: -50px; text-align: center; padding: 10px; letter-spacing: 1px; color: #f0f0f0; transform: rotate(-45deg); -webkit-transform: rotate(-45deg); } .corner-ribbon.bottom-right{ top: auto; right: -50px; bottom: 25px; left: auto; transform: rotate(-45deg); -webkit-transform: rotate(-45deg); } a.corner-ribbon { text-decoration: none; } input[type=checkbox] { transform: scale(2); margin-left: 10px; margin-right: 10px; } input ~ label { user-select: none; } body.toggle-height-bars .height-bar, .entity-box.selected .height-bar { display: block; } .height-bar { display: none; min-width: calc(var(--xpos)); min-height: 3px; height: 3px; position: absolute; opacity: 50%; background: repeating-linear-gradient(90deg, #ffffff, #ffffff 20px, #ffffff00 20px, #ffffff00 40px); top: calc(-100% + var(--extra)); left: calc(-1 * var(--xpos)); transition: 0s all; z-index: -1; } .height-bar::before { display: block; background: gray; position: absolute; content: var(--entity-height); transition: 0s all; } .height-bar::after { display: block; min-width: 24px; min-height: 3px; background: #ffffff; position: absolute; left: calc(var(--xpos) - 24px); transition: 0s all; content: ""; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; } .bottom-cover { display: none; position: absolute; width: 100%; height: 10vh; left: 0%; top: calc(100% - 51px); background: black; } body.toggle-bottom-cover .bottom-cover { display: inline-block; } .transitions { transition: 0.2s all; } .rotate-forward { transform: rotate(-90deg); } .rotate-backward { transform: rotate(90deg); } i.fas i.far { pointer-events: none; } #help-icons { display: flex; flex-direction: column; flex-wrap: wrap; width: 50vw; } #help-icons > div { flex-basis: 25%; font-size: 150%; } #entity-view { text-align: center; font-weight: bold; font-size: 200%; } #spawners > select, #spawners > button { padding-top: 2pt; display: none; } #spawners > select#category-picker { display: block; } #spawners > select.category-visible, #spawners > select.category-visible + button { display: block; } #spawners > select { font-size: 24pt; } #spawners > button { font-size: 30pt; } #spawners-categories { font-size: 24pt; } .scroll-button { position: absolute; height: 25%; width: 50px; font-size: 40px; background: #ffffff33; border: 0px; z-index: 1002; } .scroll-button:active { background: #ffffff66; } .scroll-button:hover { background: #ffffff44; } .scroll-button:disabled { background: #ffffff11; } #zoom-out { left: 0%; top: 0%; } #zoom-in { right: 0%; top: 0%; } #scroll-left { left: 0%; top: 25%; } #scroll-right { right: 0%; top: 25%; } #shrink { left: 0%; top: 50%; } #grow { right: 0%; top: 50%; } #fit { right: 0%; top: 75%; } #toggle-menu { padding-top: 2pt; position: relative; } #popout-menu { display: none; flex-direction: column; flex-wrap: wrap; height: 80vh; justify-content: space-around; position: fixed; top: 10%; left: 10%; z-index: 10000; background: #111; } #popout-menu.visible { display: flex; } .menu-button { height: 48pt; width: 56pt; font-size: 40pt; } .menu-button-holder { display: flex; align-items: center; } .menu-text { font-size: 24pt; margin-left: 6pt; } #options-entity-defaults > button { word-break: break-word; } button { border: 3px; border-style: outset; border-color: gray; padding: 5px; background: #eee; } button:hover { background: #ccc; } button:enabled:active { border-style: inset; background: #aaa; } .toast { position: absolute; bottom: 10%; left: 50%; animation-name: toast-animation; animation-duration: 5s; animation-timing-function: linear; z-index: 1001; } @keyframes toast-animation { 0% { transform: translate(-50%, 0); opacity: 1; } 50% { transform: translate(-50%, -10vh); opacity: 1; } 100% { transform: translate(-50%, -20vh); opacity: 0; } } #help-menu *::-webkit-scrollbar { height: 2px; } #help-menu *::-webkit-scrollbar-button { width: 0px; height: 0px; } #help-menu *::-webkit-scrollbar-thumb { background: #e1e1e1; border: 0px none #ffffff; border-radius: 50px; } #help-menu *::-webkit-scrollbar-thumb:hover { background: #ffffff; } #help-menu *::-webkit-scrollbar-thumb:active { background: #000000; } #help-menu *::-webkit-scrollbar-track { background: #00000000; border: 0px none #ffffff; border-radius: 50px; } #help-menu *::-webkit-scrollbar-track:hover { background: #666666; } #help-menu *::-webkit-scrollbar-track:active { background: #333333; } #help-menu *::-webkit-scrollbar-corner { background: transparent; } #help-menu { display: none; position: absolute; width: 100vw; height: 100vh; z-index: 100001; overflow-x: hidden; } #help-menu.visible { display: flex; } #table-of-contents-holder { flex: 1 1 30%; padding: 15px; background: #111; overflow-y: auto; } #table-of-contents { line-height: 2; } #table-of-contents li { font-size: 150%; user-select: none; } #table-of-contents li:hover { color: #ccc; } #table-of-contents button { position: relative; width: 50pt; height: 50pt; font-size: 40pt; } #table-of-contents button i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } #help-contents-holder { flex: 1 1 70%; background: #333; padding: 25px; overflow-y: auto; } #help-contents > h2 { font-size: 250%; } #help-contents > h2 { margin-bottom: 16pt; } #help-contents > h2:nth-child(1n+2) { margin-top: 32pt; } #help-contents p { text-indent: 20pt; max-width: 80em; line-height: 1.4em; width: 80%; margin-bottom: 8pt; margin-top: 8pt; } #help-contents i.fas { text-indent: 0pt; margin-left: 2pt; margin-right: 2pt; } #help-contents ul { list-style: circle; line-height: 1.4; } #help-contents b { font-weight: bolder; } #help-contents li { margin-left: 2em; } #help-contents img { display: block; margin: auto; height: 60pt; }