/* Cambio 30 · Distribución adaptable, sin cambiar navegación ni contenido.
   Los menús pueden desplazarse; la actividad conserva cabecera y acciones fijas. */
button, [role="button"] { touch-action: manipulation; }
/* Sin filtros de pantalla completa sobre paisajes que ya tienen su propia luz. */
@media (max-width:1000px) {
  #pantallaMenu.pantallaMenu:not(.oculto) {
    padding: max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)) !important;
  }
  #pantallaMenu.pantallaMenu .layoutMenuPrincipalV311 {gap:10px!important;max-width:760px!important;}
  #pantallaMenu.pantallaMenu .layoutMenuPrincipalV311 #panelJugadorV3 {
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    align-items:center!important;gap:6px 10px!important;padding:9px!important;
    border-radius:20px!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 .cabeceraPanelJugadorV3 {
    display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;gap:3px 7px!important;align-items:center!important;
    margin:0!important;padding:0!important;min-width:0!important;min-height:64px!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 #avatarPanelJugadorV3 {
    grid-column:1!important;grid-row:1/3!important;width:64px!important;height:64px!important;
    min-width:64px!important;margin:0!important;padding:0!important;
  }
  #pantallaMenu.pantallaMenu #avatarPanelJugadorV3 .avatarCompuesto {width:60px!important;height:60px!important;min-width:60px!important;flex:0 0 60px!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 .etiquetaPanelJugadorV3 {
    grid-column:2!important;align-self:end!important;font-size:9px!important;line-height:1.2!important;margin:0!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 #nombrePanelJugadorV3 {
    grid-column:2!important;align-self:start!important;text-align:left!important;white-space:normal!important;
    overflow-wrap:anywhere!important;font-size:14px!important;line-height:1.15!important;margin:0!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 .statsPanelJugadorV3 {
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;gap:4px!important;margin:0!important;padding:0!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 .statPanelJugadorV3 {min-width:0!important;padding:5px 2px!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 .statPanelJugadorV3 > span {font-size:8px!important;gap:1px!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 .statPanelJugadorV3 .iconoStatV28 {width:21px!important;height:21px!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 .statPanelJugadorV3 strong {font-size:14px!important;line-height:1.2!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 #accionesPanelJugadorV3 {
    grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-areas:none!important;
    gap:5px!important;margin:0!important;width:100%!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 #accionesPanelJugadorV3 > button {
    grid-area:auto!important;min-width:0!important;min-height:52px!important;padding:5px 2px!important;gap:3px!important;
    flex-direction:column!important;justify-content:center!important;border-radius:11px!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 .iconoAccionPanelV3,
  #pantallaMenu.pantallaMenu #panelJugadorV3 .iconoPanelV28 {width:24px!important;height:24px!important;min-width:24px!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 .textoAccionPanelV3 {font-size:10px!important;line-height:1.12!important;text-align:center!important;white-space:normal!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 #atajosAprendizajeMenuV1 {
    grid-column:1/-1!important;gap:5px!important;margin:0!important;
  }
  #pantallaMenu.pantallaMenu #panelJugadorV3 #atajosAprendizajeMenuV1 button {min-height:44px!important;padding:4px!important;font-size:10px!important;}
  #pantallaMenu.pantallaMenu:not(.oculto) .layoutMenuPrincipalV311 .tituloMundos {font-size:clamp(18px,4.6vw,22px)!important;line-height:1.1!important;}
  #pantallaMenu.pantallaMenu .layoutMenuPrincipalV311 #tarjetaProgresoGeneral {padding:10px!important;border-radius:18px!important;}
  #pantallaMenu.pantallaMenu .cabeceraProgresoGeneral {margin:0!important;gap:5px!important;}
  #pantallaMenu.pantallaMenu .cabeceraProgresoGeneral h2 {font-size:17px!important;line-height:1.2!important;margin:0!important;}
  #pantallaMenu.pantallaMenu #rotadorProgresoMenuV1 .controlRotadorProgresoV1 {height:44px;min-height:44px;grid-template-columns:44px minmax(0,1fr) 44px;}
  #pantallaMenu.pantallaMenu #rotadorProgresoMenuV1 .controlRotadorProgresoV1 button {height:44px;min-height:44px;width:44px;}
  #pantallaMenu.pantallaMenu #rotadorProgresoMenuV1[data-dos="false"] .controlRotadorProgresoV1 {height:20px;min-height:20px;}
  #pantallaMenu.pantallaMenu #rotadorProgresoMenuV1[data-dos="false"] .controlRotadorProgresoV1 button {height:20px;min-height:20px;}
  #pantallaMenu.pantallaMenu #indicadorModoActualV1 {margin:5px 0!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral {gap:6px!important;margin-top:6px!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral .botonMundoProgresoV3 {
    min-height:62px!important;padding:6px!important;gap:6px!important;border-radius:12px!important;
  }
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral .iconoMundoProgreso {position:static!important;transform:none!important;margin:0!important;flex:0 0 32px!important;width:32px!important;min-width:32px!important;height:32px!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral .iconoMundoV28 {width:34px!important;height:34px!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral .botonMundoProgresoV3 > div {flex:1!important;padding:0!important;min-width:0!important;gap:3px!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral .botonMundoProgresoV3 strong {font-size:13px!important;line-height:1.15!important;white-space:normal!important;}
  #pantallaMenu.pantallaMenu #mundosProgresoGeneral small {font-size:10px!important;line-height:1.15!important;white-space:normal!important;}
  #pantallaMenu.pantallaMenu .caminoRangosGeneral {gap:4px!important;margin-top:7px!important;padding-top:5px!important;}
  #pantallaMenu.pantallaMenu .hitoRangoGeneral {min-height:42px!important;padding:4px 2px!important;}
  /* Pintar solo la parte visible de los catálogos largos. Mantiene su altura y sus botones. */
  #opcionesAvatarStudio .opcionAvatarStudio,
  #pantallaTiendaAvatar .tarjetaItemTiendaAvatar {content-visibility:auto;contain-intrinsic-size:auto 150px;}
}
@media (min-width:600px) and (max-width:1000px) and (max-height:520px) {
  #pantallaMenu.pantallaMenu .layoutMenuPrincipalV311 {
    display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;
    grid-template-areas:"perfil titulo" "perfil mundos"!important;align-items:start!important;gap:8px!important;
  }
  #pantallaMenu.pantallaMenu .layoutMenuPrincipalV311 #panelJugadorV3 {grid-area:perfil!important;position:sticky!important;top:8px!important;grid-template-columns:minmax(0,1fr)!important;}
  #pantallaMenu.pantallaMenu #panelJugadorV3 #accionesPanelJugadorV3 {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  #pantallaMenu.pantallaMenu .tituloMundos {grid-area:titulo!important;}
  #pantallaMenu.pantallaMenu #tarjetaProgresoGeneral {grid-area:mundos!important;}
}
/* Reglas del mismo nivel de cascada que la interfaz aprobada del Cambio 26. */
@layer silabasPiloto {
  #pantallaSilabasV1 {height:100vh!important;height:100dvh!important;min-height:0!important;box-sizing:border-box!important;}
  @media(max-width:760px) {
    #pantallaSilabasV1 .sv-cabecera {grid-template-columns:149px minmax(0,1fr) 44px!important;}
    #pantallaSilabasV1 #svGuia,#pantallaSilabasV1 #svSalir {min-height:44px!important;height:44px!important;}
    #pantallaSilabasV1 #svSalir {min-width:44px!important;width:44px!important;}
    #pantallaSilabasV1 .sv-cuerpo.sv-actividad,#pantallaSilabasV1[data-modo="desafio"] .sv-actividad {grid-template-rows:64px minmax(0,1fr)!important;}
    #pantallaSilabasV1 .sv-consigna {font-size:clamp(16px,4vw,19px)!important;line-height:1.25!important;}
    #pantallaSilabasV1 .sv-opcion {min-height:44px!important;}
    #pantallaSilabasV1 .sv-tablero {overscroll-behavior:contain;}
  }
  @media (max-height:480px) and (min-width:600px) {
    #pantallaSilabasV1,#pantallaSilabasV1.sv-con-tiempo {grid-template-rows:44px minmax(0,1fr) 90px!important;}
    #pantallaSilabasV1 .sv-cuerpo.sv-actividad,#pantallaSilabasV1[data-modo="desafio"] .sv-actividad {grid-template-rows:34px minmax(0,1fr)!important;}
    #pantallaSilabasV1 .sv-consigna {font-size:15px!important;line-height:1.2!important;}
    #pantallaSilabasV1 .sv-opcion {font-size:15px!important;min-height:44px!important;}
    #pantallaSilabasV1 .sv-pie {grid-template-rows:40px 44px!important;gap:6px!important;}
    #pantallaSilabasV1 .sv-acciones,#pantallaSilabasV1 .sv-acciones .sv-primario,#pantallaSilabasV1 .sv-acciones .sv-secundario {height:44px!important;min-height:44px!important;font-size:14px!important;}
  }
}
@media(max-width:1000px) {
  #pantallaMenu.pantallaMenu #panelJugadorV3 .textoAccionPanelV3 {overflow-wrap:anywhere!important;letter-spacing:0!important;font-family:'Trebuchet MS',Arial,sans-serif!important;}
  #pantallaMenu.pantallaMenu #tarjetaProgresoGeneral .cabeceraProgresoGeneral {display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:space-between!important;min-height:44px!important;}
  #pantallaMenu.pantallaMenu .rangoAventureroGeneral {min-width:0!important;gap:7px!important;}
  #pantallaMenu.pantallaMenu #contadorProgresoGeneral {flex:none!important;font-size:13px!important;padding:3px 6px!important;margin:0!important;}
  #pantallaMenu.pantallaMenu #nombreRangoGeneral {font-size:17px!important;line-height:1.15!important;}
  #pantallaMenu.pantallaMenu #iconoRangoGeneral {width:36px!important;height:36px!important;flex:0 0 36px!important;}
}
@media(max-width:1000px) {
  #pantallaMenu.pantallaMenu .caminoRangosGeneral {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:visible!important;}
  #pantallaMenu.pantallaMenu .hitoRangoGeneral {min-width:0!important;width:auto!important;}
}
@layer silabasPiloto {
  /* safe center impide recortar el principio de un tablero alto. */
  #pantallaSilabasV1 .sv-tablero {justify-content:safe center!important;align-content:safe center!important;}
  @media(max-width:760px) {
    #pantallaSilabasV1 .sv-titulo-linea {grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}
    #pantallaSilabasV1 .sv-meta-actividad {white-space:normal!important;}
    #pantallaSilabasV1 .sv-marca-curso {white-space:normal!important;text-align:center!important;}
  }
  @media(max-width:380px) {
    #pantallaSilabasV1,#pantallaSilabasV1.sv-con-tiempo {grid-template-rows:82px minmax(0,1fr) 108px!important;gap:6px!important;padding:6px!important;}
    #pantallaSilabasV1 .sv-cabecera {height:82px!important;min-height:82px!important;grid-template-columns:minmax(0,1fr) 44px!important;grid-template-rows:44px 34px!important;gap:4px!important;}
    #pantallaSilabasV1 .sv-estado {grid-column:1!important;grid-row:1!important;}
    #pantallaSilabasV1 #svSalir {grid-column:2!important;grid-row:1!important;}
    #pantallaSilabasV1 .sv-marca {grid-column:1/-1!important;grid-row:2!important;gap:1px!important;}
    #pantallaSilabasV1 .sv-marca-curso {font-size:11px!important;}
    #pantallaSilabasV1 .sv-marca-nivel {font-size:14px!important;}
    #pantallaSilabasV1[data-modo] .sv-contexto {gap:4px!important;padding:0 2px 4px!important;}
    #pantallaSilabasV1[data-modo] .sv-consigna {font-size:16px!important;line-height:1.2!important;}
    #pantallaSilabasV1 .sv-cuerpo.sv-actividad,#pantallaSilabasV1[data-modo="desafio"] .sv-actividad {grid-template-rows:54px minmax(0,1fr)!important;padding:7px!important;gap:4px!important;}
    #pantallaSilabasV1 .sv-meta-actividad,#pantallaSilabasV1 .sv-titulo-reto {font-size:11px!important;line-height:1.15!important;}
    #pantallaSilabasV1 .sv-tablero {gap:5px!important;padding:2px!important;}
    #pantallaSilabasV1[data-modo] .sv-palabra {font-size:23px!important;margin:0!important;}
    #pantallaSilabasV1 .sv-pie {grid-template-rows:58px 44px!important;}
    #pantallaSilabasV1 .sv-barra-estado {height:58px!important;min-height:58px!important;padding:4px!important;}
    #pantallaSilabasV1 .sv-aviso {height:48px!important;min-height:48px!important;max-height:48px!important;gap:4px!important;}
    #pantallaSilabasV1 .sv-opcion {font-size:15px!important;padding:6px!important;}
  }
  @media(max-height:600px) and (max-width:1000px) {
    #pantallaSilabasV1[data-modo] .sv-con-doble .sv-tablero.sv-tablero-doble {display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-content:start!important;gap:6px!important;}
    #pantallaSilabasV1[data-modo] .sv-con-doble .sv-doble-grupo {min-width:0!important;min-height:0!important;margin:0!important;padding:0 4px 4px!important;}
    #pantallaSilabasV1[data-modo] .sv-con-doble .sv-doble-grupo legend {font-size:13px!important;line-height:1.2!important;}
    #pantallaSilabasV1[data-modo] .sv-con-doble .sv-opciones.sv-opciones-dobles {grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important;}
    #pantallaSilabasV1[data-modo] .sv-con-doble .sv-opciones-dobles .sv-opcion {min-width:0!important;min-height:44px!important;font-size:13px!important;padding:3px 1px!important;overflow-wrap:anywhere!important;}
  }
  @media(max-height:480px) and (min-width:600px) {
    #pantallaSilabasV1 .sv-titulo-linea {grid-template-columns:minmax(90px,1fr) auto minmax(100px,1fr)!important;}
  }
}
