/* =============================================
   ПАТЧ — вставить в самый конец style.css
   Перекрывает все конфликтующие правила выше
   ============================================= */

@media (max-width: 768px) {

  /* --- Контейнер статистики --- */
  .stats-grid,
  .results-grid,
  .metrics,
  .numbers,
  [class*="stats"],
  [class*="metrics"] {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important; /* 2 колонки, без переполнения */
    gap: 16px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 24px 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  /* --- Элементы внутри сетки --- */
  .stats-grid > *,
  .results-grid > *,
  .stat-item,
  .stat-card,
  .result-card,
  .metric,
  [class*="stats"] > *,
  [class*="metrics"] > * {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;        /* убирает фиксированный min-width */
    max-width: 100% !important;
    flex: unset !important;          /* сбрасывает flex если где-то задан */
    box-sizing: border-box !important;
    text-align: center !important;
    overflow: hidden !important;
    word-break: break-word !important;
  }

  /* --- Числа внутри статистики --- */
  .stat-number,
  .stat-card strong,
  .metric strong,
  [class*="stat"] strong,
  [class*="stat"] span,
  [class*="metric"] strong {
    font-size: clamp(20px, 8vw, 32px) !important;
    display: block !important;
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  /* --- Подписи под цифрами --- */
  .stat-label,
  .stat-card p,
  .metric p,
  [class*="stat"] p {
    font-size: 12px !important;
    line-height: 1.4 !important;
    word-break: break-word !important;
  }
}

/* --- Для очень маленьких экранов (до 400px) — в одну колонку --- */
@media (max-width: 400px) {
  .stats-grid,
  .results-grid,
  [class*="stats"],
  [class*="metrics"] {
    grid-template-columns: 1fr !important;
  }
}

/* --- Глобальная защита от горизонтального переполнения --- */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

*,
*::before,
*::after {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* Исключение для html/body чтобы min-width не ломал layout */
html, body {
  min-width: unset !important;
}
