/* ============================================================
   Честная заглушка «текст работы закрыт» на странице темы (/topics/…)

   Под оглавлением показываем размытые ПУСТЫЕ полосы и подпись «Полный
   текст появится после заказа». Под размытием текста нет — снять блюр в
   devtools нечего; подпись честная (решение владельца 2026-09-07: никакого
   выдуманного «работа скрыта заказчиком»).

   Подключается постранично из topic.html (как admin.css у админки) — общий
   main.css расширяем только своими именами, а этот блок нужен одной странице.
   Неймспейс `.textlock-*` — в проекте не встречался (проверено грепом).
   Приём тот же, что у заглушки платного текста детектора (`.aid-lock`), но
   классы свои: чужой неймспейс `.aid-*` трогать нельзя (см. комментарий там).

   Значения — из tokens.css; единственная своя величина — сила размытия.
   ============================================================ */
:root {
  --textlock-blur: 7px;
}

/* Полосы и оверлей лежат в ОДНОЙ ячейке грида (а не absolute поверх): высота блока =
   высоте более рослого из них, поэтому два абзаца и кнопка на 320px при крупном шрифте
   не обрежутся по overflow (ревью 2026-09-08). */
.textlock {
  display: grid;
  overflow: hidden;
  isolation: isolate;          /* z-index оверлея не спорит ни с чем снаружи блока */
  border-radius: var(--r-2);
  background: var(--c-bg);
  border: 1px solid var(--c-border);
}

.textlock__lines {
  grid-area: 1 / 1;
  display: grid;
  gap: var(--sp-3);
  padding: var(--sp-6) var(--sp-4);
  filter: blur(var(--textlock-blur));
  user-select: none;
  pointer-events: none;
}
.textlock__line { height: 0.75em; border-radius: var(--r-pill); background: var(--c-border); }
.textlock__line:nth-child(3n) { width: 78%; }
.textlock__line:nth-child(4n) { width: 92%; }
.textlock__line:nth-child(5n) { width: 64%; }
.textlock__line:first-child { width: 46%; background: var(--c-ink-soft); opacity: 0.35; }

.textlock__cta {
  grid-area: 1 / 1;
  /* ⚠️ Оверлей обязан быть позиционирован. `filter: blur` на полосах создаёт stacking
     context, и такой элемент рисуется ПОСЛЕ обычных in-flow блоков — без position/z-index
     размытые полосы ложились ПОВЕРХ текста и кнопки (поймано владельцем на стенде). */
  position: relative;
  z-index: 1;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: var(--sp-3);
  padding: var(--sp-4);
  text-align: center;
  background: rgba(255, 255, 255, 0.62);   /* тот же приём, что у липкой панели .cta-bar */
}
.textlock__note {
  margin: 0;
  font-weight: var(--fw-semi);
  color: var(--c-ink);
  overflow-wrap: anywhere;                  /* 320px: длинная подпись переносится, не рвёт блок */
}
.textlock__hint { margin: 0; font-size: var(--fs-sm); color: var(--c-ink-soft); }

/* Размытие — статичный фильтр, анимаций нет: prefers-reduced-motion уважать нечего. */
