/* FP Digital Portal v11.0.9 — focused navigation, rebuilt Music, Discord-style Voice */

/* Command Center can collapse on desktop without hiding the menu button. */
@media (min-width:821px){
  .topbar .menu{display:grid!important;flex:0 0 42px!important}
  body.fp-command-center-collapsed-v113{--sidebar:0px!important}
  body.fp-command-center-collapsed-v113 .shell{grid-template-columns:1fr!important}
  body.fp-command-center-collapsed-v113 .sidebar{transform:translateX(-105%)!important;opacity:0!important;pointer-events:none!important}
  body.fp-command-center-collapsed-v113 .main{grid-column:1!important;width:100%!important}
  body.fp-command-center-collapsed-v113 .portal-ai-launcher:not([data-user-positioned="true"]){left:24px!important}
  body.fp-command-center-collapsed-v113 .soundboard-studio-v112{left:32px!important}
  .sidebar{transition:transform .24s ease,opacity .2s ease!important}
  .main{transition:width .24s ease!important}
}

/* MUSIC — no overlapping control cards, full-height player, usable browser below. */
#view-music.active{
  display:flex!important;
  flex-direction:column!important;
  height:calc(100vh - 76px)!important;
  min-height:680px!important;
  overflow:hidden!important;
}
#view-music>.section-head{
  flex:0 0 auto!important;
  min-height:82px!important;
  margin-bottom:12px!important;
}
#view-music .youtube-music-shell-v9{
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  grid-template-rows:minmax(410px,58vh) minmax(260px,1fr)!important;
  grid-template-areas:"library player" "library browser"!important;
  gap:14px!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
  box-shadow:none!important;
}
#view-music .youtube-library-v9,
#view-music .youtube-player-column-v9,
#view-music .youtube-browser-v9{
  min-width:0!important;
  min-height:0!important;
  border:1px solid color-mix(in srgb,var(--accent) 19%,var(--border))!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 98%,#000 2%),color-mix(in srgb,var(--panel2) 98%,#000 2%))!important;
  box-shadow:0 22px 62px rgba(0,0,0,.28)!important;
  overflow:hidden!important;
}
#view-music .youtube-library-v9{
  grid-area:library!important;
  display:flex!important;
  flex-direction:column!important;
  padding:16px!important;
  border-right:1px solid color-mix(in srgb,var(--accent) 19%,var(--border))!important;
}
#view-music .youtube-player-column-v9{
  grid-area:player!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 300px!important;
  grid-template-rows:auto auto auto minmax(0,1fr)!important;
  grid-template-areas:"video quality" "video transport" "video actions" "video queue"!important;
  align-items:stretch!important;
  gap:12px!important;
  padding:14px!important;
  border-left:1px solid color-mix(in srgb,var(--accent) 19%,var(--border))!important;
}
#view-music .youtube-player-shell-v9{
  grid-area:video!important;
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  min-height:380px!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border))!important;
  border-radius:20px!important;
  background:#000!important;
  box-shadow:0 16px 44px rgba(0,0,0,.36)!important;
}
#view-music .youtube-player-shell-v9>div,
#view-music .youtube-player-shell-v9 iframe{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  border:0!important;
}
#view-music .music-quality-control-v103{
  grid-area:quality!important;
}
#view-music .music-primary-controls-v111{
  grid-area:transport!important;
  display:grid!important;
  grid-template-columns:48px 54px 48px!important;
  grid-template-rows:auto auto!important;
  justify-content:center!important;
  gap:9px!important;
}
#view-music .music-primary-controls-v111 .music-volume-v111{
  grid-column:1/-1!important;
  width:100%!important;
}
#view-music .youtube-player-actions-v9{grid-area:actions!important}
#view-music .youtube-queue-v9{grid-area:queue!important;min-height:0!important}
#view-music .music-quality-control-v103,
#view-music .music-primary-controls-v111,
#view-music .youtube-player-actions-v9,
#view-music .youtube-queue-v9{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid var(--border)!important;
  border-radius:17px!important;
  background:color-mix(in srgb,var(--surface) 92%,transparent)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
#view-music .youtube-player-actions-v9{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}
#view-music .youtube-player-actions-v9 button:last-child{grid-column:1/-1!important}
#view-music .youtube-queue-v9{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
#view-music #youtubeQueueList{
  flex:1!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
}
#view-music .youtube-browser-v9{
  grid-area:browser!important;
  display:flex!important;
  flex-direction:column!important;
  padding:14px!important;
  overflow:hidden!important;
}
#view-music .youtube-search-v9{
  position:static!important;
  flex:0 0 auto!important;
  padding:0 0 11px!important;
  background:transparent!important;
}
#view-music .youtube-content-head-v9{flex:0 0 auto!important}
#view-music .youtube-results-v9{
  flex:1!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important;
  align-content:start!important;
  gap:12px!important;
  padding-right:4px!important;
  overflow:auto!important;
}
#view-music .youtube-track-card-v9{min-width:0!important}
#view-music .youtube-track-copy-v9 b{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}

/* VOICE — Discord-like stage, large tiles, centered floating controls. */
#view-voice.active{
  display:flex!important;
  flex-direction:column!important;
  height:calc(100vh - 76px)!important;
  min-height:680px!important;
  overflow:hidden!important;
}
#view-voice>.section-head{
  flex:0 0 auto!important;
  min-height:76px!important;
  margin-bottom:10px!important;
}
#view-voice>.section-head p{max-width:880px!important}
#view-voice .voice-discord-shell-v9{
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:245px minmax(0,1fr)!important;
  gap:12px!important;
  overflow:hidden!important;
}
#view-voice .voice-info-rail-v9{display:none!important}
#view-voice.voice-focus-stage-v112 .voice-discord-shell-v9,
#view-voice.voice-focus-stage-v113 .voice-discord-shell-v9{grid-template-columns:minmax(0,1fr)!important}
#view-voice.voice-focus-stage-v112 .voice-channel-rail-v9,
#view-voice.voice-focus-stage-v113 .voice-channel-rail-v9{display:none!important}
#view-voice .voice-channel-rail-v9{
  min-height:0!important;
  padding:14px!important;
  overflow:auto!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:22px!important;
  background:#0c0d10!important;
  box-shadow:0 20px 60px rgba(0,0,0,.36)!important;
}
#view-voice .voice-server-head-v9{padding:10px!important;border-radius:16px!important;background:#15161b!important}
#view-voice .voice-room-button-v9{min-height:54px!important;border-radius:14px!important}
#view-voice .voice-stage-v9{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  padding:0 0 92px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:22px!important;
  background:#050506!important;
  box-shadow:0 22px 70px rgba(0,0,0,.42)!important;
}
#view-voice .voice-stage-head-v9{
  flex:0 0 auto!important;
  min-height:62px!important;
  padding:11px 16px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  background:rgba(12,13,16,.9)!important;
}
#view-voice .voice-stage-head-v9 h3{font-size:.92rem!important}
#view-voice .voice-stage-head-v9 p{font-size:.64rem!important}
#view-voice .voice-head-actions-v9 button{height:36px!important;border-radius:11px!important}
#view-voice .voice-participant-stage-head-v104{display:none!important}
#view-voice .voice-call-state-v9{
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  padding:32px!important;
  background:radial-gradient(circle at 50% 42%,rgba(69,115,255,.11),transparent 36%),#050506!important;
}
#view-voice .voice-call-state-v9[hidden]{display:none!important}
#view-voice .voice-participant-grid-v9,
#view-voice .voice-participant-grid-v103{
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;
  grid-auto-rows:minmax(260px,1fr)!important;
  gap:10px!important;
  align-content:stretch!important;
  padding:10px!important;
  overflow:auto!important;
  background:#050506!important;
}
#view-voice .voice-participant-grid-v9[hidden],
#view-voice .voice-participant-grid-v103[hidden]{display:none!important}
#view-voice .voice-participant-card-v9,
#view-voice .voice-participant-card-v104{
  position:relative!important;
  min-height:260px!important;
  padding:24px!important;
  border:0!important;
  border-radius:8px!important;
  background:radial-gradient(circle at 50% 45%,rgba(39,70,190,.15),transparent 43%),#070b2a!important;
  box-shadow:none!important;
}
#view-voice .voice-participant-card-v104:nth-child(even){background:radial-gradient(circle at 50% 45%,rgba(186,39,170,.14),transparent 43%),#281022!important}
#view-voice .voice-participant-avatar-v9{
  width:96px!important;
  height:96px!important;
  border-radius:50%!important;
  font-size:1.6rem!important;
  box-shadow:0 12px 34px rgba(0,0,0,.38)!important;
}
#view-voice .voice-participant-card-v104.speaking{
  outline:3px solid #23d27f!important;
  outline-offset:-3px!important;
  box-shadow:inset 0 0 0 1px rgba(35,210,127,.4)!important;
}
#view-voice .voice-participant-card-v104.speaking .voice-participant-avatar-v9{box-shadow:0 0 0 6px rgba(35,210,127,.18),0 12px 34px rgba(0,0,0,.38)!important}
#view-voice .voice-card-status-v104{position:absolute!important;top:12px!important;right:12px!important}
#view-voice .voice-participant-identity-v104{position:absolute!important;left:14px!important;bottom:14px!important;padding:7px 10px!important;border-radius:9px!important;background:rgba(0,0,0,.62)!important}
#view-voice .voice-control-dock-v9,
#view-voice .voice-control-dock-v103{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:16px!important;
  top:auto!important;
  z-index:20!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  grid-template-columns:none!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:max-content!important;
  max-width:calc(100% - 24px)!important;
  margin:0!important;
  padding:7px!important;
  overflow-x:auto!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:16px!important;
  background:rgba(18,19,23,.94)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.5)!important;
  backdrop-filter:blur(18px)!important;
}
#view-voice .voice-control-v9,
#view-voice .voice-main-button{
  flex:0 0 48px!important;
  width:48px!important;
  min-width:48px!important;
  height:48px!important;
  min-height:48px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:0!important;
  border-radius:13px!important;
  background:#25262c!important;
  color:#f7f7fa!important;
}
#view-voice .voice-control-v9 span,#view-voice .voice-main-button span{font-size:1rem!important}
#view-voice .voice-control-v9 small,#view-voice .voice-main-button small{display:none!important}
#view-voice .voice-control-v9:hover,#view-voice .voice-main-button:hover{background:#32343b!important;transform:translateY(-1px)!important}
#view-voice .voice-control-v9.active,#view-voice .voice-control-v9[aria-pressed="true"]{background:#3a2027!important;color:#ff7588!important}
#view-voice #voiceLeaveButton{width:62px!important;min-width:62px!important;background:#e83d50!important;color:#fff!important}
#view-voice .voice-screen-stage-v9,
#view-voice .voice-stream-viewer-v103{
  flex:1 1 auto!important;
  min-height:0!important;
  margin:10px!important;
  border-radius:10px!important;
  overflow:hidden!important;
}
#view-voice .voice-room-chat-v103{z-index:30!important;bottom:82px!important}

/* Draggable AI affordance. */
.portal-ai-launcher{
  cursor:grab!important;
  touch-action:none!important;
  user-select:none!important;
  will-change:left,top,transform!important;
}
.portal-ai-launcher.dragging-v113{cursor:grabbing!important;transform:scale(1.06)!important;transition:none!important}
.portal-ai-launcher[data-user-positioned="true"]{right:auto!important;bottom:auto!important}

@media(max-width:1260px){
  #view-music .youtube-music-shell-v9{
    grid-template-columns:220px minmax(0,1fr)!important;
    grid-template-rows:auto minmax(310px,1fr)!important;
  }
  #view-music .youtube-player-column-v9{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(390px,1fr) auto auto auto minmax(120px,auto)!important;
    grid-template-areas:"video" "quality" "transport" "actions" "queue"!important;
    overflow:auto!important;
  }
  #view-music .youtube-player-shell-v9{min-height:390px!important;height:auto!important;aspect-ratio:16/9!important}
  #view-voice .voice-discord-shell-v9{grid-template-columns:220px minmax(0,1fr)!important}
  #view-voice .voice-participant-grid-v9,#view-voice .voice-participant-grid-v103{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}
}

@media(max-width:900px){
  #view-music.active,#view-voice.active{height:auto!important;min-height:0!important;overflow:visible!important}
  #view-music .youtube-music-shell-v9{display:flex!important;flex-direction:column!important}
  #view-music .youtube-library-v9{order:2!important}
  #view-music .youtube-player-column-v9{order:0!important}
  #view-music .youtube-browser-v9{order:1!important;min-height:520px!important}
  #view-music .youtube-player-shell-v9{min-height:300px!important}
  #view-voice .voice-discord-shell-v9{grid-template-columns:1fr!important;min-height:760px!important}
  #view-voice .voice-channel-rail-v9{max-height:230px!important}
  #view-voice .voice-stage-v9{min-height:620px!important}
  #view-voice .voice-participant-grid-v9,#view-voice .voice-participant-grid-v103{grid-template-columns:1fr!important;grid-auto-rows:minmax(240px,1fr)!important}
}

/* v11.0.15 Command Center navigation recovery */
.topbar{isolation:isolate!important}
.topbar .menu{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  position:relative!important;
  z-index:1300!important;
  touch-action:manipulation!important;
  user-select:none!important;
}
@media (min-width:821px){
  body.fp-command-center-collapsed-v113 .topbar .menu{display:grid!important;pointer-events:auto!important}
}
