@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Mono:wght@100..900&family=Noto+Sans:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&family=Protest+Strike&display=swap'); :root{ --absScale: 1; --legendButtonSize: 50px; --accentCol: #e79830; --bg1: #2c3f58; --bg2: #191e2e; } html *{ box-sizing: border-box; padding: 0px; margin: 0px; } html, body{ height: 100vh; width: 100vw; font-family: "Noto Sans"; font-variation-settings: "wght" 400; color: #e9e9e9; font-size: 14px; overflow:hidden; } a{ color: #79bcf3; } a:visited{ color: #5ea8e4; } a:hover{ color: var(--accentCol); } .orange, .tabButton{ color: var(--accentCol); } .quiet{ opacity: 0.7; } .smol{ font-size: 11px; color: #fff; } .panel, .tabContent, .tabButton{ border: 2px solid #b3b3b396; background: linear-gradient(120deg, var(--bg1), var(--bg2)); text-shadow: 2px 2px 5px #0003; margin: 5px; padding: 8px 13px; border-radius: 5px; pointer-events: all; } .panel hr, .tabContent hr { border: 0px; border-bottom: 2px solid #b3b3b396; } .linkpanel{ padding: 3px 3px; >a{ display: inline-block; white-space: nowrap; text-decoration: none; background: #191e2e; padding: 2px 4px; margin: 2px 1px; border: 2px solid #b3b3b396; border-radius: 8px; } a::after{ content: ' ⧉'; font-size: 10px; } a:hover{ color: #31281b; background: var(--accentCol); } } #topleft{ position:fixed; top: 0px; left: 0px; pointer-events: none; height: 100vh; overflow: hidden; display: flex; flex-direction: column; } #tabContents{ margin-left: 5px; >div{ position: fixed; display: flex; align-items: flex-start; >div{ max-width: min(500px,100vw); margin: 0; } } } #tabContents.active>div{ transition: transform 400ms cubic-bezier(0.445, 0.050, 0.550, 0.950); } .tabButton{ border-top-left-radius: 0; border-bottom-left-radius: 0; border-left: none; font-size: 25px; padding: 8px; background: var(--bg1); cursor: pointer; transition: all 0.1s cubic-bezier(0.250, 0.460, 0.450, 0.940); } .tabButton:hover{ background: var(--accentCol); color: #000; } #headerbar{ background: linear-gradient(120deg, #3d5779, #121522); font-size: 2em; border-left: 0px; font-variation-settings: "wght" 500; padding: 10px 30px 10px 30px; margin: 10px 0px; border-radius: 0px 10px 10px 0px; max-width: fit-content; } #legendButton{ padding: 8px; height: var(--legendButtonSize); width: var(--legendButtonSize); >*{ transition: transform 200ms ease; height: 100%; } } #legendKey{ columns: 2; } #legendKeyColors{ overflow-wrap:break-word; } #legend{ transition: transform 400ms cubic-bezier(0.445, 0.050, 0.550, 0.950); display: flex; flex-direction: row; flex-shrink: 1; min-height: 0px; } #legendContents{ overflow-y: auto; scrollbar-width: thin; scrollbar-color: #62778a #1c1e2d; pointer-events: all; } #directionsPanel{ max-width: min(360px, 92vw); display: flex; flex-direction: row; transition: transform 400ms cubic-bezier(0.445, 0.050, 0.550, 0.950); } #directionsContents{ pointer-events: all; } #directionsHeader{ display: flex; align-items: center; justify-content: space-between; font-variation-settings: "wght" 600; margin-bottom: 6px; } #directionsHeaderRight{ display: flex; align-items: center; gap: 6px; } #directionsBody{ display: flex; flex-direction: column; max-width: 250px; } .directionToggle{ padding: 8px; height: var(--legendButtonSize); width: var(--legendButtonSize); font-size: 18px; font-weight: bold; line-height: 1; margin-left: 0px; border-radius: 5px; } #directionsStops{ display: flex; flex-direction: column; gap: 6px; } #directionsControls{ display: flex; gap: 6px; margin-top: 6px; } #directionsOptions{ display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; font-size: 11px; } #directionsOptions label{ display: flex; align-items: center; gap: 4px; } #directionsOptions input{ width: 72px; } #directionsSummary{ margin-top: 6px; font-size: 11px; } .directionRow{ display: flex; align-items: center; gap: 8px; } .directionBadge{ width: 18px; height: 18px; border-radius: 999px; display: flex; align-items: center; justify-content: center; font-size: 11px; font-variation-settings: "wght" 700; color: #0b0f1a; } .directionInput{ flex: 1; background: #111827; color: #e9e9e9; border: 1px solid #374151; border-radius: 4px; padding: 3px 6px; font-size: 11px; } .directionInput::placeholder{ color: #9aa0a6; } .directionButton{ border: 1px solid #374151; background: #1f2937; color: #e9e9e9; border-radius: 4px; padding: 2px 6px; font-size: 11px; } .directionButton.active{ border-color: var(--accentCol); color: #31281b; background: var(--accentCol); } .directionButton:disabled{ opacity: 0.45; cursor: default; } #redrawTrigger{ transition: background-color 800ms; display: inline-block; width: 1px; height: 5px; background-color: #000; opacity: 0.01; } #settingsPanel{ user-select: none; input:not([type=text]), label{ cursor: pointer; } input[type=text], div{ cursor:unset; } } #stats{ pointer-events: none; position: fixed; width: fit-content; right: 10px; bottom: 5px; font-size: 0.8em; text-align: right; text-shadow: black 2px 1px 4px; } #mapNavigator{ transition: transform 100ms ease-out; transform-origin: 0% 0%; >*{ position:absolute; pointer-events: none; >*{ pointer-events: visiblePainted; } } } #mapContainer{ position: fixed; width: 100vw; height: 100vh; box-sizing: border-box; overflow: hidden; cursor: grab; user-select: none; background: linear-gradient(#444, #333); } #mapCanvas, #dynCanvas{ position: fixed; width:100%; height:100%; } .colorKey, .gradientKey{ border:1px #858585 solid; border-radius: 4px; display: inline-block; margin: 2px 1px; padding: 1px 3px; } .inlineSvg, .colorKey>span{ width: 1em; height: 1em; vertical-align: -0.1em; display: inline-block; } .poi{ font-variation-settings: "wght" 700; } button{ cursor: pointer; user-select: none; } #navigationControls { margin-left: auto; width: fit-content; display: flex; flex-direction: column; gap: 5px; >*{ font-size: 24px; font-weight: bold; width: var(--legendButtonSize); height: var(--legendButtonSize); } } .signText { font-family: Arial; } #changelog { width: fit-content; font-size: 11px; } #tooltip{ position: fixed; left: 0px; top: 0px; pointer-events: none; padding: 5px; margin: 0; font-size: 12px; } #tooltip h1{ font-variation-settings: "wght" 600; font-style: italic; font-size: 15px; line-height: 1em; padding-bottom: 4px; padding: 0 4px 4px 4px; } #tooltip h2{ font-variation-settings: "wght" 600; font-size: 10px; line-height: 1em; padding-bottom: 4px; opacity: 0.7; border-bottom: 2px solid #b3b3b396; }