/* Native entry and preview; the live stage and ecosystem panels use HolaSalas. */
.live-native .panel-cabecera{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.live-native .panel-cabecera button{min-height:40px;padding:6px;font-size:12px;margin:0}.live-native #reunion.panel-minimizado .panel-cabecera{display:flex}.live-native .panel-contenido,.live-native .vista-panel,.live-native .componer-chat{width:100%;min-width:0;max-width:100%}.live-native .chat-panel{grid-template-rows:minmax(0,1fr) auto auto}.live-native .componer-chat input{min-width:0}.live-native .panel-lateral{min-width:0}
.live-native main{width:min(1500px,100%);padding:24px}.live-native #configuracion .solo-lobby,.live-native #entrar,.live-native #entrarSinMedios,.live-native #directo,.live-native #revocarInvitacion,.live-native #salir{display:none!important}
.live-native:not(.reunion-activa) #configuracion{display:none}.live-native #configuracion{padding:0;border:0;box-shadow:none;margin:0}
.live-heading{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-bottom:22px}.live-heading h1{font-size:clamp(30px,4vw,48px);margin:0}.live-heading p{color:var(--suave);margin:8px 0}.live-heading .live-kicker{font-size:13px;color:var(--oro);font-weight:800;letter-spacing:.12em}.live-phase{padding:10px 14px;border-radius:999px;border:1px solid var(--linea2);white-space:nowrap;font-size:14px}.live-phase.active{background:#802735;color:#fff}
.live-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:20px}.live-preview-card,.live-settings{background:var(--panel);border:1px solid var(--linea);border-radius:18px;padding:20px}.live-preview{position:relative;aspect-ratio:16/9;background:#02070e;border-radius:12px;overflow:hidden}.live-preview video{width:100%;height:100%;object-fit:contain}.live-preview-tag{position:absolute;bottom:14px;left:14px;font-size:12px;padding:6px 9px;border-radius:6px;background:#07111fdd}.live-preview #livePlaceholder{position:absolute;inset:0;display:flex;gap:12px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--suave)}#livePlaceholder strong{font-size:24px;color:var(--texto)}
.live-preview-actions,.live-toolbar-actions,.live-share-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.live-meter{display:flex;align-items:center;gap:12px;font-size:14px}.live-meter meter{flex:1;min-width:40px}.live-settings{display:grid;align-content:start;gap:9px}.live-native label{font-size:14px}.live-native input,.live-native select{min-height:44px;width:100%}.live-check{display:flex;align-items:flex-start;gap:10px;line-height:1.45}.live-check input{width:20px;min-height:20px;flex:0 0 20px;margin:2px 0}.live-consent{margin:8px 0;padding:14px;border:1px solid #937723;border-radius:10px}.live-hint{color:var(--suave);font-size:13px;line-height:1.5;margin:4px 0}.live-native #liveLanguages{display:grid;gap:12px}.live-native #liveLanguages .campo-ayuda{font-size:13px}
.live-toolbar{margin:18px 0;padding:14px 18px;background:#0d1b2f;border:1px solid var(--linea);border-radius:12px}.live-toolbar p{margin:0;font-size:16px}.live-toolbar-actions{margin:12px 0}.live-share{display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:24px;padding:24px;background:var(--panel);border:1px solid var(--oro);border-radius:16px;margin:18px 0}.live-share h2{margin-top:0}.live-share a{padding:12px;color:var(--oro)}#liveQr{display:grid;place-items:center;background:white;border-radius:10px}#liveQr img{width:180px;height:180px;max-width:100%;object-fit:contain;image-rendering:pixelated}
.live-native.reunion-activa #liveSetup{display:none}.live-native.reunion-activa main{padding:10px}.live-native.reunion-activa #liveToolbar{position:fixed;left:10px;right:10px;top:5px;z-index:30;margin:0;padding:8px 12px}.live-native.reunion-activa #liveToolbar p{font-size:14px}.live-native.reunion-activa .live-toolbar-actions{margin:6px 0 0}.live-native.reunion-activa #liveMobile{display:none}.live-native.reunion-activa #reunion{padding-top:104px}.live-native.reunion-activa #liveShare{position:fixed;z-index:60;top:120px;right:20px;max-width:min(660px,calc(100% - 40px));box-shadow:0 24px 80px #000c}.live-native button{min-height:44px;font-size:14px}
@media(max-width:800px){.live-native main{padding:12px}.live-grid{grid-template-columns:1fr}.live-heading{align-items:flex-start;gap:8px}.live-heading h1{font-size:30px}.live-phase{font-size:12px;padding:8px}.live-preview-card,.live-settings{padding:14px}.live-share{grid-template-columns:1fr;padding:18px}#liveQr{width:196px;padding:8px;justify-self:center}.live-native.reunion-activa #reunion{padding-top:150px}.live-native.reunion-activa #liveShare{max-height:calc(100dvh - 180px);overflow:auto;top:145px}.live-native.reunion-activa .live-toolbar-actions{flex-wrap:nowrap;overflow:auto}.live-toolbar-actions button{white-space:nowrap}.live-meter{flex-wrap:wrap}.live-native input,.live-native select{font-size:16px}}

.live-native.reunion-activa .meeting-layout{height:calc(100dvh - 246px);min-height:160px}
@media(max-width:800px){.live-native.reunion-activa .meeting-layout{height:calc(100dvh - 296px)}}

/* HS-LIVE6: fullscreen keeps the stage and essential controls usable on phones.
   The class is also the safe fallback on iOS when page-level Fullscreen API is absent. */
html.live-fullscreen-root,body.live-fullscreen{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
.live-native.reunion-activa.live-fullscreen{position:fixed;inset:0;z-index:2147483000;width:100%;height:100vh;height:100svh;height:100dvh;background:#01050a;overflow:hidden}
.live-native.reunion-activa.live-fullscreen main{position:fixed;inset:0;width:100%;max-width:none;height:100vh;height:100svh;height:100dvh;margin:0;padding:0!important;overflow:hidden}
.live-native.reunion-activa.live-fullscreen #reunion{height:100vh;height:100svh;height:100dvh;padding:0!important}
.live-native.reunion-activa.live-fullscreen .meeting-layout{position:fixed;inset:0;display:block;width:100%;height:100vh!important;height:100svh!important;height:100dvh!important;min-height:0!important}
.live-native.reunion-activa.live-fullscreen .escenario-wrap,.live-native.reunion-activa.live-fullscreen .escenario{width:100%;height:100%;max-width:none;min-height:0;aspect-ratio:auto;border:0;border-radius:0}
.live-native.reunion-activa.live-fullscreen .escenario video{width:100%;height:100%;object-fit:contain}
.live-native.reunion-activa.live-fullscreen #liveToolbar{top:max(5px,env(safe-area-inset-top));left:max(6px,env(safe-area-inset-left));right:max(6px,env(safe-area-inset-right));z-index:50;width:auto;padding:5px;background:rgb(4 12 22 / 82%);border-color:rgb(69 98 125 / 75%);border-radius:12px;box-shadow:0 7px 24px rgb(0 0 0 / 35%);backdrop-filter:blur(12px)}
.live-native.reunion-activa.live-fullscreen #liveToolbar>p,.live-native.reunion-activa.live-fullscreen #liveMobile{display:none}
.live-native.reunion-activa.live-fullscreen .live-toolbar-actions{display:flex;margin:0;gap:6px;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.live-native.reunion-activa.live-fullscreen .live-toolbar-actions::-webkit-scrollbar{display:none}
.live-native.reunion-activa.live-fullscreen .live-toolbar-actions button{flex:0 0 auto;min-height:38px;padding:7px 10px;font-size:12px;white-space:nowrap}
.live-native.reunion-activa.live-fullscreen .meeting-topbar{position:fixed;top:calc(max(5px,env(safe-area-inset-top)) + 52px);right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));z-index:34;min-height:36px;padding:7px 9px;color:#fff;background:linear-gradient(90deg,rgb(1 5 10 / 78%),rgb(1 5 10 / 18%));border-radius:9px;pointer-events:none}
.live-native.reunion-activa.live-fullscreen .meeting-topbar h2{max-width:55vw;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.live-native.reunion-activa.live-fullscreen #panelLateral{position:fixed;top:calc(max(5px,env(safe-area-inset-top)) + 94px);right:max(6px,env(safe-area-inset-right));bottom:calc(66px + env(safe-area-inset-bottom));z-index:45;width:min(92vw,370px);height:auto;border-radius:13px;background:rgb(7 17 31 / 96%);box-shadow:-12px 12px 38px rgb(0 0 0 / 48%);backdrop-filter:blur(12px)}
.live-native.reunion-activa.live-fullscreen #reunion.panel-minimizado #panelLateral{width:50px;box-shadow:none}
.live-native.reunion-activa.live-fullscreen .subtitulo-escenario{right:max(3%,env(safe-area-inset-right));bottom:calc(70px + env(safe-area-inset-bottom));left:max(3%,env(safe-area-inset-left))}
.live-native.reunion-activa.live-fullscreen #reunion.panel-minimizado .subtitulo-escenario{right:max(62px,calc(54px + env(safe-area-inset-right)))}
.live-native.reunion-activa.live-fullscreen #controlDock{right:0;bottom:0;left:0;z-index:50;display:block;padding:5px max(7px,env(safe-area-inset-right)) calc(5px + env(safe-area-inset-bottom)) max(7px,env(safe-area-inset-left));background:rgb(4 12 22 / 84%);backdrop-filter:blur(12px)}
.live-native.reunion-activa.live-fullscreen #controlDock .acciones{width:100%;margin:0;justify-content:flex-start;flex-wrap:nowrap;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
.live-native.reunion-activa.live-fullscreen #controlDock .acciones::-webkit-scrollbar{display:none}
.live-native.reunion-activa.live-fullscreen #controlDock .acciones>*{flex:0 0 auto;min-height:38px;padding:7px 10px;font-size:12px;white-space:nowrap}
.live-native.reunion-activa.live-fullscreen #controlDock #estado{display:none}
.live-native.reunion-activa.live-fullscreen .diagnostico{display:none}
.live-native.reunion-activa.live-fullscreen #liveShare{top:calc(max(5px,env(safe-area-inset-top)) + 54px);right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));max-width:none;max-height:calc(100dvh - 130px);overflow:auto}

@media(max-width:900px){
  .live-native.reunion-activa.live-fullscreen .meeting-meta{font-size:11px}
  .live-native.reunion-activa.live-fullscreen .meeting-meta #calidadVideo{display:none}
  .live-native.reunion-activa.live-fullscreen .subtitulo-escenario #subtituloActual{min-height:48px;padding:7px 10px;font-size:clamp(15px,4.2vw,20px);line-height:1.22;border-radius:10px}
  .live-native.reunion-activa.live-fullscreen #nombreSubtitulo{font-size:10px}
  .live-native.reunion-activa.live-fullscreen .consentimiento-banner{top:100px;right:8px;left:8px;max-height:calc(100dvh - 175px);overflow:auto}
}
@media(max-width:430px){
  .live-native.reunion-activa.live-fullscreen #liveShareToggle,.live-native.reunion-activa.live-fullscreen #liveInviteTeam{max-width:118px;overflow:hidden;text-overflow:ellipsis}
  .live-native.reunion-activa.live-fullscreen .meeting-topbar{top:calc(max(5px,env(safe-area-inset-top)) + 50px)}
  .live-native.reunion-activa.live-fullscreen .meeting-topbar .meeting-meta span:not(#directoBadge):not(#grabacionBadge):not(#contadorParticipantes){display:none}
  .live-native.reunion-activa.live-fullscreen #panelLateral{top:calc(max(5px,env(safe-area-inset-top)) + 88px)}
  .live-native.reunion-activa.live-fullscreen .subtitulo-escenario{bottom:calc(60px + env(safe-area-inset-bottom))}
}
@media(max-height:500px) and (orientation:landscape){
  .live-native.reunion-activa.live-fullscreen .meeting-topbar{top:calc(max(3px,env(safe-area-inset-top)) + 45px);padding:4px 7px}
  .live-native.reunion-activa.live-fullscreen #panelLateral{top:calc(max(3px,env(safe-area-inset-top)) + 78px);bottom:calc(53px + env(safe-area-inset-bottom))}
  .live-native.reunion-activa.live-fullscreen #controlDock .acciones>*,.live-native.reunion-activa.live-fullscreen .live-toolbar-actions button{min-height:34px;padding:5px 8px}
  .live-native.reunion-activa.live-fullscreen .subtitulo-escenario{right:8%;bottom:calc(54px + env(safe-area-inset-bottom));left:8%}
  .live-native.reunion-activa.live-fullscreen #reunion.panel-minimizado .subtitulo-escenario{right:max(62px,calc(54px + env(safe-area-inset-right)))}
}
