@media (max-width: 720px) {
  html, body { overflow-x: hidden; }

  .rarity-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 7px;
    padding: 8px;
  }

  .item-card {
    grid-template-columns: 48px minmax(0, 1fr);
    min-width: 0;
    min-height: 68px;
    padding: 6px;
  }

  .thumb {
    width: 46px;
    height: 44px;
  }

  .thumb-fallback {
    width: 44px;
    height: 44px;
  }

  .item-card strong {
    min-height: 30px;
    font-size: 12px;
    line-height: 1.25;
  }

  .catalog-panel > .calculator-panel,
  .catalog-panel > .result-panel,
  .catalog-panel > .side-promo {
    margin: 0 10px 12px;
  }

  .catalog-panel > .calculator-panel {
    border: 1px solid var(--line);
    box-shadow: 0 10px 26px rgba(25, 58, 45, .06);
  }

  .catalog-panel > .result-panel,
  .catalog-panel > .side-promo {
    border: 1px solid var(--line);
    box-shadow: 0 8px 22px rgba(25, 58, 45, .05);
  }

  .mobile-layout .side-column:empty { display: none; }
}

@media (max-width: 360px) {
  .rarity-grid { gap: 5px; padding: 6px; }
  .item-card { grid-template-columns: 42px minmax(0, 1fr); min-height: 64px; padding: 5px; }
  .thumb { width: 40px; height: 40px; }
  .thumb-fallback { width: 40px; height: 40px; }
  .item-card strong { font-size: 11px; }
}
