/* ============================================================
   DESMOCHEE · FASE 2.3.6M
   MESA UX · 3 BLOQUES REALES + SIN POSIBLE JUGADA EN PARTIDA
   ------------------------------------------------------------
   Capa exclusivamente visual.
   - No modifica reglas.
   - No modifica drag & drop.
   - POSIBLE JUGADA se conserva en Tutorial para no romper lecciones.
   ============================================================ */

/* 1 · En partida normal ya no mostramos la segunda "mesa"/borrador.
   El DOM sigue vivo por compatibilidad, pero deja de consumir espacio. */
.game-screen.game-screen-arena:not(.tutorial-screen-active) .human-draft-zone {
  display: none !important;
}

/* 2 · El placeholder legacy "SOLTÁ PARA BAJAR" era el cuarto bloque
   visual y tapaba/confundía BLOQUE 1. Los tres huecos físicos que ya
   genera el motor son ahora la única representación de una mesa vacía. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table .table-drop-placeholder {
  display: none !important;
}

/* Mesa vacía: tres destinos iguales, completos y fáciles de leer. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table .melds-scroll {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100% !important;
  min-height: 52px !important;
  overflow: visible !important;
  align-items: stretch !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table .human-fixed-empty-block {
  width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  padding: 16px 4px 7px !important;
  opacity: .62 !important;
  border-color: rgba(237, 243, 239, .20) !important;
  background: rgba(255, 255, 255, .018) !important;
}

/* BLOQUE 1 / 2 / 3 debe poder leerse antes de arrastrar. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table .human-fixed-empty-block::before {
  top: 5px !important;
  left: 0 !important;
  right: 0 !important;
  text-align: center !important;
  color: rgba(237, 243, 239, .58) !important;
  font-size: .38rem !important;
  letter-spacing: .35px !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table .human-fixed-empty-block::after {
  content: "＋ SOLTÁ AQUÍ" !important;
  color: rgba(237, 243, 239, .34) !important;
  font-size: .31rem !important;
  letter-spacing: .24px !important;
}

/* 3 · Durante el arrastre SOLO el destino real se vuelve protagonista. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.active-block-drop-target,
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.table-drop-target {
  opacity: 1 !important;
  transform: translateY(-2px) scale(1.02) !important;
  border-color: rgba(101, 215, 169, .96) !important;
  background: rgba(52, 150, 109, .14) !important;
  box-shadow:
    0 0 0 2px rgba(101, 215, 169, .15),
    0 0 18px rgba(101, 215, 169, .22) !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.active-block-drop-target::before,
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.table-drop-target::before {
  color: rgba(203, 250, 228, .96) !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.active-block-drop-target::after,
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block.table-drop-target::after {
  content: "SOLTÁ AQUÍ" !important;
  color: rgba(164, 239, 207, .98) !important;
}

/* La zona de mesa no necesita altura de sobra cuando está vacía.
   Al haber cartas, table-sizing.css conserva el alto seguro del naipe. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone.empty-table,
.game-screen.game-screen-arena.display-fit:not(.tutorial-screen-active)
.human-melds-zone.empty-table {
  min-height: 64px !important;
}

@media (max-width: 390px) {
  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone.empty-table .melds-scroll {
    gap: 4px !important;
  }

  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone.empty-table .human-fixed-empty-block {
    min-height: 45px !important;
    padding-inline: 2px !important;
  }

  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone.empty-table .human-fixed-empty-block::before {
    font-size: .35rem !important;
  }

  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone.empty-table .human-fixed-empty-block::after {
    font-size: .28rem !important;
  }
}


/* ============================================================
   DESMOCHEE · FASE 2.3.6N
   MESA TÁCTIL · BLOQUES ESTABLES · BOTS COMPACTOS
   ------------------------------------------------------------
   Solo UX/geometría:
   - ARMANDO ocupa BLOQUE 1/2/3 físicamente, no salta a la derecha.
   - Cartas de MESA más cómodas para dedo.
   - Dorsos de bots más compactos sin tocar sus combinaciones.
   ============================================================ */

/* 1 · Las tres posiciones físicas mantienen siempre el mismo orden.
   El !important vence el legacy de Tradicional que enviaba MESA a order:3. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-meld-index="0"],
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-fixed-block-index="0"] {
  order: 1 !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-meld-index="1"],
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-fixed-block-index="1"] {
  order: 2 !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-meld-index="2"],
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > [data-fixed-block-index="2"] {
  order: 3 !important;
}

/* Cada posición ocupa un tercio estable. Así BLOQUE 1 no desaparece
   ni cambia de lugar al pasar de vacío -> armando -> combinación. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > .human-fixed-empty-block,
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > .table-meld[data-meld-index],
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds > .table-building-group[data-fixed-block-index] {
  box-sizing: border-box !important;
  flex: 0 0 calc((100% - 12px) / 3) !important;
  width: calc((100% - 12px) / 3) !important;
  min-width: 0 !important;
  max-width: calc((100% - 12px) / 3) !important;
  min-height: 70px !important;
}

/* Los bloques vacíos ahora tienen área táctil más alta. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-fixed-empty-block {
  padding: 18px 4px 8px !important;
  align-self: stretch !important;
}

/* El grupo temporal ya no parece una cuarta zona distinta. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-building-group[data-fixed-block-index] {
  margin: 0 !important;
  padding: 17px 3px 5px !important;
  position: relative !important;
  justify-content: center !important;
  align-items: center !important;
  overflow: hidden !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-building-group[data-fixed-block-index] .table-building-label {
  position: absolute !important;
  top: 5px !important;
  left: 0 !important;
  right: 0 !important;
  text-align: center !important;
  font-size: .38rem !important;
  letter-spacing: .35px !important;
  color: rgba(237,243,239,.68) !important;
}

/* Combinación ya creada: conserva BLOQUE N visible sobre las cartas. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-meld[data-meld-index] {
  position: relative !important;
  padding: 18px 3px 5px !important;
  align-items: center !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
}
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-meld[data-meld-index]::-webkit-scrollbar {
  display: none !important;
}
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-meld[data-meld-index] .human-block-label {
  position: absolute !important;
  top: 5px !important;
  left: 0 !important;
  right: 0 !important;
  text-align: center !important;
  font-size: .38rem !important;
  letter-spacing: .35px !important;
  color: rgba(237,243,239,.68) !important;
  pointer-events: none !important;
}

/* 2 · Cartas en MESA: mínimo táctil cercano a 44px en teléfono.
   Conservan proporción y no se deforman. */
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone .table-card,
.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone .table-building-card,
.game-screen.game-screen-arena.display-fit:not(.tutorial-screen-active)
.human-melds-zone .table-card,
.game-screen.game-screen-arena.display-fit:not(.tutorial-screen-active)
.human-melds-zone .table-building-card {
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  height: 63px !important;
  min-height: 63px !important;
  max-height: 63px !important;
  flex: 0 0 44px !important;
  font-size: .82rem !important;
  touch-action: none !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.human-melds-zone .table-card + .table-card,
.game-screen.game-screen-arena.display-fit:not(.tutorial-screen-active)
.human-melds-zone .table-card + .table-card {
  margin-left: -3px !important;
}

.game-screen.game-screen-arena:not(.tutorial-screen-active)
.table-building-cards {
  width: 100% !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none !important;
}

/* 3 · Bots: reducimos SOLO los dorsos de mano. Las combinaciones
   (bot-melds / tokens) conservan exactamente su tamaño anterior. */
.game-screen.game-screen-arena.display-fit .bot-card-back {
  width: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  height: 33px !important;
  min-height: 33px !important;
  max-height: 33px !important;
  flex: 0 0 22px !important;
  border-radius: 4px !important;
}
.game-screen.game-screen-arena.display-fit .bot-card-back + .bot-card-back {
  margin-left: -12px !important;
}

.game-screen.game-screen-arena:not(.display-fit) .bot-card-back {
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  flex: 0 0 24px !important;
  border-radius: 5px !important;
}
.game-screen.game-screen-arena:not(.display-fit) .bot-card-back + .bot-card-back {
  margin-left: -13px !important;
}

.game-screen.game-screen-arena .bot-hand,
.game-screen.game-screen-arena.display-fit .bot-hand {
  min-height: 36px !important;
}

@media (max-width: 390px) {
  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds > .human-fixed-empty-block,
  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds > .table-meld[data-meld-index],
  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds > .table-building-group[data-fixed-block-index] {
    flex-basis: calc((100% - 8px) / 3) !important;
    width: calc((100% - 8px) / 3) !important;
    max-width: calc((100% - 8px) / 3) !important;
  }

  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone .melds-scroll {
    gap: 4px !important;
  }

  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone .table-card,
  .game-screen.game-screen-arena:not(.tutorial-screen-active)
  .human-melds-zone .table-building-card {
    width: 43px !important;
    min-width: 43px !important;
    max-width: 43px !important;
    height: 62px !important;
    min-height: 62px !important;
    max-height: 62px !important;
    flex-basis: 43px !important;
  }
}
