:root{color-scheme:dark;--bg: #05060a}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,sans-serif;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;overscroll-behavior:none}#app{position:fixed;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#0b0f1c,#05060a 60%,#000)}#scene,#hud{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#scene{image-rendering:auto}#hud{cursor:crosshair}body:after{content:"";position:fixed;inset:0;background:var(--bg);pointer-events:none;opacity:0}.code-overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:start center;padding:16px;background:#030408b3;touch-action:auto}.code-card{width:min(340px,100%);display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:20px 24px;border:1.5px solid rgba(63,233,255,.45);border-radius:16px;background:linear-gradient(#141c30f2,#080a14f2);color:#eafcff;text-align:center}.code-card label{font-weight:800;font-size:14px;letter-spacing:.08em;color:#3fe9ff}.code-card input{width:100%;font:900 40px Segoe UI,system-ui,sans-serif;letter-spacing:.3em;text-align:center;text-transform:uppercase;padding:8px 0 8px .3em;border:1.5px solid rgba(230,244,255,.3);border-radius:10px;background:#ffffff0d;color:#eafcff;-webkit-user-select:text;user-select:text}.code-card input:focus{outline:2px solid #3fe9ff;outline-offset:2px}.code-error{min-height:1.2em;font-size:13px;font-weight:700;color:#ff3d6e}.code-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.code-buttons button{font:800 16px Segoe UI,system-ui,sans-serif;padding:12px;border-radius:12px;border:1.5px solid rgba(230,244,255,.4);background:#ffffff0f;color:#eafcff;cursor:pointer}.code-buttons .code-join{border-color:#5b7bff;background:#5b7bff2e}
