.mm-stage { width: min(1280px, 96vw); max-width: none; margin: 28px 0; position: relative; left: 50%; transform: translateX(-50%); }
.mm-stage canvas { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #0b0b24; border: 3px solid #ffd23f; border-radius: 6px; }
.mm-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 14px; }
.mm-note { margin: 0; opacity: .75; font-size: .95rem; }

/* Fullscreen: letterbox the canvas on black */
.mm-stage canvas:fullscreen { width: 100vw; height: 100vh; max-width: none; aspect-ratio: auto; object-fit: contain; border: 0; border-radius: 0; background: #000; }

/* Pop-out window (opened with ?popout=1): just the game, filling the window */
body.popout { overflow: hidden; background: #000; }
body.popout .site-header, body.popout .mobile-nav, body.popout .site-footer, body.popout .skip-link,
body.popout .section-kicker, body.popout .collection-title, body.popout .lede, body.popout .game-card,
body.popout .mm-note, body.popout #popout-btn { display: none; }
body.popout .page-main { padding: 0; margin: 0; max-width: none; }
body.popout .mm-stage { width: auto; max-width: none; margin: 0; left: 0; transform: none; }
body.popout .mm-stage canvas { width: 100vw; height: calc(100vh - 58px); aspect-ratio: auto; object-fit: contain; border: 0; border-radius: 0; background: #000; }
body.popout .mm-bar { justify-content: center; margin: 8px 0; }
