/* 색 구별·숫자 기억 게임 */
.cg-board { display: grid; place-items: center; min-height: 300px; padding: 12px; border-radius: var(--r); background: var(--fill); touch-action: manipulation; user-select: none; -webkit-user-select: none; }
.cg-grid { display: grid; gap: 6px; width: 100%; max-width: 380px; aspect-ratio: 1; }
.cg-grid button { width: 100%; height: 100%; min-height: 0; padding: 0; border: 0; border-radius: 6px; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.cg-grid button:focus-visible { outline: 3px solid var(--ink); outline-offset: 1px; }
.cg-grid button.hit { outline: 3px solid var(--ink); outline-offset: 2px; }
.cg-msg { display: grid; gap: 8px; text-align: center; }
.cg-msg b { font-size: 22px; }
.cg-msg span { font-size: 14px; color: var(--ink-2); line-height: 1.55; }
.cg-num { font-size: clamp(36px, 9vw, 60px); font-weight: 700; letter-spacing: .12em; font-variant-numeric: tabular-nums; word-break: break-all; text-align: center; }
.cg-time { width: 100%; max-width: 380px; height: 6px; margin-top: 16px; border-radius: 3px; background: var(--line); overflow: hidden; }
.cg-time i { display: block; height: 100%; background: var(--blue); }
#cg-ans { font-size: 22px; letter-spacing: .1em; }
@media (max-width: 720px) { .cg-board { min-height: 260px; padding: 8px; } .cg-grid { gap: 4px; } }
