*{box-sizing:border-box}html,body{margin:0;height:100%;background:#080a07;color:#d8dccf;font:14px system-ui}body{display:grid;grid-template-rows:auto auto minmax(240px,1fr) auto}header{display:flex;justify-content:space-between;gap:12px;padding:10px 16px}a{color:#c6d8a5}#status{margin:0;padding:4px 16px 8px}main{position:relative;min-width:0;min-height:0;overflow:hidden}canvas{width:100%;height:100%;display:block}#actions{position:absolute;inset:0;pointer-events:none}#actions :is(button,input,[role=listbox]){position:absolute;pointer-events:auto;background:transparent;border:0;color:transparent;padding:0;cursor:pointer}#actions :is(button,input,[role=listbox]):focus-visible{outline:0}#actions input{cursor:text;caret-color:#f8f377}#actions [role=listbox]{overflow:hidden}#actions [role=option]{position:absolute;left:0;width:100%;color:transparent;background:transparent;pointer-events:none}footer{padding:8px 16px}footer p{margin:6px 0}footer button{background:#262c20;color:#d8dccf;border:1px solid #657450;border-radius:3px;padding:7px 12px}#report{margin-left:8px}pre{white-space:pre-wrap;max-height:120px;overflow:auto}@media(max-width:500px){header{font-size:12px}footer{font-size:12px;padding:8px}#report{display:block;margin:6px 0}}
#actions [role=option]{pointer-events:auto}
/* Browser chrome overlays the playfield; it never reduces render resolution. */
html,body{overflow:hidden}body{display:block}main{position:fixed;inset:0;height:100%;height:100dvh}
footer{position:fixed;z-index:5;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));padding:0;max-width:calc(100vw - 16px);font-size:12px}
#browser-controls{padding:8px;background:#080a07e8;border:1px solid #657450;border-radius:4px}
#browser-controls>summary{cursor:pointer}#browser-controls[open]>summary{margin-bottom:10px}#browser-controls p{max-width:340px}
#browser-controls button{padding:5px 8px}#report{margin-left:0}#browser-controls pre{max-width:min(420px,85vw)}
#status{position:fixed;z-index:6;left:50%;top:35%;transform:translate(-50%,-50%);max-width:90vw;padding:12px 16px;background:#080a07ed;border:1px solid #657450;border-radius:4px;overflow-wrap:anywhere}
body[data-ready=true] #status{display:none}
#actions input:read-only{caret-color:transparent;cursor:default}
#menu-start{position:fixed;inset:0;z-index:7;background:#000}
#menu-start canvas{width:100%;height:100%;display:block}
#menu-start button{position:absolute;background:transparent;border:0;color:transparent;cursor:pointer;padding:0}
#menu-start button:focus{outline:none}
body[data-ready=true] #menu-start,body[data-failed=true] #menu-start,body[data-loading-map=true] #menu-start{display:none}
.menu-entry:not([data-loading-map=true]) #loading{display:none}
