:root{--bg: #10121c;--ink: #e8e6df}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;overflow:hidden}#stage{position:relative;line-height:0}#screen{image-rendering:pixelated;display:block;background:#000;border-radius:2px;box-shadow:0 0 0 4px #2a2f45,0 18px 50px #0009}#overlay{position:absolute;inset:0;line-height:normal;pointer-events:none}#overlay:empty{display:none}#hint{margin:0;font-size:12px;letter-spacing:.04em;opacity:.45}#touch-warning{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:24px;text-align:center;background:var(--bg);z-index:10}#touch-warning.show{display:flex}#touch-warning h1{font-size:20px;letter-spacing:.1em}#touch-warning p{opacity:.7;line-height:1.6;max-width:32ch;margin:0 auto 24px}#touch-warning button{font:inherit;padding:10px 18px;color:var(--ink);background:transparent;border:2px solid #4a5170;border-radius:4px;cursor:pointer}#overlay.active{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;pointer-events:auto;background:#10121cf2;padding:16px}.registry{font-family:inherit;font-size:13px;line-height:1.4;color:var(--ink);width:min(560px,100%);max-height:92vh;overflow-y:auto;padding-right:6px;display:flex;flex-direction:column;gap:2px}.registry h2{margin:0;font-size:1.5em;letter-spacing:.14em;color:#ffd45e}.registry-sub{margin:0 0 8px;opacity:.6;font-size:.95em}.registry-question{margin:10px 0 2px;font-size:.95em;opacity:.85}.registry-choices{display:flex;flex-direction:column;gap:4px}.registry-choice{display:flex;gap:8px;align-items:flex-start;margin:0;padding:6px 8px;font-size:.92em;line-height:1.35;color:var(--ink);background:#191d2e;border:1px solid #3a4160;border-radius:3px;cursor:pointer;opacity:1}.registry-choice:hover{border-color:#5a628c}.registry-choice input{flex:none;margin:2px 0 0;accent-color:#ffd45e}.registry-choice:has(input:checked){border-color:#ffd45e;background:#211f2c}.registry-info{color:#ffd45e;text-decoration:none;border-bottom:1px solid rgba(255,212,94,.4)}.registry-info:hover{border-bottom-color:#ffd45e}.registry-sub:has(.registry-info){opacity:1}.registry label{margin-top:6px;font-size:.95em;opacity:.85}.registry label em{opacity:.5;font-style:normal}.registry input,.registry textarea,.registry select{font:inherit;font-size:1em;color:var(--ink);background:#191d2e;border:1px solid #3a4160;border-radius:3px;padding:5px 6px;resize:vertical}.registry select option{color:var(--ink);background:#191d2e}.registry input:focus,.registry textarea:focus,.registry select:focus{outline:none;border-color:#ffd45e}.registry-error{margin:8px 0 0;color:#ff8b76;font-size:.95em}.registry-actions{display:flex;gap:8px;margin-top:12px}.registry-actions button{font:inherit;font-size:1em;padding:7px 12px;border-radius:3px;cursor:pointer;background:#ffd45e;color:#17182a;border:none;font-weight:700;letter-spacing:.08em}.registry-actions button[data-cancel]{background:transparent;color:var(--ink);border:1px solid #3a4160;font-weight:400}.registry-actions button:disabled{opacity:.6;cursor:wait}#project-link{font-size:12px;letter-spacing:.04em;color:#ffd45e;text-decoration:none;border-bottom:1px dashed rgba(255,212,94,.5);opacity:.85}#project-link:hover{opacity:1}
