body {
    font-family: 'Inter', sans-serif;
}
.puzzle-grid {
    display: grid;
    border: 2px solid #374151; /* gray-800 */
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
.puzzle-cell {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    text-transform: uppercase;
    border-right: 1px solid #d1d5db; /* gray-300 */
    border-bottom: 1px solid #d1d5db; /* gray-300 */
    aspect-ratio: 1 / 1;
    transition: background-color 0.3s ease;
}
.puzzle-cell:last-child {
    border-right: none;
}
.solution {
    background-color: #fef9c3; /* yellow-100 */
    color: #92400e; /* amber-800 */
}
