/* Ultimate TTT — accent #c084fc */

.meta-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 560px;
  aspect-ratio: 1;
  margin: 0 auto;
  padding: 10px;
  background: var(--panel2, #181828);
  border: 2px solid var(--line, #2a2a3a);
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4);
  user-select: none;
}

.sub-board {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  background: rgba(0,0,0,0.25);
  border: 2px solid transparent;
  border-radius: 6px;
  padding: 3px;
  transition: background 120ms, border-color 120ms, box-shadow 120ms;
}

.sub-board.active {
  border-color: #c084fc;
  background: rgba(192, 132, 252, 0.12);
  box-shadow: 0 0 0 2px rgba(192, 132, 252, 0.25), 0 0 16px rgba(192, 132, 252, 0.35);
}

.sub-board.won-x  { background: rgba(102, 192, 244, 0.10); }
.sub-board.won-o  { background: rgba(255, 153, 102, 0.10); }
.sub-board.drawn  { background: rgba(255,255,255,0.04); }

.ttt-cell {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.03);
  border-radius: 4px;
  font-weight: 700;
  font-size: clamp(12px, 3.2vw, 22px);
  cursor: default;
  aspect-ratio: 1;
  color: var(--text, #e8e8f0);
  transition: background 100ms, transform 80ms;
}

.ttt-cell.x { color: #66c0f4; }
.ttt-cell.o { color: #ff9966; }

.sub-board.active .ttt-cell.playable {
  cursor: pointer;
  background: rgba(192, 132, 252, 0.06);
}
.sub-board.active .ttt-cell.playable:hover {
  background: rgba(192, 132, 252, 0.22);
}

.ttt-cell.lastmove {
  box-shadow: inset 0 0 0 2px rgba(192, 132, 252, 0.7);
}
.ttt-cell.win {
  background: rgba(90, 222, 122, 0.22);
  color: #5ade7a;
}

.big-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(40px, 14vw, 96px);
  font-weight: 900;
  pointer-events: none;
  opacity: 0.30;
  letter-spacing: -0.05em;
}
.big-overlay.big-x    { color: #66c0f4; }
.big-overlay.big-o    { color: #ff9966; }
.big-overlay.big-draw { color: #888; opacity: 0.25; }

.history-pane {
  margin-top: 16px;
  padding: 12px;
  background: var(--panel2);
  border-radius: 8px;
  font-family: ui-monospace, monospace;
  font-size: 13px;
  max-height: 160px;
  overflow-y: auto;
  color: var(--muted);
}
.history-pane span { margin-right: 12px; color: var(--text); }

@media (max-width: 480px) {
  .meta-grid { gap: 6px; padding: 6px; }
  .sub-board { gap: 2px; padding: 2px; }
}
