#grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:8px; width:min(360px, 90vw); }
.cell { aspect-ratio:1; font:800 clamp(2.4rem, 12vw, 4rem)/1 system-ui; padding:0; border-radius:15px; background:linear-gradient(145deg,#253953,#14243c); box-shadow:inset 0 2px 0 rgba(255,255,255,.08), 0 5px 10px rgba(0,0,0,.14); }
.cell.x { color:#38bdf8; } .cell.o { color:#fbbf24; } .cell.win { background:#14532d; border-color:#4ade80; }

/* Warm board and sculpted pieces mirror the game cover. */
#grid { gap:7px; padding:11px; border:5px solid #a96838; border-radius:19px; background:linear-gradient(145deg,#dda46e,#b97443); box-shadow:0 16px 28px rgba(81,47,25,.23), inset 0 2px 0 rgba(255,255,255,.35); }
.cell { border:1px solid #e4c299; background:linear-gradient(145deg,#fff4db,#f3d9ae); box-shadow:inset 0 2px 0 rgba(255,255,255,.85), 0 4px 6px rgba(90,50,23,.2); }
.cell.x { color:#0eabb5; text-shadow:0 2px 0 #067c89; }
.cell.o { color:#e47e62; text-shadow:0 2px 0 #bb5c49; }
.cell.win { background:#d8f6e5; border-color:#69b78a; }
