/* Visual Sudoku — tool-specific styles. Shared styles live in assets/css/.
   Acento del módulo Razonamiento (teal --mod-razonamiento). */

.tool-header h1 { color: var(--mod-razonamiento); }

.btn:not(.btn-secundario) {
  background: var(--mod-razonamiento);
}

.instruccion { font-size: var(--texto-base); }

.centrado-fila { justify-content: center; }

.btn-nivel { min-width: 300px; align-self: center; }

.nivel-info {
  font-weight: 400;
  font-size: var(--texto-pequeno);
  opacity: 0.9;
}

.progress-bar { margin-top: var(--espacio); }

.estado {
  font-size: var(--texto-base);
  font-weight: 700;
  min-height: 1.4em;
}

.tablero-sudoku {
  display: grid;
  grid-template-columns: repeat(4, minmax(64px, 84px));
  gap: 6px;
  justify-content: center;
  margin: 0 auto;
  padding: 10px;
  background: var(--color-superficie);
  border: 3px solid var(--color-borde);
  border-radius: var(--radio);
}

.celda {
  min-height: 64px;
  font-size: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-fondo);
  border: 2px solid var(--color-borde);
  border-radius: 10px;
  font-family: inherit;
}

/* Bloques 2×2 alternos sombreados para distinguir "las cajas" */
.celda.bloque-b { background: var(--mod-razonamiento-suave); }

.celda.fija { cursor: default; }

.celda.hueco {
  cursor: pointer;
  border-style: dashed;
  border-width: 3px;
}

.celda.hueco:hover { border-color: var(--mod-razonamiento); }

.celda.activa {
  border-color: var(--mod-razonamiento);
  border-style: solid;
  background: #FFFFFF;
  box-shadow: 0 0 0 3px var(--mod-razonamiento-suave);
}

.celda.recien {
  border-color: var(--color-acierto);
  background: var(--color-acierto-suave);
}

.paleta {
  display: flex;
  gap: var(--espacio);
  justify-content: center;
  flex-wrap: wrap;
}

.btn-picto {
  min-width: 72px;
  min-height: 72px;
  font-size: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-superficie);
  border: 3px solid var(--color-borde);
  border-radius: var(--radio);
  font-family: inherit;
  cursor: pointer;
}

.btn-picto:hover { border-color: var(--mod-razonamiento); }

.emoji-grande { font-size: 96px; }

#pantallaFinal { padding-top: 48px; }

#pantallaFinal .btn { align-self: center; min-width: 280px; }

@media (max-width: 480px) {
  .tablero-sudoku { grid-template-columns: repeat(4, minmax(56px, 1fr)); gap: 4px; }
  .celda { min-height: 64px; font-size: 28px; }

#pantallaFinal .transferencia {
  margin: 8px auto 24px;
  font-size: 1.1rem;
  color: var(--color-texto-secundario, #555);
  max-width: 480px;
}
}
