/* 1. GRID PARENT */
#hitori-grid {
    touch-action: none;
    user-select: none;
    max-width: 100vw;
    overflow-x: auto;
    box-sizing: border-box;
}

/* 2. BASE CELL */
.hitori-cell {
    transition: all 0.2s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

/* 3. STATE 1 (SHADED) */
.cell-shaded {
    background-color: #334155;
    border-color: transparent !important;
}

.dark .cell-shaded {
    background-color: #0f172a;
    border-color: transparent !important;
}

/* 4. STATE 2 (CIRCLED) */
.cell-circled {
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid #22c55e;
}

/* 5. ERROR STATE */
.cell-error {
    background-color: #fee2e2;
    color: #ef4444;
}

.dark .cell-error {
    background-color: #7f1d1d;
    color: #fca5a5;
}

/* Prevent horizontal overflow expanding document width beyond viewport */
body {
    overflow-x: hidden;
    max-width: 100vw;
}

/* Shift board column to the right on desktop to balance Gecko image */
@media (min-width: 768px) {
    #ln-board-column {
        transform: translateX(170px);
    }
}