/* Stand-alone game page layout: everything centred, nothing from the host site. */
html, body { margin: 0; min-height: 100%; }
body {
  min-height: 100vh;
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(120% 90% at 50% 0%, #2a1060 0%, #150a33 45%, #0a0418 100%) fixed;
}
#main { width: 100%; display: flex; justify-content: center; }
.shell.launch {
  width: 100%;
  max-width: var(--game-max, 1040px);
  margin: 0 auto;
  padding: clamp(10px, 2.5vh, 28px) clamp(10px, 3vw, 24px);
  box-sizing: border-box;
}
.launch__grid { display: block; }
.cabinet { margin: 0 auto; width: 100%; }
body[data-game="7-clovers-of-fortune"] { --game-max: 760px; }
@media (max-width: 600px) {
  .cabinet { border-radius: 14px; }
}

/* Fit the whole cabinet (reels + bet bar) inside the window height */
.shell.launch { --game-max: min(1040px, calc((100vh - 190px) * 1.6)); }
body[data-game="7-clovers-of-fortune"] .shell.launch { --game-max: min(760px, calc((100vh - 200px) * 0.95)); }
.shell.launch { max-width: max(var(--game-max), 340px); }

.stage { min-height: 0 !important; }
.shell.launch { --game-max: min(980px, calc((100vh - 230px) * 1.45)); }
body[data-game="7-clovers-of-fortune"] .shell.launch { --game-max: min(760px, calc((100vh - 200px) * 0.95)); }

body[data-game="diamond-scratch"] .shell.launch { --game-max: 560px; max-width: min(100%, 560px); }
