:root{--bg:#0a0c12;--bg2:#10141d;--panel:#151a24;--panel2:#1b2130;--stroke:#262d3d;--stroke2:#333c50;--text:#eef1f6;--muted:#9aa6b8;--muted2:#6b7688;--accent:#6d5efc;--accent2:#8b5cf6;--danger:#ef4444;--ok:#22c55e;--warn:#f59e0b;--radius:14px;--shadow:0 12px 40px #00000073;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px)}.room-silence-notice{z-index:70;color:#fde68a;pointer-events:none;background:#292014;border:1px solid #f59e0b66;border-radius:12px;gap:5px;width:min(440px,100vw - 28px);padding:12px 16px;display:grid;position:fixed;top:78px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0005}.room-silence-notice strong{font-size:14px}.room-silence-notice span{color:#d6cab0;font-size:12px;line-height:1.4}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}html{background:var(--bg);overscroll-behavior:none}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button,input,textarea,select{font-family:inherit}button{touch-action:manipulation}.btn-primary{cursor:pointer;background:linear-gradient(135deg, var(--accent), var(--accent2));color:#fff;border:0;border-radius:12px;padding:12px 16px;font-size:15px;font-weight:700;transition:transform .12s,filter .12s,box-shadow .12s;box-shadow:0 8px 24px #6d5efc59}.btn-primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-ghost{border:1px solid var(--stroke2);cursor:pointer;background:var(--panel2);color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.btn-ghost:hover{background:#222a3a;border-color:#3d4761}.btn-danger{color:#fca5a5;background:#ef444424;border-color:#ef444466}.btn-danger:hover{background:#ef44443d}.login-wrap{min-height:100dvh;padding:max(18px,var(--safe-top)) max(18px,var(--safe-right)) max(18px,var(--safe-bottom)) max(18px,var(--safe-left));place-items:center;display:grid;position:relative;overflow:auto}.login-aurora{filter:blur(30px);background:radial-gradient(40% 40% at 30% 30%,#6d5efc59,#0000 70%),radial-gradient(40% 40% at 70% 60%,#8b5cf64d,#0000 70%);animation:14s ease-in-out infinite alternate float;position:absolute;inset:-30%}@keyframes float{to{transform:translate(4%,-3%)scale(1.05)}}.login-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--stroke);width:min(360px,92vw);box-shadow:var(--shadow);background:#151a24d9;border-radius:20px;flex-direction:column;gap:14px;padding:34px;display:flex;position:relative}.login-logo{letter-spacing:-1px;font-size:30px;font-weight:900}.login-logo span{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0000;-webkit-background-clip:text;background-clip:text;margin-left:4px}.login-sub{color:var(--muted);margin:-6px 0 6px;font-size:14px}.field{flex-direction:column;gap:6px;display:flex}.field span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.field input,.modal input,.modal select{border:1px solid var(--stroke2);color:var(--text);background:#0d121b;border-radius:11px;outline:none;padding:12px;font-size:15px;transition:border-color .12s,box-shadow .12s}.field input:focus,.modal input:focus,.modal select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6d5efc33}.login-err{color:#fca5a5;background:#ef44441a;border-radius:10px;padding:8px 12px;font-size:13px}.remember-check{cursor:pointer;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;margin:1px 0;padding:9px 10px;transition:background .12s,border-color .12s;display:flex}.remember-check:hover{border-color:var(--stroke);background:#ffffff06}.remember-check input{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;flex:none;margin:0}.remember-check>span{flex-direction:column;gap:2px;min-width:0;display:flex}.remember-check strong{color:var(--text);font-size:12px}.remember-check small{color:var(--muted);font-size:10px;line-height:1.3}.room{background:var(--bg);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.persistent-music-host{z-index:48;width:min(430px,100vw);position:fixed;top:64px;bottom:77px;right:0}.persistent-music-host>.music-panel{width:100%;height:100%}.persistent-music-host-closed{pointer-events:none;width:0;height:0;overflow:hidden}.room.music-docked .room-main{padding-right:min(430px,100vw)}.background-music-unlock{left:50%;bottom:max(18px,var(--safe-bottom));z-index:110;color:#86efac;min-height:44px;box-shadow:var(--shadow);cursor:pointer;white-space:nowrap;background:#13251a;border:1px solid #1ed7606b;border-radius:999px;padding:10px 17px;font-weight:800;position:fixed;transform:translate(-50%)}.topbar{padding:max(10px,var(--safe-top)) max(16px,var(--safe-right)) 10px max(16px,var(--safe-left));background:var(--bg2);border-bottom:1px solid var(--stroke);flex:none;align-items:center;gap:12px;display:flex}.topbar .brand{letter-spacing:-.5px;font-size:18px;font-weight:900}.topbar .brand span{color:var(--accent2)}.topbar .spacer{flex:1}.conn-banner{color:#1a1204;background:var(--warn);border-radius:999px;align-items:center;gap:6px;margin-left:12px;padding:4px 12px;font-size:13px;font-weight:700;animation:1.4s infinite pulse;display:inline-flex}.top-actions{align-items:center;gap:8px;display:flex}.me-chip{background:var(--panel2);border:1px solid var(--stroke);border-radius:999px;align-items:center;gap:9px;padding:5px 12px 5px 5px;display:flex}.me-chip .name{font-size:14px;font-weight:600}.avatar{object-fit:cover;color:#fff;background:linear-gradient(135deg,#2a3345,#222a3a);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.role-badge{color:#08111a;letter-spacing:.02em;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800}.room-main{flex:1;min-height:0;display:flex;position:relative}.stage{flex:1;min-width:0;padding:14px;display:flex}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));align-content:center;gap:12px;width:100%;height:100%;display:grid}.focus-wrap{gap:12px;width:100%;height:100%;display:flex}.focus-main{flex:1;align-content:stretch;gap:12px;min-width:0;display:grid}.focus-main .tile{height:100%;min-height:0}.focus-side{flex-direction:column;gap:12px;width:220px;display:flex;overflow-y:auto}.focus-side .tile{height:130px;min-height:130px}.tile{border-radius:var(--radius);background:var(--panel);border:2px solid #0000;justify-content:center;align-items:center;width:100%;min-height:180px;transition:border-color .15s;display:flex;position:relative;overflow:hidden}.tile.speaking{border-color:var(--ok);box-shadow:0 0 0 3px #22c55e40}.tile.spotlighted{border-color:var(--warn);box-shadow:0 0 0 3px #f59e0b47}.icon-btn.gold{background:var(--warn);color:#1a1204}.tile video{object-fit:cover;width:100%;height:100%}.tile.screen{background:#000}.tile.screen video{object-fit:contain}.tile:fullscreen{background:#000;border:0;border-radius:0}.tile:fullscreen video{object-fit:contain}.tile-sound{z-index:3;opacity:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060a129e;border-radius:10px;align-items:center;gap:6px;padding:4px 8px;transition:opacity .12s;display:flex;position:absolute;bottom:10px;right:10px}.tile:hover .tile-sound,.tile-sound:focus-within{opacity:1}.tile:fullscreen .tile-sound{opacity:1}.tile-sound input[type=range]{width:90px;accent-color:var(--accent);cursor:pointer}.focus-side .tile-sound input[type=range]{width:56px}.tile .tile-avatar{flex-direction:column;align-items:center;gap:10px;display:flex}.tile-tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:2;background:#060a129e;border-radius:10px;align-items:center;gap:7px;max-width:calc(100% - 20px);padding:4px 9px;font-size:13px;display:flex;position:absolute;bottom:10px;left:10px}.tile-tag .n{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.tile-mic{border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.tile-mic.muted{background:#ef4444e6}.tile-mic.live{background:#22c55ee6}.tile-actions{z-index:5;opacity:0;gap:6px;transition:opacity .12s;display:flex;position:absolute;top:10px;right:10px}.tile:hover .tile-actions,.tile-actions:focus-within{opacity:1}.tile-action-button{color:#e7ebf2;cursor:pointer;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#080c14d1;border:1px solid #94a3b838;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:54px;height:46px;padding:5px 8px 4px;display:flex}.tile-action-button>span{letter-spacing:1px;font-size:15px;font-weight:800;line-height:17px}.tile-action-button>small{color:#9aa5b7;font-size:8px;font-weight:700}.tile-action-button:hover,.tile-action-button.on{background:#4c3a98e0;border-color:#8b5cf69e}.tile-action-button.on>small{color:#ddd6fe}.participant-manager-overlay{z-index:120;padding:max(18px,var(--safe-top)) max(18px,var(--safe-right)) max(18px,var(--safe-bottom)) max(18px,var(--safe-left));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#03060cad;justify-content:center;align-items:center;animation:.14s ease-out managerFadeIn;display:flex;position:fixed;inset:0}.participant-manager{width:min(370px,100%);max-height:min(620px,100dvh - 36px);color:var(--text);background:linear-gradient(#171d29,#111620);border:1px solid #343d50;border-radius:18px;padding:14px;animation:.18s cubic-bezier(.2,.8,.25,1) managerPanelIn;overflow-y:auto;box-shadow:0 24px 80px #000000ad}.participant-manager-head{border-bottom:1px solid var(--stroke);align-items:center;gap:9px;padding:2px 2px 11px;display:flex}.participant-manager-head>div:nth-child(2){flex:1;min-width:0}.participant-manager-head strong,.participant-manager-head small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.participant-manager-head strong{font-size:13px}.participant-manager-head small{color:var(--muted);margin-top:3px;font-size:9px}.participant-manager-close{color:#aab3c2;cursor:pointer;background:#222a38;border:0;border-radius:9px;width:28px;height:28px;font-size:18px}.participant-manager-actions{grid-template-columns:repeat(3,1fr);gap:7px;padding:11px 0;display:grid}.participant-manager-actions button{border:1px solid var(--stroke);min-width:0;min-height:68px;color:var(--text);cursor:pointer;background:#1a2130;border-radius:11px;flex-direction:column;align-items:center;gap:2px;padding:8px 5px;display:flex}.participant-manager-actions button:hover,.participant-manager-actions button.selected{background:#272248;border-color:#6758db}.participant-manager-actions button>span{font-size:17px}.participant-manager-actions button>b{font-size:10px}.participant-manager-actions button>small{color:var(--muted2);white-space:nowrap;font-size:8px}.participant-move{border:1px solid var(--stroke);background:#121823;border-radius:11px;padding:10px}.participant-move>label{color:#aeb7c5;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;font-size:9px;font-weight:700;display:block}.participant-move>div{gap:6px;display:flex}.participant-move select{border:1px solid var(--stroke2);min-width:0;height:34px;color:var(--text);background:#1b2230;border-radius:8px;flex:1;padding:0 8px;font-size:10px}.participant-move button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;height:34px;padding:0 11px;font-size:10px;font-weight:800}.participant-manager button:disabled{opacity:.5;cursor:wait}.participant-manager-message{color:#c4b5fd;margin:8px 2px 0;font-size:9px}.participant-remove{color:#fda4af;text-align:left;cursor:pointer;background:#ef444414;border:1px solid #ef444440;border-radius:10px;align-items:center;gap:9px;width:100%;margin-top:9px;padding:9px 10px;display:flex}.participant-remove>span:first-child{font-size:18px}.participant-remove b,.participant-remove small{display:block}.participant-remove b{font-size:10px}.participant-remove small{color:#b5848b;margin-top:2px;font-size:8px}@keyframes managerFadeIn{0%{opacity:0}}@keyframes managerPanelIn{0%{opacity:0;transform:translateY(10px)scale(.98)}}.icon-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060a12b3;border:0;border-radius:10px;place-items:center;width:34px;height:34px;font-size:15px;transition:background .12s;display:grid}.icon-btn:hover{background:#060a12eb}.icon-btn.danger:hover{background:#ef4444d9}.icon-btn.on{background:var(--accent)}.icon-btn.poke:hover{color:#1a1204;background:#f59e0be0}.icon-btn.poke.sent{background:var(--ok);color:#07130b}.icon-btn:disabled{cursor:wait;opacity:.62}.controls{padding:10px max(12px,var(--safe-right)) max(8px,var(--safe-bottom)) max(12px,var(--safe-left));border-top:1px solid var(--stroke);background:linear-gradient(#111621fa,#0b0f17fc);flex:none;justify-content:center;align-items:flex-start;gap:9px;display:flex;position:relative;box-shadow:0 -10px 28px #00000029}.ctrl{flex-direction:column;align-items:center;display:flex;position:relative}.ctrl-btn{border:1px solid var(--stroke2);width:50px;height:48px;color:var(--text);cursor:pointer;background:linear-gradient(#1b2230,#171d29);border-radius:14px;place-items:center;font-size:19px;transition:background .12s,border-color .12s,transform .1s,box-shadow .12s;display:grid;position:relative;overflow:hidden}.ctrl-btn:hover{background:#242c3d;transform:translateY(-1px)}.ctrl-btn.active{background:linear-gradient(135deg,var(--accent),var(--accent2));border-color:#0000;box-shadow:0 6px 18px #6d5efc66}.ctrl-btn.danger{color:#fca5a5;background:#ef444429;border-color:#ef444466}.ctrl-btn.danger:hover{background:var(--danger);color:#fff}.ctrl-btn.warn{border-color:var(--warn);animation:1s infinite pulse}.ctrl-label{color:#8993a5;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:66px;margin-top:5px;font-size:9px;font-weight:650;line-height:1.1;display:block;overflow:hidden}.ctrl-label.danger-text{color:#f08b93}@keyframes pulse{50%{box-shadow:0 0 0 5px #f59e0b40}}.ctrl-split{background:var(--stroke);width:1px;height:42px;margin:3px 4px 0}.badge-count{background:var(--danger);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:800;display:grid;position:absolute;top:-4px;right:-4px}.mic-meter{background:#ffffff26;border-radius:3px;height:3px;position:absolute;bottom:6px;left:6px;right:6px;overflow:hidden}.mic-meter>i{background:var(--ok);width:0%;height:100%;transition:width 60ms linear;display:block}.mic-meter.muted>i{background:var(--warn)}.muted-warn{background:var(--warn);color:#1a1204;box-shadow:var(--shadow);z-index:20;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;font-weight:800;animation:.2s rise;display:flex;position:absolute;bottom:74px;left:50%;transform:translate(-50%)}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}}.chat{border-left:1px solid var(--stroke);background:linear-gradient(180deg,#111621 0%,var(--bg2) 100%);flex-direction:column;width:390px;max-width:42vw;animation:.18s slideIn;display:flex;box-shadow:-16px 0 36px #0000002e}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}}.chat-head{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:10px;min-height:66px;padding:11px 12px 11px 16px;display:flex}.chat-title-wrap{min-width:0}.chat-title{letter-spacing:-.1px;font-size:15px;font-weight:800}.chat-day{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;overflow:hidden}.chat-head-actions{align-items:center;gap:6px;display:flex}.chat-clear{height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:6px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.chat-clear:hover:not(:disabled){color:#fca5a5;background:#ef44441c;border-color:#ef444433}.chat-clear:disabled{opacity:.35;cursor:default}.chat-body{scroll-behavior:smooth;flex-direction:column;flex:1;gap:15px;padding:12px 14px 20px;display:flex;overflow-y:auto}.chat-date-separator{color:var(--muted2);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:9px;font-size:10px;font-weight:800;display:flex}.chat-date-separator:before,.chat-date-separator:after{content:"";background:var(--stroke);flex:1;height:1px}.chat-date-separator span{white-space:nowrap}.chat-empty{color:var(--muted);text-align:center;flex-direction:column;align-items:center;gap:6px;margin:auto;padding:24px;font-size:13px;display:flex}.chat-empty strong{color:var(--text);font-size:15px}.chat-empty-icon{background:linear-gradient(135deg,#6d5efc33,#8b5cf614);border:1px solid #8b5cf640;border-radius:16px;place-items:center;width:52px;height:52px;margin-bottom:5px;font-size:23px;display:grid}.chat-loading{color:var(--muted);align-items:center;gap:8px;margin:auto;font-size:13px;display:flex}.chat-loading-dot{background:var(--accent2);border-radius:50%;width:8px;height:8px;animation:1s infinite pulse}.chat-msg{align-items:flex-start;gap:9px;max-width:100%;display:flex}.chat-msg.mine{flex-direction:row-reverse}.chat-msg-content{flex-direction:column;gap:4px;min-width:0;max-width:calc(100% - 39px);display:flex}.chat-msg.mine .chat-msg-content{align-items:flex-end}.chat-msg-meta{min-height:17px;color:var(--muted);align-items:center;gap:6px;font-size:10px;display:flex}.chat-msg.mine .chat-msg-meta{flex-direction:row-reverse}.chat-author{text-overflow:ellipsis;white-space:nowrap;color:#dbe2ed;max-width:120px;font-size:11px;font-weight:750;overflow:hidden}.chat-role{color:var(--role-color);background:color-mix(in srgb,var(--role-color) 14%,transparent);border:1px solid color-mix(in srgb,var(--role-color) 26%,transparent);border-radius:999px;padding:2px 6px;font-size:9px;font-weight:800}.chat-msg-meta time{white-space:nowrap}.chat-bubble{border:1px solid var(--stroke);background:var(--panel2);border-radius:5px 13px 13px;align-items:flex-start;gap:6px;max-width:100%;padding:9px 11px;display:flex;position:relative;box-shadow:0 3px 10px #0000001f}.chat-msg.mine .chat-bubble{background:linear-gradient(135deg,#6d5efceb,#7c4edceb);border-color:#8b5cf66b;border-radius:13px 5px 13px 13px}.chat-text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.42}.chat-delete{color:#ffffff8c;cursor:pointer;opacity:0;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;margin:-5px -6px -4px 0;transition:opacity .12s,background .12s,color .12s;display:grid}.chat-bubble:hover .chat-delete,.chat-delete:focus-visible{opacity:1}.chat-delete:hover{color:#fff;background:#ef4444b8}.chat-delete:disabled{cursor:wait}.chat-error{color:#fca5a5;background:#ef44441c;border-radius:9px;margin:0 12px 9px;padding:8px 10px;font-size:12px}.chat-input{border-top:1px solid var(--stroke);background:#0d1119b8;grid-template-columns:38px minmax(0,1fr) 42px;gap:7px;padding:11px 12px 9px;display:grid}.chat-message-payload{flex-direction:column;gap:8px;min-width:0;display:flex}.chat-image-wrap{width:min(230px,100%)}.chat-image{width:230px;max-width:100%;min-height:70px;max-height:290px;color:var(--muted);cursor:zoom-in;background:#0b1019;border:1px solid #ffffff1a;border-radius:9px;place-items:center;padding:0;font-size:12px;display:grid;overflow:hidden}.chat-image img{object-fit:contain;width:100%;height:100%;max-height:290px;display:block}.chat-image-retry{border:1px dashed var(--stroke2);color:inherit;cursor:pointer;font:inherit;background:0 0;border-radius:9px;padding:18px 12px;font-size:12px}.chat-attach{border:1px solid var(--stroke2);color:#c4b5fd;cursor:pointer;background:#8b5cf614;border-radius:12px;place-items:center;width:38px;height:42px;padding:0;display:grid}.chat-attach:hover:not(:disabled){border-color:var(--accent2);background:#8b5cf633}.chat-attach:disabled{opacity:.4;cursor:wait}.chat-attachment-preview{background:#8b5cf614;border:1px solid #8b5cf659;border-radius:12px;grid-column:1/-1;align-items:center;gap:10px;padding:9px;display:flex}.chat-attachment-preview img{object-fit:contain;background:#0b1019;border-radius:7px;width:58px;height:58px}.chat-attachment-preview>span{flex:1;gap:4px;min-width:0;display:grid}.chat-attachment-preview strong{font-size:12px}.chat-attachment-preview small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.chat-attachment-preview button{width:32px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none}.chat-image-dialog{border:1px solid var(--stroke2);color:#fff;width:min(1100px,96vw);max-width:96vw;max-height:94dvh;box-shadow:var(--shadow);background:#10141d;border-radius:16px;margin:auto;padding:48px 14px 14px;position:fixed;inset:0}.chat-image-dialog::backdrop{background:#000000d9}.chat-image-dialog>img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:72dvh;margin:auto;display:block}.chat-image-dialog p{text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;font-size:13px}.chat-image-close{border:1px solid var(--stroke2);background:var(--panel2);color:#fff;cursor:pointer;border-radius:10px;width:36px;height:36px;position:absolute;top:7px;right:9px}.chat-input textarea{resize:none;border:1px solid var(--stroke2);width:100%;min-height:42px;max-height:112px;color:var(--text);font:inherit;background:#0d121b;border-radius:12px;outline:none;padding:10px 12px;font-size:13px;line-height:1.45;overflow-y:auto}.chat-input textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6d5efc24}.chat-input textarea::placeholder{color:var(--muted2)}.chat-send{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;cursor:pointer;border:0;border-radius:12px;place-items:center;width:42px;height:42px;transition:transform .12s,filter .12s;display:grid;box-shadow:0 6px 18px #6d5efc42}.chat-send:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.chat-send:disabled{opacity:.35;cursor:default;box-shadow:none}.chat-input-hint{color:var(--muted2);text-align:center;grid-column:1/-1;font-size:9px}.chat-tabs{border-bottom:1px solid var(--stroke);background:#0d111994;grid-template-columns:1fr 1fr;gap:6px;padding:7px 10px 0;display:grid}.chat-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:9px 10px;font-size:12px;font-weight:800}.chat-tabs button:hover{color:var(--text)}.chat-tabs button.active{border-bottom-color:var(--accent2);color:#fff}.chat-tab-badge{color:#fff;background:#ef4444;border-radius:999px;place-items:center;min-width:17px;height:17px;margin-left:6px;padding:0 5px;font-size:9px;line-height:1;display:inline-grid}.chat-private-head{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.chat-private-head .chat-title-wrap{min-width:0}.chat-private-head .chat-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-back,.chat-add{border:1px solid var(--stroke);width:34px;height:34px;color:var(--muted);cursor:pointer;background:#ffffff06;border-radius:10px;flex:none;place-items:center;display:grid}.chat-back:hover,.chat-add:hover,.chat-add.active{color:#fff;background:#8b5cf61f;border-color:#8b5cf66b}.chat-private-start{width:21px;height:21px;color:var(--muted2);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font-size:12px;display:grid}.chat-private-start:hover{color:#c4b5fd;background:#8b5cf629}.chat-private-list{flex-direction:column;flex:1;gap:7px;min-height:0;padding:13px 10px 18px;display:flex;overflow-y:auto}.chat-private-intro{background:linear-gradient(135deg,#6d5efc24,#8b5cf60d);border:1px solid #8b5cf640;border-radius:13px;flex-direction:column;gap:4px;margin:1px 4px 9px;padding:12px 13px;display:flex}.chat-private-intro strong{font-size:13px}.chat-private-intro span{color:var(--muted);font-size:11px;line-height:1.4}.chat-list-label{color:var(--muted2);letter-spacing:.07em;text-transform:uppercase;margin:9px 6px 2px;font-size:9px;font-weight:850}.chat-thread-row,.chat-person-row{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:9px;padding:9px;display:flex}.chat-thread-row:hover,.chat-person-row:hover{border-color:var(--stroke);background:#ffffff09}.chat-thread-row:disabled,.chat-person-row:disabled{opacity:.5;cursor:wait}.chat-thread-copy,.chat-person-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.chat-thread-copy strong,.chat-person-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.chat-thread-copy small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px;overflow:hidden}.chat-thread-side{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.chat-thread-side b{color:#fbbf24;background:#f59e0b21;border-radius:5px;padding:2px 5px;font-size:8px}.chat-thread-side time{color:var(--muted2);font-size:9px}.chat-person-row>b{color:#a78bfa;font-size:10px}.chat-person-row small{color:var(--muted);align-items:center;gap:5px;font-size:10px;display:flex}.chat-online-dot{background:var(--ok);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #22c55e1f;flex:none!important}.chat-private-empty{border:1px dashed var(--stroke);color:var(--muted);text-align:center;border-radius:12px;margin:7px 5px;padding:20px;font-size:12px}.chat-private-members{border:1px solid var(--stroke);color:var(--muted);background:#ffffff06;border-radius:11px;align-items:center;gap:0;padding:7px 9px;font-size:10px;display:flex}.chat-private-members>span:not(:last-child){margin-right:-7px}.chat-private-members>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-left:13px;overflow:hidden}.chat-add-panel{border-bottom:1px solid var(--stroke);background:#0d121b;flex-direction:column;gap:5px;max-height:210px;padding:10px;display:flex;overflow-y:auto}.chat-add-panel>strong{margin:2px 4px 5px;font-size:11px}.chat-add-panel>span{color:var(--muted);padding:10px 5px;font-size:11px}.chat-add-panel button{color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:7px;display:flex}.chat-add-panel button:hover{border-color:var(--stroke);background:#ffffff0a}.chat-add-panel button>span:nth-of-type(2){text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;min-width:0;font-size:11px;font-weight:750;overflow:hidden}.chat-add-panel button>b{color:#a78bfa;font-size:9px}.chat-observer-note{color:#d6c49f;text-align:center;background:#f59e0b13;border-top:1px solid #f59e0b33;margin:0;padding:11px 13px;font-size:10px;line-height:1.45}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#04060b99;place-items:center;animation:.15s rise;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--stroke);width:min(560px,94vw);max-height:88vh;box-shadow:var(--shadow);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.modal-head{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-head h2{margin:0;font-size:18px}.modal-tabs{gap:6px;padding:12px 20px 0;display:flex}.modal-tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px 10px 0 0;padding:8px 14px;font-weight:600}.modal-tab.active{background:var(--panel2);color:var(--text)}.modal-body{flex-direction:column;gap:16px;padding:20px;display:flex;overflow-y:auto}.modal-body h3{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px;font-size:13px}.modal-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.modal-row .label{font-size:14px}.modal select{border-radius:10px;padding:10px}.stack{flex-direction:column;gap:10px;display:flex}.toast{border-radius:10px;padding:8px 12px;font-size:13px}.toast.ok{color:#86efac;background:#22c55e24}.toast.err{color:#fca5a5;background:#ef44441f}.switch{background:var(--stroke2);cursor:pointer;border-radius:999px;flex:none;width:44px;height:26px;transition:background .15s;position:relative}.switch.on{background:var(--accent)}.switch>i{background:#fff;border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px}.switch.on>i{left:21px}.team-item{background:var(--panel2);border:1px solid var(--stroke);border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.team-item .grow{flex:1;min-width:0}.team-item .grow .n{font-weight:600}.team-item .grow .u{color:var(--muted);font-size:12px}.lobby{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}.lobby-body{flex:1;justify-content:center;padding:28px 16px 48px;display:flex;overflow-y:auto}.lobby-col{flex-direction:column;gap:12px;width:min(920px,100%);display:flex}.lobby-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.lobby-head h1{letter-spacing:-.3px;margin:0;font-size:20px}.lobby-empty{color:var(--muted);flex-direction:column;align-items:center;gap:12px;padding:36px 0;font-size:14px;display:flex}.lobby-input{border:1px solid var(--stroke2);color:var(--text);background:#0d121b;border-radius:11px;outline:none;padding:12px;font-size:15px;transition:border-color .12s,box-shadow .12s}.lobby-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6d5efc33}.room-icon{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:18px;display:grid}.room-lock{font-size:12px}.btn-ghost.copied{border-color:var(--ok);color:#86efac}.room-list-item{align-items:flex-start;padding:12px}.room-list-item>.grow{padding-top:2px}.room-actions{flex:none;align-items:center;gap:8px;display:flex}.room-presence{flex-direction:column;align-items:flex-start;gap:7px;margin-top:9px;display:flex}.room-presence-state{color:var(--muted);align-items:center;gap:7px;margin-top:9px;font-size:12px;font-weight:650;display:inline-flex}.room-presence-state i{background:var(--muted2);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #6b76881f}.room-presence-state.occupied{color:#86efac;margin-top:0}.room-presence-state.occupied i{background:var(--ok);box-shadow:0 0 0 3px #22c55e29}.room-presence-state.loading i{background:var(--accent2);animation:1.1s infinite pulse}.room-presence-state.unavailable{color:#fca5a5}.room-presence-state.unavailable i{background:var(--danger)}.room-presence-people{flex-wrap:wrap;gap:6px;display:flex}.room-presence-person{border:1px solid var(--stroke);background:#0d121bb8;border-radius:999px;align-items:center;gap:6px;min-width:0;padding:4px 8px 4px 4px;display:inline-flex}.presence-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;color:var(--text);font-size:11px;font-weight:700;overflow:hidden}.presence-role{font-size:9px;font-weight:800}.topbar .btn-back{flex:none;padding:7px 12px;font-size:13px}.room-title{background:var(--panel2);border:1px solid var(--stroke);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:32vw;padding:5px 12px;font-size:14px;font-weight:700;overflow:hidden}.install-app-wrap{position:relative}.install-app-btn{white-space:nowrap;height:38px}.install-ios-help{z-index:75;width:min(310px,100vw - 24px);box-shadow:var(--shadow);color:var(--muted);background:#171c29;border:1px solid #8b5cf661;border-radius:12px;padding:12px 38px 12px 13px;font-size:12px;line-height:1.45;position:absolute;top:calc(100% + 9px);right:0}.install-ios-help strong{color:var(--text)}.install-ios-help button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;position:absolute;top:7px;right:7px}.install-ios-help button:hover{color:#fff;background:#ffffff0f}.knock-stack{z-index:60;flex-direction:column;gap:10px;width:min(320px,100vw - 32px);display:flex;position:fixed;top:64px;right:16px}.knock-card{background:var(--panel);border:1px solid var(--stroke2);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;gap:10px;padding:12px 14px;animation:.18s rise;display:flex}.knock-info{align-items:center;gap:10px;display:flex}.knock-emoji{font-size:22px}.knock-card .n{word-break:break-word;font-size:14px;font-weight:700}.knock-card .s{color:var(--muted);font-size:12px}.knock-actions{gap:8px;display:flex}.knock-actions .btn-primary{flex:1;padding:8px 12px;font-size:13px}.knock-actions .btn-ghost{flex:1;justify-content:center;padding:8px 12px;font-size:13px}.poke-notice{z-index:90;background:linear-gradient(135deg,#221b0ef7,#171923f7);border:1px solid #f59e0b85;border-radius:16px;align-items:center;gap:11px;width:min(390px,100vw - 24px);padding:12px 12px 12px 14px;animation:.32s cubic-bezier(.2,.9,.3,1.15) pokeNoticeIn;display:flex;position:fixed;top:72px;left:50%;transform:translate(-50%);box-shadow:0 18px 48px #0000007a,0 0 0 4px #f59e0b14}.poke-notice-icon{transform-origin:70% 80%;background:#f59e0b2e;border-radius:13px;flex:none;place-items:center;width:43px;height:43px;font-size:24px;animation:.62s ease-in-out 2 pokeWave;display:grid}.poke-notice-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.poke-notice-copy strong{text-overflow:ellipsis;white-space:nowrap;color:#fef3c7;font-size:14px;overflow:hidden}.poke-notice-copy span{color:#c8bfa9;font-size:12px}.poke-notice-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.poke-notice-close:hover{color:#fff;background:#ffffff14}@keyframes pokeNoticeIn{0%{opacity:0;transform:translate(-50%,-18px)scale(.96)}}@keyframes pokeWave{25%{transform:rotate(16deg)}65%{transform:rotate(-12deg)}}.private-message-notice{z-index:89;background:linear-gradient(135deg,#1b1730fa,#131722fa);border:1px solid #8b5cf685;border-radius:16px;align-items:center;gap:10px;width:min(430px,100vw - 24px);padding:11px 10px 11px 12px;animation:.25s cubic-bezier(.2,.9,.3,1.1) privateNoticeIn;display:flex;position:fixed;top:142px;left:50%;transform:translate(-50%);box-shadow:0 18px 48px #0000007a,0 0 0 4px #8b5cf612}.private-message-notice-icon{color:#c4b5fd;background:#8b5cf62e;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.private-message-notice-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.private-message-notice-copy strong{text-overflow:ellipsis;white-space:nowrap;color:#ede9fe;font-size:13px;overflow:hidden}.private-message-notice-copy span{text-overflow:ellipsis;white-space:nowrap;color:#aaa4ba;font-size:11px;overflow:hidden}.private-message-open{color:#ddd6fe;cursor:pointer;background:#8b5cf624;border:1px solid #8b5cf661;border-radius:9px;height:31px;padding:0 10px;font-size:10px;font-weight:800}.private-message-open:hover{color:#fff;background:#8b5cf645}@keyframes privateNoticeIn{0%{opacity:0;transform:translate(-50%,-14px)scale(.97)}}.guest-status{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.guest-status h2{margin:0;font-size:18px}.guest-status p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.guest-emoji{font-size:34px}.spinner{border:3px solid var(--stroke2);border-top-color:var(--accent);border-radius:50%;flex:none;width:34px;height:34px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn-ghost.capturing{border-color:var(--accent);animation:1.2s infinite pulse;box-shadow:0 0 0 3px #6d5efc33}.keys{align-items:center;gap:4px;display:inline-flex}.key-plus{color:var(--muted2);font-size:12px}kbd{background:var(--panel2);border:1px solid var(--stroke2);color:var(--text);white-space:nowrap;border-bottom-width:2px;border-radius:7px;padding:3px 8px;font-family:inherit;font-size:12px;font-weight:700}.capture-status{z-index:45;color:#d1fae5;width:min(610px,100vw - 24px);box-shadow:var(--shadow);background:#12261e;border:1px solid #27734a;border-radius:12px;align-items:center;gap:16px;padding:12px 14px;font-size:13px;display:flex;position:fixed;bottom:94px;left:50%;transform:translate(-50%)}.capture-status>div{flex:1;gap:5px;min-width:0;display:grid}.capture-status span{font-size:12px;line-height:1.4}.capture-status button{flex:none}.capture-warning{color:#fde68a;background:#302817;border-color:#916d24}.capture-error-notice{flex-wrap:wrap}.capture-error-notice>div{flex-basis:230px}.capture-error-notice details{overflow-wrap:anywhere;font-size:11px}.capture-error-notice summary{cursor:pointer}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#2a3242;border-radius:8px}::-webkit-scrollbar-track{background:0 0}.tile .lk-participant-metadata,.tile .lk-focus-toggle-button{display:none}@media (width<=820px){.persistent-music-host{width:100%;height:100dvh;inset:0}.persistent-music-host-closed{width:0;height:0}.room.music-docked .room-main{padding-right:0}.stage{overscroll-behavior:contain;padding:8px;overflow:auto}.grid{grid-template-columns:1fr;grid-auto-rows:minmax(190px,min(38dvh,320px));align-content:start;gap:8px;height:auto;min-height:100%}.focus-wrap{flex-direction:column;gap:8px;min-height:0}.focus-main{grid-auto-rows:minmax(220px,1fr);gap:8px;min-height:0;overflow-y:auto;grid-template-columns:1fr!important}.focus-side{scroll-snap-type:x proximity;flex-direction:row;gap:8px;width:100%;height:112px;min-height:112px;overflow:auto hidden}.focus-side .tile{scroll-snap-align:start;width:160px;min-width:160px;height:104px;min-height:104px}.focus-side .tile-tag{max-width:calc(100% - 12px);padding:3px 6px;font-size:10px;bottom:6px;left:6px}.focus-side .role-badge{display:none}.chat{z-index:100;width:100%;max-width:none;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);border:0;animation:.18s mobileChatIn;position:fixed;inset:0}@keyframes mobileChatIn{0%{opacity:0;transform:translateY(16px)}}.chat-delete{opacity:.72}.room-list-item{flex-wrap:wrap}.room-list-item>.grow{min-width:calc(100% - 54px)}.room-actions{justify-content:flex-end;width:100%;padding-left:52px}.modal-overlay{padding:max(12px,var(--safe-top)) var(--safe-right) 0 var(--safe-left);align-items:end}.modal{max-height:min(92dvh,780px);padding-bottom:var(--safe-bottom);border-radius:20px 20px 0 0;width:100%!important}.modal-tabs{scrollbar-width:none;overflow-x:auto}.modal-tab{white-space:nowrap}}@media (width<=620px){.topbar{min-height:54px;padding-left:max(10px,var(--safe-left));padding-right:max(10px,var(--safe-right));gap:8px}.topbar .brand{font-size:16px}.topbar .me-chip{padding-right:5px}.topbar .me-chip .name,.topbar .me-chip .role-badge,.topbar .room-title{display:none}.topbar .btn-back{min-height:38px;padding:7px 10px}.top-actions{gap:6px}.install-app-btn{justify-content:center;width:40px;height:40px;padding:0;font-size:17px}.install-app-label{display:none}.controls{padding-top:8px;padding-left:max(10px,var(--safe-left));padding-right:max(10px,var(--safe-right));scrollbar-width:none;scroll-snap-type:x proximity;justify-content:flex-start;gap:8px;overflow:auto visible}.controls::-webkit-scrollbar{display:none}.ctrl{scroll-snap-align:center;flex:none}.ctrl-btn{border-radius:13px;width:46px;height:44px;font-size:18px}.ctrl-label{max-width:58px;font-size:8px}.ctrl-split{flex:none;margin:0 1px}.muted-warn{bottom:calc(70px + var(--safe-bottom));white-space:normal;text-align:center;width:max-content;max-width:calc(100vw - 20px)}.tile{border-width:1px;min-height:170px}.tile-tag{max-width:calc(100% - 14px);padding:4px 7px;font-size:11px;bottom:7px;left:7px}.tile-tag .role-badge{text-overflow:ellipsis;white-space:nowrap;max-width:92px;overflow:hidden}.tile-actions{gap:4px;max-width:calc(100% - 14px);top:7px;right:7px;overflow-x:auto}.tile-actions .icon-btn{flex:none;width:38px;height:38px}.tile-sound{opacity:1;bottom:48px;right:7px}.tile-sound input[type=range]{width:72px}.chat-head{min-height:60px;padding:10px 10px 10px 13px}.chat-clear span{display:none}.chat-clear{justify-content:center;width:36px;height:36px;padding:0}.chat-back,.chat-add,.chat-head .icon-btn{width:40px;height:40px}.chat-tabs button{min-height:44px}.chat-body{padding:10px 10px 18px}.chat-private-list{padding-left:7px;padding-right:7px}.chat-thread-row,.chat-person-row{min-height:54px}.chat-input{padding:9px max(10px,var(--safe-right)) max(9px,var(--safe-bottom)) max(10px,var(--safe-left));grid-template-columns:44px minmax(0,1fr) 46px}.chat-attach{width:44px;height:46px}.chat-input textarea{min-height:46px;font-size:16px}.chat-send{width:46px;height:46px}.chat-input-hint{display:none}.login-card{border-radius:18px;width:min(100%,420px);padding:26px 22px}.field input,.modal input,.modal select,.lobby-input{min-height:46px;font-size:16px}.btn-primary,.btn-ghost{min-height:44px}.lobby-body{padding:18px max(10px,var(--safe-right)) max(30px,var(--safe-bottom)) max(10px,var(--safe-left))}.lobby-head h1{font-size:18px}.room-list-item{padding:11px 9px}.room-actions{grid-template-columns:minmax(0,1fr) auto auto;gap:7px;padding-left:0;display:grid}.room-actions .btn-ghost{justify-content:center}.room-actions .btn-primary{grid-column:1/-1;width:100%}.presence-role{display:none}.room-presence-person{max-width:100%}.modal-head{padding:14px 15px}.modal-head h2{font-size:17px}.modal-tabs{padding:8px 10px 0}.modal-body{padding:15px}.modal-row{flex-wrap:wrap}.modal-row>input,.modal-row>select{min-width:100%}.team-item{flex-wrap:wrap}.team-item .grow{min-width:calc(100% - 58px)}.knock-stack{top:calc(58px + var(--safe-top));right:max(8px,var(--safe-right));width:calc(100vw - 24px)}.poke-notice{top:calc(62px + var(--safe-top));width:calc(100vw - 16px)}.private-message-notice{top:calc(132px + var(--safe-top));width:calc(100vw - 16px)}.private-message-notice-copy strong{font-size:12px}.private-message-open{min-width:48px}.capture-status{bottom:calc(72px + var(--safe-bottom));gap:8px;width:calc(100vw - 16px);padding:10px}.capture-status>div{flex-basis:180px}}@media (width<=390px){.topbar .brand{display:none}.topbar .btn-back{text-overflow:ellipsis;white-space:nowrap;max-width:88px;overflow:hidden}.me-chip{background:0 0;border-color:#0000}.grid{grid-auto-rows:minmax(175px,35dvh)}.chat-role,.private-message-notice-icon{display:none}.private-message-notice{gap:7px}.room-actions{grid-template-columns:1fr auto}.room-actions .btn-primary{grid-column:1/-1}}@media (width<=900px) and (orientation:landscape) and (height<=520px){.topbar{min-height:44px;padding-top:max(5px,var(--safe-top));padding-bottom:5px}.stage{padding:6px}.grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-auto-rows:minmax(135px,1fr)}.focus-wrap{flex-direction:row}.focus-main{grid-template-columns:repeat(2,minmax(0,1fr))!important}.focus-side{flex-direction:column;width:150px;height:100%;min-height:0;overflow:hidden auto}.focus-side .tile{width:100%;min-width:0;height:92px;min-height:92px}.controls{padding-top:5px;padding-bottom:max(5px,var(--safe-bottom))}.ctrl-btn{border-radius:11px;width:40px;height:38px;font-size:16px}.ctrl-label{display:none}.muted-warn{bottom:calc(58px + var(--safe-bottom))}}@media (hover:none){.tile-actions,.tile-sound{opacity:1}}.connection-bars{color:#34d399;flex-shrink:0;align-items:flex-end;gap:2px;height:18px;display:inline-flex}.connection-bars i{opacity:.35;background:#64748b;border-radius:1px;width:3px;display:block}.connection-bars i.filled{opacity:1;background:currentColor}.connection-bars.fair{color:#fbbf24}.connection-bars.poor{color:#f87171}.connection-bars.unknown{color:#94a3b8}.team-presence-summary{background:var(--panel2);border:1px solid var(--stroke);border-radius:12px;gap:6px;padding:12px 14px;display:grid}.team-presence-summary b{font-size:13px}.team-presence-summary small{color:var(--muted);font-size:12px;line-height:1.5}.team-location{color:var(--muted);overflow-wrap:anywhere;gap:6px;margin-top:5px;font-size:12px;line-height:1.5;display:flex}.team-location.online{color:#4adea4}.team-location>span:first-child{flex-shrink:0}@font-face{font-family:WorkspaceInter;src:url(/maquete-fonts/inter-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-display:swap}.workspace-app,.ws-dialog,.ws-requests{color:var(--text);font-family:WorkspaceInter,system-ui,sans-serif;font-size:13px}.workspace-app{background:var(--bg);min-height:100dvh;display:flex}.workspace-app *,.ws-dialog *{box-sizing:border-box}.ws-rail{background:var(--panel);border-right:1px solid var(--stroke);flex-direction:column;flex-shrink:0;align-items:center;gap:25px;width:64px;padding:16px 10px;display:flex}.ws-logo{background:linear-gradient(140deg,var(--accent),var(--accent2));color:#fff;border-radius:10px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:750;display:grid}.ws-rail-active{color:var(--accent);background:#292344;border-radius:9px;padding:10px;font-size:22px}.ws-rail-user{margin-top:auto}.ws-main{flex:1;min-width:0}.ws-header{border-bottom:1px solid var(--stroke);justify-content:space-between;align-items:center;gap:16px;height:82px;padding:16px 28px;display:flex}.ws-header h1{letter-spacing:-.5px;margin:0 0 5px;font:650 20px WorkspaceInter}.ws-header small{color:var(--muted2);font-size:11px}.ws-actions{align-items:center;gap:8px;display:flex}.ws-body{padding:24px 28px}.ws-top-controls{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;font-size:12px;display:flex}.ws-top-controls label{align-items:center;gap:10px;display:flex}.workspace-app input,.workspace-app select,.ws-dialog input,.ws-dialog select{font:inherit;background:var(--panel2);border:1px solid var(--stroke2);color:var(--text);border-radius:8px;padding:10px}.ws-primary,.ws-secondary{cursor:pointer;white-space:nowrap;border-radius:8px;padding:10px 15px;font:600 12px WorkspaceInter,system-ui}.ws-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.ws-primary:hover{background:#8b7dff}.ws-secondary{background:var(--panel2);border:1px solid var(--stroke2);color:var(--muted)}.ws-primary:disabled,.ws-secondary:disabled{opacity:.5;cursor:wait}.ws-featured{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px;display:grid}.ws-feature{border:1px solid var(--stroke);background:var(--panel);border-radius:12px;padding:24px}.ws-feature.ws-shared{background:#19182b;border-color:#393352}.ws-eyebrow{text-transform:uppercase;color:#b8a9ee;letter-spacing:1px;font-size:10px}.ws-feature h2{letter-spacing:-.5px;margin:18px 0;font:650 23px WorkspaceInter}.ws-presence{align-items:center;gap:16px;margin:22px 0;display:flex}.ws-presence>strong{color:var(--accent);font-size:38px;font-weight:600}.ws-presence span{color:var(--muted);font-size:12px}.ws-presence small{color:var(--muted2);margin-top:6px;font-size:11px;line-height:1.6;display:block}.ws-toolbar{gap:10px;margin:0 0 18px;display:flex}.ws-toolbar input{width:min(350px,100%)}.ws-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.ws-card{background:var(--panel);border:1px solid var(--stroke);border-radius:12px;padding:18px}.ws-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.ws-card-head h3{overflow-wrap:anywhere;margin:0;font:600 14px WorkspaceInter}.ws-card>p{color:var(--muted2);margin:10px 0 20px;font-size:11px}.ws-card-foot{border-top:1px dashed #252b32;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;display:flex}.ws-card-foot small{color:var(--muted);font-size:11px}.ws-card details{position:relative}.ws-card summary{cursor:pointer;color:var(--muted);list-style:none}.ws-card details[open]{background:var(--panel2);border-radius:8px;padding:8px}.ws-card details button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:7px;font:11px WorkspaceInter;display:block}.ws-overlay{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000a;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ws-dialog{background:var(--panel);border:1px solid var(--stroke2);border-radius:14px;width:min(460px,100%);max-height:90dvh;padding:28px;position:relative;overflow:auto;box-shadow:0 20px 80px #0009}.ws-dialog h2{margin:0 0 22px;font:650 22px WorkspaceInter}.ws-dialog p{color:var(--muted);font-size:12px;line-height:1.7}.ws-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:24px;position:absolute;top:10px;right:12px}.ws-field{color:var(--muted);gap:8px;margin:17px 0;font-size:12px;display:grid}.ws-check{color:var(--muted);align-items:center;gap:9px;margin:19px 0;font-size:12px;line-height:1.5;display:flex}.ws-check input{accent-color:var(--accent);flex-shrink:0;width:15px;height:15px}.ws-full{width:100%;margin-top:12px}.ws-muted{color:var(--muted2);font-size:10px}.ws-advanced{border-top:1px solid var(--stroke);border-bottom:1px solid var(--stroke);color:var(--muted);padding:15px 0;font-size:12px}.ws-advanced summary{cursor:pointer}.ws-error{background:#301a1d;border-radius:8px;padding:12px;font-size:12px;line-height:1.6;color:#fecaca!important}.ws-empty{color:var(--muted2);font-size:12px}.ws-request{border-top:1px solid var(--stroke);padding:18px 0}.ws-request small{color:var(--muted2);margin:8px 0 12px;display:block}.ws-count{background:var(--accent);color:#fff;border-radius:20px;margin-left:8px;padding:2px 6px}.ws-pulse{border-color:var(--accent);animation:1.8s ease-in-out infinite ws-pulse}.ws-floating{z-index:65;position:fixed;bottom:92px;right:20px}@keyframes ws-pulse{50%{box-shadow:0 0 0 4px #6d5efc30}}.workspace-app button:focus-visible,.workspace-app input:focus-visible,.workspace-app select:focus-visible,.ws-dialog button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=1000px){.ws-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.ws-rail{width:48px;padding:14px 6px}.ws-logo{width:30px;height:30px}.ws-header{flex-wrap:wrap;height:auto;min-height:80px;padding:14px}.ws-header small{font-size:10px}.ws-body{padding:16px 14px}.ws-top-controls,.ws-top-controls label{flex-wrap:wrap}.ws-featured,.ws-room-grid{grid-template-columns:1fr;gap:12px}.ws-feature{padding:18px}.ws-feature h2{font-size:20px}.ws-toolbar{flex-wrap:wrap}.ws-toolbar input,.ws-toolbar select{width:100%}.ws-dialog{padding:25px 20px}.ws-overlay{padding:12px}.ws-primary,.ws-secondary{padding:9px 12px;font-size:11px}.ws-presence{margin:15px 0}.ws-card-foot{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.ws-pulse{animation:none}}.ws-intro{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.ws-intro h2{letter-spacing:-.7px;margin:8px 0;font-size:26px}.ws-intro p,.ws-description{color:#909ba8;margin:0;font-size:12px;line-height:1.7}.ws-live-status{color:var(--accent);white-space:nowrap;font-size:11px}.ws-overview{border:1px solid var(--stroke);background:var(--panel);border-radius:12px;grid-template-columns:repeat(4,1fr);margin-bottom:24px;display:grid}.ws-overview>div{border-right:1px solid var(--stroke);padding:18px 22px}.ws-overview>div:last-child{background:#221e3b;border:0;border-radius:0 12px 12px 0}.ws-overview small{color:#939da9;font-size:11px;display:block}.ws-overview strong{margin-top:10px;font-size:27px;font-weight:600;display:block}.ws-overview em{color:var(--muted2);font-size:14px;font-style:normal}.ws-feature-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.ws-feature-title h2{margin:14px 0 9px}.ws-room-live,.ws-room-idle{white-space:nowrap;color:#9ca8b5;background:#1c2529;border-radius:20px;padding:5px 8px;font-size:10px}.ws-room-live{color:#a99aff;background:#292344}.ws-tags{flex-wrap:wrap;gap:6px;margin:15px 0;display:flex}.ws-tags>span{color:#b2becb;background:#151c22;border:1px solid #2c363d;border-radius:6px;padding:5px 8px;font-size:10px}.ws-tags .ws-tag-green{color:#6ce4b4;background:#11271e;border-color:#25553f}.ws-tags .ws-tag-amber{color:#edc66c;background:#282318;border-color:#57472b}.ws-roster{color:#8996a3;flex-wrap:wrap;align-items:center;gap:7px;min-height:36px;margin:12px 0 20px;font-size:11px;display:flex}.ws-person-chip{background:#ffffff06;border:1px solid #ffffff0b;border-radius:20px;align-items:center;gap:6px;max-width:100%;padding:3px 8px 3px 3px;display:inline-flex}.ws-person-chip>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ws-person-chip .avatar,.ws-person-row .avatar{background:#25353b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.ws-person-chip img,.ws-person-row img{object-fit:cover;width:100%;height:100%}.ws-roster-empty{color:#83908f;font-size:11px;line-height:1.6}.ws-section-heading{justify-content:space-between;align-items:center;gap:14px;margin:24px 0 16px;display:flex}.ws-section-heading h2{margin:0 0 6px;font-size:16px;font-weight:600}.ws-section-heading p,.ws-section-heading>span{color:#8e99a7;margin:0;font-size:11px}.ws-card>p{margin-bottom:10px}.ws-connected{border-top:1px solid var(--stroke);margin-top:30px}.ws-people-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ws-person-row{background:var(--panel);border:1px solid var(--stroke);text-align:left;color:#e7edf3;cursor:pointer;font:inherit;border-radius:10px;align-items:center;gap:11px;min-width:0;padding:15px;display:flex}.ws-person-row:hover{background:#201d32;border-color:#6855a6}.ws-person-row>span:nth-child(2){flex:1;min-width:0}.ws-person-row b,.ws-person-row small,.ws-person-row em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.ws-person-row b{font-size:12px}.ws-person-row small{color:#97a4b1;margin:5px 0;font-size:10px}.ws-person-row em{color:#b2a4ff;font-size:10px;font-style:normal}.ws-online-dot{color:var(--accent);font-size:9px}.ws-feature{flex-direction:column;display:flex}.ws-feature>.ws-primary{align-self:flex-start;margin-top:auto}.ws-feature .ws-presence{margin:14px 0 0}.ws-feature .ws-roster{margin-bottom:22px}@media (width<=1000px){.ws-people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-feature-title{flex-wrap:wrap;gap:4px}.ws-overview>div{padding:15px}}@media (width<=650px){.ws-intro{flex-direction:column;align-items:flex-start;gap:10px}.ws-intro h2{font-size:22px}.ws-overview{grid-template-columns:1fr 1fr}.ws-overview>div{border-bottom:1px solid var(--stroke)}.ws-overview>div:nth-child(2){border-right:0}.ws-overview>div:nth-child(3){border-bottom:0}.ws-overview>div:last-child{border-radius:0 0 12px}.ws-people-grid{grid-template-columns:1fr}.ws-section-heading{align-items:flex-start}.ws-feature-title{flex-direction:row}.ws-section-heading>span{white-space:nowrap}}.ws-primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-color:#0000;box-shadow:0 5px 18px #6d5efc26}.ws-logo{background:linear-gradient(135deg,var(--accent),var(--accent2))}.ws-main{margin-left:64px}.ws-rail{z-index:80;background:var(--bg2);align-items:stretch;width:64px;height:100dvh;transition:width .18s;position:fixed;inset:0 auto 0 0;overflow:hidden;box-shadow:4px 0 24px #0002}.ws-rail>.ws-logo{flex-shrink:0;margin-left:4px}.ws-navigation{flex-direction:column;gap:9px;display:flex}.ws-nav-link{min-width:42px;height:42px;color:var(--muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 11px;text-decoration:none;display:flex}.ws-nav-link>span{text-align:center;flex:0 0 20px;font-size:20px}.ws-nav-link>b{opacity:0;font-size:12px;font-weight:550;transition:opacity .15s}.ws-nav-link:hover,.ws-nav-active{color:#b7aaff;background:#6d5efc22}.ws-rail-user{padding-left:6px}.ws-rail:focus-within{width:214px;box-shadow:12px 0 32px #0005}.ws-rail:focus-within .ws-nav-link>b{opacity:1}.ws-operation-tabs{flex-wrap:wrap;gap:6px;margin:0 0 18px;display:flex}.ws-operation-tabs button{border:1px solid var(--stroke);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:9px;padding:8px 16px}.ws-operation-tabs button.active{color:#c6bcff;background:#6d5efc24;border-color:#6d5efc77}.ws-featured,.ws-connected,#ws-explore{scroll-margin-top:24px}@media (hover:hover) and (pointer:fine){.ws-rail:hover{width:214px;box-shadow:12px 0 32px #0005}.ws-rail:hover .ws-nav-link>b{opacity:1}}@media (width<=650px){.ws-main{margin-left:48px}.ws-rail{width:48px}.ws-rail>.ws-logo{margin-left:3px}.ws-nav-link{min-width:36px;padding:0 8px}.ws-rail-user{padding-left:3px}}@media (prefers-reduced-motion:reduce){.ws-rail,.ws-nav-link>b{transition:none}}.ws-room-menu{flex:none;margin-left:auto;position:relative}.ws-menu-trigger{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;place-items:center;display:grid}.ws-menu-trigger:hover,.ws-menu-trigger[aria-expanded=true]{color:var(--text);background:var(--panel2);border-color:var(--stroke2)}.ws-menu-popover{z-index:30;border:1px solid var(--stroke2);background:var(--panel2);border-radius:12px;width:230px;max-width:calc(100vw - 90px);padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 40px #0008}.ws-menu-popover button{text-align:left;width:100%;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:11px 12px;font:500 12px WorkspaceInter,system-ui;display:block}.ws-menu-popover button:hover,.ws-menu-popover button:focus-visible{background:#6d5efc22}.ws-menu-popover .ws-menu-danger{color:#fca5a5;border-top:1px solid var(--stroke);margin-top:4px}.ws-dialog textarea{font:inherit;background:var(--panel2);border:1px solid var(--stroke2);color:var(--text);resize:vertical;border-radius:8px;width:100%;padding:10px}.ws-editor-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}:is(.ws-card:has(.ws-menu-popover),.ws-feature:has(.ws-menu-popover)){z-index:31;position:relative}.ws-feature-title .ws-room-live,.ws-feature-title .ws-room-idle{order:3}.ws-danger{color:#fca5a5;cursor:pointer;background:#2b171c;border:1px solid #7f1d2d;border-radius:8px;margin-right:auto;padding:10px 15px;font:600 12px WorkspaceInter,system-ui}.ws-danger:hover{background:#3b1b23;border-color:#be334c}.ws-danger:disabled{opacity:.5;cursor:wait}.ws-floating{transition:right .18s}.ws-floating.ws-floating-music-open{right:calc(min(430px,100vw) + 20px)}@media (width<=820px){.ws-floating.ws-floating-music-open{display:none}}
