:root{--panel:#1a0b3d;--panel-edge:#6a6a72;--text:#f2f2f6;--hl:#e8121a;--font:"Trebuchet MS", "Segoe UI", Verdana, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--text);font-family:var(--font);touch-action:none;-webkit-user-select:none;user-select:none;background:#000;margin:0;overflow:hidden}#stage{position:fixed;inset:0}#gl{image-rendering:auto;width:100%;height:100%;display:block;position:absolute;inset:0}#ui{pointer-events:none;position:absolute;inset:0}#ui>*{pointer-events:auto}.screen{transform-origin:0 0;background:#000 50%/100% 100% no-repeat;width:640px;height:480px;position:absolute;top:50%;left:50%;overflow:hidden}.screen .abs{position:absolute}.panel{background:linear-gradient(160deg,#22105a 0%,#0f0630 55%,#2a1268 100%);border:3px solid #9a9aa2;border-color:#4a4a52 #9a9aa2 #9a9aa2 #4a4a52;position:absolute;box-shadow:inset 0 0 0 2px #000,0 0 0 1px #000}.title{color:#fff;letter-spacing:1px;text-shadow:1px 1px #333;background:#000;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex;position:absolute}.btn{height:26px;font:bold 14px var(--font);letter-spacing:1px;color:#fff;cursor:pointer;text-shadow:-1px -1px #222,1px 1px #000,0 0 3px #000;background:linear-gradient(#b8b8be 0%,#77777e 45%,#4a4a50 55%,#2e2e33 100%);border:1px solid #1a1a1e;border-radius:2px;justify-content:center;align-items:center;display:flex;position:absolute;box-shadow:inset 1px 1px #ddd,inset -1px -1px #222}.btn>span,.value{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.btn:hover,.btn.focus{filter:brightness(1.25)}.btn.plate{cursor:default;pointer-events:none}.focus,[role=button]:focus-visible,[role=option]:focus-visible{outline-offset:1px;outline:2px solid #ffd400}.list .row.focus{outline-offset:-2px}:focus{outline:none}.focus:focus{outline:2px solid #ffd400}.osk .btn{font-size:15px}.btn:active{filter:brightness(.85)}.btn.disabled{color:#777;text-shadow:none;filter:brightness(.55);cursor:default}.btn .led{background:#111;border:1px solid #444;width:12px;height:12px;position:absolute;top:7px;left:8px}.btn .led.on{background:radial-gradient(#7f7,#1a5)}.label{color:#fff;text-shadow:1px 1px #000,-1px -1px #000;font-size:14px;font-weight:700;position:absolute}.list{background:#000;border:2px solid #555;position:absolute;overflow-y:auto}.list .row{cursor:pointer;white-space:nowrap;border-bottom:1px solid #222;height:18px;padding:0 8px;font-size:14px;font-weight:700;line-height:18px}.list .row.sel{background:var(--hl)}input.name{color:#fff;height:26px;font:bold 15px var(--font);background:#000;border:2px solid #888;border-radius:3px;outline:none;padding:0 8px;position:absolute}.bar{background:#111;border:1px solid #333;height:18px;position:absolute}.bar>i{height:100%;display:block}.value{color:#fff;background:#000;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex;position:absolute}.status{color:#fff;background:#000;justify-content:center;align-items:center;height:22px;font-size:14px;font-weight:700;display:flex;position:absolute;bottom:30px;left:14px;right:14px}.modal-bg{position:absolute;inset:0}.hud{pointer-events:none;font-family:var(--font);position:absolute;inset:0}.hud .box{color:#fff;text-shadow:1px 1px #000;background:#0000008c;border:1px solid #555;padding:2px 8px;font-weight:700;position:absolute}.hud .big{color:#ffd400;text-shadow:3px 3px #000,-2px -2px #000;text-align:center;font-size:42px;position:absolute;top:38%;left:0;right:0}.hud canvas.minimap{position:absolute}.loading{color:#fff;font:bold 20px var(--font);background:#000;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}
