
    /* Кабинет Юрия: слева портрет (скрипка на закате), справа имя. */
    .room-head { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr);
      gap: clamp(18px, 3vw, 32px); align-items: center;
      padding-block: clamp(24px, 4vw, 48px) 8px; max-width: 58em; }
    .portrait { width: 100%; height: auto; border-radius: 24px; border: 1px solid var(--line); }
    @media (max-width: 720px) { .room-head { grid-template-columns: 1fr; }
      .portrait { max-width: 300px; } }
    .page-head { padding-block: clamp(28px, 5vw, 56px) 8px; max-width: 42em; }
    .room-head h1, .page-head h1 { margin: 0; font-size: clamp(23px, 2.2vw, 29px); letter-spacing: -.01em; line-height: 1.25; }
    .room-head p, .page-head p { color: var(--muted); font-size: 18px; }
    /* Оглавление: названия в одну ленту, чтобы 36 стихов не гнали страницу вниз. */
    .toc { padding-block: 8px 20px; display: flex; flex-wrap: wrap; gap: 8px 10px; max-width: 46em; }
    .toc a { color: var(--muted); text-decoration: none; font-size: 15px; border: 1px solid var(--line);
      border-radius: 999px; padding: 6px 12px; }
    .toc a:hover { color: var(--text); border-color: var(--gold); }
    /* ПЕСНИ. Просьба Юрия 16.09: песни друг за другом, у каждой полоса с точкой,
       кнопка «играть», скачивание и текст — он выезжает по нажатию, чтобы длинный
       текст не растягивал страницу. */
    .section-title { margin: 34px 0 14px; font-size: clamp(20px, 2.6vw, 25px); }
    .songs { max-width: 58em; padding-block: 8px 12px; }
    .song { padding: 18px 20px; margin-bottom: 12px; border: 1px solid var(--line);
      border-radius: 18px; background: var(--panel); }
    .song h3 { margin: 0; font-size: 21px; }
    .song-meta { margin: 6px 0 14px; color: var(--muted); font-size: 15px; }
    .controls { display: flex; align-items: center; gap: 12px; }
    .play { flex: none; width: 46px; height: 46px; border-radius: 50%; cursor: pointer;
      border: 1px solid var(--gold); background: transparent; color: var(--gold); font-size: 16px; }
    .play:hover { background: rgba(240,187,53,.12); }
    .line { position: relative; flex: 1; height: 6px; border-radius: 999px;
      background: rgba(255,255,255,.12); cursor: pointer; }
    .line .done { position: absolute; inset: 0 auto 0 0; width: 0; border-radius: 999px; background: var(--gold); }
    .line .dot { position: absolute; top: 50%; left: 0; width: 14px; height: 14px; margin: -7px 0 0 -7px;
      border-radius: 50%; background: var(--gold); }
    .time { flex: none; min-width: 4.4em; text-align: right; color: var(--muted);
      font-size: 14px; font-variant-numeric: tabular-nums; }
    .song-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
    .song-links .dl, .song-links .words { border: 1px solid var(--line); border-radius: 999px;
      padding: 8px 14px; color: var(--muted); background: transparent; text-decoration: none;
      cursor: pointer; font: inherit; font-size: 15px; }
    .song-links .dl:hover, .song-links .words:hover { color: var(--text); border-color: var(--gold); }
    .lyrics { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--line); }
    .lyrics p { color: #d5dbe0; font-size: 16px; line-height: 1.6; margin: 0 0 14px; }
    .poems { padding-block: 8px 48px; max-width: 46em; }
    .poem { padding-block: 10px 26px; }
    .poem h2 { margin: 26px 0 12px; font-size: clamp(20px, 2.6vw, 25px); }
    .poem:first-child h2 { margin-top: 0; }
    .poem p { color: #d5dbe0; font-size: 17px; line-height: 1.65; margin: 0 0 16px; }
  
.room-head,.songs,.blocks,.poems,.toc{min-width:0}.song,.block{min-width:0}.song h3,.block a{overflow-wrap:anywhere}button{font:inherit}.room-head .portrait{display:block}
@media(max-width:560px){.song{padding:15px 12px}.song .controls{gap:9px}.song .time{font-size:12px;min-width:40px}.block{padding:18px 15px}.room-head p,.block p,.block ul{font-size:15px}}

.author-links{max-width:58em;padding-block:24px 50px}.author-links p{font-size:12px;color:var(--muted)}.author-links nav{display:flex;flex-wrap:wrap;gap:20px}.author-links a{color:var(--gold);font-size:13px}
