:root{color-scheme:dark}body{margin:0;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#101418;color:#cfd8e3;font:14px/1.5 ui-monospace,SF Mono,Menlo,monospace}#stage{position:relative}canvas{width:768px;height:672px;image-rendering:pixelated;background:#000;display:block;border:1px solid #2a3542;border-radius:4px}#drop{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;background:#0a0e12eb;border:2px dashed #33455c;border-radius:4px;padding:24px;cursor:pointer}#drop[hidden]{display:none}#fade{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none;transition:opacity .5s;border-radius:4px}#drop.armed{border-color:#7ec8ff;background:#101c28f2}#drop b{color:#ffd166}#drop small{color:#7d8a99;max-width:40em}#drop .rom-details{color:#55636f}#bar{display:flex;align-items:center}.bar-row{display:flex;gap:6px;align-items:center;flex-wrap:nowrap;justify-content:center}.toolbar-section{display:flex;gap:6px;align-items:center}.toolbar-section+.toolbar-section{margin-left:8px}#bar button,.toolbar-popup summary,#level{height:33px;box-sizing:border-box;padding:5px 9px;white-space:nowrap}select,button{background:#1a2430;color:#cfd8e3;border:1px solid #33455c;border-radius:4px;padding:6px 12px;font:inherit;cursor:pointer}button:hover,select:hover{border-color:#7ec8ff}#status{color:#7d8a99;min-height:1.5em}kbd{background:#1a2430;border:1px solid #33455c;border-radius:3px;padding:0 5px}#pad{display:flex;flex-direction:column;align-items:center;gap:8px;color:#8b98a8;font-size:11px}.kb{display:flex;gap:72px;align-items:flex-start}.kcluster{display:flex;flex-direction:column;gap:4px}.krow{display:flex;gap:4px}.key{width:52px;height:40px;border:1px solid #33455c;border-radius:6px;background:#1a2430;box-shadow:0 2px #0d1219;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.1}.key b{font-size:14px;color:#cfd8e3}.key.down{background:#2e6da8;border-color:#7ec8ff;box-shadow:0 0 10px #4ea3e688,0 1px #0d1219;transform:translateY(1px)}.key.down b,.key.down small{color:#fff}.key small{font-size:9px;color:#7d8a99}.key.act b{color:#7ec8ff}.key.run b{color:#ffd166}.kspace{width:52px}.khalf{width:26px}a{color:#7ec8ff}.sha{text-decoration:underline;text-underline-offset:2px;cursor:pointer}.sha:hover{color:#7ec8ff}.sha-copy{background:none;border:none;color:#7d8a99;cursor:pointer;font:inherit;padding:0 0 0 6px}.sha-copy:hover{color:#7ec8ff;border:none}.copied-pop{position:fixed;transform:translate(-50%,-130%);pointer-events:none;background:#1a2430;color:#7ec8ff;border:1px solid #33455c;border-radius:4px;padding:2px 8px;font-size:11px;z-index:10;animation:copied-fade .9s ease-out forwards}.toolbar-popup{position:relative;color:#8b98a8}.toolbar-popup summary{display:flex;align-items:center;list-style:none;cursor:pointer;color:#cfd8e3;text-align:center;font:inherit;background:#1a2430;border:1px solid #33455c;border-radius:4px}.toolbar-popup summary::-webkit-details-marker{display:none}.toolbar-popup summary:hover,.toolbar-popup[open] summary{color:#7ec8ff;border-color:#7ec8ff}.popup-menu{position:absolute;z-index:20;right:0;top:calc(100% + 6px);width:max-content;min-width:360px;max-width:min(90vw,620px);font-size:12px;padding:8px;background:#101820;border:1px solid #33455c;border-radius:6px;box-shadow:0 8px 24px #000a}#level{min-width:210px;text-align:center;text-align-last:center}#level option{text-align:center}#modlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}#modlist li{display:flex;gap:8px;align-items:center;background:#141c26;border:1px solid #22303f;border-radius:4px;padding:4px 8px}#modlist .mod-name{color:#cfd8e3}#modlist .mod-meta{color:#55636f}#modlist .mod-err{color:#ff9d66}#modlist .mod-remove{padding:0 7px;line-height:1.4}#modlist .mod-remove:hover{border-color:#ff9d66;color:#ff9d66}#engine-build{color:#55636f;font-size:10px;text-align:center;margin-top:8px;padding-top:7px;border-top:1px solid #22303f}#addmod{width:100%;margin-top:7px}@keyframes copied-fade{0%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-50%,-220%)}}
