/* ==========================================================================
   Детальная страница материала.
   Значения из Figma: 06 · Статья · Детальная (шаблон) · Desktop 1440.
   ========================================================================== */

/* ── 01 · Обложка (1440×620) ───────────────────────────────────────────
   Фотография + вертикальный градиент rgba(20,15,13,.5) → .95. */
/* Высота 620 из макета — минимальная: заголовок в три строки раздвигает блок,
   а не наезжает на подпись. Содержимое прижато к низу, отступы те же. */
.v-acover{position:relative;min-height:620px;background-size:cover;background-position:center;
  background-repeat:no-repeat;overflow:hidden}
.v-acover::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(20,15,13,.5) 0%,rgba(20,15,13,.95) 100%)}
.v-acover__inner{position:relative;min-height:620px;max-width:var(--page-w);margin-inline:auto;
  padding:266px var(--gutter) 64px;box-sizing:border-box;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:20px}

.v-acover__crumbs{display:flex;align-items:center;gap:10px;
  font-size:15px;line-height:1.3}
.v-acover__crumbs a,.v-acover__sep{color:rgba(248,240,224,.6)}
.v-acover__crumbs a:hover{color:rgba(248,240,224,.9)}
.v-acover__current{font-weight:600;color:var(--gold-500)}

.v-acover__rubric{display:inline-flex;align-items:center;
  height:31px;padding:0 16px;border-radius:var(--r-pill);background:var(--crimson-600);
  font-size:12px;line-height:1;letter-spacing:.14em;font-weight:700;color:var(--cream-50)}

.v-acover__title{width:900px;max-width:100%;margin:0;
  font-family:var(--font-display);font-weight:800;font-size:66px;line-height:1;
  letter-spacing:-.026em;color:var(--cream-50)}

.v-acover__meta{display:flex;align-items:center;gap:16px;
  height:48px;font-size:17px;line-height:1.3}
.v-acover__avatar{display:flex;align-items:center;justify-content:center;flex:0 0 40px;
  width:40px;height:40px;border-radius:var(--r-pill);background:var(--gold-500);
  font-size:14px;font-weight:700;color:var(--ink-950)}
.v-acover__author{font-weight:600;color:var(--cream-50)}
.v-acover__dot{color:rgba(248,240,224,.5)}
.v-acover__date,.v-acover__read{color:rgba(248,240,224,.72)}

/* ── 02 · Текст материала ──────────────────────────────────────────────
   Тело 784 от 100, сайдбар 400 от 940, отступ сверху 88. */
/* Фон секции в макете — #fdfaf3, не белый. */
.v-atext{background:var(--cream-50);padding:88px 0}
.v-atext__inner{display:flex;gap:56px;max-width:var(--page-w);margin-inline:auto;
  padding-inline:var(--gutter);align-items:flex-start}
.v-atext__body{flex:1 1 784px;min-width:0}
.v-atext__side{flex:0 0 400px;display:flex;flex-direction:column;gap:24px;position:sticky;top:112px}

/* Оформление текста из редактора. */
.v-atext__body > *{margin:0 0 24px}
.v-atext__body > *:last-child{margin-bottom:0}
.v-atext__body p{font-size:18px;line-height:1.78;color:var(--ink-800)}
/* Первый абзац — вводный: крупнее и полужирный. */
.v-atext__body > p:first-child{font-size:22px;line-height:1.5;font-weight:600;color:var(--ink-950)}
/* В макете строка заголовка ровно 32px — фиксируем, иначе блоки уезжают. */
.v-atext__body h2{font-family:var(--font-display);font-weight:700;font-size:28px;
  line-height:32px;letter-spacing:-.014em;color:var(--ink-950);scroll-margin-top:120px}
.v-atext__body h3{font-family:var(--font-display);font-weight:700;font-size:22px;
  line-height:1.2;color:var(--ink-950)}
.v-atext__body a{color:var(--crimson-600);text-decoration:underline;text-underline-offset:3px}
.v-atext__body ul{padding-left:22px;list-style:disc}
.v-atext__body ol{padding-left:22px;list-style:decimal}
.v-atext__body li::marker{color:var(--crimson-600)}
.v-mtext__inner ul{padding-left:22px;list-style:disc}
.v-mtext__inner ol{padding-left:22px;list-style:decimal}
.v-atext__body li{font-size:18px;line-height:1.78;color:var(--ink-800);margin-bottom:8px}

/* Цитата: 784, r20, фон #f8f0e0, поля 32/36, красная полоса 4×60. */
.v-atext__body blockquote{position:relative;padding:32px 36px;border-radius:20px;
  background:var(--cream-100)}
.v-atext__body blockquote::before{content:"";position:absolute;left:0;top:32px;width:4px;height:60px;
  border-radius:var(--r-pill);background:var(--crimson-600)}
.v-atext__body blockquote p{margin:0;font-size:22px;line-height:1.5;font-weight:600;color:var(--ink-950)}
.v-atext__body blockquote cite,.v-atext__body blockquote footer{display:block;margin-top:12px;
  font-size:15px;line-height:19px;font-style:normal;font-weight:400;color:var(--text-muted)}

/* Иллюстрация: снимок r18 и подпись через 12. */
.v-atext__body figure{margin-bottom:24px}
/* Снимок показываем целиком: у сканов и разворотов книг своя пропорция. */
.v-atext__body figure img{width:100%;height:auto;display:block;border-radius:18px}
.v-atext__body figcaption{margin-top:12px;font-size:14px;line-height:1.58;color:var(--text-muted)}
.v-atext__body img{max-width:100%;height:auto;border-radius:18px}

/* Содержание: номера золотые, шаг 35. */
.v-toc{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:16px}
.v-toc__row{display:flex;gap:12px;align-items:baseline}
.v-toc__num{flex:0 0 24px;font-family:var(--font-display);font-weight:700;font-size:13px;
  line-height:1.2;color:var(--gold-500)}
.v-toc__link{font-size:15px;line-height:1.3;font-weight:600;color:var(--ink-800)}
.v-toc__link:hover{color:var(--crimson-600)}

/* ── 03 · Хештеги и репост (1440×127) ──────────────────────────────────*/
.v-atags{background:var(--cream-100);padding:40px 0}
.v-atags__inner{display:flex;align-items:center;gap:24px;max-width:var(--page-w);margin-inline:auto;
  padding-inline:var(--gutter)}
.v-atags__list{flex:1 1 auto;display:flex;flex-wrap:wrap;gap:10px}
.v-atags__chip{display:inline-flex;align-items:center;height:39px;padding:0 16px;
  border-radius:var(--r-pill);background:var(--cream-50);box-shadow:inset 0 0 0 1px var(--cream-300);
  font-size:15px;line-height:1.3;font-weight:600;color:var(--crimson-600);
  transition:background-color .16s ease}
.v-atags__chip:hover{background:var(--cream-200)}
.v-atags__actions{flex:0 0 auto;display:flex;gap:24px}
.v-atags__share,.v-atags__pdf{display:inline-flex;align-items:center;gap:8px;height:47px;padding:0 22px;
  border-radius:var(--r-pill);font-size:15px;line-height:1.3;font-weight:600}
.v-atags__share{background:var(--cream-50);box-shadow:inset 0 0 0 1px var(--cream-300);color:var(--ink-950)}
.v-atags__share:hover{background:var(--cream-200)}
.v-atags__pdf{background:var(--crimson-600);color:var(--cream-50)}
.v-atags__pdf:hover{background:var(--crimson-500)}

/* ── 04 · Читайте также (1440×761) ─────────────────────────────────────*/
/* В макете секция 761: 88 + заголовок 47 + 36 + карточки 502 + 88. */
.v-related{background:var(--cream-50);padding:88px 0}
.v-related__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-related__title{margin:0 0 36px;font-family:var(--font-display);font-weight:700;font-size:38px;
  line-height:1.24;letter-spacing:-.018em;color:var(--ink-950)}

/* ── Адаптив ───────────────────────────────────────────────────────────*/
@media (max-width:1439px){
  .v-acover__title{width:min(900px,72vw);font-size:clamp(42px,5.2vw,66px)}
}
@media (max-width:1279px){
  .v-atext__inner{flex-direction:column;gap:40px}
  .v-atext__side{flex:1 1 auto;width:100%;position:static;
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .v-atext__body{width:100%}
}
@media (max-width:1023px){
  .v-acover{min-height:0;padding:0}
  .v-acover__inner{min-height:0;padding:150px var(--gutter) 48px;gap:18px}
  .v-acover__title{width:auto}
  .v-acover__rubric{align-self:flex-start}
  .v-acover__meta{flex-wrap:wrap;height:auto}
  .v-atext{padding:56px 0}
  .v-atext__body > p:first-child{font-size:20px}
  .v-related{padding:56px 0 72px}
  .v-related__title{font-size:clamp(26px,4.4vw,38px)}
}
@media (max-width:767px){
  .v-atext__side{grid-template-columns:minmax(0,1fr)}
  .v-atags__inner{flex-direction:column;align-items:flex-start}
  .v-atags__actions{width:100%;flex-wrap:wrap}
  .v-atext__body blockquote{padding:24px 20px 24px 26px}
}

/* ==========================================================================
   Страница личности. Figma: 09 · Личность · Детальная (шаблон).
   ========================================================================== */

/* ── 01 · Карточка личности (1440×704, фон #1e1710) ────────────────────*/
.v-phero{background:var(--ink-900);height:704px}
.v-phero__inner{position:relative;height:100%;max-width:var(--page-w);margin-inline:auto;
  padding-inline:var(--gutter)}
.v-phero__left{position:absolute;top:64px;left:var(--gutter);width:736px}

.v-phero__crumbs{display:flex;align-items:center;gap:10px;height:19px;font-size:15px;line-height:1.3}
.v-phero__crumbs a,.v-phero__crumbs > span{color:rgba(248,240,224,.55)}
.v-phero__crumbs a:hover{color:rgba(248,240,224,.85)}
.v-phero__current{font-weight:600;color:var(--gold-500)}

.v-phero__eyebrow{margin-top:22px;gap:10px;height:15px}
/* Длинное слово в названии не должно выпирать за экран. */
.v-phero__title{margin:22px 0 0;overflow-wrap:break-word;font-family:var(--font-display);font-weight:800;font-size:66px;
  line-height:1;letter-spacing:-.026em;color:var(--cream-50)}

.v-phero__line{display:flex;align-items:center;gap:14px;margin-top:22px;height:35px}
.v-phero__years{display:inline-flex;align-items:center;height:35px;padding:0 16px;
  border-radius:var(--r-pill);background:rgba(248,240,224,.1);
  font-size:15px;line-height:1.3;font-weight:600;color:var(--cream-50)}
.v-phero__place{font-size:15px;line-height:1.3;color:rgba(248,240,224,.6)}

.v-phero__lead{width:736px;margin:22px 0 0;font-size:19px;line-height:1.66;
  color:rgba(248,240,224,.78)}
.v-phero__buttons{display:flex;gap:14px;margin-top:30px}
.v-phero__btn{height:58px;padding:0 26px;gap:10px;font-size:17px;line-height:1.6;font-weight:600}
.v-phero__btn.v-btn--ghost-light{box-shadow:inset 0 0 0 1px rgba(248,240,224,.28)}

.v-phero__facts{display:flex;gap:40px;margin-top:38px}
.v-phero__fact{display:flex;flex-direction:column;gap:4px}
.v-phero__fact-value{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.02;
  letter-spacing:-.02em;color:var(--gold-500)}
.v-phero__fact-label{font-size:14px;line-height:1.4;color:rgba(248,240,224,.55)}

/* Портрет 440×560 на 900/64. */
.v-phero__photo{position:absolute;top:64px;right:var(--gutter);width:440px;height:560px;
  border-radius:24px;overflow:hidden;background:var(--ink-800)}
.v-phero__photo img{width:100%;height:100%;object-fit:cover;display:block}

/* ── 02 · Биография (1440×609, фон #fdfaf3) ────────────────────────────*/
.v-pbio{background:var(--cream-50);padding:88px 0}
.v-pbio__inner{display:flex;gap:56px;max-width:var(--page-w);margin-inline:auto;
  padding-inline:var(--gutter);align-items:flex-start}
.v-pbio__text{flex:1 1 824px;min-width:0}
.v-pbio__title{margin:0 0 22px;font-family:var(--font-display);font-weight:700;font-size:38px;
  line-height:1.24;letter-spacing:-.018em;color:var(--ink-950)}
.v-pbio__text p{margin:0 0 22px;font-size:18px;line-height:1.78;color:var(--ink-800)}
.v-pbio__text p:last-child{margin-bottom:0}

/* Карточка «Кратко»: 360, r20, поля 28/26. */
.v-pshort{flex:0 0 360px;padding:28px 26px;border-radius:20px;background:var(--cream-100);
  box-shadow:inset 0 0 0 1px var(--cream-300)}
.v-pshort__title{margin:0;font-family:var(--font-display);font-weight:700;font-size:20px;
  line-height:1.25;color:var(--ink-950)}
.v-pshort__list{margin:18px 0 0}
.v-pshort__row{display:flex;flex-direction:column;gap:4px}
.v-pshort__row + .v-pshort__row{margin-top:18px}
.v-pshort__label{font-size:13px;line-height:1.3;font-weight:700;color:var(--text-muted)}
.v-pshort__value{margin:0;font-size:16px;line-height:1.25;font-weight:600;color:var(--ink-950)}

/* ── 03 · Галерея (1440×525, фон #f8f0e0) ──────────────────────────────*/
.v-pgal{background:var(--cream-100);padding:88px 0}
.v-pgal__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-pgal__title{margin:0 0 32px;font-family:var(--font-display);font-weight:700;font-size:38px;
  line-height:1.24;letter-spacing:-.018em;color:var(--ink-950)}
.v-pgal__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.v-pgal__item{margin:0;display:flex;flex-direction:column;gap:10px}
.v-pgal__item img{width:100%;height:240px;object-fit:cover;display:block;border-radius:14px}
.v-pgal__item figcaption{font-size:13px;line-height:1.52;color:var(--text-muted)}

/* ── 04 · Документы (1440×719, фон #fdfaf3) ────────────────────────────*/
.v-pdocs{background:var(--cream-50);padding:88px 0}
.v-pdocs__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-pdocs__title{margin:0 0 28px;font-family:var(--font-display);font-weight:700;font-size:38px;
  line-height:1.24;letter-spacing:-.018em;color:var(--ink-950)}
.v-pdocs__list{display:flex;flex-direction:column;gap:12px}
.v-pdocs__row{display:flex;align-items:center;gap:20px;min-height:84px;padding:20px 24px;
  border-radius:14px;background:var(--cream-100)}
.v-pdocs__ico{display:flex;flex:0 0 auto;color:var(--crimson-600)}
.v-pdocs__body{flex:1 1 auto;display:flex;flex-direction:column;gap:4px;min-width:0}
.v-pdocs__name{font-size:17px;line-height:1.3;font-weight:600;color:var(--ink-950)}
.v-pdocs__meta{font-size:14px;line-height:1.3;color:var(--text-muted)}
.v-pdocs__size{flex:0 0 auto;font-size:14px;line-height:1.3;font-weight:500;color:var(--text-muted)}
.v-pdocs__dl{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;
  font-size:15px;line-height:1.3;font-weight:600;color:var(--crimson-600)}
.v-pdocs__dl:hover{color:var(--crimson-500)}

/* ── Адаптив ───────────────────────────────────────────────────────────*/
@media (max-width:1439px){
  .v-phero__left{width:min(736px,58vw)}
  .v-phero__lead{width:100%}
  .v-phero__title{font-size:clamp(42px,5.2vw,66px)}
}
@media (max-width:1279px){
  .v-pbio__inner{flex-direction:column;gap:32px}
  .v-pshort{flex:1 1 auto;width:100%}
  .v-pgal__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1023px){
  .v-phero{height:auto;padding:120px 0 56px}
  .v-phero__inner{display:flex;flex-direction:column;gap:22px}
  .v-phero__left,.v-phero__photo{position:static;width:auto}
  .v-phero__photo{width:100%;max-width:440px;height:auto;aspect-ratio:440/560;order:-1}
  .v-phero__facts{flex-wrap:wrap;gap:24px 40px}
  .v-pbio,.v-pgal,.v-pdocs{padding:56px 0}
  .v-pbio__title,.v-pgal__title,.v-pdocs__title{font-size:clamp(26px,4.4vw,38px)}
}
@media (max-width:767px){
  .v-pgal__grid{grid-template-columns:minmax(0,1fr)}
  .v-phero__buttons{flex-wrap:wrap}
  .v-pdocs__row{flex-wrap:wrap;gap:12px}
  .v-pdocs__body{flex:1 1 100%}
}

/* ── Страница новости: факты и цитата ─────────────────────────────────
   Отдельного экрана в макете нет; блоки собраны из деталей ленты новостей
   (числа 34/13 на тёмном) и типографики детальной статьи.               */
.v-nfacts{display:flex;flex-wrap:wrap;gap:24px 44px;margin:32px 0;padding:26px 28px;
  border-radius:var(--r-md);background:var(--cream-100)}
.v-nfacts__item{display:flex;flex-direction:column;gap:4px}
.v-nfacts__value{font-family:var(--font-display);font-weight:700;font-size:34px;line-height:1.02;
  letter-spacing:-.02em;color:var(--crimson-600)}
.v-nfacts__label{font-size:13px;line-height:1.54;color:var(--text-muted)}
/* Цитата новости берёт вид цитаты из статьи — тот же блок в макете. */
.v-nquote{margin:32px 0}
@media (max-width:767px){
  .v-nfacts{gap:20px 28px;padding:20px}
  .v-nfacts__value{font-size:28px}
}

/* ── Страница материала библиотеки и архива ───────────────────────────
   Отдельного экрана в макете нет. Геометрия — с детальной личности (09),
   обложка книги — с полки библиотеки (11), карточки внизу — с полос раздела. */
/* У материала содержимого меньше, чем у личности, поэтому высота по содержимому. */
.v-mhero{height:auto;padding:64px 0 80px}
.v-mhero .v-phero__inner{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:64px;
  justify-content:space-between;height:auto}
.v-mhero .v-phero__left{position:static;width:auto}
.v-mhero .v-phero__photo{position:static;width:440px;height:560px}
.v-mhero__fmt{margin-left:8px;opacity:.7}
.v-mhero__visual{display:flex;align-items:center;justify-content:center;overflow:hidden}
.v-mhero__visual .v-mhero__cover{border-radius:24px}
.v-mhero__visual img{width:100%;height:100%;object-fit:cover;display:block}
/* Обложка рисуется цветом: корешок, рамка, ромб, название и год. */
.v-mhero__cover{position:relative;display:block;width:100%;height:100%;border-radius:var(--r-lg)}
.v-mhero__spine{position:absolute;left:0;top:0;width:14px;height:100%;
  border-radius:var(--r-lg) 0 0 var(--r-lg);background:rgba(0,0,0,.22)}
.v-mhero__frame{position:absolute;left:42px;right:28px;top:38px;bottom:38px;border-radius:8px;
  box-shadow:inset 0 0 0 1px currentColor;opacity:.5}
.v-mhero__mark{position:absolute;left:50%;top:96px;transform:translateX(-50%)}
.v-mhero__cover-name{position:absolute;left:56px;right:42px;top:186px;font-family:var(--font-display);
  font-weight:700;font-size:22px;line-height:1.24;text-align:center;color:currentColor}
.v-mhero__cover-year{position:absolute;left:0;right:0;bottom:56px;text-align:center;font-size:14px;
  line-height:1.2;letter-spacing:.14em;font-weight:700;color:currentColor;opacity:.8}

.v-mtext{background:var(--cream-50);padding:80px 0}
.v-mtext__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-mtext__inner > *{max-width:784px}
.v-mtext__inner p{margin:0 0 20px;font-size:17px;line-height:1.76;color:var(--ink-800)}

.v-mothers{background:var(--cream-100);padding:88px 0}
.v-mothers__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-mothers__title{margin:0 0 34px;font-family:var(--font-display);font-weight:700;font-size:28px;
  line-height:1.16;letter-spacing:-.014em;color:var(--ink-950)}
.v-mothers__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.v-mcard{display:flex;flex-direction:column;gap:12px}
.v-mcard__vis{position:relative;display:flex;align-items:center;justify-content:center;height:200px;
  border-radius:var(--r-md);overflow:hidden;background:var(--cream-200)}
.v-mcard__vis img{width:100%;height:100%;object-fit:cover;display:block}
.v-mcard__title{font-weight:600;font-size:16px;line-height:1.36;color:var(--ink-950)}
.v-mcard__year{font-size:13px;line-height:1.3;color:var(--text-muted)}
.v-mcard:hover .v-mcard__title{color:var(--crimson-600)}

@media (max-width:1023px){
  .v-mothers__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Ниже 1280 колонка 440 съедает всю ширину — уменьшаем визуал, потом переносим. */
@media (max-width:1279px){
  .v-mhero .v-phero__inner{grid-template-columns:minmax(0,1fr) 340px;gap:40px}
  .v-mhero .v-phero__photo{width:340px;height:440px}
}
@media (max-width:899px){
  .v-mhero .v-phero__inner{grid-template-columns:minmax(0,1fr);gap:32px}
  .v-mhero .v-phero__photo{width:100%;max-width:440px;height:420px}
}
@media (max-width:767px){
  .v-phero__title{font-size:clamp(30px,7.4vw,44px)}
  .v-acover__title{font-size:clamp(30px,7.4vw,50px)}
  .v-mhero{padding:40px 0 56px}
  .v-mtext{padding:56px 0}
  .v-mothers{padding:56px 0}
  .v-mothers__title{font-size:clamp(22px,4.6vw,28px)}
  .v-mhero__visual{height:320px}
}
@media (max-width:519px){
  .v-mothers__grid{grid-template-columns:minmax(0,1fr)}
}

/* ── Плеер на странице материала ──────────────────────────────────────*/
.v-mplayer{background:var(--ink-950);padding:36px 0}
.v-mplayer__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
@media (max-width:767px){ .v-mplayer{padding:24px 0} }

/* ── Кнопка «Поделиться» ───────────────────────────────────────────────
   Внешне это та же плашка из макета; меню открывается только на
   компьютере — на телефоне срабатывает системное окно.               */
.v-share{position:relative;display:inline-flex}
.v-share__btn{border:0;cursor:pointer;font:inherit}
.v-share__menu{position:absolute;z-index:20;top:calc(100% + 8px);right:0;min-width:212px;
  padding:8px;border-radius:16px;background:var(--cream-50);
  box-shadow:0 18px 40px rgba(21,16,12,.16),inset 0 0 0 1px var(--cream-300)}
.v-share__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;
  border:0;border-radius:10px;background:transparent;cursor:pointer;
  font-family:var(--font-text);font-size:15px;line-height:1.4;font-weight:600;
  color:var(--ink-950);text-align:left}
.v-share__item:hover{background:var(--cream-100)}
.v-share__item .v-ico{flex:0 0 18px;color:var(--crimson-600)}
.v-share__copy.is-done{color:var(--teal-600)}
.v-share__copy.is-done .v-ico{color:var(--teal-600)}
@media (max-width:767px){
  .v-share__menu{right:auto;left:0}
}

/* ── Вложение статьи: звук или видео ──────────────────────────────────*/
.v-amedia--audio{background:var(--ink-950);padding:36px 0}
.v-amedia--video{background:var(--cream-50);padding:56px 0 0}
.v-amedia__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-amedia__frame{position:relative;max-width:1240px;aspect-ratio:16/9;border-radius:20px;overflow:hidden;
  background:var(--ink-900)}
.v-amedia__frame img{width:100%;height:100%;object-fit:cover;display:block}
.v-amedia__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:0;
  border-radius:var(--r-pill);background:var(--crimson-600);color:var(--cream-50);cursor:pointer}
.v-amedia__play:hover{background:var(--crimson-700)}
.v-amedia__dur{position:absolute;right:18px;bottom:18px;padding:6px 12px;border-radius:var(--r-pill);
  background:rgba(21,16,12,.72);font-size:14px;font-weight:600;color:var(--cream-50)}
.v-amedia__frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;
  background:var(--ink-950);z-index:2}
.v-amedia__frame.is-playing img,
.v-amedia__frame.is-playing .v-amedia__play,
.v-amedia__frame.is-playing .v-amedia__dur{opacity:0;pointer-events:none}
.v-amedia__caption{margin:14px 0 0;font-size:15px;line-height:1.54;color:var(--text-muted)}
@media (max-width:767px){
  .v-amedia--audio{padding:24px 0}
  .v-amedia--video{padding:40px 0 0}
  .v-amedia__play{width:56px;height:56px}
}

/* ── Оценка ───────────────────────────────────────────────────────────*/
.v-like{display:inline-flex;margin:0}
.v-like__btn{border:0;background:transparent;cursor:pointer;font:inherit;padding:0}
.v-like__btn.is-on{color:var(--crimson-600)}
.v-like__btn.is-on .v-ico{fill:currentColor}
.v-like__btn:hover{color:var(--crimson-600)}

/* ── Комментарии ──────────────────────────────────────────────────────*/
.v-cmt{background:var(--cream-50);padding:88px 0}
.v-cmt__inner{max-width:var(--page-w);margin-inline:auto;padding-inline:var(--gutter)}
.v-cmt__title{margin:0 0 34px;font-family:var(--font-display);font-weight:700;font-size:28px;
  line-height:1.16;letter-spacing:-.014em;color:var(--ink-950)}
.v-cmt__list{list-style:none;margin:0 0 44px;padding:0;max-width:784px;
  display:flex;flex-direction:column;gap:26px}
.v-cmt__item{display:flex;gap:16px}
.v-cmt__avatar{flex:0 0 44px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;
  border-radius:var(--r-pill);background:var(--a-crimson-12);
  font-weight:700;font-size:14px;color:var(--crimson-600)}
.v-cmt__body{flex:1;min-width:0}
.v-cmt__head{margin:0 0 6px;display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.3}
.v-cmt__author{font-weight:700;color:var(--ink-950)}
.v-cmt__dot,.v-cmt__date{color:var(--text-muted)}
.v-cmt__text p{margin:0 0 8px;font-size:16px;line-height:1.7;color:var(--ink-800)}
.v-cmt__text p:last-child{margin-bottom:0}

.v-cmt__form-title{margin:0 0 10px;font-family:var(--font-display);font-weight:700;font-size:22px;
  line-height:1.24;color:var(--ink-950)}
.v-cmt__note{margin:0 0 20px;font-size:14px;line-height:1.54;color:var(--text-muted)}
.v-cmt__form,.comment-form{max-width:784px;display:flex;flex-wrap:wrap;gap:16px}
.v-cmt__field{margin:0;display:flex;flex-direction:column;gap:8px;flex:1 1 100%}
.v-cmt__field--half{flex:1 1 calc(50% - 8px);min-width:220px}
.v-cmt__field label{font-size:13px;line-height:1.3;font-weight:700;color:var(--text-muted)}
.v-cmt__field input,.v-cmt__field textarea{width:100%;box-sizing:border-box;padding:14px 18px;
  border-radius:12px;background:var(--cream-100);border:1px solid var(--cream-300);
  font-family:var(--font-text);font-size:16px;line-height:1.6;color:var(--ink-950);resize:vertical}
.v-cmt__field input:focus,.v-cmt__field textarea:focus{outline:2px solid var(--crimson-600);outline-offset:2px}
.form-submit{flex:1 1 100%;margin:0}
.v-cmt__submit{height:52px;padding:0 28px;border:0;cursor:pointer;font-family:var(--font-text);
  font-weight:600;font-size:16px}
.v-cmt__form .comment-form-cookies-consent,.v-cmt__form .comment-notes,
.comment-form .comment-form-cookies-consent,.comment-form .comment-notes{display:none}

@media (max-width:767px){
  .v-cmt{padding:56px 0}
  .v-cmt__title{font-size:clamp(22px,4.6vw,28px)}
  .v-cmt__field--half{flex:1 1 100%}
}
.v-cmt__ok{margin:0 0 26px;padding:14px 22px;border-radius:14px;background:var(--a-teal-14);
  font-weight:600;font-size:15px;color:var(--teal-600);max-width:784px}

/* ── Обложка без снимка ────────────────────────────────────────────────
   У звуковой записи фотографии обычно нет — вместо пустого поля рисуем
   дорожку звука, у прочих материалов остаётся спокойный фон темы. */
.v-acover--plain{background-image:
  radial-gradient(120% 80% at 20% 0%,rgba(227,167,51,.16),transparent 60%),
  linear-gradient(160deg,var(--ink-800),var(--ink-950))}
.v-acover--audio{background-image:
  radial-gradient(90% 70% at 78% 8%,rgba(34,167,147,.22),transparent 62%),
  radial-gradient(80% 70% at 10% 0%,rgba(198,48,54,.20),transparent 60%),
  linear-gradient(160deg,var(--ink-800),var(--ink-950))}
.v-acover__art{position:absolute;inset:0;z-index:0;display:block;pointer-events:none}
.v-acover__note{position:absolute;top:64px;left:50%;transform:translateX(-50%);
  display:grid;place-items:center;width:96px;height:96px;border-radius:var(--r-pill);
  background:rgba(248,240,224,.08);box-shadow:inset 0 0 0 1px rgba(248,240,224,.18);
  color:var(--gold-400)}
.v-acover__note .v-ico{width:44px;height:44px}
.v-acover__wave{position:absolute;left:0;right:0;top:118px;height:132px;
  display:flex;align-items:center;justify-content:center;gap:6px;padding-inline:var(--gutter);
  opacity:.5}
.v-acover__wave i{display:block;width:5px;border-radius:3px;
  background:linear-gradient(180deg,var(--teal-400),rgba(34,167,147,.25))}
@media (max-width:767px){
  .v-acover__note{top:96px;width:72px;height:72px}
  .v-acover__note .v-ico{width:32px;height:32px}
  .v-acover__wave{top:140px;height:96px;gap:4px}
  .v-acover__wave i{width:3px}
}
