/* Текст вкладок страницы вуза (.uni-prose). Разметку подготавливает lib/prose.ts:
   h4 — абзац целиком жирный, .prose-card — подзаголовок + список, .prose-cols — длинный список.
   Колонка ~70 знаков, 17 px, тёмный текст; вместо точек — зелёные галочки. */

.uni-prose { max-width: 760px; font-size: 17px; line-height: 1.7; color: #272727; overflow-wrap: break-word; }
.uni-prose > :first-child { margin-top: 0; }
.uni-prose p { margin: 0 0 18px; font-size: inherit; line-height: inherit; color: inherit; }
.uni-prose strong, .uni-prose b { font-weight: 600; color: #1d1d1d; }
.uni-prose a { color: #e9423d; }

.uni-prose h2, .uni-prose h3 {
  position: relative; margin: 44px 0 18px; padding-left: 18px;
  font-size: 26px; font-weight: 600; line-height: 1.25; color: #272727;
}
.uni-prose h3 { font-size: 21px; margin-top: 36px; }
.uni-prose h2:before, .uni-prose h3:before {
  content: ""; position: absolute; left: 0; top: .2em; bottom: .2em; width: 5px; border-radius: 3px; background: #62ba87;
}
.uni-prose h4 { margin: 30px 0 12px; font-size: 19px; font-weight: 600; line-height: 1.35; color: #2f7a4f; }

/* списки: зелёные галочки вместо точек */
.uni-prose ul { margin: 0 0 22px; padding: 0; list-style: none; }
.uni-prose li { position: relative; margin: 0 0 10px; padding-left: 34px; font-size: inherit; line-height: 1.6; }
.uni-prose li:last-child { margin-bottom: 0; }
.uni-prose li:before {
  content: ""; position: absolute; left: 0; top: .22em; width: 22px; height: 22px; border-radius: 50%;
  background: #e3f3ea url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='10' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%232f7a4f' stroke-width='2.2'/%3E%3C/svg%3E") center no-repeat;
}

/* длинный список коротких пунктов — на подложке, в две колонки */
.uni-prose ul.prose-cols { column-count: 2; column-gap: 32px; padding: 22px 24px; border-radius: 18px; background: #f3f9f5; }
.uni-prose ul.prose-cols li { break-inside: avoid; }

/* подзаголовок + список — карточка */
.uni-prose .prose-card { margin: 26px 0; padding: 22px 24px; border: 1px solid #dcebe2; border-radius: 20px; background: #fff; box-shadow: 0 6px 24px rgba(39, 39, 39, .05); }
.uni-prose .prose-card > h3, .uni-prose .prose-card > h4 {
  margin: -22px -24px 18px; padding: 14px 24px; border-radius: 19px 19px 0 0; background: #e3f3ea;
  font-size: 18px; color: #23703f;
}
.uni-prose .prose-card > h3:before { display: none; }
.uni-prose .prose-card ul { margin: 0; }
.uni-prose .prose-card ul.prose-cols { padding: 0; background: none; }

@media (max-width: 767px) {
  .uni-prose { font-size: 16px; line-height: 1.65; }
  .uni-prose h2 { font-size: 22px; margin-top: 36px; }
  .uni-prose h3 { font-size: 19px; }
  .uni-prose h4 { font-size: 17px; }
  .uni-prose ul.prose-cols { column-count: 1; padding: 18px; }
  .uni-prose .prose-card { padding: 18px; border-radius: 18px; }
  .uni-prose .prose-card > h3, .uni-prose .prose-card > h4 { margin: -18px -18px 16px; padding: 12px 18px; border-radius: 17px 17px 0 0; font-size: 17px; }
}
