body { margin: 0; background: #111; color: #ddd; font: 13px monospace; } .app { display: flex; } .map { flex: 1; min-width: 0; overflow: auto; max-height: 100vh; } canvas { display: block; } @media (max-width: 900px) { .app { flex-direction: column; } .map { max-height: none; } .side { width: 100%; height: auto; } } .side { flex: none; width: 340px; height: 100vh; overflow-y: auto; padding: 10px; box-sizing: border-box; } .side input[type=number] { width: 56px; } .log div { margin: 2px 0; color: #aaa; } .hover { color: #fc6; min-height: 1.2em; } .hint { color: #888; } .editor-panel { display: none; position: fixed; top: 0; right: 0; bottom: 0; width: min(760px, 70vw); flex-direction: column; background: #1e1e1e; border-left: 1px solid #444; z-index: 10; } .editor-bar { padding: 6px 10px; display: flex; gap: 8px; align-items: center; } .editor-host { flex: 1; min-height: 0; } .vim-status { padding: 2px 10px; font: 12px monospace; min-height: 1.4em; } .script-err { padding: 6px 10px; max-height: 25vh; overflow: auto; color: #f77; white-space: pre-wrap; }