/* Koshi Connect v91.68.5 - única folha visual das chamadas em grupo.
   As regras antigas de group meeting foram removidas de style.css. */
#koshiClubDetailV91620.koshi-club-in-call-v91682{display:flex;position:relative;min-width:0;min-height:0;overflow:hidden;background:transparent;isolation:isolate}
#koshiClubDetailV91620.koshi-club-in-call-v91682>.koshi-club-chat-panel-v91620,
#koshiClubDetailV91620.koshi-club-in-call-v91682>.koshi-club-control-panel-v91620{display:none}
.group-overlay{display:none;position:fixed;inset:0;z-index:350;align-items:stretch;justify-content:stretch;background:rgba(6,27,50,.68)}
.group-overlay.is-open{display:flex}
.group-overlay[aria-hidden="true"]:not(.is-open){display:none}
#koshiClubDetailV91620 #groupOverlay.koshi-inline-club-call-v91682{display:flex;position:absolute;inset:0;width:100%;height:100%;z-index:1;background:transparent;overflow:hidden}
#groupOverlay *,#groupOverlay *::before,#groupOverlay *::after{box-sizing:border-box}
#groupOverlay .group-card{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(8px,1.3vh,14px);flex:1;width:100%;height:100%;min-width:0;min-height:0;padding:clamp(10px,1.6vw,20px);overflow:hidden;border:0;background:transparent;box-shadow:none;isolation:isolate}
#groupOverlay .group-card::before,#groupOverlay .group-card::after{display:none;content:none}
#groupOverlay .group-head{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;width:fit-content;max-width:min(360px,100%);min-height:70px;padding:12px 16px;border:1px solid rgba(193,238,255,.8);border-radius:18px;background:linear-gradient(145deg,rgba(35,134,194,.78),rgba(6,72,124,.80));color:white;backdrop-filter:blur(16px);box-shadow:0 8px 22px #001c3d38}
#groupOverlay .group-head h2{font-size:17px;line-height:1.3;margin:0;color:white}
#groupOverlay .group-status{font-size:11px;line-height:1.5;color:#d8f5ff}
#groupOverlay .group-head-actions{display:flex;align-items:center;gap:7px}
#groupOverlay .group-head-actions button{position:static;min-width:70px;height:36px;border-radius:10px;color:white;background:#2b91c5;border:1px solid #9de7ff;cursor:pointer;font-size:12px}
#groupOverlay .group-timer{display:grid;place-items:center;width:48px;height:42px;font-size:12px;color:white;border-radius:24px;background:#ffffff18;border:1px solid #ffffff70}
#groupOverlay #groupMeetingLayoutV9190{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(8px,1.5vw,20px);position:relative;min-height:0;min-width:0;overflow:hidden;background:transparent;align-items:start}
#groupOverlay #groupMeetingMainV9190{display:flex;position:relative;flex:1;min-height:0;min-width:0;height:100%;overflow:hidden;background:transparent}
#groupOverlay #groupParticipants{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));grid-auto-rows:min-content;align-content:center;justify-items:center;align-items:center;gap:clamp(22px,4vh,58px) clamp(28px,5vw,85px);width:100%;height:100%;min-height:0;min-width:0;padding:clamp(12px,2.4vw,34px);overflow:auto;scrollbar-width:thin;background:transparent;isolation:isolate}
#groupOverlay #groupParticipants:has(>.group-participant:nth-of-type(1):last-of-type){display:flex;align-items:center;justify-content:center}
#groupOverlay #groupParticipants:has(>.group-participant:nth-of-type(2):last-of-type){grid-template-columns:repeat(2,minmax(0,270px));justify-content:space-evenly;align-content:center;column-gap:clamp(28px,6vw,130px)}
#groupOverlay #groupParticipants>.group-participant{position:relative;display:flex;flex-direction:column;gap:10px;width:100%;max-width:270px;min-width:0;min-height:130px;height:auto;padding:12px;border:1px solid #a7e9ff;border-radius:18px;background:linear-gradient(155deg,rgba(39,150,200,.88),rgba(7,66,111,.90));box-shadow:inset 0 1px #ffffff8a,0 12px 24px #002e4c60;backdrop-filter:blur(15px);color:white;transform:none;inset:auto;z-index:2;overflow:visible;cursor:grab;touch-action:pan-y}
#groupOverlay #groupParticipants>.group-participant::before,#groupOverlay #groupParticipants>.group-participant::after{display:none;content:none}
#groupOverlay .koshi-card-identity-v91684{display:flex;align-items:center;gap:11px;width:100%;min-width:0}
#groupOverlay .group-participant-portrait-v9190{position:relative;flex:none;width:52px;height:52px;min-width:52px;min-height:52px;inset:auto;margin:0;border:2px solid #b7f0ff;border-radius:13px;overflow:hidden;background:#195f92;box-shadow:0 3px 10px #002b5680;transform:none}
#groupOverlay .group-participant-avatar-v9190{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;font-size:22px;transform:none;filter:none;border-radius:11px;overflow:hidden}
#groupOverlay .group-participant-avatar-v9190 img{display:block;width:100%;height:100%;inset:auto;object-fit:cover;filter:none;transform:none;border-radius:11px}
#groupOverlay .group-participant-pet-v9190,#groupOverlay .group-sphere-glass-v91611,#groupOverlay .group-sphere-shine-v91611{display:none}
#groupOverlay .group-participant-speaking-v9190{position:absolute;inset:-3px;border-radius:15px;pointer-events:none}
#groupOverlay .group-participant.is-speaking .group-participant-speaking-v9190,#groupOverlay .group-participant.voice-active .group-participant-speaking-v9190{box-shadow:0 0 0 3px #6fffd6,0 0 20px #6fffd6}
#groupOverlay .group-participant-copy-v9190{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;flex:1;min-width:0;width:auto;inset:auto;margin:0;padding:0;border:0;background:transparent;box-shadow:none;text-align:left;transform:none}
#groupOverlay .group-participant-copy-v9190 b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;line-height:1.4;color:white}
#groupOverlay .koshi-card-connected-v91684{display:block;font-size:10px;color:#c3ffe5}
#groupOverlay .group-participant-state{position:absolute;top:0;right:0;bottom:auto;left:auto;display:block;width:9px;height:9px;border-radius:50%;background:#67f68e;box-shadow:0 0 8px #67f68e;font-size:0;transform:none}
#groupOverlay .koshi-card-controls-v91684{display:flex;align-items:center;min-height:30px;width:100%;font-size:12px}
#groupOverlay .koshi-card-local-v91684{color:#d9f7ff;font-size:11px}
#groupOverlay .group-volume-v79{display:flex;position:relative;align-items:center;gap:7px;inset:auto;flex:1;min-width:0;width:100%;padding:0;margin:0;transform:none}
#groupOverlay .group-volume-v79 input{flex:1;min-width:30px;width:100%;accent-color:#8ee9ff}
#groupOverlay .group-volume-value-v79{font-size:10px;color:#f0fbff;min-width:30px}
#groupOverlay .koshi-mesh-v91680{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;z-index:0;pointer-events:none;opacity:1}
.koshi-mesh-flow-v91680{animation:koshiConnectFlow 1.4s linear infinite;filter:drop-shadow(0 0 5px currentColor)}
.koshi-mesh-flow-v91680.volta{animation-direction:reverse}
@keyframes koshiConnectFlow{to{stroke-dashoffset:-38}}
#groupOverlay #groupMusicSideV9190{position:relative;top:auto;right:auto;z-index:6;display:flex;flex-direction:column;gap:5px;width:clamp(164px,17vw,205px);max-width:100%;max-height:116px;padding:10px;border:1px solid #b9eeff;border-radius:16px;background:linear-gradient(140deg,rgba(45,159,210,.85),rgba(8,78,134,.88));box-shadow:0 8px 24px #002b4b50;backdrop-filter:blur(16px);color:white;overflow:hidden;cursor:grab;user-select:none}
#groupOverlay #groupMusicSideV9190[hidden]{display:none}
#groupOverlay .group-music-side-title-v9190{font-weight:700;font-size:12px}
#groupOverlay .group-music-side-now-v9190{font-size:11px;min-width:0;overflow:hidden}
#groupOverlay .group-music-side-now-v9190 small{display:block;font-size:9px;opacity:.8}
#groupOverlay .group-music-side-now-v9190 b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#groupOverlay .group-music-side-controls-v91616{display:flex;align-items:center;gap:5px;min-width:0}
#groupOverlay .group-music-side-controls-v91616 button{flex:none;min-width:25px;height:27px;padding:3px;border-radius:7px;border:1px solid #aee9ff;color:white;background:#2b95c7}
#groupOverlay .group-music-side-controls-v91616 input{flex:1;min-width:20px;width:45px;accent-color:#b3f0ff}
#groupOverlay .group-music-side-next-label-v9190,#groupOverlay .group-music-side-queue-v9190{display:none}
#groupOverlay .group-controls{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(4px,.7vw,8px);z-index:8;width:max-content;max-width:100%;min-height:52px;margin:0 auto;padding:6px;border:1px solid #b9eaff;border-radius:19px;background:linear-gradient(145deg,rgba(39,153,208,.87),rgba(8,74,129,.92));backdrop-filter:blur(16px);box-shadow:0 9px 22px #002b4b60;overflow:visible;inset:auto;transform:none}
#groupOverlay .group-controls>button{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:52px;min-height:38px;padding:6px 9px;border:1px solid #aee8ff;border-radius:12px;background:linear-gradient(#4ab4e8,#086eaf);color:white;font-size:clamp(10px,.9vw,12px);font-weight:700;white-space:nowrap;transform:none}
#groupOverlay .group-controls #groupLeave{background:linear-gradient(#ff8191,#c62f52)}
#groupOverlay .group-controls [hidden],#groupOverlay .group-controls>button[hidden]{display:none}
#groupOverlay .screen-quality-control-v91450{display:none}
#groupOverlay #groupNote,#groupOverlay #koshiMusicBar{display:none}
#groupOverlay #groupScreenStage{position:relative;display:block;width:100%;height:auto;min-width:0;max-width:100%;margin:4px 0 0;border:1px solid #9deaff;border-radius:12px;overflow:hidden;background:#062943;box-shadow:none;transform:none;inset:auto}
#groupOverlay #groupScreenStage[hidden]{display:none}
#groupOverlay #groupScreenEmpty{display:none}
#groupOverlay #groupSharedScreen{display:block;width:100%;height:auto;max-height:min(28vh,240px);aspect-ratio:16/9;object-fit:contain;background:#062039}
#groupOverlay #groupScreenFullscreenV9182{position:absolute;right:7px;top:7px;z-index:4;min-height:28px;padding:4px 7px;color:white;background:#1b7bb1;border:1px solid #a9ebff;border-radius:7px}
#groupOverlay #groupScreenVolumeRowV91450{display:flex;align-items:center;gap:5px;width:100%;padding:7px;color:white;background:#0b4269;font-size:10px}
#groupOverlay #groupScreenVolumeRowV91450[hidden]{display:none}
#groupOverlay #groupScreenVolumeRowV91450 input{flex:1;min-width:20px;accent-color:#92eaff}
#groupOverlay #groupScreenLabel{padding:4px 7px;font-size:10px;color:#d9f3ff}
#groupOverlay .koshi-screen-actions-v91680{display:flex;justify-content:flex-end;padding:4px;background:#0b4269}
#groupOverlay .koshi-screen-actions-v91680 button{padding:4px 8px;border-radius:7px;background:#238ec3;color:white;border:1px solid #8cdaff}

/* Koshi Connect 91.68.11: single stage and responsive controls. */
#groupOverlay #groupMeetingLayoutV9190{display:block;position:relative;min-height:0;height:100%;width:100%;overflow:hidden}
#groupOverlay #groupMeetingMainV9190{position:relative;width:100%;height:100%;min-height:0;overflow:hidden;touch-action:none}
#groupOverlay #groupParticipants{width:100%;height:100%;min-width:0;min-height:0;overflow:visible;gap:clamp(22px,4vh,60px) clamp(28px,5vw,85px);padding:clamp(16px,3vw,44px);will-change:transform}
#groupOverlay #groupParticipants:has(>.group-participant:nth-of-type(2):last-of-type){grid-template-columns:repeat(2,minmax(0,270px));justify-content:space-evenly;align-content:center}
#groupOverlay #groupParticipants>.group-participant{max-width:270px}
#groupOverlay .group-participant.koshi-screen-expanded-v91680{grid-column:1/-1;justify-self:center;width:min(100%,780px);max-width:780px;max-height:none}
#groupOverlay .group-participant.koshi-screen-expanded-v91680 #groupSharedScreen{width:100%;height:auto;max-height:min(52vh,490px);aspect-ratio:16/9;object-fit:contain}
#groupOverlay #groupMusicSideV9190{position:relative;inset:auto!important;display:flex;flex:none;width:clamp(160px,17vw,225px);height:auto;max-height:300px;max-width:calc(100vw - 40px);padding:12px;cursor:default;box-shadow:0 10px 26px #001d3c88}
#groupOverlay .group-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;width:fit-content;max-width:100%;max-height:100%;min-height:48px;padding:6px 8px;margin:auto;overflow:visible}
#groupOverlay .group-controls>button{min-height:34px;min-width:48px;padding:5px 8px;font-size:11px}
#groupOverlay .koshi-viewport-tools-v91689{position:relative;inset:auto;transform:none;display:flex;align-items:center;gap:4px;padding:3px 5px;border:1px solid #a5e7ff;border-radius:10px;background:#155b91;color:#fff;flex:none}
#groupOverlay .koshi-viewport-tools-v91689 button{width:26px;min-width:26px;height:27px;padding:0;border:1px solid #9cdeff;border-radius:7px;background:#208bc1;color:#fff;cursor:pointer;font-size:17px}
#groupOverlay .koshi-viewport-tools-v91689 span{min-width:38px;text-align:center;font-size:10px;font-weight:700}
#groupOverlay .group-controls>button[hidden],#groupOverlay #groupMusicSideV9190[hidden]{display:none!important}
#groupOverlay[data-state]:not([data-state="incoming"]) #groupAccept,#groupOverlay[data-state]:not([data-state="incoming"]) #groupReject{display:none}
#groupOverlay[data-state="incoming"] #groupMute,#groupOverlay[data-state="incoming"] #groupListen,#groupOverlay[data-state="incoming"] #groupScreen,#groupOverlay[data-state="incoming"] #groupRoutingV91460,#groupOverlay[data-state="incoming"] #groupLeave{display:none}
#groupOverlay .group-controls #koshiReturnClubV91687[hidden]{display:none!important}
#groupOverlay .group-controls #koshiReturnClubV91687{display:inline-flex;align-items:center;justify-content:center;border-color:#a8ecff;background:linear-gradient(#3aafdb,#12649b)}
#groupOverlay.koshi-club-mini-clean-v91689.is-minimized{display:none!important;visibility:hidden!important;pointer-events:none!important}
#groupOverlay .group-participant.koshi-card-dragging{opacity:.6}
#groupOverlay .group-participant.koshi-card-drop-target{outline:3px solid #ffe49e}
#groupOverlay #groupScreenStage:fullscreen{position:fixed!important;inset:0!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#050b14!important;overflow:hidden!important}
#groupOverlay #groupScreenStage:fullscreen #groupSharedScreen{display:block!important;flex:1;min-height:0;width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;background:#050b14!important}
#groupOverlay #groupScreenStage:fullscreen #groupScreenFullscreenV9182{position:fixed!important;top:18px!important;right:18px!important;z-index:30!important;display:block!important;padding:10px 14px!important}
#groupOverlay #groupScreenStage:fullscreen #groupScreenLabel,#groupOverlay #groupScreenStage:fullscreen #groupScreenVolumeRowV91450,#groupOverlay #groupScreenStage:fullscreen .koshi-screen-actions-v91680{display:none!important}
@media(max-width:850px){#groupOverlay .group-card{padding:10px;gap:7px}#groupOverlay .group-head{min-height:48px;padding:8px 11px}#groupOverlay #groupParticipants{padding:12px;gap:20px}#groupOverlay .group-controls{padding:5px;gap:4px}#groupOverlay #groupMusicSideV9190{width:165px}}
@media(max-width:540px){#groupOverlay #groupParticipants,#groupOverlay #groupParticipants:has(>.group-participant:nth-of-type(2):last-of-type){grid-template-columns:minmax(0,1fr);align-content:center;gap:18px}#groupOverlay #groupParticipants>.group-participant{max-width:min(100%,280px)}#groupOverlay .group-controls>button{font-size:10px;min-width:40px}#groupOverlay #groupMusicSideV9190{width:100%;max-width:230px}}

/* Music opens as a separate popover, rather than compressing the toolbar. */
#groupOverlay #groupMusicSideV9190.koshi-music-popover-v916811{position:absolute!important;left:auto!important;right:8px!important;bottom:calc(100% + 12px)!important;top:auto!important;z-index:40;width:min(320px,calc(100vw - 48px));max-height:300px;overflow:auto;box-shadow:0 12px 35px #00142d9c}
#groupOverlay #groupMusicSideV9190.koshi-music-popover-v916811[hidden]{display:none!important}
#groupOverlay .group-participant.koshi-screen-expanded-v91680{grid-column:1/-1;max-width:min(780px,100%);width:min(780px,100%);justify-self:center}
#groupOverlay .group-participant.koshi-screen-expanded-v91680 #groupSharedScreen{max-height:min(48vh,460px);width:100%;aspect-ratio:16/9;object-fit:contain}
#groupOverlay #groupParticipants{overflow:visible}

/* 91.68.12: o palco é a área útil inteira; player independente do viewport. */
#groupOverlay #groupMeetingMainV9190{min-width:0;min-height:0;overflow:hidden}
#groupOverlay #groupParticipants{overflow:visible;touch-action:none}
#groupOverlay .group-controls{max-width:calc(100% - 12px);width:max-content;flex-wrap:wrap}
#groupOverlay #groupMusicSideV9190.koshi-music-popover-v916811{right:0!important;bottom:calc(100% + 10px)!important;width:min(300px,calc(100vw - 52px));max-height:min(360px,55vh)}
#groupOverlay #groupMusicSideV9190.koshi-music-popover-v916811[hidden]{display:none!important}

/* 91.68.14: expansão local, sem retirar o vídeo do card/transmissor. */
#groupOverlay .group-participant.koshi-screen-expanded-v91680{
  width:min(760px,calc(100% - 24px));max-width:min(760px,calc(100% - 24px));
  min-height:0;height:auto;overflow:visible;
}
#groupOverlay .group-participant.koshi-screen-expanded-v91680 #groupScreenStage{
  width:100%;max-width:100%;height:auto;overflow:hidden;
}
#groupOverlay .group-participant.koshi-screen-expanded-v91680 #groupSharedScreen{
  width:100%;height:auto;max-height:min(55vh,540px);aspect-ratio:16/9;object-fit:contain;
}
#groupOverlay .group-head{max-width:min(100%,400px);min-width:0}
#groupOverlay .group-head-actions{flex:none}
#groupOverlay .group-head-actions #groupMute,#groupOverlay .group-head-actions #groupListen,#groupOverlay .group-head-actions #groupLeave{display:none!important}

/* 91.68.15: large presentation without moving the active screen video. */
#groupOverlay{position:relative}
#groupOverlay #koshiExpandedPreviewV916815{position:absolute;z-index:75;inset:clamp(65px,10%,105px) 18px clamp(82px,13%,115px);min-width:0;min-height:0;display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #9de6ff;border-radius:18px;background:rgba(4,24,44,.96);box-shadow:0 14px 55px #001b37a8;box-sizing:border-box}
#groupOverlay #koshiExpandedPreviewV916815[hidden]{display:none!important}
#groupOverlay #koshiExpandedPreviewV916815 header{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff;font-weight:700;flex:none}
#groupOverlay #koshiExpandedPreviewV916815 header button{border:1px solid #8bdcff;background:linear-gradient(#35a7e5,#08659d);color:#fff;border-radius:9px;padding:8px 13px;cursor:pointer}
#groupOverlay #koshiExpandedPreviewV916815 video{display:block;flex:1;min-width:0;min-height:0;width:100%;height:100%;object-fit:contain;background:#050b14;border-radius:10px}
@media(max-width:650px){#groupOverlay #koshiExpandedPreviewV916815{inset:65px 8px 90px;padding:8px}}
