/* Shared styles for /games/* (extends /styles.css + /tools/tools.css) */
.game-shell{max-width:560px;margin:0 auto}
.g-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;margin:16px 0 12px}
.g-bar .stats{display:flex;gap:14px;font-weight:700;color:var(--navy);flex-wrap:wrap}
.g-bar .stats span b{color:var(--teal)}
.g-btns{display:flex;gap:8px;flex-wrap:wrap}
.g-btn{font:inherit;font-weight:600;font-size:.9rem;border:1px solid var(--teal);background:#fff;color:#0a5b62;border-radius:10px;padding:7px 12px;cursor:pointer;min-height:40px}
.g-btn:hover{background:#e2f0ee}
.g-btn.primary{background:var(--teal);color:#fff}
.g-btn.primary:hover{background:var(--navy)}
.g-btn:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.stage{position:relative;touch-action:none;user-select:none;-webkit-user-select:none}
.overlay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(11,42,74,.86);color:var(--sand);border-radius:14px;text-align:center;padding:20px;z-index:5}
.overlay[hidden]{display:none}
.overlay h2{color:#fff;margin:0 0 8px}
.overlay p{margin:0 0 14px}
.help{font-size:.95rem}
.help kbd{background:#fff;border:1px solid #cfc6b2;border-radius:5px;padding:0 5px;font-size:.85em}
.g-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(30px);background:var(--navy);color:#fff;padding:10px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:.25s;z-index:20;font-weight:600}
.g-toast.show{opacity:1;transform:translateX(-50%)}
.game-card .tag{font-size:.8rem;font-weight:700;color:#8a3d12;text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
