.waiting-games-cta{display:flex;align-items:center;gap:12px;border-radius:18px;background:color-mix(in srgb,var(--brand) 7%,#fff);padding:16px;margin-top:20px;text-align:start}.waiting-games-cta>span{color:var(--brand);font-size:30px}.waiting-games-cta>div{flex:1}.waiting-games-cta strong,.waiting-games-cta small{display:block}.waiting-games-cta small{font-size:12px;opacity:.7;margin-top:4px}.waiting-games-cta button{white-space:nowrap}.restaurant-games{width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:0;background:#fffdf8;color:#29251f;border:0;border-radius:26px;box-shadow:0 24px 90px #0004;overflow:auto}.restaurant-games::backdrop{background:#211c17a8;backdrop-filter:blur(5px)}.games-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #ece5d9;gap:16px}.games-header>img{max-width:190px;max-height:48px;object-fit:contain}.games-header>button{background:#f2ece1;border:0;border-radius:50%;width:36px;height:36px;font-size:24px;cursor:pointer}.games-content{padding:24px}.games-content h2{font-size:clamp(24px,5vw,34px);line-height:1.2;margin:8px 0 12px;letter-spacing:-1px}.games-eyebrow{text-transform:uppercase;letter-spacing:1.4px;font-size:10px;color:var(--brand);font-weight:800}.games-sub{color:#766d60;font-size:14px}.games-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.game-tile{border:1px solid #eae1d4;background:linear-gradient(145deg,#fff,#fff7e8);border-radius:18px;min-height:180px;padding:18px;text-align:start;cursor:pointer;color:inherit;transition:transform .15s,border-color .15s}.game-tile:hover{transform:translateY(-2px);border-color:var(--brand)}.game-tile>span{display:block;font-size:34px;margin-bottom:12px}.game-tile strong,.game-tile small,.game-tile b{display:block}.game-tile strong{font-size:17px}.game-tile small{font-size:12px;color:#766d60;margin:7px 0 14px;line-height:1.5}.game-tile b{color:var(--brand);font-size:12px}.games-footer{font-size:11px;line-height:1.6;color:#766d60;background:#f7f1e6;padding:14px 22px;text-align:center}.game-toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center}.game-toolbar strong{font-size:16px}.game-status{min-height:44px;padding:14px 0;font-size:13px;text-align:center}.memory-board,.ttt-board{display:grid;gap:9px;max-width:360px;margin:0 auto}.memory-board{grid-template-columns:repeat(4,1fr)}.memory-card{aspect-ratio:1;background:var(--brand);border:0;border-radius:13px;font-size:28px;color:#fff8e9;cursor:pointer}.memory-card.flipped{background:#f6ead4}.memory-card.matched{background:#e7f1df;opacity:1}.ttt-board{grid-template-columns:repeat(3,1fr)}.ttt-board button{aspect-ratio:1;background:#f7efdf;border:1px solid #e9dfce;border-radius:16px;color:var(--brand);font-size:44px;cursor:pointer}.ttt-board button:disabled{opacity:1;cursor:default}#snack-canvas{display:block;width:100%;max-width:360px;aspect-ratio:1;margin:0 auto;border:1px solid #eae1d4;border-radius:18px;touch-action:none}.game-instructions{text-align:center;font-size:12px;line-height:1.6;color:#766d60}.game-controls{display:flex;justify-content:center;gap:16px;max-width:360px;margin:12px auto 0}.game-controls>button:not(.primary){font-size:26px;border:0;background:#f3eadb;border-radius:12px;min-width:80px;padding:8px;color:var(--brand)}.restaurant-games button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}@media(max-width:420px){.games-content{padding:18px}.game-tile{padding:13px;min-height:160px}.waiting-games-cta{flex-wrap:wrap}.waiting-games-cta button{width:100%}}@media(prefers-reduced-motion:reduce){.game-tile{transition:none}.game-tile:hover{transform:none}}

/* Uploaded restaurant assets are game pieces, with contain-fit and safe fallbacks. */
.game-brand-art{display:block;width:65%;height:65%;max-width:64px;max-height:64px;object-fit:contain;margin:auto;pointer-events:none}.memory-card:not(.flipped):not(.matched) .game-brand-art{opacity:.3;filter:grayscale(1)}.ttt-board button{position:relative;overflow:hidden}.ttt-letter{position:relative;z-index:1}.ttt-brand-art{position:absolute;width:75%;height:75%;inset:12.5%;object-fit:contain;opacity:.13;pointer-events:none}
.memory-card:not(.flipped):not(.matched) .game-brand-art{width:76%;height:76%;padding:7px;background:#fff8ec;border-radius:12px;opacity:.88;filter:none;box-sizing:border-box}
