/* Beatland Games · board games (checkers, chess): purple board, our heroes against the minions of Dissonance */
.board { gap:10px; }
#hTime { display:none !important; }
.lvls { display:flex; gap:6px; justify-content:center; }
.lvls button { padding:7px 14px; border-radius:999px; border:3px solid var(--o); background:rgba(13,6,48,.6); color:#d9ceff; font:700 14px/1 Fredoka,sans-serif; letter-spacing:.04em; }
.lvls button.on { background:linear-gradient(180deg,#f0ff9a,#42e22b); color:#1b0a55; box-shadow:0 3px 0 var(--os); }
.bb { --s:min(100%, calc(100svh - 200px), 560px); width:var(--s); aspect-ratio:1; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); grid-template-rows:repeat(8,minmax(0,1fr)); border-radius:18px; overflow:hidden;
  box-shadow:0 0 0 4px var(--o),0 10px 0 4px var(--os),0 28px 50px rgba(0,0,0,.5); touch-action:manipulation; user-select:none; -webkit-user-select:none; }
.sq { position:relative; display:grid; place-items:center; cursor:pointer; min-width:0; min-height:0; }
.sq.l { background:linear-gradient(135deg,#d8c8ff,#b9a2f5); }
.sq.d { background:linear-gradient(135deg,#5a33c4,#3c1d96); }
.sq.sel { box-shadow:inset 0 0 0 4px #4efa50; }
.sq.to::after { content:''; position:absolute; width:30%; height:30%; border-radius:50%; background:rgba(78,250,80,.85); box-shadow:0 0 14px #4efa50; animation:dotp 1s ease-in-out infinite; }
.sq.to:has(.pc)::after { width:86%; height:86%; background:none; border:4px solid rgba(255,90,120,.9); box-shadow:0 0 14px rgba(255,90,120,.8); }
@keyframes dotp { 50% { transform:scale(1.2); } }
.sq.must .pc { box-shadow:0 0 0 3px #4efa50,0 0 18px #4efa50; animation:mustp .8s ease-in-out infinite; }
@keyframes mustp { 50% { transform:scale(1.06); } }
.sq.moved { animation:moved .6s ease-out; } @keyframes moved { 0% { box-shadow:inset 0 0 0 999px rgba(255,216,74,.55); } }
.sq.check { background:radial-gradient(circle,#ff6b8a 0%,#c0164e 70%) !important; }
.pc { width:84%; height:84%; border-radius:50%; display:grid; place-items:center; position:relative; pointer-events:none; transition:transform .15s; }
.pc img { width:96%; height:96%; max-width:100%; max-height:100%; object-fit:contain; filter:drop-shadow(0 3px 2px rgba(0,0,0,.4)); }
.pc.me { background:radial-gradient(circle at 35% 30%,#fff7c2,#ffd84a 45%,#c98a12 100%); box-shadow:0 4px 0 #7a4d00,inset 0 2px 0 rgba(255,255,255,.7); }
.pc.them { background:radial-gradient(circle at 35% 30%,#a7a3bd,#5c5875 55%,#2a2738 100%); box-shadow:0 4px 0 #15131f,inset 0 2px 0 rgba(255,255,255,.35); }
.pc.king { box-shadow:0 4px 0 #7a4d00,0 0 0 3px #fff,0 0 16px #ffd84a; }
.pc.them.king { box-shadow:0 4px 0 #15131f,0 0 0 3px #ff3030,0 0 16px #ff3030; }
.pc.me img[src*="el-coin"] { width:112%; height:112%; }
/* chess pieces: our heroes stand on a gold base, Dissonance on a grey one; a small chess sign tells which piece it is */
.pc.cp { width:92%; height:92%; border-radius:22%; }
.pc.cp img { width:100%; height:100%; }
.pc .g { position:absolute; right:-4%; bottom:-4%; width:38%; height:38%; border-radius:50%; display:grid; place-items:center; font:700 clamp(10px,2.6vw,16px)/1 'Segoe UI Symbol','Apple Symbols',serif; background:#fff; color:#2a1a66; border:2px solid var(--o); }
.pc.them .g { background:#2a2738; color:#fff; border-color:#ff3030; }
.turn { text-align:center; font:600 clamp(14px,3.8vw,18px)/1.3 Fredoka,sans-serif; color:#fff; text-shadow:0 2px 6px rgba(0,0,0,.6); min-height:1.3em; }
.promo { display:flex; gap:8px; justify-content:center; }
.promo button { width:56px; height:56px; border-radius:14px; border:3px solid var(--o); background:linear-gradient(180deg,#fff7c2,#ffd84a); padding:4px; }
.promo button img { width:100%; height:100%; object-fit:contain; }
@media (prefers-reduced-motion:reduce) { .sq.to::after, .sq.must .pc { animation:none; } }
