@media (max-width: 900px) {
  /* Chess */
  body {
    height: auto !important;
    min-height: 100vh;
    overflow: auto !important;
  }
  .container {
    display: block !important;
    padding: 8px !important;
    height: auto !important;
  }
  .left-panel, .right-panel, .board-wrap, .board-container {
    width: 100% !important;
    max-width: 100% !important;
  }
  .left-panel, .right-panel {
    border: 0 !important;
    padding: 12px !important;
  }
  .board-wrap {
    padding: 8px !important;
  }
  .board-container {
    width: min(94vw, 520px) !important;
    margin: 0 auto !important;
  }
  .board {
    width: min(94vw, 520px) !important;
    height: min(94vw, 520px) !important;
    border-width: 8px !important;
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(8, minmax(0, 1fr)) !important;
    margin: 0 auto;
  }
  .board .cell {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    font-size: clamp(28px, 9vw, 46px) !important;
  }
  .piece-selector {
    top: -62px !important;
    gap: 4px !important;
    padding: 6px !important;
  }
  .piece-in-selector {
    font-size: 38px !important;
    line-height: 1 !important;
  }
  #countdownBlack, #countdownWhite {
    font-size: 24px !important;
  }
  .move-list {
    max-height: 220px;
  }

  /* Poker v1 */
  .game-container {
    flex-direction: column !important;
    gap: 10px !important;
  }
  .left-sidebar, .right-sidebar, .main-area {
    width: 100% !important;
    max-width: 100% !important;
  }
  .poker-table {
    min-height: 440px !important;
  }
  .actions-section .action-btn {
    min-height: 40px;
  }

  /* Spyfall */
  .content, .screen, .home-screen, .discussion-screen, .results-screen {
    padding: 12px !important;
  }
  .button-group {
    flex-wrap: wrap !important;
  }
  .button-group > * {
    width: 100% !important;
  }
  .players-grid, .guess-grid, .vote-buttons {
    grid-template-columns: 1fr !important;
  }

  /* Werewolf */
  .grid {
    grid-template-columns: 1fr !important;
  }
  .row {
    flex-wrap: wrap !important;
  }
  .row > input, .row > button {
    width: 100% !important;
  }

  /* Tetris */
  .layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .panel {
    width: 100% !important;
  }
  #board {
    width: min(94vw, 360px) !important;
    height: auto !important;
    margin: 0 auto;
    display: block;
  }

  /* Shelem */
  .game-area {
    grid-template-columns: 1fr !important;
  }
  .table-container {
    overflow-x: auto;
  }
  .sidebar {
    width: 100% !important;
  }
}
