:root{--bg: #0e1116;--panel: #161b22;--line: #2a3340;--text: #d7dde4;--muted: #8b97a5;--accent: #58a6ff}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font:13px/1.4 ui-monospace,SF Mono,Menlo,Consolas,monospace}body{display:flex;flex-direction:column;height:100vh}.statusbar{display:flex;gap:18px;align-items:center;padding:8px 14px;background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}.statusbar .brand{color:var(--accent);font-weight:700}.statusbar .stat{color:var(--muted)}.statusbar b{color:var(--text);font-weight:600}.statusbar .token-hint{color:#ffb454}.statusbar .token-hint input{width:150px;margin:0 4px;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:4px;padding:2px 6px;font:inherit}.statusbar .token-hint button{background:var(--accent);color:#07111f;border:0;border-radius:4px;padding:2px 8px;cursor:pointer;font:inherit}.split{flex:1;display:flex;min-height:0}.pane{flex:1;min-width:0;position:relative;display:flex;flex-direction:column}.video-pane{border-right:1px solid var(--line)}.video-stack{flex:1;min-height:0;position:relative;background:#000}.video-stack video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#000}.video-stack video[hidden]{display:none}.controls{display:flex;gap:8px;padding:8px;background:var(--panel);border-top:1px solid var(--line)}#traces{width:100%;height:100%;display:block}button{background:#21262d;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:5px 10px;cursor:pointer}button:hover{border-color:var(--accent)}select,input[type=range]{background:#21262d;color:var(--text);border:1px solid var(--line);border-radius:6px;padding:4px}input[type=range]{flex:1;min-width:120px}.offline{display:flex;gap:8px;align-items:center;padding:8px 14px;background:var(--panel);border-top:1px solid var(--line);flex-wrap:wrap}.offline .label{color:var(--muted)}.offline .clock{color:var(--muted);min-width:90px;text-align:right}.landing{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg)}.landing[hidden]{display:none}.landing-card{width:100%;max-width:440px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px;text-align:center}.landing-card h1{margin:0 0 6px;color:var(--accent);font-size:20px}.landing-sub{margin:0 0 18px;color:var(--muted)}.landing-card #roomInput{width:100%;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font:inherit;text-align:center}.landing-actions{display:flex;gap:10px;margin:14px 0 16px}.landing-actions button{flex:1;padding:10px;font-size:14px}.landing-actions .primary{background:var(--accent);color:#07111f;border:0;font-weight:600}.landing-note{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.landing-note b{color:var(--text)}body.role-watch .record-only{display:none!important}.pair-toggle{margin:14px auto 0;display:block;background:transparent;border:1px solid var(--line);color:var(--accent)}.linkish{background:transparent;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit}.linkish:hover{text-decoration:underline}.pair-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;background:#0009}.pair-modal[hidden]{display:none}.pair-card{position:relative;width:100%;max-width:340px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;text-align:center}.pair-card h2{margin:0 0 4px;color:var(--accent);font-size:16px}.pair-room{margin:0 0 14px;color:var(--muted)}.pair-room b{color:var(--text)}.pair-close{position:absolute;top:10px;right:10px;background:transparent;border:0;color:var(--muted)}.pair-qr{width:240px;height:240px;max-width:100%;background:#fff;border-radius:8px;image-rendering:pixelated}.pair-hint{margin:12px 0 6px;color:var(--muted);font-size:12px}.pair-link-row{display:flex;gap:6px}.pair-link-row input{flex:1;min-width:0;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit}.pair-note{margin:12px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
