  /* Контейнер статьи — центрируем и даём «дыхание» */
  .container {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 16px;
    box-sizing: border-box;
  }

  /* Картинки и медиа — не выходят за края */
  img, video, iframe, embed {
    max-width: 100%;
    height: auto;
    display: block;
  }

  /* SVG из блока .q-my-md — делаем резиновым */
  .q-my-md svg {
    width: 100%;
    height: auto;           /* пусть масштабируется от ширины */
  }

  /* Перенос длинных слов/строк, чтобы не ломали ширину экрана */
  .container, .container * {
    overflow-wrap: anywhere;  /* современный */
    word-wrap: break-word;    /* fallback */
  }

  /* Таблицы — на всю ширину и с переносами */
  table {
    width: 100%;
    border-collapse: collapse;
  }
  th, td {
    padding: 8px;
    vertical-align: top;
    text-align: left;
    word-break: break-word;
  }

  /* Обёртка для горизонтального скролла широких таблиц */
  .table-scroll {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* Читаемость текста на мобилке */
  @media (max-width: 768px) {
    h1 { font-size: 24px; line-height: 1.25; }
    h2 { font-size: 20px; line-height: 1.3; }
    p, li, td, th { font-size: 16px; line-height: 1.6; }
    th, td { padding: 6px; }
    .container { padding: 0 12px; }
  }
