/* Integration layout override. Keep upstream assets and game rules unchanged. */
@media (max-width:640px) {
  #app {
    height:100svh;
    height:100dvh;
    min-height:560px;
    padding-top:env(safe-area-inset-top,0px);
    padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));
  }
  #app > header {flex:0 0 56px;height:56px;}
  #app > .ticker {flex:0 0 43px;height:43px;}
  #app > #arena {flex:1 1 0;height:auto;min-height:280px;max-height:none;}
  /* Keep choice cells usable on short screens; allow scrolling instead of clipping. */
  #app > #arena.bonus-session {height:auto;min-height:430px;}
  #app > footer {flex:0 0 auto;padding:12px max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));}
  #app .controls {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 14px;}
  #app .amount-control {width:100%;max-width:200px;}
  #app .amount-control input {width:100%;flex:1;min-width:0;}
  #app .amount-control button {flex:0 0 35px;}
  #app #bonus-game-meter {padding:4px 2px 3px;}
  #app .bonus-label {margin-bottom:9px;}
  #provider-status {padding-bottom:calc(3px + env(safe-area-inset-bottom,0px))!important;}
}

/* No client-owned reset or fixture Bonus controls in a server-authoritative build. */
#reset, #motion-launch { display:none !important; }
