.ss-surface{position:relative;width:100%;height:100%;outline:none;touch-action:none;background:#000}.ss-surface.view-only{cursor:default}.ss-video{width:100%;height:100%;object-fit:contain;display:block;background:#000}.mt-root{display:flex;flex-direction:column;height:100%;background:#0b0d12;color:#e6e8ee;font:13px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-user-select:none;user-select:none}.mt-top{display:flex;align-items:center;gap:14px;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.08)}.mt-brand{font-weight:700}.mt-code{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:inherit;border-radius:8px;padding:5px 10px;font:inherit;font-weight:600;letter-spacing:1px;cursor:pointer}.mt-spacer{flex:1}.mt-muted{color:#9aa3b2;font-weight:400}.mt-muted.small{font-size:12px;padding:8px 0}.mt-body{flex:1;min-height:0;display:flex}.mt-grid{flex:1;display:grid;gap:10px;padding:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-content:center}.mt-grid.n1{grid-template-columns:minmax(0,900px);justify-content:center}.mt-grid.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.mt-tile{position:relative;aspect-ratio:16 / 9;background:#151a24;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.mt-tile.pending{opacity:.6}.mt-tile video{width:100%;height:100%;object-fit:cover;display:block}.mt-tile.small{width:180px;flex:none}.mt-avatar{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:40px;font-weight:700;color:#cfe0ff;background:radial-gradient(circle at 50% 40%,rgba(79,140,255,.35),transparent 60%)}.mt-tile.small .mt-avatar{font-size:24px}.mt-tile-name{position:absolute;left:8px;bottom:8px;background:#0000008c;padding:3px 8px;border-radius:6px;font-size:12px}.mt-stage-wrap{flex:1;min-width:0;display:flex;flex-direction:column}.mt-stage{flex:1;min-height:0;position:relative;margin:12px 12px 6px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.mt-stage-label{position:absolute;top:8px;left:8px;background:#0009;padding:4px 10px;border-radius:8px;font-size:12px;pointer-events:none}.mt-strip{display:flex;gap:8px;padding:6px 12px 12px;overflow-x:auto}.mt-panel{width:300px;border-left:1px solid rgba(255,255,255,.08);background:#10131a;display:flex;flex-direction:column;-webkit-user-select:text;user-select:text}.mt-panel-tabs{display:flex;gap:4px;padding:8px;border-bottom:1px solid rgba(255,255,255,.08)}.mt-panel-tabs button,.mt-chat-input button{background:transparent;border:none;color:#9aa3b2;padding:6px 10px;border-radius:8px;cursor:pointer;font:inherit}.mt-panel-tabs button.on{background:#4f8cff2e;color:#cfe0ff}.mt-people{padding:10px 12px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.mt-person{display:flex;flex-direction:column;gap:4px;padding:8px 10px;background:#ffffff0a;border-radius:8px}.mt-grant{display:flex;align-items:center;gap:6px;font-size:12px;color:#cfe0ff}.mt-chat-log{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.mt-msg{max-width:85%;padding:6px 10px;border-radius:10px;background:#ffffff14;align-self:flex-start;word-break:break-word}.mt-msg.mine{align-self:flex-end;background:#4f8cff47}.mt-msg-from{font-size:11px;color:#9aa3b2}.mt-chat-input{display:flex;gap:6px;padding:10px;border-top:1px solid rgba(255,255,255,.08)}.mt-chat-input input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:inherit;border-radius:8px;padding:7px 10px;font:inherit;outline:none}.mt-bar{display:flex;justify-content:center;gap:10px;padding:10px;border-top:1px solid rgba(255,255,255,.08)}.mt-ctl{position:relative;background:#ffffff14;border:1px solid transparent;color:inherit;border-radius:999px;padding:9px 16px;font:inherit;font-size:14px;cursor:pointer}.mt-ctl:hover{background:#ffffff29}.mt-ctl.off{background:#ff4d4f40}.mt-ctl.on{border-color:#4f8cff;background:#4f8cff33}.mt-ctl.leave{background:#ff4d4f;color:#fff;font-weight:600}.mt-badge{position:absolute;top:-4px;right:-4px;background:#ff4d4f;color:#fff;border-radius:10px;font-size:10px;padding:0 5px}.mt-center{flex:1;display:grid;place-items:center}.mt-card{width:340px;padding:26px;background:#151a24;border:1px solid rgba(255,255,255,.08);border-radius:16px;text-align:center;display:flex;flex-direction:column;gap:12px}.mt-card-title{font-size:18px;font-weight:700}.mt-btn{border:none;border-radius:9px;padding:9px 16px;font:inherit;font-weight:600;cursor:pointer;background:#ffffff14;color:inherit}.mt-btn.primary{background:#4f8cff;color:#fff}.mt-toast{position:fixed;bottom:70px;left:50%;transform:translate(-50%);background:#14171ff2;border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:10px}.vw-root{position:relative;width:100%;height:100%;background:#0b0d12;color:#e6e8ee;font:13px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden;-webkit-user-select:none;user-select:none}.vw-surface{position:absolute;top:0;right:0;bottom:0;left:0}.vw-toolbar-zone{position:absolute;top:0;left:0;right:0;height:56px;display:flex;justify-content:center;align-items:flex-start;pointer-events:none;z-index:20}.vw-toolbar{pointer-events:auto;display:flex;align-items:center;gap:6px;margin-top:-44px;padding:6px 10px;background:#14171feb;border:1px solid rgba(255,255,255,.08);border-top:none;border-radius:0 0 12px 12px;box-shadow:0 8px 30px #00000073;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:margin-top .18s ease}.vw-toolbar-zone:hover .vw-toolbar,.vw-toolbar-zone.pinned .vw-toolbar{margin-top:0}.vw-toolbar button,.vw-toolbar select{background:#ffffff0f;color:inherit;border:1px solid transparent;border-radius:8px;padding:5px 9px;font:inherit;cursor:pointer;position:relative}.vw-toolbar button:hover:not(:disabled){background:#ffffff24}.vw-toolbar button.on{border-color:#4f8cff;background:#4f8cff2e}.vw-toolbar button:disabled{opacity:.4;cursor:default}.vw-toolbar button.danger{background:#ff4d4f2e;color:#ff8a8c}.vw-toolbar button.danger:hover{background:#ff4d4f59}.vw-peer{display:flex;align-items:center;gap:8px;padding:0 6px;font-weight:600;white-space:nowrap}.vw-muted{color:#9aa3b2;font-weight:400}.vw-dot{width:8px;height:8px;border-radius:50%;background:#6b7280}.vw-dot.ok{background:#3ddc84;box-shadow:0 0 8px #3ddc84}.vw-dot.warn{background:#ffb020}.vw-badge{position:absolute;top:-6px;right:-6px;background:#ff4d4f;color:#fff;border-radius:10px;font-size:10px;padding:0 5px}.vw-stats{position:absolute;left:10px;bottom:10px;padding:6px 10px;background:#0009;border-radius:8px;font-family:ui-monospace,Consolas,monospace;font-size:12px;z-index:15}.vw-chat{position:absolute;top:0;right:0;bottom:0;width:300px;background:#101219f5;border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;z-index:18;-webkit-user-select:text;user-select:text}.vw-chat-head{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.08)}.vw-chat-head button,.vw-chat-input button,.vw-pw button,.vw-secondary{background:#ffffff14;color:inherit;border:none;border-radius:8px;padding:6px 10px;cursor:pointer;font:inherit}.vw-chat-log{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.vw-msg{max-width:85%;padding:6px 10px;border-radius:10px;background:#ffffff14;align-self:flex-start;word-break:break-word}.vw-msg.mine{align-self:flex-end;background:#4f8cff47}.vw-msg-from{font-size:11px;color:#9aa3b2;margin-bottom:2px}.vw-chat-input{display:flex;gap:6px;padding:10px;border-top:1px solid rgba(255,255,255,.08)}.vw-chat-input input,.vw-pw input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:inherit;border-radius:8px;padding:7px 10px;font:inherit;outline:none}.vw-chat-input input:focus,.vw-pw input:focus{border-color:#4f8cff}.vw-transfers{position:absolute;right:10px;bottom:10px;width:280px;display:flex;flex-direction:column;gap:6px;z-index:16}.vw-transfer{background:#101219f2;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:8px 10px}.vw-transfer.failed{border-color:#ff4d4f80}.vw-transfer-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vw-bar{height:4px;background:#ffffff1a;border-radius:2px;margin:6px 0 4px;overflow:hidden}.vw-bar>div{height:100%;background:#4f8cff;transition:width .1s linear}.vw-transfer.done .vw-bar>div{background:#3ddc84}.vw-banner{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#ffb02026;border:1px solid rgba(255,176,32,.5);color:#ffd27a;padding:6px 14px;border-radius:999px;z-index:25}.vw-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:radial-gradient(ellipse at top,#161a24,#0b0d12 70%);z-index:30}.vw-card{width:360px;padding:28px;background:#14171ff2;border:1px solid rgba(255,255,255,.08);border-radius:16px;text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center}.vw-card-title{font-size:26px;font-weight:700;letter-spacing:2px;font-variant-numeric:tabular-nums}.vw-card-text{color:#b8c0cf}.vw-pw{display:flex;flex-direction:column;gap:8px;width:100%}.vw-pw button{background:#4f8cff;color:#fff}.vw-error{color:#ff8a8c}.vw-spinner{width:26px;height:26px;border:3px solid rgba(255,255,255,.12);border-top-color:#4f8cff;border-radius:50%;animation:vw-spin .9s linear infinite}@keyframes vw-spin{to{transform:rotate(360deg)}}.vw-toast{position:absolute;bottom:24px;left:50%;transform:translate(-50%);background:#14171ff2;border:1px solid rgba(255,255,255,.1);padding:8px 14px;border-radius:10px;z-index:40}:root{color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:#0f1219;color:#e6e8ee;font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.viewer-shell{height:100vh;width:100vw}.landing{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#161a24,#0f1219 70%)}.panel{width:min(440px,100%);background:#151a24;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:18px;box-shadow:0 20px 60px #0006}.brand{display:flex;align-items:center;gap:12px}.logo{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,#4f8cff,#7c5cff);display:grid;place-items:center;font-weight:800;font-size:22px;color:#fff}.brand-name{font-weight:700;font-size:18px}.status{font-size:12px;color:#9aa3b2;display:flex;align-items:center;gap:6px}.status .dot{width:8px;height:8px;border-radius:50%;background:#6b7280}.status.ok .dot{background:#3ddc84;box-shadow:0 0 8px #3ddc84}form{display:flex;flex-direction:column;gap:6px}form label{font-size:12px;color:#9aa3b2;margin-top:8px}input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#1b2130;color:inherit;font:inherit;outline:none}input:focus{border-color:#4f8cff}.id-input{font-size:24px;letter-spacing:3px;font-variant-numeric:tabular-nums}button.primary{margin-top:14px;padding:11px;border-radius:10px;border:none;background:#4f8cff;color:#fff;font:inherit;font-weight:600;cursor:pointer}button.primary:disabled{opacity:.45;cursor:default}.recents{display:flex;flex-direction:column;gap:6px}.recent{display:flex;justify-content:space-between;background:#1b2130;border:1px solid rgba(255,255,255,.08);color:inherit;border-radius:9px;padding:8px 12px;cursor:pointer;font:inherit;font-variant-numeric:tabular-nums}.recent:hover{border-color:#4f8cff}.muted{color:#9aa3b2;font-size:12px}.foot{text-align:center}.tabs{display:flex;gap:4px;background:#1b2130;padding:4px;border-radius:10px}.tabs button{flex:1;background:transparent;border:none;color:#9aa3b2;padding:8px;border-radius:8px;font:inherit;font-weight:600;cursor:pointer}.tabs button.on{background:#151a24;color:#e6e8ee}.panel>label{font-size:12px;color:#9aa3b2;margin-bottom:-10px}.id-input.code{letter-spacing:2px;font-size:20px;text-transform:lowercase}button.primary.secondary{background:#4f8cff33;color:#cfe0ff}.my-id{background:#1b2130;border:1px solid rgba(79,140,255,.35);border-radius:12px;padding:10px 14px;display:flex;flex-direction:column;gap:6px}.my-id-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.my-id-num{font-size:26px;font-weight:800;letter-spacing:3px;font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text}.copy,button.ghost{background:#ffffff14;color:#e6e8ee;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:7px 12px;font:inherit;font-weight:600;cursor:pointer}button.primary.danger{background:#ff4d4f40;color:#ff8a8c}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;z-index:50}.modal{width:min(420px,92vw);background:#151a24;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #00000080}.modal-title{font-weight:700;font-size:16px}.modal-text{line-height:1.5}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-actions .primary{margin-top:0;padding:9px 16px}.small{font-size:12px;margin-top:6px}.chat-log{min-height:60px;max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;-webkit-user-select:text;user-select:text}.chat-msg{background:#ffffff0f;border-radius:8px;padding:6px 10px;align-self:flex-start;max-width:90%}.chat-msg.mine{align-self:flex-end;background:#4f8cff40}.chat-row{display:flex;flex-direction:row;gap:8px}.chat-row input{flex:1}
