body {
    font-family: sans-serif;
    background-color: #000; /* Black background */
    color: #eee; /* Light text */
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    margin: 0;
    overflow: hidden;
}

.container {
    background-color: #1a1a1a; /* Slightly lighter black */
    border-radius: 10px;
    padding: 30px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
    text-align: center;
}

.title {
    font-size: 2.5em;
    margin-bottom: 20px;
    color: #ffeb3b; /* Yellow title */
    text-shadow: 0 0 10px #ffeb3b;
}

.board {
    display: grid;
    grid-template-columns: repeat(3, 80px);
    grid-template-rows: repeat(3, 80px);
    gap: 10px;
    margin-bottom: 20px;
}

.cell {
    background-color: #222;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2em;
    cursor: pointer;
    color: #eee;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.cell:hover {
    background-color: #333;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
}

.cell.x {
    color: #f44336; /* Red for X */
    text-shadow: 0 0 8px #f44336;
}

.cell.o {
    color: #ffeb3b; /* Yellow for O */
    text-shadow: 0 0 8px #ffeb3b;
}

.controls {
    font-size: 1.2em;
    color: #ccc;
}

.message {
    margin-bottom: 10px;
    text-shadow: 0 0 5px #888;
}

#reset-button {
    background-color: #f44336; /* Red button */
    color: #fff;
    border: none;
    border-radius: 5px;
    padding: 10px 20px;
    font-size: 1em;
    cursor: pointer;
    transition: background-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

#reset-button:hover {
    background-color: #d32f2f;
    box-shadow: 0 0 10px #f44336;
}

/* Subtle pulsating light effect (optional) */
@keyframes pulse {
    0% { box-shadow: 0 0 10px #ffeb3b; }
    50% { box-shadow: 0