/* Costa Chat v3.2 | Browser CSS | Voice toolbar, device menus, speaking levels */
.dc-call-area{display:flex;flex-direction:column;align-items:center;gap:13px;width:min(100%,1060px);margin:0 auto}
.dc-call-identity{display:flex;gap:9px;align-items:center;text-align:left;padding:0 7px}
.dc-call-identity strong{display:block;font-size:13px;font-weight:800;color:#f2f3f5}
.dc-call-identity small{display:block;color:#a8aeb8;font-size:11px;margin-top:2px}
.dc-call-pulse{display:block;width:9px;height:9px;border-radius:50%;background:#3ba55c;box-shadow:0 0 0 3px #3ba55c27;flex:none}
.dc-call-toolbar{width:100%;max-width:1020px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px!important;margin:auto;padding:3px 0!important}
.dc-call-group{display:flex;align-items:stretch;gap:8px;flex-wrap:nowrap}
.dc-call-separator{width:1px;height:41px;align-self:center;background:#45464e;margin:0 5px}
.dc-call-combo{display:flex;position:relative;align-items:center;gap:1px;border-radius:12px;background:#3b3d45;overflow:hidden}
.dc-call-button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;min-width:63px;min-height:66px;background:#3b3d45;border-radius:12px;color:#e6e7ed;cursor:pointer;padding:9px 10px 8px;transition:background .15s,color .15s,transform .15s}
.dc-call-combo .dc-call-button{border-radius:12px 0 0 12px;min-width:61px;padding-right:5px}
.dc-call-icon{display:grid;place-items:center;height:23px;flex:none}
.dc-call-label{font-size:10px;letter-spacing:.02em;line-height:1.2;white-space:nowrap;font-weight:700}
.dc-call-button:hover{background:#51545e;color:white}
.dc-call-button:active{transform:scale(.96)}
.dc-call-button.dc-on{background:#565edc;color:#fff}
.dc-call-button.dc-disconnect{background:#c72d48;color:white;min-width:86px}
.dc-call-button.dc-disconnect:hover{background:#ed3857}
.dc-combo-arrow{height:66px;width:23px;padding:0 4px;background:#3b3d45;color:#b6bbc7;border-radius:0 10px 10px 0;display:grid;place-items:center;cursor:pointer}
.dc-combo-arrow svg{transform:rotate(180deg)}
.dc-combo-arrow:hover,.dc-combo-active .dc-combo-arrow{background:#50535e;color:#fff}
.dc-live-caption{color:#eb8591;font-size:11px;text-align:center;display:flex;align-items:center;gap:7px;font-weight:750}
.dc-live-caption svg{animation:dc-broadcast 1.8s ease-in-out infinite}
.dc-voice-menu{position:fixed;z-index:9999;padding:7px;background:#1b1c21;border:1px solid #3b3d47;border-radius:11px;box-shadow:0 20px 60px #000a;max-height:min(440px,75vh);overflow:auto;color:#e6e8f0}
.dc-menu-heading{padding:9px 10px 12px;display:grid;gap:3px}
.dc-menu-heading strong{font-size:13px}.dc-menu-heading small{font-size:11px;color:#a4a9b6}
.dc-menu-label{font-size:10px;font-weight:800;letter-spacing:.06em;color:#8e96a8;padding:8px 11px 4px}
.dc-menu-rule{height:1px;background:#34363f;margin:6px 4px}
.dc-menu-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;font-size:12px;color:#d6d9e1;text-align:left;padding:10px 11px;border-radius:5px;cursor:pointer;min-height:37px}
.dc-menu-item svg{flex:none;margin-right:4px}.dc-menu-item:hover{background:#5865f2;color:#fff}
.dc-menu-selected{color:#93a5ff}.dc-menu-note{font-size:11px;line-height:1.4;color:#aeb1bd;padding:10px 11px}
.dc-menu-range{display:grid;gap:8px;padding:11px;font-size:12px}.dc-menu-range span{display:flex;justify-content:space-between;color:#c2c6d0}
.dc-menu-range input{width:100%;accent-color:var(--user-accent,#5865f2)}
.dc-settings-form{display:grid;gap:14px;margin-top:14px}.dc-settings-form>label{display:grid;gap:6px;color:#c5c8d3;font-size:12px;font-weight:750}
.dc-settings-checks{display:flex;flex-wrap:wrap;gap:8px 15px;padding:11px;background:#292b32;border-radius:8px}.dc-settings-checks label{display:flex;align-items:center;gap:7px;font-size:12px}
.dc-settings-form small{font-size:11px;color:#a4a9b6;line-height:1.6}
.dc-peer-stats{display:grid;gap:8px;margin:15px 0}.dc-peer-stat{display:flex;flex-direction:column;gap:4px;padding:11px;background:#262830;border-radius:7px}.dc-peer-stat span{font-size:11px;color:#b2b7c2}
/* Speaking indicator: amplitude is driven by AudioContext, not a fake idle animation. */
.call-tile,.voice-under-person{--voice-strength:0;position:relative}
.call-tile.is-speaking{border-color:#3ba55c!important;box-shadow:0 0 0 1px #3ba55c8a,0 0 calc(13px + var(--voice-strength)*25px) #3ba55c32!important}
.call-tile.is-speaking .tile-avatar{filter:brightness(1.08)}
.call-tile.is-speaking .voice-ring{opacity:1;box-shadow:0 0 0 calc(2px + var(--voice-strength)*3px) #3ba55c8c}
.voice-under-person.is-speaking{background:#313b36;color:#edf7ef}
.voice-under-person.is-speaking .voice-under-avatar{box-shadow:0 0 0 2px #3ba55c}
.voice-bars{display:none;align-items:end;justify-content:center;gap:2px;height:14px;min-width:17px}
.is-speaking .voice-bars{display:inline-flex}
.voice-bars i{display:block;width:3px;height:30%;border-radius:3px;background:#43ce7c;animation:dc-voice-meter .55s ease-in-out infinite alternate;transform-origin:bottom}
.voice-bars i:nth-child(2){animation-delay:-.35s;height:70%}.voice-bars i:nth-child(3){animation-delay:-.14s;height:100%}.voice-bars i:nth-child(4){animation-delay:-.49s;height:55%}
.voice-bars.mini{margin-left:auto;min-width:16px;height:13px}
.dc-active-speaker{min-height:20px;text-align:center;font-size:12px;letter-spacing:.01em;color:transparent;font-weight:750}
.dc-active-speaker.has-speaker{color:#5fe39b}
.call-tile.is-speaking .tile-footer{background:#203b2af0}
@keyframes dc-voice-meter{0%{transform:scaleY(.37);opacity:.6}100%{transform:scaleY(1);opacity:1}}
@keyframes dc-broadcast{0%,100%{opacity:1}50%{opacity:.38}}
.call-experience:fullscreen{width:100%;height:100%;overflow:auto;background:#131417}
.call-experience:fullscreen .call-people{max-height:70vh}
.call-experience:fullscreen .call-stage{height:min(69vh,980px)}
@media(max-width:940px){.dc-call-toolbar{gap:5px!important}.dc-call-group{gap:5px}.dc-call-separator{margin:0 1px}.dc-call-button{min-width:55px;min-height:60px;padding:7px}.dc-combo-arrow{height:60px;width:19px}}
@media(max-width:700px){.dc-call-area{gap:10px}.dc-call-toolbar{gap:5px!important}.dc-call-group{gap:4px}.dc-call-separator{display:none}.dc-call-button{min-width:42px;min-height:51px;padding:6px 5px}.dc-call-combo .dc-call-button{min-width:42px;padding-right:2px}.dc-combo-arrow{height:51px;width:16px;padding:0}.dc-call-icon svg{width:18px;height:18px}.dc-call-label{font-size:9px}.dc-call-button.dc-disconnect{min-width:68px}.dc-call-identity{font-size:11px}.dc-voice-menu{max-height:70vh}}
@media(max-width:400px){.dc-call-toolbar{gap:3px!important}.dc-call-group{gap:2px}.dc-call-button{min-width:36px}.dc-call-combo .dc-call-button{min-width:36px}.dc-call-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){.voice-bars i,.dc-live-caption svg{animation:none!important}.dc-call-button{transition:none}}
