/* Superficies de la beta: ancho de juego real, sin el límite general de 900px.
   AR-01 y los pliegos de resultado conservan su composición propia. */
html[data-beta-r35] .screen.beta-pruebas:not(.ba-escena) {
  width: 100%; max-width: none; min-width: 0; margin: 0; padding: 0; gap: 0;
}
html[data-beta-r35] .screen.beta-pruebas:not(.ba-escena) > .bp-cuerpo {
  box-sizing: border-box; width: 100%;
}

@media (min-width: 900px) and (min-height: 421px) {
  /* Las puertas y cofres usan varias columnas; cada acción permanece con su dato. */
  html[data-beta-r35] [data-beta-pruebas] > .bp-cuerpo,
  html[data-beta-r35] [data-beta-guerra]:not(.en-campo) > .bp-cuerpo {
    max-width: 1680px; margin-inline: auto; padding: 28px 36px; gap: 24px;
  }
  html[data-beta-r35] [data-beta-pruebas] > .bp-cuerpo > .bp-lista,
  html[data-beta-r35] [data-beta-guerra]:not(.en-campo) > .bp-cuerpo > .bp-lista {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 16px;
  }
  html[data-beta-r35] [data-beta-pruebas] > .bp-cuerpo > .bp-lista > .k-tira,
  html[data-beta-r35] [data-beta-guerra]:not(.en-campo) > .bp-cuerpo > .bp-lista > .k-tira {
    min-height: 108px; padding: 16px;
  }
  html[data-beta-r35] [data-beta-pruebas] > .bp-intentos,
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .ba-estado {
    padding: 18px 24px 8px; font-size: 20px;
  }

  /* Vestíbulo de Arena: rivales juntos; defensa, clasificación y canje al lado. */
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo {
    display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    align-items: start; gap: 24px; padding: 28px 36px;
  }
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo > .bp-lista:first-child {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 16px;
  }
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo > .bp-lista:first-child > .k-tira {
    display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 12px;
    align-items: center; min-height: 156px; padding: 18px;
  }
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo > .bp-lista:first-child > .k-tira > .k-btn {
    grid-column: 1 / -1; justify-self: end; min-width: 132px;
  }
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo > .bp-lista:last-child { gap: 12px; }
  html[data-beta-r35] [data-beta-arena]:not(.ba-escena) > .bp-cuerpo > .bp-lista:last-child > .k-tira {
    min-height: 94px; padding: 14px;
  }

  /* El terreno ocupa el ancho del frente; el visor conserva su desplazamiento. */
  html[data-beta-r35] [data-beta-guerra].en-campo { height: 100%; min-height: 0; }
  html[data-beta-r35] [data-beta-guerra] .bg-terreno { max-width: none; }
  html[data-beta-r35] [data-beta-guerra].en-campo > .bg-estado { padding: 8px 20px; gap: 10px; }
  html[data-beta-r35] [data-beta-guerra] .bg-marcador { max-width: 700px; margin-inline: auto; }
  html[data-beta-r35] [data-beta-guerra] .bg-marcador i { max-width: 320px; font-size: 18px; }
  html[data-beta-r35] [data-beta-guerra] .bg-mando { min-height: 76px; gap: 12px 20px; padding: 12px 24px; }

  /* Biblioteca: árbol a la izquierda; efecto, precio y orden a la derecha. */
  html[data-beta-r35] [data-beta-guerra] .bp-pliego.bg-inv {
    width: min(1120px, calc(100% - 32px)); max-height: calc(100dvh - 96px);
    box-sizing: border-box; padding: 24px 32px; gap: 16px 36px;
    display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, 1fr);
    grid-template-areas: "titulo titulo" "arbol fondo" "arbol ramas" "arbol tarjeta" "arbol volver";
    align-items: center; justify-items: center; overflow-y: auto;
  }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .k-rotulo-pliego { display: block; grid-area: titulo; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-arbol { grid-area: arbol; --bg-alto: 112px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-fondo { grid-area: fondo; flex-wrap: wrap; white-space: normal; font-size: 18px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-ramas { grid-area: ramas; gap: 12px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-ramas .k-casilla { width: 56px; height: 56px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-tarjeta { grid-area: tarjeta; font-size: 23px; gap: 12px; min-height: 144px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .bg-tarjeta .bg-efecto { font-size: 18px; gap: 8px 12px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv > .k-btn { grid-area: volver; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv .bg-nodo-inv { width: 64px; height: 64px; margin: -40px 0 0 -32px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv .bg-nodo-inv > b { font-size: 18px; }
  html[data-beta-r35] [data-beta-guerra] .bg-inv .bg-nodo-inv > small { font-size: 13px; top: calc(100% + 5px); }
}

/* Con nueve columnas en escritorio grande, la celda admite el arte al doble.
   Las marcas, cantidades y cronómetros conservan sus anclas dentro de parcela. */
@media (min-width: 1600px) and (min-height: 700px) {
  html[data-beta-r35] [data-beta-guerra] .bg-mapa.arte-c .bg-parcela .bg-edif.png { width: 96px; }
  html[data-beta-r35] [data-beta-guerra] .bg-mapa.arte-c .bg-parcela:is(.cuartel, .central) .bg-edif.png { width: 128px; }
  html[data-beta-r35] [data-beta-guerra] .bg-mapa.arte-c .bg-parcela:is(.arbol, .arbol2)::after { width: 96px; height: 96px; }
  html[data-beta-r35] [data-beta-guerra] .bg-mapa.arte-c .bg-parcela.roca::after { width: 64px; height: 64px; }
}

/* El cambio de destino es inmediato; los accesos de escena no esperan su latido. */
html[data-beta-r35] body:has(.screen.beta-pruebas) .lat-raiz { display: none; }

/* Un único acceso abierto conserva el ancho de una entrada, no el de tres. */
@media (min-width: 900px) and (max-width: 1279px) and (min-height: 421px) {
  html[data-beta-r35] [data-beta-pruebas] > .bp-cuerpo > .bp-lista:first-child:not(.bp-puertas) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 1280px) and (min-height: 421px) {
  html[data-beta-r35] [data-beta-pruebas] > .bp-cuerpo > .bp-lista:first-child:not(.bp-puertas) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
