/* Desktop-only layout repair. Mobile is untouched. */
@media (min-width: 901px) {
  html,
  body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    min-height: 100% !important;
    height: auto !important;
  }

  body {
    padding-bottom: 96px !important;
  }

  body.page-mode-store,
  body.page-mode-casino,
  body.page-mode-booking {
    overflow-y: auto !important;
  }

  #storeView,
  #casinoView,
  #bookingView {
    width: 100% !important;
    min-height: calc(100vh - 90px) !important;
    overflow: visible !important;
  }

  #storeView .container,
  #casinoView .container,
  #bookingView .container,
  .container {
    max-width: 1280px !important;
    width: min(1280px, calc(100vw - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #casinoView #casinoGamesHome.active .casino-game-grid,
  #casinoView #casinoGamesHome.active .casino-game-grid.aly-quality-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
    justify-content: center !important;
  }

  .game-cover-card {
    width: 100% !important;
    min-height: 260px !important;
  }

  #storeView .product-grid,
  #storeView .content-grid,
  #storeView .cards-grid,
  #bookingView .booking-grid,
  .grid {
    justify-content: center !important;
  }

  #mainCartFloat {
    bottom: calc(var(--aly236-bottom-h, 74px) + 24px) !important;
    right: 28px !important;
    z-index: 2147483450 !important;
  }

  .bottom-nav,
  #bottomNav,
  .mobile-bottom-nav,
  .app-bottom-nav {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: min(760px, calc(100vw - 36px)) !important;
    right: auto !important;
    border-radius: 24px !important;
  }

  .aly236-hub,
  #alyV236Hub,
  .aly-account-modal,
  .modal-panel {
    max-height: min(760px, calc(100vh - 60px)) !important;
    overflow-y: auto !important;
  }
}
