/* TimeTravelWalls wallpaper mahjong v2 (unlisted /play.html) — shared Desktop + Mobile; colours from site vars */
.play-main{padding:.5rem 0 1.5rem}
.play-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;margin:.25rem auto .4rem}
.play-bar .btn{min-height:44px;min-width:44px;font-size:16px;touch-action:manipulation}
.play-bar .btn:disabled{opacity:.45;cursor:default}
.play-stats{display:flex;justify-content:center;gap:1rem;font-size:15px;color:var(--muted);margin:.1rem 0 .2rem;font-variant-numeric:tabular-nums}
.play-count{font-weight:700;color:var(--text)}
.play-msg{text-align:center;min-height:1.4em;margin:0 0 .4rem;font-size:15px;opacity:.85}
.play-stage{position:relative;margin:0 auto;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.play-tile{position:absolute;padding:0;border:0;border-radius:9px;background:#e9e2cf;cursor:pointer;
  box-shadow:3px 4px 0 #9b927b,4px 6px 10px rgba(0,0,0,.55);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.play-tile:focus-visible{outline:3px solid var(--accent);outline-offset:1px}
.play-tile img{display:block;width:calc(100% - 6px);height:calc(100% - 6px);margin:3px;border-radius:7px;object-fit:cover;pointer-events:none}
.play-tile.blocked img{filter:brightness(.6) saturate(.8)}
.play-tile.sel{outline:4px solid #ffcc33;outline-offset:-2px;transform:translateY(-3px)}
.play-tile.hint{outline:4px solid #39e6b0;outline-offset:-2px;animation:playpulse .8s ease-in-out 3}
@keyframes playpulse{50%{transform:translateY(-3px)}}
@media (prefers-reduced-motion:reduce){.play-tile.hint{animation:none}.play-tile.sel{transform:none}}
.play-win{position:fixed;inset:0;z-index:100000;background:rgba(5,7,11,.93);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem}
.play-win[hidden]{display:none}
.play-win-card{width:min(720px,100%);background:var(--bg-card);border:1px solid var(--line);border-radius:16px;padding:1.1rem;margin:auto 0}
.play-win h2{margin:.2rem 0 .3rem;text-align:center}
.play-win p.sub,.play-win p.play-final{text-align:center;margin:0 0 .6rem;opacity:.85}
.play-win p.play-final{font-weight:700;color:var(--accent);opacity:1}
.play-walls{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;max-height:46vh;overflow-y:auto}
.play-walls a{display:flex;align-items:center;gap:.55rem;padding:.4rem;border-radius:10px;background:var(--bg-elev);color:inherit;text-decoration:none;min-height:56px}
.play-walls img{height:48px;border-radius:7px;object-fit:cover;flex:none}
.play-walls span{font-size:14px;line-height:1.25}
.play-win .play-again{display:block;margin:1rem auto 0;min-height:48px;font-size:17px}
@media (max-width:600px){.play-bar{gap:.35rem}.play-bar .btn{padding:.45rem .7rem}}
/* Mobile (touch-first, tall tiles) */
.play-mobile .play-bar .btn{min-height:48px;font-size:16px}
.play-mobile .play-tile{border-radius:10px}
.play-mobile .play-tile img{border-radius:8px}
