.team-chat-shell{--chat-width:420px}.chat-launch{position:fixed;right:24px;bottom:22px;z-index:70;display:flex;align-items:center;gap:10px;box-shadow:0 8px 28px #0003;min-height:48px;padding:12px 18px;border:1px solid var(--line)}.chat-unread{background:var(--mint);color:var(--bg);border-radius:20px;padding:3px 7px;font-size:12px}.chat-launch.in-call{box-shadow:0 0 0 3px var(--mint),0 8px 28px #0003}.team-chat-panel{position:fixed;inset:84px 0 84px auto;width:var(--chat-width);z-index:65;background:var(--panel);border:1px solid var(--line);border-right:0;border-radius:18px 0 0 18px;box-shadow:-15px 0 45px #0002;display:flex;flex-direction:column;overflow:hidden;color:var(--ink);font-size:var(--reading-size,18px)}.team-chat-panel[hidden]{display:none}.chat-top{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;background:var(--soft);border-bottom:1px solid var(--border)}.chat-top h2{font-size:1.15em;margin:5px 0 0}.chat-top .eyebrow{font-size:.58em;letter-spacing:1.5px}.chat-fold{font-size:1.4em;min-width:44px;padding:3px 12px}.chat-room-tools{display:flex;gap:10px;align-items:end;padding:12px 16px}.chat-room-tools label{flex:1;font-size:.7em;color:var(--muted)}.chat-room-tools select{margin-top:5px;font-size:1.2em;padding:9px}.chat-phone{font-size:1.3em;min-width:46px;padding:8px}.chat-dm-picker{padding:0 16px 10px;font-size:.75em;color:var(--muted)}.chat-dm-picker summary{cursor:pointer;color:var(--accent);padding:4px 0}.chat-dm-picker label{display:block;margin-top:8px}.chat-history{flex:1;overflow:auto;overscroll-behavior:contain;padding:12px 16px;min-height:100px;scrollbar-gutter:stable;background:var(--bg)}.chat-messages{display:grid;gap:13px}.chat-message{border:1px solid var(--border);border-radius:13px 13px 13px 3px;background:var(--panel);padding:12px 14px;overflow-wrap:anywhere}.chat-message.is-mine{background:var(--soft);border-radius:13px 13px 3px 13px}.chat-message.is-ai{border-color:var(--accent);border-left-width:3px}.chat-message-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.chat-message-meta b{font-size:.75em;color:var(--ink)}.chat-message-meta time{font-size:.58em;color:var(--muted)}.chat-message p{font-size:.85em;line-height:1.55;white-space:pre-wrap;color:var(--ink);margin:8px 0 0}.chat-ai-state{font-size:.65em;color:var(--accent);display:block;margin-top:8px}.chat-resume{font-size:.7em;margin-top:8px;padding:6px 10px}.chat-empty{padding:30px 10px;color:var(--muted);font-size:.85em;line-height:1.8;text-align:center}.chat-older,.chat-latest{font-size:.7em;margin-bottom:12px;width:100%}.chat-latest{position:sticky;bottom:0;background:var(--surface)}.chat-compose{padding:12px 16px 8px;border-top:1px solid var(--border)}.chat-compose textarea{font-size:.9em;line-height:1.45;min-height:90px;max-height:180px;resize:vertical}.chat-compose-tools{display:flex;align-items:center;gap:8px;margin-top:9px}.chat-mic{min-height:44px;min-width:44px;padding:8px}.chat-ai-toggle{font-size:.7em;display:flex;align-items:center;gap:6px;flex:1;cursor:pointer;color:var(--muted)}.chat-ai-toggle input{width:18px;height:18px;accent-color:var(--accent)}.chat-ai-toggle:has(input:checked){color:var(--accent);font-weight:700}.chat-send{font-size:.8em;min-height:44px;padding:10px 14px}.chat-ai-explain,.chat-recording,.chat-status{font-size:.7em;line-height:1.5;margin:8px 0 0}.chat-recording{color:var(--danger,#d95050)}.chat-status{color:var(--mint)}.chat-status:empty{display:none}.chat-privacy{font-size:.58em;color:var(--muted);line-height:1.5;margin:0;padding:0 16px 12px}.chat-voice-banner{margin:0 16px 10px;padding:12px;border:1px solid var(--mint);background:var(--soft);border-radius:12px;font-size:.7em;max-height:200px;overflow:auto}.chat-voice-banner p{margin:6px 0;line-height:1.5}.chat-voice-banner button{padding:7px 9px;font-size:.95em;margin-right:5px;min-height:36px}.chat-voice-banner small{display:block;margin-top:8px;color:var(--muted)}.chat-audio{display:none}.team-chat-shell [hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.team-chat-shell button:focus-visible,.chat-ai-toggle:focus-within{outline:3px solid var(--mint);outline-offset:3px}.team-chat-shell button:disabled{opacity:.5;cursor:not-allowed}@media(min-width:1300px){body.chat-open #content{margin-right:420px;padding-left:28px;padding-right:28px}body.chat-open .columns,body.chat-open .studio-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:650px){.team-chat-panel{inset:64px 8px 82px 8px;width:auto;border-right:1px solid var(--line);border-radius:16px}.chat-launch{right:16px;bottom:16px}.chat-top{padding:12px 16px}.chat-privacy{font-size:.6em}}

/* Keep conversation space generous; call controls live independently of this panel. */
.team-chat-panel{inset:12px 0 12px auto;z-index:75}
.chat-top{padding:10px 16px;flex-shrink:0}.chat-top h2{margin:0;font-size:1em}.chat-fold{min-height:40px}
.chat-room-tools{padding:8px 16px 0;align-items:center;flex-shrink:0}.chat-room-tools label{margin:0;min-width:0}.chat-room-tools select{margin:0;min-height:44px}.chat-phone{min-height:44px}
.team-chat-panel .chat-dm-picker{margin:0;padding:6px 16px;border:0;flex-shrink:0}.chat-dm-picker summary{margin:0;padding:5px 0;min-height:32px}.chat-dm-picker[open]{max-height:180px;overflow:auto}
.chat-history{min-height:0;padding:10px 14px}.chat-compose{flex-shrink:0;padding:10px 14px 6px}.chat-compose textarea{min-height:58px;height:64px;max-height:min(160px,25dvh);margin:0}.chat-compose-tools{margin-top:6px}.chat-ai-explain{font-size:.67em;margin-top:6px}.chat-status{max-height:66px;overflow:auto}
.team-chat-panel .chat-privacy{margin:0;padding:0 14px 8px;border:0;flex-shrink:0}.chat-privacy summary{cursor:pointer;margin:0;min-height:24px;line-height:24px}.chat-privacy p{margin:3px 0;line-height:1.5}.chat-open .chat-launch{display:none}
.chat-voice-banner{margin:4px 16px 8px;padding:9px 12px;flex-shrink:0}
.voice-call-card{position:fixed;z-index:90;width:350px;max-width:calc(100vw - 24px);overflow:auto;border:1px solid var(--accent);border-radius:18px;background:var(--panel);color:var(--ink);box-shadow:0 16px 60px #0004;padding:16px;font-size:var(--reading-size,18px)}
.call-card-top{display:flex;align-items:center;gap:8px;margin-bottom:10px}.call-drag{display:flex;align-items:center;gap:8px;flex:1;min-width:0;min-height:40px;padding:0;text-align:left;touch-action:none;cursor:grab;color:var(--accent);font-size:.65em;letter-spacing:.08em;font-weight:750}.call-drag>span:first-child{font-size:26px;line-height:1}.is-dragging .call-drag{cursor:grabbing}.call-duration{font-size:.75em;color:var(--muted);font-variant-numeric:tabular-nums}.call-collapse{min-width:40px;min-height:40px;padding:4px;font-size:1.2em}.call-room-name{font-size:1.05em;margin:0;overflow-wrap:anywhere}.call-mic-state{font-size:.78em;color:var(--mint);line-height:1.4;margin:8px 0 14px}.call-mic-state.is-muted{color:var(--muted)}.call-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.call-actions button{min-height:48px;border-radius:10px;font-size:.85em;padding:10px}.call-end{background:#b52d46;color:#fff;font-weight:700;border:1px solid #b52d46}.call-end:hover{background:#96213a}.call-people{margin:14px 0;font-size:.78em;max-height:150px;overflow:auto}.call-people>strong{color:var(--muted);font-size:.85em;font-weight:600}.call-people>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border)}.call-people span{overflow-wrap:anywhere}.call-people small{color:var(--muted);white-space:nowrap}.call-people p{margin:0;line-height:1.5}.call-utilities{display:flex;gap:8px}.call-utilities button{font-size:.72em;min-height:40px;padding:8px 10px;flex:1}.call-network,.call-footnote{font-size:.62em;color:var(--muted);line-height:1.5;margin:9px 0 0}.call-error{font-size:.75em;color:var(--danger);line-height:1.5;margin:10px 0 0}
@media(max-width:650px){.team-chat-panel{inset:8px;width:calc(100% - 16px)}.chat-top{padding:8px 14px}.voice-call-card{padding:14px}}
@media(max-height:600px){.chat-top{padding:4px 14px}.chat-compose textarea{min-height:44px;height:44px}.chat-room-tools{padding-top:4px}.team-chat-panel .chat-dm-picker{padding-top:0;padding-bottom:0}.call-people{max-height:70px}}

/* Circular chat launcher with readable accessible name and retained activity badges. */
.team-chat-shell .chat-launch{width:60px;height:60px;min-height:60px;padding:0;border-radius:50%;justify-content:center;gap:0;background:var(--accent);color:#fff;box-shadow:0 6px 24px #0003}.chat-launch-icon{display:block;width:28px;height:28px;pointer-events:none}.chat-launch .chat-unread{position:absolute;right:-5px;top:-5px;min-width:23px;height:23px;display:grid;place-items:center;padding:2px 5px;border:2px solid var(--panel);font-size:11px;line-height:1;background:var(--mint);color:var(--bg)}.chat-call-dot{position:absolute;right:1px;bottom:2px;width:13px;height:13px;border:2px solid var(--panel);border-radius:50%;background:var(--mint)}
