@import '/css/global.css';

.taquin-board {
  --size: 3;
  display: grid;
  grid-template-columns: repeat(var(--size), 1fr);
  gap: 5px;
  padding: 8px;
  background: var(--background-color);
  border-radius: var(--border-radius-md);
  width: 100%;
  aspect-ratio: 1;
  box-sizing: border-box;
}

.tq-tile {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--border-radius-sm);
  font-weight: 700;
  /* Scales smoothly from 3×3 to 5×5 */
  font-size: calc(min(5vmin, 2rem) * 3 / var(--size));
  background: var(--color-taquin);
  color: #fff;
  border: none;
  cursor: default;
  user-select: none;
  transition:
    transform 0.08s ease,
    filter 0.08s ease;
  aspect-ratio: 1;
  line-height: 1;
}

.tq-movable {
  cursor: pointer;
}

.tq-movable:hover {
  transform: scale(1.06);
  filter: brightness(1.12);
}

.tq-movable:active {
  transform: scale(0.97);
}

.tq-blank {
  background: transparent;
  box-shadow: inset 0 0 0 2px var(--border-color-light);
  pointer-events: none;
}

.tq-tile.tq-pop {
  animation: cellPop 0.16s ease-out;
}
