/* Замок закрытого гостю (zamok.js): подпись «почему» и знак замка на месте плеера. Перенесено из portal.css (R3). */
.player .why{max-width:46ch;font-size:var(--fs-sm);line-height:1.5;color:var(--soft)}
.player .k .lu{width:22px;height:22px;vertical-align:-3px;margin-right:8px}
/* Кнопка замка в строке (R44): «🔒 Вступить, чтобы … ↗», под ней мелкая подпись, куда ведёт */
.zm-kn{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:100%}
.zm-kn .btn{max-width:100%;height:auto;padding-block:8px;white-space:normal;text-align:left}
.zm-pod{font-size:12px;line-height:1.3;color:var(--muted)}
/* Широкий экран: надпись кнопки в одну строку, как в прототипе (38 px высотой). Колонка действия строки растёт под
   кнопку, а не кнопка вылезает за неё — стрелку строки и соседей не перекрывает. Подпись под кнопкой ширину не
   задаёт и переносится по ширине кнопки. На узких ширинах — как было (там кнопка в колонку и так помещается). */
@media screen and (min-width:1000px){
  .zm-kn .btn{max-width:none;padding-block:0;white-space:nowrap}
  .zm-kn .zm-pod{width:0;min-width:100%}
  /* колонка одной ширины у всех строк списка, где есть закрытое, — кнопки и «Зарегистрироваться» стоят ровно;
     296 px — под самую длинную надпись «Вступить, чтобы участвовать ↗», длиннее — колонка растёт по кнопке */
  :has(> .lib-i .zm-kn) > .lib-i{grid-template-columns:104px minmax(0,1fr) minmax(296px,max-content) 28px}
  :has(> .lib-i .zm-kn) > .lib-i.wc{grid-template-columns:288px minmax(0,1fr) minmax(296px,max-content) 28px}
}
/* Телефон: стрелка строки стоит у заголовка, под ней свободно — кнопка берёт и эту полосу, чтобы на 360 надпись
   уместилась в одну строку, как в прототипе. Совсем узко (не помещается и так) — переносится, а не вылезает. */
@media screen and (max-width:639px){
  .lib-i:has(.zm-kn) .lib-v{grid-column:1 / -1}
}
.zm-kn .btn .lu:last-child,.player .acts .btn .lu:last-child{width:14px;height:14px}
/* Штамп в строке (R34): первым над названием, обложку не закрывает. «Открыто всем» — золотой, «Для участников клуба» —
   тёмный, на тёмном фоне — светлый. Только гостю. */
.lib-m .zm-sh{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:4px;font-size:11px;font-weight:700;
  line-height:1.2;letter-spacing:.03em;text-transform:uppercase;transform:rotate(-2deg);box-shadow:0 2px 6px rgba(0,0,0,.14);white-space:nowrap}
.zm-sh.otk{background:#C79A3E;color:#16141F}
.zm-sh.zak{background:#16141F;color:#F1EFF8;border:1px solid rgba(241,239,248,.4)}
.c-night .zm-sh.zak,.c-night2 .zm-sh.zak{background:#F1EFF8;color:#16141F;border-color:transparent}
.zm-sh .lu{width:12px;height:12px}
.zm-smotret .lu{width:16px;height:16px}
.zm-smotret .zm-pusk{fill:currentColor;stroke:none}
/* Закрытое вложение гостю (R36, moduli/material-vlozheniya.js): строка с замком, без ссылки на файл */
.zm-vz{color:var(--soft)}
.zm-vz b{color:var(--ink);font-weight:600}
.zm-lnk{background:none;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}
