/* per-game skin — uses css/game-themes.css vars */
#stage{min-height:220px}
#board,#grid{display:grid;gap:0;margin:0 auto;width:min(100%,400px)}
.cell{aspect-ratio:1}
.opt,.chip{padding:.65rem}
canvas{display:block;margin:0 auto;max-width:100%}
.row{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin-top:.7rem}
.big{font-family:var(--font-display);font-size:clamp(1.5rem,6vw,2.3rem);text-align:center;line-height:1.2}
.cups{display:flex;gap:1rem;justify-content:center;align-items:flex-end;min-height:130px}
.cup{width:70px;height:88px;cursor:pointer;position:relative}
.cup .ball{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);width:20px;height:20px}
.bar-wrap{position:relative;height:28px;overflow:hidden;margin:1rem 0}
.zone{position:absolute;top:0;bottom:0}
.mark{position:absolute;top:0;bottom:0;width:4px}
input.mg-inp{width:min(100%,280px);padding:.7rem;border:1px solid var(--line);font-size:1.1rem;display:block;margin:.5rem auto;border-radius:2px;background:var(--play-cell,#fff);color:var(--play-ink,#101820)}
.nums,.keypad{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:center;margin-top:.6rem}
.nums button,.keypad button{min-width:2.4rem;padding:.45rem .55rem;border:1px solid var(--line);background:var(--play-cell,#fff);font-weight:800;cursor:pointer;border-radius:2px}
