@media (max-width: 1300px) {
  .game-shell.game-layout {
    width: min(920px, 100%);
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .left-column,
  .right-column {
    grid-column: 1;
  }

  .inventory-grid {
    grid-template-columns: repeat(4, minmax(120px, 1fr));
  }
}

@media (max-width: 1000px) {
  .right-bottom-grid {
    grid-template-columns: 1fr;
  }

  .craft-side-panel,
  .info-side-panel {
    position: static;
    align-self: stretch;
  }

  .craft-grid {
    grid-template-columns: repeat(3, 72px);
  }

  .crafting-card,
  .recipes-card,
  .log-card {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .top-navbar {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 12px auto 16px;
    padding: 10px 12px;
    gap: 10px;
  }

  .brand-block {
    min-width: 0;
  }

  .top-navbar .eyebrow {
    font-size: 0.62rem;
    letter-spacing: 0.12em;
    white-space: nowrap;
  }

  .language-switcher {
    margin-left: auto;
    flex-shrink: 0;
    padding: 3px;
    gap: 4px;
  }

  .language-button {
    width: 30px;
    height: 21px;
  }
}

@media (max-width: 760px) {
  body {
    padding: 20px;
  }

  .inventory-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .inventory-header {
    align-items: start;
    flex-direction: column;
  }

  .inventory-summary {
    justify-content: flex-start;
  }

  .shelter-top {
    flex-direction: column;
    align-items: stretch;
  }

  .shelter-summary {
    justify-content: flex-start;
  }

  .shelter-storage-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .actions,
  .sleep-controls,
  .search-controls {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .profile-top {
    grid-template-columns: 1fr;
  }

  .equipment-side h2,
  .equipment-title-placeholder {
    visibility: visible;
  }

  .equipment-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .right-equipment .equipment-column {
    grid-template-columns: 1fr;
  }

  .status-meters {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .recipe-filters {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 560px) {
  .shelter-storage-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (hover: none), (pointer: coarse) {
  .equipment-remove {
    opacity: 1;
  }

  .inventory-slot {
    min-height: 196px;
  }

  .slot-actions {
    opacity: 1;
    pointer-events: auto;
  }

  .slot-action {
    flex: 1;
    min-width: 24px;
    height: 24px;
  }

  .inventory-slot:hover .item-image,
  .inventory-slot:focus-within .item-image {
    opacity: 1;
    transform: none;
  }

  .item-info {
    display: grid;
    min-height: 100%;
    grid-template-rows: 1fr auto;
    gap: 8px;
    place-items: center;
  }
}

@media (max-width: 900px) {
  .inventory-grid {
    grid-template-columns:
      repeat(3, minmax(0, 1fr));
  }
  .shelter-storage-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .inventory-header {
    align-items: stretch;
    flex-direction: column;
  }

  .inventory-summary {
    justify-content: flex-start;
  }

  .inventory-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }
  .shelter-top {
    align-items: stretch;
    flex-direction: column;
  }

  .shelter-summary {
    margin-left: 0;
  }

  .shelter-storage-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 420px) {
  .inventory-grid {
    grid-template-columns:
      minmax(0, 1fr);
  }
  .shelter-storage-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}