/* Cabine: um único acesso à festa e textos legíveis em monitores compactos. */
.qr-fullscreen-box{width:184px;box-sizing:border-box;padding:12px;gap:8px;right:18px;bottom:18px;opacity:1;background:var(--kp-surface-overlay,rgba(14, 10, 20,.95));border-color:var(--kp-blue-line,rgba(138, 63, 252,.38));border-radius:15px;box-shadow:0 6px 24px #0006;font-family:'Montserrat',sans-serif;text-align:center}
.qr-fullscreen-box:hover{transform:none;background:rgba(23, 17, 31,.98)}
.qr-party-name{font-size:17px;font-weight:500;line-height:1.25;color:var(--kp-text,#F5F4FA);overflow-wrap:anywhere;max-width:100%;max-height:44px;overflow:auto;letter-spacing:0}
#qrcode-fs{width:144px;height:144px;padding:8px;box-sizing:border-box;border-radius:8px;flex-shrink:0}
#qrcode-fs img,#qrcode-fs canvas{width:128px!important;height:128px!important}
.qr-fullscreen-box .qr-fs-label{font:500 16px/1.3 'Inter',sans-serif;color:var(--kp-text,#F5F4FA);letter-spacing:0;text-transform:none;text-shadow:none}
.qr-fs-room-code{width:100%;box-sizing:border-box;padding:6px;background:var(--kp-lilac-soft,rgba(138, 63, 252,.12));border-color:var(--kp-lilac-line,rgba(138, 63, 252,.38));text-shadow:none;letter-spacing:0;font-family:'Montserrat',sans-serif}
.qr-fs-room-code span{display:block;font-size:14px;font-weight:400;line-height:1.35;color:var(--kp-text-soft,#D8D2E2)}
.qr-fs-room-code strong{display:block;font-size:24px;font-weight:600;line-height:1.25;letter-spacing:2px}
.qr-mobile-link{font:400 14px/1.4 'Inter',sans-serif;color:var(--kp-blue,#9C5BFF);text-decoration:underline;text-underline-offset:3px;padding:2px}
.sidebar-queue{min-height:0}.queue-list{min-height:0;flex:1;overscroll-behavior:contain}
@media(min-width:1025px){
 .sidebar-queue .host-interaction-panel{order:-1;width:100%;box-sizing:border-box;margin:0 0 12px;padding:10px;border:1px solid rgba(170,91,210,.24);border-radius:15px;background:linear-gradient(160deg,rgba(38,24,48,.64),rgba(13,14,23,.72));box-shadow:0 8px 24px rgba(0,0,0,.2)}
 .sidebar-queue .host-interaction-panel>h4{margin:0 2px 8px;color:#b9a9c1;font:700 10px/1.2 system-ui,sans-serif;letter-spacing:.12em}
 .sidebar-queue .host-interaction-actions{display:grid;gap:8px}
 .sidebar-queue .social-dock{display:grid;grid-template-columns:1fr;gap:8px;margin:8px 0 12px}
 .sidebar-queue .host-interaction-panel .social-dock{margin:0}
 .sidebar-queue .challenge-host-dock,.sidebar-queue .social-dock{width:100%;box-sizing:border-box}
 .sidebar-queue .host-action-card{width:100%!important;min-height:58px!important;box-sizing:border-box;display:flex!important;align-items:center;gap:10px;padding:10px 12px!important;margin:0!important;border:1px solid rgba(188,98,235,.48)!important;border-radius:12px!important;background:linear-gradient(135deg,rgba(85,37,108,.62),rgba(27,25,43,.94))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 5px 16px rgba(0,0,0,.2)!important;color:#fff!important;font:600 14px/1.25 system-ui,sans-serif!important;text-align:left!important}
 .sidebar-queue .host-action-card .interaction-chip-icon{width:25px;height:25px;flex:0 0 25px;color:#FF4FD8}
 .sidebar-queue .host-action-card .interaction-chip-icon svg{width:25px;height:25px}
 .sidebar-queue .host-action-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
 .sidebar-queue .host-action-card small{display:block;margin:0;color:#d8ccdf;font:400 11px/1.3 system-ui,sans-serif;white-space:normal}
 .sidebar-queue .challenge-launch small{font-size:14px;line-height:1.4;color:#e0d7ea;opacity:1}
 .sidebar-queue .queue-header h3,.sidebar-search h3{font-size:18px;font-weight:600;line-height:1.3}
 .sidebar-search .song-item strong{font-size:15px;line-height:1.4;font-weight:500}
 .sidebar-search input{font-size:16px}
 .sidebar-queue .queue-item{line-height:1.4}
}
@media(max-width:1024px){.qr-fullscreen-box{width:160px}.qr-party-name{font-size:16px}.qr-fullscreen-box #qrcode-fs{width:120px;height:120px}.qr-fullscreen-box #qrcode-fs img,.qr-fullscreen-box #qrcode-fs canvas{width:104px!important;height:104px!important}}
#playerContainer:fullscreen .qr-fullscreen-box{bottom:120px}
@media(min-width:1025px){
 .qr-fullscreen-box{bottom:120px}

 .sidebar-queue .social-dock button,.sidebar-queue .challenge-launch,.qr-fullscreen-box,.qr-fullscreen-box *{font-family:Arial,sans-serif}
}


/* O zoom geral do desktop encolhe a cabine ate mesmo no fullscreen nativo. */
html:has(#playerContainer:fullscreen),
html:has(#playerContainer.is-native-fullscreen){zoom:1!important}

/* A apresentacao usa todo o monitor; controles e placares flutuam sobre ela. */
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen){padding:0!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) #player{
  top:0!important;
  left:0!important;
  width:100vw!important;
  height:100vh!important;
  max-height:none!important;
}

/* Informacoes legiveis, mas contidas na tarja superior do video. */
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .floating-info-box{
  top:6px!important;
  min-width:min(390px,42vw)!important;
  max-width:min(560px,46vw)!important;
  padding:8px 24px!important;
}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .floating-info-box .info-label{font-size:.7rem!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .floating-info-box h1{font-size:clamp(1.15rem,1.5vw,1.6rem)!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .floating-info-box p{font-size:.8rem!important}

:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .fs-queue-box{
  top:4px!important;
  min-width:min(520px,calc(100vw - 32px))!important;
  max-width:min(900px,calc(100vw - 360px))!important;
  padding:5px 18px!important;
  transform:translateX(-50%)!important;
}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .fs-label-header{font-size:.75rem!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .fs-col-pc.current .fs-name-pc{font-size:1.15rem!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .fs-col-pc:not(.current) .fs-name-pc{font-size:.9rem!important}
:is(#playerContainer:fullscreen,#playerContainer.is-native-fullscreen) .fs-song-pc{font-size:.78rem!important}

