/* FP Digital Portal 10.4 — visible participant stage and accessible voice controls */

/* The old full-width self preview is intentionally removed from the Voice page. */
.voice-self-preview-v102{display:none!important}

/* Make the voice workspace fit inside the real command-center canvas instead of the viewport. */
.voice-discord-shell-v9{grid-template-columns:minmax(190px,220px) minmax(0,1fr) minmax(190px,220px)!important;min-height:600px!important;max-height:calc(100dvh - 170px);overflow:hidden!important}
.voice-stage-v9{display:flex!important;flex-direction:column!important;min-width:0!important;min-height:0!important;overflow:hidden!important}
.voice-channel-rail-v9,.voice-info-rail-v9{min-width:0!important}

.voice-participant-stage-head-v104{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px 11px;border-bottom:1px solid var(--border);background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,var(--panel2)),var(--panel2))}
.voice-participant-stage-head-v104 h3{margin:4px 0 0;font-size:.88rem}.voice-participant-stage-head-v104 p{margin:4px 0 0;max-width:680px;color:var(--muted);font-size:.52rem;line-height:1.45}
.voice-stage-counts-v104{display:flex;align-items:center;gap:7px;flex:0 0 auto}.voice-stage-counts-v104 span{padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.48rem;white-space:nowrap}.voice-stage-counts-v104 b{color:var(--bright);font-size:.61rem}

/* Put the controls where users can see them without scrolling. */
.voice-control-dock-v103{position:relative!important;bottom:auto!important;z-index:8!important;display:flex!important;justify-content:flex-start!important;flex-wrap:wrap!important;gap:7px!important;padding:9px 13px!important;border-top:0!important;border-bottom:1px solid var(--border)!important;background:color-mix(in srgb,var(--panel2) 96%,#000 4%)!important;overflow:visible!important}
.voice-control-dock-v103 .voice-control-v9{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;width:auto!important;min-width:86px!important;height:42px!important;padding:0 11px!important;border-radius:11px!important}
.voice-control-dock-v103 .voice-control-v9 span{font-size:.75rem!important}.voice-control-dock-v103 .voice-control-v9 small{display:block!important;font-size:.48rem!important;font-weight:850!important}.voice-control-dock-v103 .voice-control-v9:after{display:none!important}.voice-control-dock-v103 .voice-control-v9.leave{margin-left:auto!important}

/* The connected participant stage is now the main visual surface. */
.voice-participant-grid-v103{flex:1!important;min-height:0!important;overflow:auto!important;display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;align-content:start!important;gap:13px!important;padding:14px!important;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--accent) 7%,transparent),transparent 44%)}
.voice-participant-grid-v103[hidden]{display:none!important}
.voice-participant-card-v104{position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:10px!important;min-height:260px!important;padding:13px!important;border-radius:18px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--panel2) 96%,transparent))!important;cursor:grab!important;overflow:hidden!important}
.voice-participant-card-v104:active{cursor:grabbing!important}.voice-participant-card-v104:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 54%);pointer-events:none}
.voice-participant-card-v104.speaking{border-color:var(--green)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--green) 17%,transparent),0 0 34px color-mix(in srgb,var(--green) 15%,transparent)!important}.voice-participant-card-v104.sharing{border-color:color-mix(in srgb,var(--accent) 65%,var(--border))!important}
.voice-card-status-v104{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:26px}.voice-status-pill-v104{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--panel2);color:var(--muted);font-size:.46rem;font-weight:850}.voice-status-pill-v104:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--muted)}.voice-status-pill-v104.speaking{color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,var(--border));background:color-mix(in srgb,var(--green) 9%,var(--panel2))}.voice-status-pill-v104.speaking:before{background:var(--green);box-shadow:0 0 12px var(--green)}
.voice-card-media-icons-v104{display:flex;gap:5px}.voice-card-media-icons-v104 i{padding:5px 7px;border:1px solid var(--border);border-radius:7px;background:var(--panel2);color:var(--muted);font-size:.4rem;font-style:normal;font-weight:900;letter-spacing:.06em}.voice-card-media-icons-v104 i.live{border-color:color-mix(in srgb,var(--danger) 60%,var(--border));background:color-mix(in srgb,var(--danger) 18%,var(--panel2));color:#fff;animation:voiceLivePulseV104 1.25s ease-in-out infinite}@keyframes voiceLivePulseV104{50%{filter:brightness(1.35)}}
.voice-participant-visual-v104{position:relative;z-index:2;display:grid;place-items:center;flex:1;min-height:120px}.voice-participant-avatar-shell-v104,.voice-participant-avatar-button-v104{position:relative;display:grid;place-items:center;width:116px;height:116px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit}.voice-participant-avatar-button-v104{cursor:pointer}.voice-participant-avatar-v9{width:110px!important;height:110px!important;border:3px solid color-mix(in srgb,var(--accent) 25%,var(--border));box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 6%,transparent),0 18px 50px rgba(0,0,0,.25);transition:.18s ease}.voice-participant-card-v104.speaking .voice-participant-avatar-v9{border-color:var(--green);box-shadow:0 0 0 8px color-mix(in srgb,var(--green) 12%,transparent),0 0 38px color-mix(in srgb,var(--green) 28%,transparent)}.voice-participant-avatar-button-v104:hover .voice-participant-avatar-v9{transform:scale(1.035);filter:brightness(.65)}
.voice-avatar-watch-v104{position:absolute;inset:0;display:grid;place-items:center;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:.52rem;font-weight:950;opacity:0;transition:.16s ease}.voice-participant-avatar-button-v104:hover .voice-avatar-watch-v104,.voice-participant-avatar-button-v104:focus-visible .voice-avatar-watch-v104{opacity:1}
.voice-activity-bars-v104{position:absolute;left:50%;bottom:-3px;transform:translateX(-50%);display:flex;align-items:flex-end;justify-content:center;gap:3px;width:64px;height:24px;padding:4px 8px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--panel2) 92%,transparent);box-shadow:0 7px 24px rgba(0,0,0,.25)}.voice-activity-bars-v104 i{display:block;width:4px;height:5px;border-radius:4px;background:var(--muted);transform-origin:bottom}.voice-participant-card-v104.speaking .voice-activity-bars-v104{border-color:color-mix(in srgb,var(--green) 50%,var(--border))}.voice-participant-card-v104.speaking .voice-activity-bars-v104 i{background:var(--green);animation:voiceBarV104 .72s ease-in-out infinite alternate}.voice-participant-card-v104.speaking .voice-activity-bars-v104 i:nth-child(2){animation-delay:.12s}.voice-participant-card-v104.speaking .voice-activity-bars-v104 i:nth-child(3){animation-delay:.24s}.voice-participant-card-v104.speaking .voice-activity-bars-v104 i:nth-child(4){animation-delay:.36s}@keyframes voiceBarV104{to{height:17px}}
.voice-participant-identity-v104{position:relative;z-index:2;text-align:center}.voice-participant-identity-v104 b,.voice-participant-identity-v104 small{display:block}.voice-participant-identity-v104 b{font-size:.72rem}.voice-participant-identity-v104 small{margin-top:3px;color:var(--muted);font-size:.49rem}
.voice-card-actions-v104{position:relative;z-index:2;display:grid;gap:8px}.voice-card-watch-v104{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;min-height:36px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));border-radius:10px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 18%,var(--surface)),color-mix(in srgb,var(--accent2) 15%,var(--surface)));color:var(--bright);font-size:.5rem;font-weight:950}.voice-card-watch-v104:hover{filter:brightness(1.2);transform:translateY(-1px)}.voice-card-connected-v104{display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;border:1px solid var(--border);border-radius:10px;background:var(--panel2);color:var(--muted);font-size:.48rem;font-weight:800}.voice-card-connected-v104 i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green)}
.voice-card-volume-v104{display:grid;grid-template-columns:auto minmax(70px,1fr) 36px;align-items:center;gap:7px;color:var(--muted);font-size:.45rem}.voice-card-volume-v104 input{width:100%;accent-color:var(--accent)}.voice-card-volume-v104 output{text-align:right;color:var(--text);font-size:.43rem;font-variant-numeric:tabular-nums}

/* The waiting state no longer consumes the participant area after connection. */
.voice-call-state-v9{flex:1!important;min-height:0!important}.voice-screen-stage-v9[hidden]+.voice-room-chat-v103[hidden]{}

/* Free up horizontal space before the old right rail begins clipping. */
@media(max-width:1600px){.voice-discord-shell-v9{grid-template-columns:minmax(190px,220px) minmax(0,1fr)!important}.voice-info-rail-v9{display:none!important}}
@media(max-width:1050px){.voice-discord-shell-v9{display:flex!important;flex-direction:column!important;max-height:none!important;min-height:calc(100dvh - 130px)!important;overflow:visible!important}.voice-channel-rail-v9{flex:0 0 auto;max-height:245px!important;border-right:0!important;border-bottom:1px solid var(--border)!important}.voice-stage-v9{min-height:560px!important}.voice-participant-grid-v103{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important}.voice-participant-stage-head-v104 p{display:none}}
@media(max-width:720px){.voice-participant-stage-head-v104{align-items:flex-start;padding:10px;flex-direction:column}.voice-stage-counts-v104{width:100%;overflow-x:auto}.voice-control-dock-v103{flex-wrap:nowrap!important;overflow-x:auto!important;padding:8px!important}.voice-control-dock-v103 .voice-control-v9{flex:0 0 auto!important;min-width:82px!important}.voice-control-dock-v103 .voice-control-v9.leave{margin-left:0!important}.voice-participant-grid-v103{grid-template-columns:1fr!important;padding:9px!important}.voice-participant-card-v104{min-height:235px!important}.voice-participant-avatar-v9{width:96px!important;height:96px!important}.voice-participant-avatar-shell-v104,.voice-participant-avatar-button-v104{width:102px;height:102px}}
