/* Шрифты лежат на сайте (src/fonts), без обращений к Google */
@font-face { font-family: 'Onest'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/fonts/onest-cyrillic-wght-normal.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Onest'; font-style: normal; font-display: swap; font-weight: 100 900; src: url(/fonts/onest-latin-wght-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: 'Unbounded'; font-style: normal; font-display: swap; font-weight: 900; src: url(/fonts/unbounded-cyrillic-900-normal.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Unbounded'; font-style: normal; font-display: swap; font-weight: 900; src: url(/fonts/unbounded-latin-900-normal.woff2) format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

#prg {
  --red: #e2483d; --red-soft: #fdeceb; --ink: #23201d; --soft: #75706b; --line: #eeeae6; --hover: #f8f6f4;
  background: #fff; color: var(--ink);
  font: 16px/1.5 Onest, system-ui, -apple-system, sans-serif;
  text-align: left; padding: 40px 0 160px; -webkit-font-smoothing: antialiased;
}
#prg *, #prg-player * { box-sizing: border-box; }
#prg button { font: inherit; color: inherit; }
#prg a { color: inherit; }
#prg .w { max-width: 680px; margin: 0 auto; padding: 0 20px; }
#prg :focus-visible, #prg-player :focus-visible { outline: 2px solid var(--red); outline-offset: 2px; }

/* Шапка */
#prg .head { display: grid; grid-template-columns: 112px 1fr; gap: 24px; align-items: center; }
#prg .ava { width: 112px; height: 112px; border-radius: 50%; object-fit: cover; background: var(--red-soft); display: block; }
#prg h1 { margin: 0; font: 900 34px/1 Unbounded, Onest, sans-serif; letter-spacing: -.01em; }
#prg .lead { margin: 8px 0 0; color: var(--soft); max-width: 44ch; }
#prg .authors { margin: 10px 0 0; font-size: 15px; line-height: 2; }
#prg .person { display: inline-flex; align-items: center; gap: 6px; vertical-align: middle; font-weight: 500; }
#prg .person img { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; background: var(--line); }
#prg .stats { display: flex; gap: 28px; margin: 28px 0 0; padding: 0; list-style: none; }
#prg .stats li { font-size: 14px; color: var(--soft); }
#prg .stats b { display: block; font-size: 22px; font-weight: 700; color: var(--ink); font-variant-numeric: proportional-nums; letter-spacing: -.02em; }
#prg .acts { display: flex; gap: 10px; margin-top: 24px; }
#prg .btn { border: 0; border-radius: 999px; padding: 12px 22px; font-weight: 600; cursor: pointer; display: inline-flex; align-items: center; gap: 10px; }
#prg .btn svg { width: 14px; height: 14px; flex: none; }
#prg .btn .m { display: none; }
#prg .btn.main { background: var(--red); color: #fff; }
#prg .btn.sec { background: var(--hover); }
#prg .btn.sec[aria-expanded="true"] { background: var(--red-soft); color: var(--red); }
#prg .subs { display: none; margin-top: 14px; flex-wrap: wrap; gap: 8px; }
#prg .subs.open { display: flex; }
#prg .lnk { display: inline-flex; gap: 8px; align-items: center; padding: 7px 14px 7px 9px; border-radius: 999px; background: var(--hover); text-decoration: none; font-size: 14px; }
#prg .lnk:hover { background: var(--red-soft); color: var(--red); }
#prg .lnk small { color: var(--soft); font-size: 13px; }
#prg .lnk img { width: 18px; height: 18px; border-radius: 5px; flex: none; display: block; }

/* Сезоны */
#prg .bar { position: sticky; top: 0; z-index: 4; background: #fff; margin: 40px -20px 0; padding: 0 20px; border-bottom: 1px solid var(--line); }
#prg .tabs { display: flex; gap: 28px; border-bottom: 1px solid var(--line); }
#prg .tab { background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; padding: 14px 0 12px; font-weight: 600; font-size: 17px; color: var(--soft); cursor: pointer; }
#prg .tab[aria-selected="true"] { color: var(--ink); border-bottom-color: var(--red); }
#prg .tab sup { font-size: 12px; font-weight: 500; color: var(--soft); margin-left: 3px; }
#prg .seasons { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 12px 0 14px; }
#prg .seawrap { position: relative; }
#prg .seawrap[hidden] { display: none; }
#prg .seasons.drag { cursor: grabbing; user-select: none; }
#prg .seasons.drag .sea { cursor: grabbing; }
#prg .sea-arr { display: none; position: absolute; top: 12px; bottom: 14px; z-index: 1; width: 56px; border: 0; padding: 0; font-size: 26px; line-height: 1; color: var(--ink); cursor: pointer; }
#prg .sea-arr.l { left: 0; text-align: left; background: linear-gradient(90deg, #fff 45%, rgba(255,255,255,0)); }
#prg .sea-arr.r { right: 0; text-align: right; background: linear-gradient(270deg, #fff 45%, rgba(255,255,255,0)); }
#prg .sea-arr:hover { color: var(--red); }
@media (hover: hover) and (pointer: fine) {
  #prg .seawrap.can-l .sea-arr.l, #prg .seawrap.can-r .sea-arr.r { display: block; }
}
#prg .seasons::-webkit-scrollbar { display: none; }
#prg .sea { flex: none; display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--line); background: #fff; border-radius: 999px; padding: 5px 14px 5px 5px; cursor: pointer; font-size: 14px; font-weight: 500; white-space: nowrap; }
#prg .sea.all { padding-left: 14px; }
#prg .sea[aria-pressed="true"] { border-color: var(--red); background: var(--red-soft); color: var(--red); }
#prg .faces { display: inline-flex; }
#prg .faces img { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; border: 2px solid #fff; background: var(--line); }
#prg .faces img + img { margin-left: -9px; }

/* Список */
#prg .group { margin-top: 36px; }
#prg .group h2 { margin: 0; font: 900 21px/1.15 Unbounded, Onest, sans-serif; }
#prg .group .who { display: flex; align-items: center; gap: 10px; margin-top: 8px; color: var(--soft); font-size: 15px; }
#prg .group .who .faces img { width: 30px; height: 30px; }
#prg .about { margin: 12px 0 0; font-size: 15px; max-width: 60ch; }
#prg .note { margin: 14px 0 0; padding: 14px 16px; border-radius: 14px; background: var(--hover); font-size: 15px; }
#prg .note b { font-weight: 600; }
#prg ol { list-style: none; margin: 14px 0 0; padding: 0; }
#prg .ep { border-top: 1px solid var(--line); }
#prg .ep:last-child { border-bottom: 1px solid var(--line); }
#prg .row { display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; align-items: center; padding: 14px 0; }
#prg .play { width: 44px; height: 44px; border-radius: 50%; border: 0; background: var(--red); color: #fff !important; display: grid; place-items: center; cursor: pointer; padding: 0; }
#prg .play svg { width: 15px; height: 15px; }
#prg .play[disabled] { background: var(--line); color: var(--soft) !important; cursor: default; }
#prg .ttl { background: none; border: 0; padding: 0; text-align: left; cursor: pointer; min-width: 0; }
#prg .ttl b { display: block; font-weight: 600; font-size: 17px; line-height: 1.35; }
#prg .ttl span { display: block; margin-top: 2px; font-size: 14px; color: var(--soft); }
#prg .ep.cur .ttl b { color: var(--red); }
#prg .len { font-size: 14px; color: var(--soft); font-variant-numeric: tabular-nums; white-space: nowrap; }
#prg .prog { height: 3px; background: var(--line); border-radius: 2px; margin-top: 8px; max-width: 200px; }
#prg .prog i { display: block; height: 100%; background: var(--red); border-radius: 2px; }

/* Раскрытый выпуск */
#prg .more { display: none; padding: 0 0 22px 58px; }
#prg .ep.open .more { display: block; }
#prg .desc { font-size: 15px; overflow-wrap: anywhere; }
#prg .desc p { margin: 0 0 8px; }
#prg .desc a { color: var(--red); }
#prg .more h3 { margin: 20px 0 8px; font-size: 14px; font-weight: 600; color: var(--soft); }
#prg .chap { display: grid; grid-template-columns: 58px 1fr; width: 100%; text-align: left; background: none; border: 0; padding: 7px 8px; margin: 0 -8px; border-radius: 8px; cursor: pointer; font-size: 15px; }
#prg .chap:hover { background: var(--hover); }
#prg .desc.about { margin: 8px 0 12px; }
#prg .more-about { margin: 10px 0 14px; }
#prg .more-about .about { max-width: none; font-size: inherit; margin: 6px 0 0; }
#prg .more-about .about p { margin: 0 0 12px; line-height: 1.55; }
#prg .desc.about p { margin: 0 0 12px; line-height: 1.55; }
#prg .mentions { margin: 0; padding: 0; list-style: none; }
#prg .mentions li { padding: 6px 0; font-size: 15px; line-height: 1.5; border-top: 1px solid var(--line); }
#prg .mentions li:first-child { border-top: 0; }
#prg .mentions b { font-weight: 600; }
#prg .tr summary { cursor: pointer; color: var(--red); font-weight: 500; font-size: 15px; padding: 6px 0; list-style: none; }
#prg .tr summary::-webkit-details-marker { display: none; }
#prg .tr summary::after { content: ' ↓'; }
#prg .tr[open] summary::after { content: ' ↑'; }
#prg .tr-body { padding-top: 8px; }
#prg .tr-body p { margin: 0 0 12px; font-size: 15px; line-height: 1.6; overflow-wrap: anywhere; }
#prg .tr-body b { font-weight: 600; }
#prg .tc { background: none; border: 0; padding: 0 2px 0 0; cursor: pointer; color: var(--red); font: inherit; font-size: 13px; font-variant-numeric: tabular-nums; }
#prg .tc:hover { text-decoration: underline; }
#prg .chap span { color: var(--red); font-variant-numeric: tabular-nums; font-weight: 500; }
#prg .links { display: flex; flex-wrap: wrap; gap: 8px; }
#prg .video { position: relative; aspect-ratio: 16/9; border-radius: 14px; overflow: hidden; background: #000 center/cover no-repeat; border: 0; width: 100%; padding: 0; cursor: pointer; display: block; }
#prg .video::after { content: ""; position: absolute; inset: 0; margin: auto; width: 64px; height: 64px; border-radius: 50%; background: var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5.5v13a1 1 0 0 0 1.5.86l11-6.5a1 1 0 0 0 0-1.72l-11-6.5A1 1 0 0 0 8 5.5z'/%3E%3C/svg%3E") 50% 50%/26px no-repeat; }
#prg .video.on::after { display: none; }
#prg .video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
#prg .muted { color: var(--soft); font-size: 14px; }
/* Видео: свежее крупно, остальные сеткой по два; открытое видео разворачивается на всю ширину */
#prg .vids { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: 28px 20px; margin-top: 28px; }
#prg .vids[hidden] { display: none; }
#prg .vcard { min-width: 0; scroll-margin-top: 80px; }
#prg .vcard.big, #prg .vcard.open, #prg .vmore { grid-column: 1 / -1; }
#prg .vcard:not(.big):not(.open) .video { border-radius: 12px; }
#prg .vcard:not(.big):not(.open) .video::after { width: 44px; height: 44px; background-size: 18px; }
#prg .vcard h3 { margin: 12px 0 2px; font-size: 18px; font-weight: 600; line-height: 1.3; color: var(--ink); }
#prg .vcard:not(.big):not(.open) h3 { margin-top: 10px; font-size: 15px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
#prg .vcard p { margin: 0; font-size: 14px; color: var(--soft); }
#prg .vcard:not(.big):not(.open) p { font-size: 13px; }
@media (max-width: 560px) {
  #prg .vids { gap: 22px 12px; }
  #prg .vcard:not(.big):not(.open) h3 { font-size: 14px; }
  #prg .vcard:not(.big):not(.open) .video::after { width: 36px; height: 36px; background-size: 15px; }
}
#prg .vmore h2 { margin: 0 0 12px; font: 900 19px/1.15 Unbounded, Onest, sans-serif; }
#prg .state { padding: 48px 0; text-align: center; color: var(--soft); }

@media (max-width: 560px) {
  #prg { padding-top: 28px; }
  #prg .head { grid-template-columns: 76px 1fr; gap: 16px; }
  #prg .ava { width: 76px; height: 76px; }
  #prg h1 { font-size: 26px; }
  #prg .group h2 { font-size: 19px; }
  #prg .lead { font-size: 15px; }
  #prg .stats { gap: 20px; margin-top: 22px; }
  #prg .stats b { font-size: 19px; }
  #prg .acts .btn { flex: 1; justify-content: center; padding: 12px 14px; white-space: nowrap; }
  #prg .btn .d { display: none; }
  #prg .btn .m { display: inline; }
  #prg .authors { font-size: 14px; }
  #prg .tabs { gap: 24px; }
  #prg .row { grid-template-columns: 40px 1fr; }
  #prg .play { width: 40px; height: 40px; }
  #prg .len { display: none; }
  #prg .more { padding-left: 0; }
}

/* Плеер: мини внизу и полноэкранный, как в стриминге */
#prg-player { position: fixed; left: 0; right: 0; bottom: 0; z-index: 99990; color: #23201d; font: 15px/1.4 Onest, system-ui, sans-serif; text-align: left; transform: translateY(110%); transition: transform .25s ease; }
#prg-player.show { transform: none; }
#prg-player button { font: inherit; color: inherit; }
#prg-player .c { border: 0; background: none; width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; cursor: pointer; padding: 0; flex: none; }
#prg-player .c svg { width: 22px; height: 22px; }

#prg-player .mini { position: relative; max-width: 680px; margin: 0 auto 10px; width: calc(100% - 20px); display: grid; grid-template-columns: 44px 1fr auto auto; gap: 12px; align-items: center; padding: 8px 8px 8px 8px; background: rgba(255,255,255,.97); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-radius: 16px; box-shadow: 0 6px 28px rgba(35,32,29,.16); cursor: pointer; overflow: hidden; }
#prg-player .mini img { width: 44px; height: 44px; border-radius: 10px; object-fit: cover; background: #fdeceb; display: block; }
#prg-mTitle { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#prg-mSub { font-size: 13px; color: #75706b; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#prg-player .mini .c.main { width: 44px; height: 44px; background: #e2483d; color: #fff; }
#prg-player .mini .c.main svg { width: 16px; height: 16px; }
#prg-player .mbar { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: #eeeae6; }
#prg-player .mbar b { display: block; height: 100%; width: 0; background: #e2483d; }

#prg-player .full { position: fixed; inset: 0; z-index: 99991; overflow-y: auto; overscroll-behavior: contain; color: #fff;
  background: linear-gradient(180deg, #9c3027 0%, #6b1f19 55%, #3a110e 100%);
  transform: translateY(100%); visibility: hidden; transition: transform .32s cubic-bezier(.2,.8,.2,1), visibility 0s .32s; }
#prg-player.open .full { transform: none; visibility: visible; transition: transform .32s cubic-bezier(.2,.8,.2,1), visibility 0s; }
#prg-player .fi { max-width: 440px; margin: 0 auto; padding: max(12px, env(safe-area-inset-top)) 24px calc(40px + env(safe-area-inset-bottom)); min-height: 100%; display: flex; flex-direction: column; }
#prg-player .ftop { display: grid; grid-template-columns: 44px 1fr 44px; align-items: center; margin: 0 -10px; }
#prg-fSeason { text-align: center; font-size: 14px; font-weight: 600; opacity: .85; }
#prg-player .fcover { width: 100%; max-width: 380px; aspect-ratio: 1; margin: 16px auto 0; border-radius: 18px; object-fit: cover; display: block; background: rgba(255,255,255,.12); box-shadow: 0 24px 60px rgba(60,10,5,.45); touch-action: pan-y; }
#prg-player .fmeta { margin-top: 28px; }
#prg-pTitle { margin: 0; font-size: 22px; line-height: 1.25; font-weight: 700; }
#prg-pSub { margin: 6px 0 0; font-size: 15px; opacity: .8; }
#prg-pChap { margin: 4px 0 0; font-size: 15px; font-weight: 500; min-height: 21px; }
#prg-pSeek { -webkit-appearance: none; appearance: none; width: 100%; height: 4px; margin: 26px 0 0; border-radius: 2px; cursor: pointer;
  background: linear-gradient(to right, #fff var(--p, 0%), rgba(255,255,255,.3) var(--p, 0%)); outline-offset: 6px; }
#prg-pSeek::-webkit-slider-thumb { -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 0; box-shadow: 0 1px 4px rgba(0,0,0,.25); }
#prg-pSeek::-moz-range-thumb { width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 0; }
#prg-pSeek::-moz-range-track { background: transparent; }
#prg-player .ftime { display: flex; justify-content: space-between; margin-top: 8px; font-size: 13px; opacity: .8; font-variant-numeric: tabular-nums; }
#prg-player .fctl { display: grid; grid-template-columns: 1fr auto auto auto 1fr; align-items: center; gap: 18px; margin-top: 18px; }
#prg-player .fctl .c { width: 52px; height: 52px; color: #fff; }
#prg-player .fctl .c svg { width: 34px; height: 34px; }
#prg-player .fctl .c.main { width: 76px; height: 76px; background: #fff; color: #e2483d; }
#prg-player .fctl .c.main svg { width: 28px; height: 28px; }
#prg-speed { justify-self: start; width: auto !important; min-width: 52px; padding: 0 12px !important; border-radius: 999px !important; background: rgba(255,255,255,.16) !important; height: 36px !important; font-weight: 600 !important; font-size: 14px !important; }
#prg-share { justify-self: end; }
#prg-share svg { width: 24px !important; height: 24px !important; }
#prg-toast { text-align: center; font-size: 14px; min-height: 20px; margin-top: 10px; opacity: 0; transition: opacity .2s; }
#prg-toast.on { opacity: .9; }
#prg-player .fchap { margin-top: 18px; }
#prg-player .fchap h3 { margin: 0 0 6px; font-size: 14px; font-weight: 600; opacity: .7; }
#prg-player .fchap button { display: grid; grid-template-columns: 56px 1fr; width: 100%; text-align: left; background: none; border: 0; padding: 9px 10px; margin: 0 -10px; width: calc(100% + 20px); border-radius: 10px; cursor: pointer; font-size: 15px; line-height: 1.35; }
#prg-player .fchap button span { opacity: .75; font-variant-numeric: tabular-nums; }
#prg-player .fchap button.on { background: rgba(255,255,255,.16); font-weight: 600; }
#prg-player .fchap button.on span { opacity: 1; }
#prg-player :focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@media (min-width: 900px) and (min-height: 700px) {
  #prg-player .fi { justify-content: center; }
}
@media (prefers-reduced-motion: reduce) {
  #prg-player, #prg-player .full { transition: none !important; }
}

/* ===== Добавлено для отдельного сайта ===== */
html, body { margin: 0; background: #fff; }
#prg .permalink { margin: 14px 0 0; font-size: 15px; }
#prg .permalink a { color: var(--red); text-decoration: none; font-weight: 500; }
#prg .permalink a:hover { text-decoration: underline; }
#prg .permalink.top { margin: 0 0 12px; }
#prg .permalink.top a { display: inline-block; padding: 7px 14px; border: 1px solid var(--red); border-radius: 999px; font-size: 14px; }
#prg .permalink.top a:hover { background: var(--red); color: #fff; text-decoration: none; }

/* Страница выпуска */
#prg .crumb { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; font-weight: 600; }
#prg .crumb img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background: var(--red-soft); }
#prg .crumb span { font: 900 18px/1 Unbounded, Onest, sans-serif; }
#prg .crumb:hover span { color: var(--red); }
#prg .epage { margin-top: 32px; }
#prg .epage .kicker { margin: 0; color: var(--soft); font-size: 15px; }
#prg .epage h1 { margin: 8px 0 0; font-size: 30px; line-height: 1.15; }
#prg .epage .ep, #prg .epage .ep:last-child { border: 0; }
#prg .epage .row { grid-template-columns: 56px 1fr; padding: 20px 0 4px; }
#prg .epage .row .play { width: 56px; height: 56px; }
#prg .epage .row .info { color: var(--soft); font-size: 15px; }
#prg .epage .more { display: block; padding: 0 0 8px; }
/* Комментарии */
#prg .cm { margin-top: 48px; scroll-margin-top: 20px; }
#prg .cm h2 { margin: 0 0 16px; font: 900 21px/1.15 Unbounded, Onest, sans-serif; }
#prg .cm h2 sup { font: 600 13px Onest, sans-serif; color: var(--soft); margin-left: 4px; vertical-align: 6px; }
#prg .cm-empty { color: var(--soft); margin: 16px 0 0; }
#prg .cm-new { margin-bottom: 8px; }
#prg .cm-thread { border-top: 1px solid var(--line); padding: 16px 0 4px; }
#prg .cm-item { display: grid; grid-template-columns: 36px 1fr; gap: 12px; padding-bottom: 12px; border-radius: 12px; transition: background .6s; }
#prg .cm-item.cm-hl { background: var(--red-soft); }
#prg .cm-kids { margin-left: 48px; }
#prg .cm-kids .cm-item { grid-template-columns: 28px 1fr; }
#prg .cm-ava { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; background: var(--red-soft); display: block; }
#prg .cm-kids .cm-ava { width: 28px; height: 28px; }
#prg .cm-ava-t { display: grid; place-items: center; color: var(--red); font-weight: 700; font-size: 15px; }
#prg .cm-head { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
#prg .cm-head b { font-weight: 600; }
#prg .cm-head span { color: var(--soft); font-size: 13px; }
#prg .cm-body { margin-top: 2px; overflow-wrap: anywhere; }
#prg .cm-body a { color: var(--red); }
#prg .cm-acts { display: flex; gap: 16px; margin-top: 4px; }
#prg .cm-acts button, #prg .cm-me button, #prg .cm-open { background: none; border: 0; padding: 0; cursor: pointer; color: var(--soft); font-size: 14px; }
#prg .cm-acts button:hover, #prg .cm-me button:hover, #prg .cm-open:hover { color: var(--red); }
#prg .cm-open { font-size: 15px; font-weight: 500; color: var(--red); padding: 4px 0 12px; }
#prg .cm-del p { grid-column: 1 / -1; margin: 0; color: var(--soft); font-size: 14px; font-style: italic; }
#prg .cm-form { margin: 4px 0 16px; }
#prg .cm-form textarea { width: 100%; resize: vertical; min-height: 64px; border: 1px solid var(--line); border-radius: 14px; padding: 12px 14px; font: inherit; color: var(--ink); background: #fff; }
#prg .cm-form textarea:focus { outline: none; border-color: var(--red); }
#prg .cm-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 8px; flex-wrap: wrap; }
#prg .cm-me { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--soft); }
#prg .cm-me .cm-ava { width: 22px; height: 22px; font-size: 11px; }
#prg .cm-send { border: 0; border-radius: 999px; padding: 9px 18px; background: var(--red); color: #fff; font-weight: 600; cursor: pointer; }
#prg .cm-send:disabled { opacity: .6; cursor: default; }
#prg .cm-cancel { border: 0; background: none; color: var(--soft); cursor: pointer; margin-right: 8px; }
#prg .cm-err { margin: 8px 0 0; color: var(--red); font-size: 14px; }
#prg .cm-login { margin: 4px 0 16px; padding: 16px; border-radius: 16px; background: var(--hover); }
#prg .cm-login p { margin: 0 0 12px; color: var(--soft); font-size: 15px; }
#prg .cm-logins { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
#prg .cm-ya { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 18px 0 12px; border-radius: 20px; border: 0; background: #000; color: #fff; font-weight: 500; font-size: 15px; cursor: pointer; }
#prg .cm-ya:hover { background: #333; }
#prg .cm-tg { min-height: 40px; display: flex; align-items: center; }
#prg .cm-tg iframe { color-scheme: light; }
@media (max-width: 560px) { #prg .cm-kids { margin-left: 24px; } }

#prg .others { margin-top: 48px; }
#prg .others h2 { margin: 0 0 6px; font: 900 21px/1.15 Unbounded, Onest, sans-serif; }
#prg .others a { display: block; padding: 12px 0; border-top: 1px solid var(--line); text-decoration: none; }
#prg .others a:hover b { color: var(--red); }
#prg .others b { display: block; font-weight: 600; }
#prg .others small { color: var(--soft); font-size: 14px; }
#prg .all-link { display: inline-block; margin-top: 20px; color: var(--red); font-weight: 600; text-decoration: none; }
#prg .all-links { display: flex; flex-wrap: wrap; gap: 0 24px; margin: 0; }
/* страница архива /archive/ */
#prg .arch + #prg-list .group { margin-top: 18px; }
#prg .arch + #prg-list > .about { margin-top: 18px; }

/* Список для поисковиков и людей без JavaScript, пока плеер не загрузился */
#prg .seo-list { list-style: none; padding: 0; margin: 14px 0 0; }
#prg .seo-list li { border-top: 1px solid var(--line); padding: 12px 0; }
#prg .seo-list a { text-decoration: none; font-weight: 600; }
#prg .seo-list small { display: block; color: var(--soft); font-weight: 400; font-size: 14px; }

@media (max-width: 560px) {
  #prg .epage h1 { font-size: 24px; }
}

/* Приложение и уведомления */
#prg .appbox { display: contents; }
#prg .appbox[hidden] { display: none; }
#prg .lnk.app { border: 0; cursor: pointer; font: inherit; font-size: 14px; color: inherit; }
#prg .lnk.app svg { flex: none; }
#prg .lnk.app[aria-pressed="true"] { background: var(--red-soft); color: var(--red); }
#prg .epage .appbox { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
#prg-say { position: fixed; left: 50%; bottom: 96px; transform: translate(-50%, 12px); max-width: calc(100% - 32px); background: #23201d; color: #fff; font: 500 15px/1.4 Onest, system-ui, sans-serif; padding: 12px 18px; border-radius: 14px; opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; z-index: 1000; text-align: center; }
#prg-say.on { opacity: 1; transform: translate(-50%, 0); }
.sheet { position: fixed; inset: 0; z-index: 1001; background: rgba(35, 32, 29, .45); display: flex; align-items: flex-end; justify-content: center; padding: 16px; font: 16px/1.5 Onest, system-ui, sans-serif; color: #23201d; }
.sheet-in { background: #fff; border-radius: 22px; padding: 24px 22px 20px; max-width: 440px; width: 100%; box-shadow: 0 10px 40px rgba(0,0,0,.2); }
.sheet-in h3 { margin: 0 0 8px; font: 900 19px/1.2 Unbounded, Onest, sans-serif; }
.sheet-in p { margin: 0 0 10px; }
.sheet-in ol { margin: 0 0 12px; padding-left: 22px; }
.sheet-in li { margin: 6px 0; }
.sheet-in .muted { color: #75706b; font-size: 14px; }
.sheet-in .btn { width: 100%; justify-content: center; margin-top: 6px; border: 0; border-radius: 999px; padding: 13px 22px; font: 600 16px Onest, system-ui, sans-serif; background: #e2483d; color: #fff; cursor: pointer; }
@media (min-width: 600px) { .sheet { align-items: center; } }

/* Скачанные выпуски (только в установленном приложении) */
#prg .dlbox { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
#prg .dlbox .lnk.on { background: var(--red-soft); color: var(--red); }
#prg-dl { justify-self: end; color: inherit; }
#prg-dl[hidden] { display: none; }
#prg-dl svg { width: 24px !important; height: 24px !important; }
#prg-dl.done { opacity: .9; }
#prg-dl .pct { font: 600 13px Onest, system-ui, sans-serif; }
#prg .dls { padding: 8px 0 24px; }
#prg .dls-sum { margin: 14px 0 8px; color: var(--soft); font-size: 15px; }
#prg .dls ul { list-style: none; margin: 0 0 16px; padding: 0; }
#prg .dls li { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
#prg .dls li a { flex: 1; min-width: 0; text-decoration: none; color: inherit; }
#prg .dls li b { display: block; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#prg .dls li span { display: block; color: var(--soft); font-size: 14px; margin-top: 2px; }
#prg .dls-note { font-size: 13px; margin-top: 14px; }
#prg .dls .play { flex: none; }

/* Плашка о куки и страница о данных */
#prg-cookie { position: fixed; left: 12px; right: 12px; bottom: calc(92px + env(safe-area-inset-bottom)); z-index: 999; max-width: 560px; margin: 0 auto; display: flex; align-items: center; gap: 12px; background: #23201d; color: #fff; font: 14px/1.4 Onest, system-ui, sans-serif; padding: 12px 12px 12px 16px; border-radius: 16px; box-shadow: 0 8px 30px rgba(0,0,0,.2); }
#prg-cookie p { margin: 0; flex: 1; }
#prg-cookie a { color: #fff; }
#prg-cookie .ck-btns { flex: none; display: flex; gap: 8px; }
#prg-cookie button { flex: none; border: 0; border-radius: 999px; padding: 9px 16px; background: #fff; color: #23201d; font: 600 14px Onest, system-ui, sans-serif; cursor: pointer; }
#prg-cookie button.ck-no { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.45); }
@media (max-width: 520px) { #prg-cookie { flex-direction: column; align-items: stretch; } #prg-cookie .ck-btns > * { flex: 1; } }
#prg .policy p { line-height: 1.55; }
#prg .policy a { color: var(--red); }
#prg .policy a.lnk { color: inherit; }
#prg .policy a.lnk:hover { color: var(--red); }

/* Галочка согласия перед входом в комментарии */
#prg .cm-agree { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 14px; font-size: 14px; line-height: 1.45; color: var(--soft); cursor: pointer; }
#prg .cm-agree input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--red); }
#prg .cm-agree a { color: var(--red); }
#prg .cm-ya:disabled { opacity: .35; cursor: not-allowed; }

/* Подвал со ссылками на документы */
.sitefoot { max-width: 680px; margin: 16px auto 0; padding: 20px 20px calc(120px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(35,32,29,.1); font: 13px/1.6 Onest, system-ui, sans-serif; color: #8a847d; }
.sitefoot p { margin: 0 0 4px; }
.sitefoot a, .sitefoot button { color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 2px; }
.sitefoot button { background: none; border: 0; padding: 0; cursor: pointer; }
.sitefoot a:hover, .sitefoot button:hover { color: #23201d; }
#prg .policy h2 { margin: 28px 0 10px; font: 600 19px/1.3 Onest, sans-serif; }
#prg .policy h3 { margin: 22px 0 8px; font-size: 16px; }
#prg .policy ul, #prg .policy ol { padding-left: 22px; line-height: 1.55; }
#prg .policy li { margin: 4px 0; }
#prg .policy .meta { color: var(--soft); font-size: 14px; }
#prg .policy .linklike { background: none; border: 0; padding: 0; font: inherit; color: var(--red); text-decoration: underline; cursor: pointer; }
#prg .policy code { font-size: 13px; background: var(--hover); padding: 1px 5px; border-radius: 4px; }

/* Блок об агентстве Daruma Audio на главной — спокойный, без призывов */
#prg .studio { margin: 56px 0 0; padding: 22px 0 0; border-top: 1px solid var(--line); color: var(--soft); font-size: 15px; line-height: 1.55; }
#prg .studio p { margin: 0 0 8px; max-width: 52ch; }
.studio-2 { margin-top: 28px; }
#prg .studio b { color: var(--ink); font-weight: 600; }
#prg .studio-k { font-size: 13px; letter-spacing: .02em; text-transform: uppercase; color: var(--soft); }
#prg .studio a { color: var(--ink); font-weight: 600; text-decoration: none; border-bottom: 1px solid var(--line); }
#prg .studio a:hover { color: var(--red); border-color: var(--red); }

/* Поделиться с этого места */
#prg-player .fi { position: relative; }
.shmenu { position: absolute; right: 12px; bottom: 120px; z-index: 5; display: flex; flex-direction: column; gap: 6px; background: #fff; color: #23201d; border-radius: 16px; padding: 8px; box-shadow: 0 10px 40px rgba(0,0,0,.25); min-width: 220px; }
.shmenu button { border: 0; background: none; text-align: left; padding: 12px 14px; border-radius: 10px; font: 600 15px Onest, system-ui, sans-serif; color: inherit; cursor: pointer; }
.shmenu button:hover { background: #f1eeeb; }
.shmenu button.no { color: #75706b; font-weight: 500; }
#prg .from { display: flex; align-items: center; gap: 12px; width: 100%; margin: 0 0 18px; padding: 12px 16px; border: 0; border-radius: 16px; background: var(--red-soft); color: var(--ink); font: inherit; font-size: 15px; text-align: left; cursor: pointer; }
#prg .from svg { width: 16px; height: 16px; flex: none; color: var(--red); }
#prg .from b { color: var(--red); }

/* Вопрос ведущим */
#prg .asklink { display: inline-flex; align-items: center; gap: 8px; margin: 14px 0 0; padding: 4px 0; border: 0; background: none; color: var(--soft); font: inherit; font-size: 15px; cursor: pointer; }
#prg .asklink:hover { color: var(--red); }
#prg .asklink svg { flex: none; }
#prg .askbox p { margin: 0 0 10px; }
.askf textarea, .askf input { display: block; width: 100%; box-sizing: border-box; margin: 0 0 10px; padding: 12px 14px; border: 1px solid #e5e0db; border-radius: 12px; font: 16px/1.4 Onest, system-ui, sans-serif; color: #23201d; background: #fff; resize: vertical; }
.askf textarea:focus, .askf input:focus { outline: 2px solid #e2483d; outline-offset: -1px; border-color: transparent; }
.askf .hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.askf .err { color: #c0392b; font-size: 14px; margin: 0 0 6px; min-height: 0; }
.askf .err:empty { display: none; }
.askf .btn.sec { background: #f1eeeb; color: #23201d; }
.askf .small { font-size: 13px; margin-top: 12px; }
.askf .small a { color: inherit; }
.askf .agree { display: flex; gap: 10px; align-items: flex-start; font-size: 13px; line-height: 1.4; color: #75706b; margin: 2px 0 12px; }
.askf .agree input { width: 18px; height: 18px; margin: 1px 0 0; flex: none; accent-color: #e2483d; }
.askf .agree a { color: inherit; }

/* Обновление жестом «потянуть вниз» (только в установленном приложении) */
@media (display-mode: standalone) { html, body { overscroll-behavior-y: contain; } }
#prg-pull { position: fixed; left: 50%; top: env(safe-area-inset-top, 0px); z-index: 5; width: 52px; height: 52px; border-radius: 50%;
  background: #fff; box-shadow: 0 2px 12px rgba(35, 32, 29, .16); overflow: hidden;
  transform: translate(-50%, 0) scale(.5); transform-origin: 50% 50%; opacity: 0; pointer-events: none; }
#prg-pull img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 50%; }
#prg-pull.spin img { animation: prg-pull-spin .9s linear infinite; }
@keyframes prg-pull-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { #prg-pull.spin img { animation-duration: 2.4s; } }
