:root{color-scheme:dark;--bg: #14171c;--panel: #1c2027;--line: #2b313b;--text: #e7ecf3;--muted: #9aa4b2;--dim: #6b7482;--accent: #4c8dff;--primary: #ffd9a0;--ok: #3ed598;--warn: #ff7a45}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font:13px/1.5 ui-monospace,Cascadia Code,Menlo,monospace}#render{display:block;width:100%;height:100%;outline:none;touch-action:none}.splash{position:fixed;inset:0;display:grid;place-items:center;padding:1.5rem;background:#101319f2;backdrop-filter:blur(6px);overflow-y:auto;transition:opacity .22s ease}.splash-hidden{opacity:0;pointer-events:none}.splash-panel{width:100%;max-width:34rem;text-align:center}.splash-panel h1{margin:0 0 .75rem;font-size:1.6rem;letter-spacing:.02em}.splash-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.6rem;margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.splash-identity{display:flex;align-items:center;gap:.6rem;color:var(--dim);font-size:.85em}.splash-topbar .splash-toggle{grid-template-columns:1fr 1fr;width:auto}.splash-topbar .splash-toggle button{padding:.4rem .6rem;font-size:.85em}.splash-guide{margin:0 auto 1.2rem;padding:0 0 0 1.1rem;max-width:24rem;text-align:left;color:var(--muted);font-size:.85em;display:grid;gap:.3rem}.splash-checks{margin:0 0 1.6rem;padding:0;list-style:none;display:grid;gap:.4rem;justify-content:center}.check{display:grid;grid-template-columns:.6rem 1fr;align-items:center;gap:.6rem;text-align:left;color:var(--muted)}.dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--dim)}.check-pending .dot{animation:pulse 1.4s ease-in-out infinite}.check-ready .dot{background:var(--ok)}.check-ready{color:var(--text)}.check-unavailable .dot{background:var(--dim)}.check-broken .dot{background:var(--warn)}.check-broken{color:var(--text)}@keyframes pulse{0%,to{opacity:.25}50%{opacity:1}}.splash-field{display:grid;gap:.35rem;margin:0 auto 1.25rem;max-width:16rem;text-align:left}.splash-field span{color:var(--dim)}.splash-field input{padding:.55rem .7rem;border:1px solid var(--line);border-radius:.4rem;background:#12151a;color:var(--text);font:inherit}.splash-field input:focus{outline:none;border-color:var(--accent)}.splash-field small{color:var(--dim);font-size:.85em}.splash-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.splash-toggle button{padding:.5rem .7rem;border:1px solid var(--line);border-radius:.4rem;background:#12151a;color:var(--muted);font:inherit;cursor:pointer}.splash-toggle button.selected{border-color:var(--accent);color:var(--text)}.splash-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.splash-actions button{padding:.7rem 1.4rem;border:1px solid var(--line);border-radius:.5rem;background:#23272f;color:var(--text);font:inherit;cursor:pointer;transition:background .14s ease,border-color .14s ease}.splash-actions button:hover:not(:disabled){background:#2b313b}.splash-actions button.primary:not(:disabled){background:var(--primary);border-color:var(--primary);color:#22180a;font-weight:700}.splash-actions button:disabled{opacity:.4;cursor:default}.splash-account-actions{display:flex;gap:.75rem;margin-top:.25rem}.splash-link{padding:0;border:none;background:none;color:var(--accent);font:inherit;font-size:.85em;text-decoration:underline;cursor:pointer}.splash-link:hover{color:var(--text)}.splash-error{margin:1rem 0 0;color:var(--warn)}.splash-foot{margin:1.6rem 0 0;color:var(--dim)}.session-screen{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:1.5rem;background:var(--bg);overflow-y:auto}.session-screen[hidden]{display:none}.session-panel{width:100%;max-width:26rem;text-align:center}.session-panel h1{display:flex;align-items:center;justify-content:center;gap:.55rem;margin:0 0 .4rem;font-size:1.35rem}.live-dot{width:.5rem;height:.5rem;border-radius:50%;background:var(--ok);animation:pulse 1.8s ease-in-out infinite}.session-heading{margin:0 0 1.75rem;color:var(--muted)}.session-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem}.session-grid>div{display:grid;gap:.3rem;padding:.75rem;border:1px solid var(--line);border-radius:.5rem;background:var(--panel)}.session-label{color:var(--dim);font-size:.85em}.session-fps.good{color:var(--ok)}.session-fps.fair{color:#ffd166}.session-fps.poor{color:#ff5d8f}.session-peers{display:grid;gap:.4rem;margin-bottom:1.75rem}.session-peers ul{margin:0;padding:0;list-style:none;display:grid;gap:.25rem;color:var(--text)}.session-capabilities{display:grid;gap:.4rem;margin-bottom:1.75rem}.session-capabilities ul{margin:0;padding:0;list-style:none;display:grid;gap:.35rem}.session-actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.session-actions button{padding:.65rem 1.4rem;border:1px solid var(--line);border-radius:.5rem;background:#23272f;color:var(--text);font:inherit;cursor:pointer;transition:background .14s ease}.session-actions button:hover{background:#2b313b}.session-foot{margin:1.5rem 0 0;color:var(--dim)}#portal{position:fixed;inset:0;z-index:8}#portal:empty{display:none}#status{position:fixed;top:0;left:0;right:0;display:flex;flex-wrap:wrap;gap:0 1.25rem;padding:.5rem .75rem;background:linear-gradient(#14171cdd,#14171c00);pointer-events:none}.metric{white-space:nowrap;color:var(--muted)}.metric b{color:var(--accent);font-weight:700}#hint{position:fixed;bottom:.6rem;left:.75rem;color:var(--dim);pointer-events:none}#notice{position:fixed;left:50%;bottom:3.5rem;transform:translate(-50%);padding:.5rem .9rem;border:1px solid var(--line);border-radius:.4rem;background:#1c2027ee;color:var(--text);pointer-events:none}#reenter{position:fixed;bottom:1rem;right:1rem;padding:.6rem 1.1rem;border:1px solid var(--primary);border-radius:.5rem;background:var(--primary);color:#22180a;font:inherit;font-weight:700;cursor:pointer}#leave-room{position:fixed;bottom:1rem;left:1rem;padding:.6rem 1.1rem;border:1px solid var(--line);border-radius:.5rem;background:#23272fee;color:var(--text);font:inherit;cursor:pointer}#leave-room:hover{background:#2b313bee}
