.game-board {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    max-width: 350px;
    background-color: var(--divider-color); /* Lines color */
    padding: 10px;
    border-radius: 10px;
}

.cell {
    background-color: var(--card-bg);
    height: 100px;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 3.5rem;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
    user-select: none;
}

.cell:hover:not(.taken) {
    background-color: var(--button-hover-bg); /* Subtle highlight */
    opacity: 0.8;
}

.cell.taken {
    cursor: default;
}

/* X styling */
.cell.x {
    color: var(--link-color); /* Teal from theme */
    text-shadow: 0 0 10px rgba(26, 188, 156, 0.4);
}

/* O styling */
.cell.o {
    color: #e74c3c; /* Red */
    text-shadow: 0 0 10px rgba(231, 76, 60, 0.4);
}

.score-board {
    font-size: 1.2rem;
    font-weight: bold;
}

.player-score {
    background-color: var(--card-bg);
    border: 1px solid var(--card-border);
}

body.dark-theme .cell {
    background-color: #2c3e50;
}
body.dark-theme .game-board {
    background-color: #1a252f;
}