/* «Кто твой Господь?» — новый сайт (№ 1535, Дизайнер, 21.10.2026).
   Гамма старого сайта: акцент #00b3ff, текст #6c6c6c, белый, второстепенное #cecece, тёмно-синий первого экрана.
   Производные: #0077ad / #0079b0 — акцент для текста и кнопок на белом (контраст ≥ 4,5), #45484c — основной текст. */

@font-face { font-family: "Literata"; src: url("/shrifty/literata.woff2") format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Literata"; src: url("/shrifty/literata-kursiv.woff2") format("woff2"); font-weight: 400 600; font-style: italic; font-display: swap; }
@font-face { font-family: "Onest"; src: url("/shrifty/onest.woff2") format("woff2"); font-weight: 400 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Golos Text"; src: url("/shrifty/golos-text-cyrillic.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Golos Text"; src: url("/shrifty/golos-text-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; 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: "Manrope"; src: url("/shrifty/manrope-cyrillic.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Manrope"; src: url("/shrifty/manrope-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; 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: "Oswald"; src: url("/shrifty/oswald-cyrillic.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Oswald"; src: url("/shrifty/oswald-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; 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: "Montserrat"; src: url("/shrifty/montserrat-cyrillic.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Montserrat"; src: url("/shrifty/montserrat-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; 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: "PT Sans"; src: url("/shrifty/pt-sans-400-cyrillic.woff2") format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans"; src: url("/shrifty/pt-sans-400-latin.woff2") format("woff2"); font-weight: 400; font-display: swap; 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: "PT Sans"; src: url("/shrifty/pt-sans-700-cyrillic.woff2") format("woff2"); font-weight: 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans"; src: url("/shrifty/pt-sans-700-latin.woff2") format("woff2"); font-weight: 700; font-display: swap; 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: "PT Sans Narrow"; src: url("/shrifty/pt-sans-narrow-400-cyrillic.woff2") format("woff2"); font-weight: 400; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans Narrow"; src: url("/shrifty/pt-sans-narrow-400-latin.woff2") format("woff2"); font-weight: 400; font-display: swap; 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: "PT Sans Narrow"; src: url("/shrifty/pt-sans-narrow-700-cyrillic.woff2") format("woff2"); font-weight: 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "PT Sans Narrow"; src: url("/shrifty/pt-sans-narrow-700-latin.woff2") format("woff2"); font-weight: 700; font-display: swap; 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: "Roboto Condensed"; src: url("/shrifty/roboto-condensed-cyrillic.woff2") format("woff2"); font-weight: 100 900; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Roboto Condensed"; src: url("/shrifty/roboto-condensed-latin.woff2") format("woff2"); font-weight: 100 900; font-display: swap; 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"; src: url("/shrifty/unbounded-cyrillic.woff2") format("woff2"); font-weight: 400 700; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Unbounded"; src: url("/shrifty/unbounded-latin.woff2") format("woff2"); font-weight: 400 700; font-display: swap; 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: "Salyam"; src: url("/shrifty/amiri-salyam.woff2") format("woff2"); unicode-range: U+FDFA; font-display: swap; size-adjust: 135%; }

:root {
  --navy: #0a1a33;
  --navy-2: #12305c;
  --navy-3: #1c4479;
  --akcent: #00b3ff;
  --akcent-t: #0077ad;
  --knopka-fon: #0079b0;
  --knopka-fon-2: #00669a;
  --knopka-tekst: #ffffff;
  --tekst: #45484c;
  --tekst-2: #6c6c6c;
  --sery: #cecece;
  --fon: #ffffff;
  --fon-2: #f1f6fa;
  --fon-3: #e2ebf2;
  --zag: #0a1a33;
  --fokus: #0077ad;
  --metka: rgba(0, 179, 255, .2);
  --f-tekst: "Literata", "Salyam", Georgia, "Times New Roman", serif;
  --f-ui: "Onest", "Salyam", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --f-zag: var(--f-tekst);
  --sh-h: 56px;
  --dok-h: 64px;
  --niz: env(safe-area-inset-bottom, 0px);
  --setka: minmax(0, 1fr);
  --zazor: 0px;
  --kol: 1;
  --polya: 20px;
  --dvizh: cubic-bezier(.2, .7, .2, 1);
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-tema="den"]) {
    --akcent-t: #5ccfff; --knopka-fon: #00b3ff; --knopka-fon-2: #33c4ff; --knopka-tekst: #0a1a33;
    --tekst: #d3dbe4; --tekst-2: #a3b2c3; --sery: #3a4d68; --fon: #0c1729; --fon-2: #13223a; --fon-3: #1c3050;
    --zag: #eef3f8; --fokus: #00b3ff; --metka: rgba(0, 179, 255, .3); color-scheme: dark;
  }
}
:root[data-tema="noch"] {
  --akcent-t: #5ccfff; --knopka-fon: #00b3ff; --knopka-fon-2: #33c4ff; --knopka-tekst: #0a1a33;
  --tekst: #d3dbe4; --tekst-2: #a3b2c3; --sery: #3a4d68; --fon: #0c1729; --fon-2: #13223a; --fon-3: #1c3050;
  --zag: #eef3f8; --fokus: #00b3ff; --metka: rgba(0, 179, 255, .3); color-scheme: dark;
}
@media (min-width: 760px) { :root { --polya: 32px; } }
@media (min-width: 1100px) { :root { --sh-h: 64px; } }
@media (min-width: 1200px) {
  :root { --setka: minmax(200px, 256px) minmax(0, 680px) minmax(220px, 256px); --zazor: 48px; --kol: 2; }
}

/* ---------- основа ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: calc(var(--sh-h) + 16px); }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body { margin: 0; background: var(--fon); color: var(--tekst); font: 400 1rem/1.6 var(--f-ui); -webkit-tap-highlight-color: rgba(0, 179, 255, .15); touch-action: manipulation; overflow-x: hidden; hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; }
/* переносы — в наборном тексте всех страниц; заголовки, меню, кнопки, поля, подписи и даты — без переносов (№ 1535) */
h1, h2, h3, nav, button, input, label, time, code, .zag, .meta, .igrat-vse, .knopka-glavnaya, .knopka-vtoraya, .rubrika-metka { hyphens: manual; -webkit-hyphens: manual; }
/* боковые колонки (плеер, «Поделись», виджеты) и подписи «Слушать статью», «Поделиться статьёй» — названия, без переносов по слогам (№ 1545) */
.levaya, .vidzhety, .ak-zag, .kp-zag { hyphens: manual; -webkit-hyphens: manual; }
img, svg { display: block; max-width: 100%; }
svg { width: 24px; height: 24px; flex: none; }
a { color: var(--akcent-t); }
button, input { font: inherit; color: inherit; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--fokus); outline-offset: 3px; border-radius: 6px; }
.vh { position: absolute !important; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; padding: 0; }
.propusk { position: fixed; left: 12px; top: 12px; z-index: 100; padding: 12px 18px; border-radius: 10px; background: var(--fon); color: var(--zag); font-weight: 600; transform: translateY(-160%); transition: transform .2s var(--dvizh); }
.propusk:focus { transform: none; }
[hidden] { display: none !important; }
.temnoe, .sh, .shapka, .geroy, .pleer, .podval, .dok-podelitsya { --fokus: #00b3ff; }

/* ---------- шапка ---------- */
.sh { position: sticky; top: 0; z-index: 30; background: var(--navy); color: #fff; padding-top: env(safe-area-inset-top, 0px); }
.sh::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: var(--akcent); }
.sh-v { height: var(--sh-h); display: flex; align-items: center; gap: 4px; padding: 0 max(6px, env(safe-area-inset-right)) 0 max(6px, env(safe-area-inset-left)); max-width: 1440px; margin: 0 auto; }
.sh-knopka { display: inline-grid; place-items: center; width: 44px; height: 44px; border: 0; border-radius: 12px; background: transparent; color: inherit; text-decoration: none; transition: background-color .15s; }
.sh-knopka:hover { background: rgba(255, 255, 255, .1); }
.sh-knopka svg { width: 22px; height: 22px; }
.sh-logo { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 0 6px; color: inherit; text-decoration: none; font: 600 1.0625rem/1.1 var(--f-tekst); letter-spacing: -.01em; white-space: nowrap; min-width: 0; }
.sh-logo img { width: 30px; height: 30px; border-radius: 8px; }
.sh-stroka { flex: none; display: block; height: 32px; aspect-ratio: 869 / 169; background: currentColor; -webkit-mask: url(/logo-stroka.svg?v=1559) no-repeat center / contain; mask: url(/logo-stroka.svg?v=1559) no-repeat center / contain; }
.sh-pravo { margin-left: auto; display: flex; align-items: center; gap: 2px; }
.sh-hod { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; pointer-events: none; }
.sh-hod i { display: block; height: 100%; background: var(--akcent); transform-origin: 0 50%; transform: scaleX(var(--hod, 0)); }
@media (max-width: 439px) { .sh-v .sh-logo { padding-left: 4px; gap: 8px; } .sh-pravo { gap: 0; } .sh-pravo .sh-knopka { width: 40px; } }
/* значки YouTube и Instagram — только когда влезают: строка шапки с ними и кнопкой «Аа» ≈ 507 px (№ 1567, № 1568) */
@media (max-width: 519px) { .sh-pravo .sh-soc { display: none; } }
/* узкий телефон: надпись знака чуть меньше, чтобы «Аа» рядом с палитрой не наезжала на «?» (№ 1568) */
@media (max-width: 439px) { .sh-stroka { height: 26px; } }
@media (max-width: 359px) { .sh-v .sh-logo img { display: none; } .sh-pravo .sh-knopka { width: 40px; } }

/* ---------- оформление: кнопка в шапке и меню из четырёх тем (№ 1545) ---------- */
.oform, .shrift-vybor { position: relative; }
.oform-menyu { position: absolute; right: -4px; top: calc(100% + 10px); z-index: 45; width: 288px; margin: 0; padding: 10px; border-radius: 16px; background: var(--fon); color: var(--tekst); box-shadow: 0 18px 48px rgba(5, 12, 24, .32), 0 0 0 1px rgba(10, 26, 51, .08); --fokus: var(--akcent-t); }
#shrift-menyu { max-height: calc(100vh - var(--sh-h) - 24px); max-height: calc(100dvh - var(--sh-h) - 24px); overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 759px) { .oform-menyu { position: fixed; left: 10px; right: 10px; top: calc(var(--sh-h) + env(safe-area-inset-top, 0px) + 8px); width: auto; } }
.oform-metka { margin: 4px 8px 8px; font: 600 .8125rem/1.2 var(--f-ui); color: var(--tekst-2); }
.oform-menyu button, .oform-ryad button { display: flex; align-items: center; gap: 12px; width: 100%; min-height: 48px; padding: 6px 10px; border: 2px solid transparent; border-radius: 12px; background: none; color: var(--zag); font: 500 .9688rem/1.2 var(--f-ui); text-align: left; }
.oform-menyu button:hover, .oform-ryad button:hover { background: var(--fon-2); }
.oform-menyu button[aria-pressed="true"], .oform-ryad button[aria-pressed="true"] { border-color: var(--akcent-t); font-weight: 600; }
.obr { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; box-shadow: inset 0 0 0 1px rgba(127, 140, 160, .55); }
.obr i { display: block; width: 12px; height: 12px; border-radius: 50%; }
.oform-ryad { display: flex; flex-direction: column; gap: 2px; }
.oform-ryad .oform-metka { margin-left: 4px; }

/* ---------- размер текста (№ 1576): три кнопки в меню «Аа» и в панели слева; весь сайт в rem — меняем корень ---------- */
:root[data-razmer="m"] { font-size: 87.5%; }
:root[data-razmer="k"] { font-size: 115%; }
.razmer-ryad { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin-bottom: 8px; }
.oform-menyu .razmer-ryad button, .oform-ryad .razmer-ryad button { flex-direction: column; justify-content: center; gap: 2px; min-height: 56px; padding: 6px 4px; text-align: center; box-shadow: inset 0 0 0 1px rgba(127, 140, 160, .35); }
.razmer-ryad small { font: 500 12px/1.2 var(--f-ui); color: var(--tekst-2); }
.razmer-a { font: 600 18px/1 var(--f-zag); color: var(--zag); }
.razmer-a-m { font-size: 14px; }
.razmer-a-k { font-size: 23px; }

/* ---------- шрифт: 7 связок «текст + заголовки» — кнопка «Аа» рядом с палитрой (№ 1568, № 1569, № 1571); без выбора — Literata ---------- */
:root[data-shrift="a"] { --f-tekst: var(--f-ui); }
:root[data-shrift="b"] { --f-tekst: "Golos Text", "Salyam", system-ui, sans-serif; --f-zag: var(--f-ui); }
:root[data-shrift="v"] { --ves-tekst: 300; --f-tekst: "Roboto Condensed", "Salyam", "Arial Narrow", sans-serif; --f-zag: "Oswald", "Salyam", "Arial Narrow", sans-serif; }
:root[data-shrift="g"] { --f-tekst: "PT Sans", "Salyam", system-ui, sans-serif; --f-zag: "PT Sans Narrow", "Salyam", "Arial Narrow", sans-serif; }
:root[data-shrift="d"] { --f-tekst: "Manrope", "Salyam", system-ui, sans-serif; --f-zag: "Unbounded", "Salyam", system-ui, sans-serif; }
:root[data-shrift="d"] .geroy h1 { max-width: 14ch; font-size: clamp(2.25rem, 1.2rem + 5vw, 5.25rem); letter-spacing: -.01em; }
:root[data-shrift="e"] { --f-tekst: "Montserrat", "Salyam", system-ui, sans-serif; --f-zag: "PT Sans", "Salyam", system-ui, sans-serif; }
.shrift-knopka span { font: 600 1.125rem/1 var(--f-zag); letter-spacing: -.01em; }
.shrift-obr { font: 600 .875rem/1 "Literata", Georgia, serif; color: var(--zag); }
.shrift-obr[data-obr="a"] { font-family: "Onest", system-ui, sans-serif; }
.shrift-obr[data-obr="b"] { font-family: "Golos Text", system-ui, sans-serif; }
.shrift-obr[data-obr="v"] { font-family: "Oswald", sans-serif; }
.shrift-obr[data-obr="g"] { font-family: "PT Sans Narrow", sans-serif; }
.shrift-obr[data-obr="d"] { font-family: "Unbounded", sans-serif; font-size: .75rem; }
.shrift-obr[data-obr="e"] { font-family: "Montserrat", sans-serif; }
.oform-menyu button small, .oform-ryad button small { display: block; font-weight: 400; font-size: .75rem; color: var(--tekst-2); }

.plashka { display: none; }
@media (min-width: 1100px) {
  .sh-v { padding: 0 20px; gap: 8px; }
  .plashka { display: block; margin: 0 auto; }
  .plashka > ul { display: flex; align-items: center; gap: 2px; margin: 0; padding: 0; list-style: none; }
  .pl-p { position: relative; display: flex; align-items: center; }
  .pl-p > a { display: flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 12px; border-radius: 10px; color: rgba(255, 255, 255, .88); text-decoration: none; font: 500 .9375rem/1 var(--f-ui); transition: background-color .15s, color .15s; }
  .pl-p > a svg { width: 18px; height: 18px; }
  .pl-p > a:hover, .pl-p:hover > a { color: #fff; background: rgba(255, 255, 255, .08); }
  .pl-p > a[aria-current="page"] { color: #fff; text-decoration: underline 2px var(--akcent); text-underline-offset: 8px; }
  .pl-est-deti > a { padding-right: 4px; }
  .pl-strelka { display: grid; place-items: center; width: 28px; height: 44px; margin-left: -2px; border: 0; border-radius: 8px; background: none; color: rgba(255, 255, 255, .75); }
  .pl-strelka svg { width: 16px; height: 16px; transition: transform .2s var(--dvizh); }
  .pl-strelka[aria-expanded="true"] svg { transform: rotate(180deg); }
  .pl-vyp { position: absolute; left: 0; top: calc(100% + 4px); min-width: 260px; margin: 0; padding: 8px; list-style: none; background: var(--navy-2); border-radius: 0 0 14px 14px; box-shadow: 0 18px 40px rgba(5, 12, 24, .35); border-top: 3px solid var(--akcent); opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .16s, transform .16s var(--dvizh), visibility 0s .16s; }
  .pl-vyp::before { content: ""; position: absolute; left: 0; right: 0; top: -10px; height: 8px; }
  .pl-p:hover .pl-vyp, .pl-p.otkryto .pl-vyp, .pl-vyp:focus-within { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
  .pl-vyp a { display: block; padding: 11px 14px; border-radius: 9px; color: #fff; text-decoration: none; font: 500 .9375rem/1.3 var(--f-ui); }
  .pl-vyp a:hover, .pl-vyp a[aria-current="page"] { background: rgba(255, 255, 255, .1); }
  .sh-soc { display: none; }
}


/* главная: шапка прозрачная поверх первого экрана */
.glavnaya .sh { position: fixed; left: 0; right: 0; background: transparent; transition: background-color .25s; }
.glavnaya .sh::before { opacity: 0; transition: opacity .25s; }
.glavnaya .sh.sh-sploshnaya { background: var(--navy); }
.glavnaya .sh.sh-sploshnaya::before { opacity: 1; }

/* ---------- левая панель (ящик) ---------- */
.yashchik { position: fixed; inset: 0 auto 0 0; margin: 0; width: min(88vw, 380px); max-width: none; height: 100dvh; max-height: none; padding: 0 0 env(safe-area-inset-bottom, 0px); border: 0; background: var(--fon); color: var(--tekst); overflow-y: auto; overscroll-behavior: contain; flex-direction: column; transform: translateX(-100%); transition: transform .28s var(--dvizh), overlay .28s allow-discrete, display .28s allow-discrete; }
.yashchik[open] { display: flex; transform: none; }
@starting-style { .yashchik[open] { transform: translateX(-100%); } }
.yashchik::backdrop { background: rgba(5, 12, 24, .55); }
.ya-verh { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: calc(8px + env(safe-area-inset-top, 0px)) 8px 8px 14px; background: var(--navy); color: #fff; --fokus: #00b3ff; }
.yashchik .poisk-pole { margin: 16px 16px 8px; }
.ya-menyu { display: flex; flex-direction: column; padding: 4px 0 12px; }
.ya-p, .ya-gruppa > summary { display: flex; align-items: center; gap: 12px; min-height: 52px; padding: 0 20px; color: var(--zag); text-decoration: none; font: 600 1.0625rem/1.2 var(--f-ui); cursor: pointer; list-style: none; }
.ya-p svg { width: 20px; height: 20px; color: var(--tekst-2); }
.ya-p:hover, .ya-gruppa > summary:hover { background: var(--fon-2); }
.ya-p[aria-current="page"] { color: var(--akcent-t); box-shadow: inset 4px 0 0 var(--akcent); }
summary::-webkit-details-marker { display: none; }
.ya-gruppa > summary svg, .ya-rubrika > summary svg { margin-left: auto; width: 20px; height: 20px; color: var(--tekst-2); transition: transform .2s var(--dvizh); }
details[open] > summary > svg { transform: rotate(180deg); }
.ya-rubrika > summary { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 6px 20px 6px 32px; font: 500 1rem/1.3 var(--f-ui); color: var(--zag); cursor: pointer; list-style: none; }
.ya-rubrika > summary:hover { background: var(--fon-2); }
.ya-chislo { font: 500 .8125rem/1 var(--f-ui); color: var(--tekst-2); font-variant-numeric: tabular-nums; }
.ya-gruppa ul { margin: 0; padding: 0 0 8px; list-style: none; }
.ya-gruppa ul a { display: flex; align-items: baseline; gap: 8px; min-height: 44px; padding: 10px 20px 10px 44px; color: var(--tekst); text-decoration: none; font: var(--ves-tekst, 400) .9688rem/1.4 var(--f-tekst); }
.ya-gruppa > ul a { padding-left: 32px; font-family: var(--f-ui); font-weight: 500; color: var(--zag); }
.ya-gruppa ul a:hover { background: var(--fon-2); color: var(--zag); }
.ya-gruppa ul a[aria-current="page"] { color: var(--akcent-t); font-weight: 600; box-shadow: inset 4px 0 0 var(--akcent); }
.ya-gruppa ul a.ya-vsya { font-family: var(--f-ui); font-weight: 600; color: var(--akcent-t); }
/* ящик: нить рубрики и маркеры (№ 1581) */
.ya-rubrika[open] { --ya-fon: var(--fon-2); background: var(--fon-2); }
.ya-rubrika[open] > summary:hover { background: var(--fon-3); }
.ya-rubrika ul a { position: relative; padding-left: 58px; }
.ya-rubrika ul a:hover { --ya-fon: var(--fon-3); background: var(--fon-3); }
.ya-rubrika ul a::before { content: ""; position: absolute; left: 39px; top: 0; bottom: 0; width: 2px; background: var(--sery); }
.ya-rubrika li:last-child a::before { bottom: auto; height: calc(10px + .7em); }
.ya-rubrika ul a::after { content: ""; position: absolute; left: 35px; top: calc(10px + .7em - 5px); width: 10px; height: 10px; box-sizing: border-box; border-radius: 50%; border: 2px solid var(--tekst-2); background: var(--ya-fon, var(--fon)); }
.ya-rubrika a.ya-vsya::after { width: 9px; height: 9px; left: 35.5px; top: calc(10px + .7em - 4.5px); border: 0; border-radius: 1px; background: var(--akcent-t); transform: rotate(45deg); }
.ya-rubrika ul a[aria-current="page"]::after { border-color: var(--akcent); background: var(--akcent); box-shadow: 0 0 0 3px var(--metka); }
.ya-gruppa > ul a { position: relative; padding-left: 52px; }
.ya-gruppa > ul a::before { content: ""; position: absolute; left: 32px; top: calc(10px + .7em - 5px); width: 9px; height: 10px; background: var(--tekst-2); clip-path: polygon(0 0, 100% 50%, 0 100%); }
.ya-gruppa > ul a:hover::before { background: var(--akcent-t); }
.ya-gruppa > ul a[aria-current="page"]::before { background: var(--akcent); }
@media (forced-colors: active) {
  .ya-rubrika ul a::before { background: CanvasText; }
  .ya-rubrika ul a::after { border-color: CanvasText; background: Canvas; }
  .ya-rubrika a.ya-vsya::after, .ya-rubrika ul a[aria-current="page"]::after, .ya-gruppa > ul a::before { background: LinkText; }
}
.ya-niz { margin-top: auto; padding: 12px 16px 20px; display: flex; flex-direction: column; gap: 12px; }
.ya-soc { display: flex; gap: 4px; margin: 0; color: var(--tekst-2); }
.ya-soc .sh-knopka:hover { background: var(--fon-2); color: var(--zag); }

/* ---------- поле поиска ---------- */
.poisk-pole { position: relative; display: flex; align-items: center; }
.poisk-pole input { width: 100%; min-height: 48px; padding: 0 52px 0 16px; border: 2px solid var(--fon-3); border-radius: 12px; background: var(--fon); color: var(--zag); font: 400 1rem/1 var(--f-ui); -webkit-appearance: none; appearance: none; transition: border-color .15s; }
.poisk-pole input::placeholder { color: var(--tekst-2); }
.poisk-pole input:focus { outline: none; border-color: var(--akcent-t); }
.poisk-pole input::-webkit-search-cancel-button { -webkit-appearance: none; }
.poisk-pole > button[type="submit"] { position: absolute; right: 2px; top: 2px; bottom: 2px; width: 46px; display: grid; place-items: center; border: 0; border-radius: 10px; background: none; color: var(--tekst-2); }
.poisk-pole > button[type="submit"] svg { width: 20px; height: 20px; }
.poisk-pole-bolshoe input { min-height: 60px; padding: 0 60px 0 52px; font-size: 1.1875rem; border-radius: 16px; }
.po-znak { position: absolute; left: 18px; width: 22px; height: 22px; color: var(--tekst-2); pointer-events: none; }
.po-zakryt { position: absolute; right: 6px; width: 48px; height: 48px; display: grid; place-items: center; border: 0; border-radius: 12px; background: none; color: var(--tekst-2); }
.po-zakryt:hover { background: var(--fon-2); color: var(--zag); }
.poisk-stranica input { padding-right: 112px; }
.poisk-pole > button.po-naiti { position: absolute; right: 6px; top: 6px; bottom: 6px; width: auto; min-height: 48px; padding: 0 20px; border: 0; border-radius: 12px; background: var(--knopka-fon); color: var(--knopka-tekst); font: 600 1rem/1 var(--f-ui); }

/* окно поиска */
.poisk-okno { width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; margin: 0; padding: calc(12px + env(safe-area-inset-top, 0px)) 16px 24px; border: 0; background: var(--fon); color: var(--tekst); overflow-y: auto; overscroll-behavior: contain; opacity: 0; transition: opacity .2s, overlay .2s allow-discrete, display .2s allow-discrete; }
.poisk-okno[open] { opacity: 1; }
@starting-style { .poisk-okno[open] { opacity: 0; } }
.poisk-okno::backdrop { background: rgba(5, 12, 24, .6); }
@media (min-width: 760px) {
  .poisk-okno { width: min(760px, calc(100vw - 48px)); height: auto; max-height: min(78vh, 820px); margin: 9vh auto auto; padding: 16px 16px 20px; border-radius: 20px; box-shadow: 0 24px 80px rgba(5, 12, 24, .4); }
}
.po-sostoyanie { margin: 14px 6px 4px; font: 500 .875rem/1.4 var(--f-ui); color: var(--tekst-2); }
.po-sostoyanie:empty { display: none; }
.rezultaty { margin: 8px 0 0; padding: 0; list-style: none; }
.rezultaty a { display: block; padding: 14px 12px 16px; border-radius: 12px; color: inherit; text-decoration: none; }
.rezultaty a:hover, .rezultaty a:focus-visible { background: var(--fon-2); }
.rz-zag { display: block; font: 600 1.125rem/1.35 var(--f-zag); color: var(--zag); text-wrap: balance; }
.rz-rubrika { display: block; margin-top: 2px; font: 500 .8125rem/1.4 var(--f-ui); color: var(--tekst-2); }
.rz-kusok { display: block; margin-top: 6px; font: var(--ves-tekst, 400) .9688rem/1.55 var(--f-tekst); color: var(--tekst); }
mark { background: var(--metka); color: inherit; border-radius: 3px; padding: 0 .08em; }
.po-vse { margin: 12px; font: 600 1rem/1.4 var(--f-ui); }

/* ---------- первый экран главной ---------- */
.geroy { position: relative; display: grid; place-items: center; min-height: 100vh; min-height: 100svh; padding: calc(var(--sh-h) + 24px) 24px 120px; overflow: hidden; color: #fff; text-align: center; background: linear-gradient(180deg, #0a1a33 0%, #0e2547 55%, #12305c 100%); }
.geroy-foto { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 78%; }
.geroy::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 26, 51, .55) 0%, rgba(10, 26, 51, 0) 28%); pointer-events: none; }
.geroy-tekst { position: relative; z-index: 1; width: min(100%, 1100px); margin-top: -8vh; }
.geroy h1 { max-width: 10.5ch; margin: 0 auto; font: 600 clamp(3rem, 1.6rem + 7vw, 7.25rem)/.98 var(--f-zag); letter-spacing: -.025em; text-wrap: balance; }
.geroy h1.geroy-znak { max-width: none; line-height: 0; }
.geroy-znak img { display: block; width: clamp(260px, 29vw, 420px); height: auto; margin: 0 auto; filter: drop-shadow(0 2px 14px rgba(3, 9, 22, .55)); }
.geroy-tekst p { margin: .8em auto 0; max-width: 22ch; font: 600 clamp(1.25rem, 1.06rem + .6vw, 1.625rem)/1.28 var(--f-ui); letter-spacing: .01em; color: #fff8ee; text-shadow: 0 1px 2px rgba(8, 18, 40, .6), 0 0 20px rgba(8, 18, 40, .5); text-wrap: balance; }
.strelka { position: absolute; z-index: 1; left: 50%; bottom: calc(28px + var(--niz)); display: flex; flex-direction: column; align-items: center; gap: 8px; min-width: 64px; padding: 8px; margin-left: -32px; color: #fff; text-decoration: none; font: 500 .875rem/1 var(--f-ui); letter-spacing: .02em; }
.strelka svg { width: 52px; height: 52px; padding: 13px; border-radius: 50%; border: 2px solid rgba(255, 255, 255, .55); }
.strelka:hover svg { border-color: var(--akcent); background: rgba(0, 179, 255, .18); }
@media (prefers-reduced-motion: no-preference) {
  .strelka svg { animation: kachat 2.8s ease-in-out infinite; }
  @keyframes kachat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(7px); } }
}

/* ---------- полоса-заголовок страницы ---------- */
.shapka { position: relative; overflow: hidden; background: var(--navy); color: #fff; }
.shapka-foto { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .42; }
.shapka-s-foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 26, 51, .2), rgba(10, 26, 51, .78)); }
.shapka-v { position: relative; z-index: 1; display: grid; grid-template-columns: var(--setka); column-gap: var(--zazor); max-width: 1440px; margin: 0 auto; padding: 36px var(--polya) 32px; }
.shapka-v > * { grid-column: var(--kol); }
@media (min-width: 760px) { .shapka-v { padding-top: 64px; padding-bottom: 48px; } }
@media (min-width: 760px) and (max-width: 1199px) { .shapka-v { padding-left: max(var(--polya), calc((100% - 680px) / 2)); padding-right: max(var(--polya), calc((100% - 680px) / 2)); } }
.shapka-v > * { max-width: 680px; }
.rubrika-metka { justify-self: start; display: inline-flex; align-items: center; min-height: 44px; margin: -10px 0 0; color: var(--akcent); text-decoration: none; font: 600 .9375rem/1.2 var(--f-ui); }
.rubrika-metka:hover { text-decoration: underline; text-underline-offset: 4px; }
.shapka .zag { margin: 4px 0 0; font: 600 clamp(2rem, 1.25rem + 3.2vw, 3.375rem)/1.1 var(--f-zag); letter-spacing: -.018em; color: #fff; text-wrap: balance; hyphens: manual; }
.meta { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 16px 0 0; font: 500 .9375rem/1.4 var(--f-ui); color: rgba(255, 255, 255, .78); }
.put { margin-top: 26px; }
.put-shkala { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; }
.put-shkala li { flex: 1; height: 6px; border-radius: 3px; background: rgba(255, 255, 255, .17); }
.put-shkala .proydeno { background: rgba(0, 179, 255, .58); }
.put-shkala .zdes { background: var(--akcent); box-shadow: 0 0 0 3px rgba(0, 179, 255, .28); }
.put-podpis { margin: 12px 0 0; font: 500 .875rem/1.5 var(--f-ui); color: rgba(255, 255, 255, .78); }
.put-podpis a { color: var(--akcent); text-underline-offset: 3px; }
.shapka-glavnaya .put-podpis a { color: var(--akcent-t); }   /* № 1578: на белом #00b3ff давал 2,36:1 */
/* главная: первая статья на светлом фоне сразу под первым экраном */
.shapka-glavnaya { background: var(--fon); color: var(--tekst); --fokus: var(--akcent-t); }
.shapka-glavnaya .shapka-v { padding-top: 56px; padding-bottom: 8px; }
.shapka-glavnaya .rubrika-metka { color: var(--akcent-t); }
.shapka-glavnaya .zag { color: var(--zag); font-size: clamp(2.125rem, 1.3rem + 3.4vw, 3.75rem); }
.shapka-glavnaya .meta, .shapka-glavnaya .put-podpis { color: var(--tekst-2); }
.shapka-glavnaya .put-shkala li { background: var(--fon-3); }
.shapka-glavnaya .put-shkala .zdes { background: var(--akcent-t); box-shadow: none; }
.shapka-glavnaya .put-podpis a { color: var(--akcent-t); }

/* ---------- сетка страницы ---------- */
.stranica { display: grid; grid-template-columns: var(--setka); column-gap: var(--zazor); align-items: start; max-width: 1440px; margin: 0 auto; padding: 0 var(--polya); }
.osnova { grid-column: var(--kol); width: 100%; max-width: 680px; margin: 0 auto; padding: 32px 0 56px; min-width: 0; }
.osnova:focus { outline: none; }
@media (min-width: 760px) { .osnova { padding-top: 44px; } }
@media (min-width: 1200px) {
  .stranica { grid-template-areas: "l o v"; }
  .levaya { grid-area: l; position: sticky; top: calc(var(--sh-h) + 24px); margin-top: 44px; }
  .osnova { grid-area: o; margin: 0; }
  .vidzhety { grid-area: v; }
  .levaya { margin-bottom: 56px; } /* зазор до подвала на коротких страницах (№ 1545) */
}

/* ---------- текст статьи ---------- */
.tekst { font: var(--ves-tekst, 400) 1.1875rem/1.72 var(--f-tekst); color: var(--tekst); hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; text-wrap: pretty; font-variant-numeric: oldstyle-nums proportional-nums; }
@media (min-width: 760px) { .tekst { font-size: 1.25rem; line-height: 1.75; } }
.tekst p { margin: 0 0 1.05em; }
.tekst h2 { margin: 2.1em 0 .65em; font: 600 1.3em/1.25 var(--f-zag); letter-spacing: -.01em; color: var(--zag); text-wrap: balance; hyphens: manual; scroll-margin-top: calc(var(--sh-h) + 20px); }
.tekst h3 { margin: 1.8em 0 .5em; font: 600 1.1em/1.3 var(--f-zag); color: var(--zag); }
.tekst strong, .tekst b { font-weight: 650; color: var(--zag); }
.tekst a { color: var(--akcent-t); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: color-mix(in srgb, var(--akcent-t) 45%, transparent); transition: text-decoration-color .15s; }
.tekst a:hover { text-decoration-color: currentColor; }
.tekst ul, .tekst ol { padding-left: 1.3em; margin: 0 0 1.05em; }
.tekst li { margin: 0 0 .4em; }
.tekst blockquote { position: relative; margin: 0 0 1.6em; padding: 1.5em 1.25em 1.05em 1.4em; border-left: 4px solid var(--akcent); border-radius: 0 18px 18px 0; background: var(--fon-2); font: 500 clamp(1.375rem, 1.1rem + 1.1vw, 1.875rem)/1.42 var(--f-tekst); color: var(--zag); letter-spacing: -.008em; text-wrap: balance; hyphens: manual; }
.tekst blockquote::before { content: "\201C"; display: block; height: .5em; margin: -.25em 0 .2em; font: italic 700 2.6em/1 Georgia, "Times New Roman", serif; color: var(--akcent); }
.tekst blockquote p { margin: 0; }
.tekst blockquote em { font-style: italic; }
.tekst hr { border: 0; height: 2px; width: 96px; margin: 2.4em 0; background: var(--sery); }
/* оглавление внутри статьи */
.tekst .oglavlenie, .tekst > div:has(> nav) { margin: 0 0 2em; padding: 18px 22px 12px; border-radius: 16px; background: var(--fon-2); font-family: var(--f-ui); }
.tekst .oglavlenie p, .tekst > div:has(> nav) p { margin: 0 0 6px; font: 600 .9375rem/1.4 var(--f-ui); color: var(--zag); }
.tekst nav ul { margin: 0; padding: 0; list-style: none; counter-reset: og; }
.tekst nav li { position: relative; margin: 0; padding-left: 26px; }
/* маркеры содержания — нить с кружками, как в меню (№ 1585) */
.tekst nav li::before { content: ""; position: absolute; left: 6px; top: 0; bottom: 0; width: 2px; background: var(--sery); }
.tekst nav li:first-child::before { top: calc(9px + .7em); }
.tekst nav li:last-child::before { bottom: auto; height: calc(9px + .7em); }
.tekst nav li:only-child::before { display: none; }
.tekst nav li::after { content: ""; position: absolute; left: 2px; top: calc(9px + .7em - 5px); width: 10px; height: 10px; box-sizing: border-box; border-radius: 50%; border: 2px solid var(--akcent-t); background: var(--fon-2); }
.tekst nav li:hover::after { background: var(--akcent-t); }
@media (forced-colors: active) { .tekst nav li::before { background: CanvasText; } .tekst nav li::after { border-color: LinkText; } }
.tekst nav a { display: block; padding: 9px 0; font: 400 .9688rem/1.4 var(--f-ui); text-decoration: none; color: var(--akcent-t); }
.tekst nav a:hover { text-decoration: underline; }
/* сноски */
.tekst sup.snoska { line-height: 0; vertical-align: super; font-size: 100%; }
.tekst sup.snoska a { position: relative; display: inline-block; padding: .2em .42em; margin: 0 .08em; border-radius: 6px; background: var(--fon-2); color: var(--akcent-t); text-decoration: none; font: 600 .6em/1 var(--f-ui); font-variant-numeric: lining-nums; vertical-align: .55em; transition: background-color .15s; }
.tekst sup.snoska a::after { content: ""; position: absolute; inset: -12px -6px; }
.tekst sup.snoska a:hover, .tekst sup.snoska a[aria-expanded="true"] { background: var(--akcent-t); color: var(--fon); }
.tekst hr.snoski-cherta { width: 96px; margin: 3em 0 1.2em; }
.tekst .snoska-tekst { margin: 0 0 .8em; padding: 6px 10px; margin-left: -10px; border-radius: 10px; font: 400 .9375rem/1.6 var(--f-ui); color: var(--tekst-2); scroll-margin-top: calc(var(--sh-h) + 20px); transition: background-color .4s; }
.tekst .snoska-tekst:target { background: var(--metka); color: var(--tekst); }
.sn-kartochka { position: absolute; z-index: 25; width: min(380px, calc(100vw - 24px)); padding: 14px 16px 12px 18px; border-radius: 16px; background: var(--fon); color: var(--tekst); box-shadow: 0 16px 48px rgba(10, 26, 51, .26), 0 0 0 1px rgba(10, 26, 51, .06); font: 400 .9688rem/1.6 var(--f-ui); }
:root[data-tema="noch"] .sn-kartochka { background: var(--fon-2); box-shadow: 0 16px 48px rgba(0, 0, 0, .5); }
.sn-verh { display: flex; align-items: center; justify-content: space-between; margin: -6px -8px 2px 0; }
.sn-nomer { font: 600 .8125rem/1 var(--f-ui); color: var(--akcent-t); }
.sn-zakryt { display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 10px; background: none; color: var(--tekst-2); }
.sn-zakryt:hover { background: var(--fon-2); }
.sn-zakryt svg { width: 18px; height: 18px; }
.sn-kartochka p { margin: 0; }
.sn-k-spisku { display: inline-flex; align-items: center; min-height: 40px; margin-top: 4px; font: 600 .875rem/1 var(--f-ui); }
@media (max-width: 599px) {
  .sn-kartochka { position: fixed; left: 12px; right: 12px; top: auto !important; bottom: calc(var(--dok-h) + var(--niz) + 12px); width: auto; }
}

/* подсказка над текстом */
.podskazka { margin: 0 0 2em; padding: 14px 18px; border-radius: 14px; background: var(--fon-2); font: 400 .9688rem/1.6 var(--f-ui); color: var(--tekst); }

/* карточка «Слушать статью» */
.audio-kartochka { position: relative; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 16px; margin: 0 0 28px; padding: 14px 20px 18px 14px; border-radius: 22px; background: var(--fon-2); overflow: hidden; }
.igrat { display: grid; place-items: center; flex: none; width: 44px; height: 44px; padding: 0; border: 2px solid var(--knopka-fon); border-radius: 50%; background: transparent; color: var(--knopka-fon); transition: background-color .15s, color .15s, transform .1s; }
.igrat svg { width: 20px; height: 20px; }
.igrat .i-pauza, .igrat.igraet .i-igra, .p-igra .i-pauza, .pleer.igraet .p-igra .i-igra { display: none; }
.igrat.igraet .i-pauza, .pleer.igraet .p-igra .i-pauza { display: block; }
.igrat:hover, .igrat.igraet { background: var(--knopka-fon); color: var(--knopka-tekst); }
.igrat:active, .p-igra:active, .nachnem:active, .igrat-vse:active { transform: scale(.96); }
.igrat-bolshaya { width: 64px; height: 64px; border: 0; background: var(--knopka-fon); color: var(--knopka-tekst); }
.igrat-bolshaya svg { width: 32px; height: 32px; }
.igrat-bolshaya:hover { background: var(--knopka-fon-2); }
.ak-tekst { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ak-zag { font: 600 1.0625rem/1.3 var(--f-ui); color: var(--zag); }
.ak-vremya { font: 500 .875rem/1.4 var(--f-ui); color: var(--tekst-2); font-variant-numeric: tabular-nums; }
.ak-hod { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: var(--fon-3); opacity: 0; transition: opacity .2s; }
.audio-kartochka.tekushchaya .ak-hod { opacity: 1; }
.ak-hod i { display: block; height: 100%; background: var(--akcent); transform-origin: 0 50%; transform: scaleX(var(--hod, 0)); }

/* поделиться в конце статьи */
.konec-podelitsya { margin: 56px 0 0; }
.kp-zag { margin: 0 0 12px; font: 600 1rem/1.4 var(--f-ui); color: var(--zag); }
.kp-schet { font-weight: 500; color: var(--tekst-2); }
.shering-knopki { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; margin: 0; padding: 0; list-style: none; max-width: 420px; }
.shering-knopki button { display: grid; place-items: center; width: 100%; min-height: 48px; padding: 0; border: 0; border-radius: 12px; background: var(--fon-2); color: var(--zag); transition: background-color .15s, color .15s; }
.shering-knopki button:hover { background: var(--knopka-fon); color: var(--knopka-tekst); }
.shering-knopki svg { width: 20px; height: 20px; }
.shering-knopki span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* цепочка и «Начнём размышлять» */
.tsepochka { margin: 40px 0 0; }
.nachnem { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 22px 24px 20px; border-radius: 20px; background: var(--knopka-fon); color: var(--knopka-tekst); text-align: center; text-decoration: none; transition: background-color .15s, transform .1s; }
.nachnem:hover { background: var(--knopka-fon-2); }
.n-glavnoe { display: inline-flex; align-items: center; gap: 10px; font: 700 clamp(1.375rem, 1.2rem + .8vw, 1.625rem)/1.15 var(--f-ui); letter-spacing: -.01em; }
.n-glavnoe svg { width: 24px; height: 24px; transition: transform .2s var(--dvizh); }
.nachnem:hover .n-glavnoe svg { transform: translateX(4px); }
.n-dalee { max-width: 34ch; font: var(--ves-tekst, 400) 1.0625rem/1.4 var(--f-tekst); text-wrap: balance; }
.n-dalee { font-size: clamp(1.125rem, 1.05rem + .4vw, 1.25rem); }
.n-dalee b { font-weight: 700; }
.tsep-spisok { position: relative; margin: 28px 0 0; padding: 0 0 0 30px; list-style: none; }
.tsep-spisok::before { content: ""; position: absolute; left: 7px; top: 24px; bottom: 24px; width: 2px; background: var(--fon-3); }
.tsep-spisok li { position: relative; }
.tsep-spisok li::before { content: ""; position: absolute; left: -29px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 50%; background: var(--fon); border: 2px solid var(--sery); }
.tsep-spisok .t-tek::before { background: var(--akcent); border-color: var(--akcent); }
.tsep-spisok a, .tsep-spisok .t-tek { display: flex; flex-direction: column; gap: 2px; padding: 12px 12px; margin-left: -12px; border-radius: 12px; text-decoration: none; }
.tsep-spisok a:hover { background: var(--fon-2); }
.tsep-spisok small { font: 500 .8125rem/1.3 var(--f-ui); color: var(--tekst-2); }
.tsep-spisok span { font: 500 1.0625rem/1.4 var(--f-tekst); color: var(--zag); }
.tsep-spisok a span { color: var(--akcent-t); }

/* ---------- левая колонка: плеер и «поделиться» ---------- */
.levaya { --fokus: #00b3ff; }
.pleer { color: #fff; }
.p-polnyy { background: var(--navy); border-radius: 22px; padding: 18px 18px 14px; }
:root[data-tema="noch"] .p-polnyy, :root[data-tema="noch"] .levaya { background-color: var(--navy-2); }
@media (prefers-color-scheme: dark) { :root:not([data-tema="den"]) .p-polnyy, :root:not([data-tema="den"]) .levaya { background-color: var(--navy-2); } }
@media (min-width: 1200px) { :root[data-tema="noch"] .levaya { background: none; } }
@media (min-width: 1200px) and (prefers-color-scheme: dark) { :root:not([data-tema="den"]) .levaya { background: none; } }
.p-verh { display: flex; align-items: center; justify-content: space-between; min-height: 32px; }
.p-metka { font: 600 .8125rem/1 var(--f-ui); color: var(--akcent); letter-spacing: .01em; }
.p-svernut { display: none; }
.p-nazv-polnoe { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin: 6px 0 4px; color: #fff; text-decoration: none; font: 600 1.0625rem/1.35 var(--f-zag); }
a.p-nazv-polnoe:hover { text-decoration: underline; text-underline-offset: 3px; }
.p-podskazka { margin: 6px 0 4px; font: 400 .875rem/1.5 var(--f-ui); color: rgba(255, 255, 255, .75); }
.pleer:not([data-sostoyanie="pusto"]) .p-podskazka { display: none; }
.pleer[data-sostoyanie="pusto"] :is(.p-polosa, .p-vremya, .p-sdvig) { display: none; }
.p-polosa { --hod: 0%; width: 100%; height: 36px; margin: 8px 0 0; background: transparent; -webkit-appearance: none; appearance: none; cursor: pointer; }
.p-polosa:disabled { cursor: default; opacity: .5; }
.p-polosa::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, var(--akcent) var(--hod), rgba(255, 255, 255, .2) var(--hod)); }
.p-polosa::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; margin-top: -7px; border-radius: 50%; background: #fff; border: 3px solid var(--akcent); }
.p-polosa::-moz-range-track { height: 6px; border-radius: 3px; background: rgba(255, 255, 255, .2); }
.p-polosa::-moz-range-progress { height: 6px; border-radius: 3px; background: var(--akcent); }
.p-polosa::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: #fff; border: 3px solid var(--akcent); }
.p-vremya { display: flex; justify-content: space-between; font: 500 .8125rem/1 var(--f-ui); color: rgba(255, 255, 255, .78); font-variant-numeric: tabular-nums; }
.p-knopki { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 12px 0 8px; }
.p-sdvig { position: relative; display: grid; place-items: center; width: 48px; height: 48px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .08); color: #fff; }
.p-sdvig:hover:not(:disabled) { background: rgba(255, 255, 255, .16); }
.p-sdvig:disabled { opacity: .45; cursor: default; }
.p-sdvig svg { width: 30px; height: 30px; stroke-width: 1.6; }
.p-sdvig span { position: absolute; font: 700 .625rem/1 var(--f-ui); margin-top: 1px; }
.p-igra { display: grid; place-items: center; border: 0; padding: 0; border-radius: 50%; background: var(--akcent); color: var(--navy); transition: transform .1s, background-color .15s; }
.p-igra:hover { background: #33c4ff; }
.p-igra-bolshaya { width: 64px; height: 64px; }
.p-igra-bolshaya svg { width: 32px; height: 32px; }
.p-niz { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 4px; }
.p-skorost { min-width: 64px; min-height: 44px; padding: 0 12px; border: 2px solid rgba(255, 255, 255, .3); border-radius: 999px; background: none; color: #fff; font: 600 .875rem/1 var(--f-ui); font-variant-numeric: tabular-nums; }
.p-skorost:hover { border-color: var(--akcent); }
.p-v-audioteku { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 4px; color: rgba(255, 255, 255, .88); text-decoration: none; font: 500 .875rem/1 var(--f-ui); }
.p-v-audioteku:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.p-v-audioteku svg { width: 18px; height: 18px; }
.p-oshibka { margin: 6px 0 0; font: 500 .8125rem/1.4 var(--f-ui); color: #ffd28a; }
.p-oshibka:empty { display: none; }
.p-mini { display: none; }

.shering { margin-top: 16px; padding: 16px; border-radius: 22px; background: var(--fon-2); }
.sh-verh { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.shering-schet { display: flex; align-items: baseline; gap: 8px; margin: 0; font: 500 .875rem/1.2 var(--f-ui); color: var(--tekst-2); }
.shering-schet b { font: 700 1.375rem/1 var(--f-ui); color: var(--zag); font-variant-numeric: tabular-nums; }
.sh-zakryt { display: none; }
.shering .shering-knopki { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.shering .shering-knopki button { background: var(--fon); }
.shering .shering-knopki button:hover { background: var(--knopka-fon); color: var(--knopka-tekst); }
.shering { --fokus: var(--akcent-t); }
.dok-podelitsya { display: none; }

/* телефон и планшет: нижняя панель (плеер + «поделиться») */
@media (max-width: 1199px) {
  .levaya { position: fixed; z-index: 40; left: 0; right: 0; bottom: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; height: calc(var(--dok-h) + var(--niz)); padding: 0 max(8px, env(safe-area-inset-right)) var(--niz) max(10px, env(safe-area-inset-left)); background: var(--navy); color: #fff; transition: transform .3s var(--dvizh); }
  .geroy-viden .levaya, html:not(.dok-viden) .levaya { transform: translateY(105%); visibility: hidden; transition: transform .3s var(--dvizh), visibility 0s .3s; }   /* № 1578: спрятанная панель не ловит Tab; без «Слушать» её нет */
  .p-mini { display: flex; align-items: center; gap: 10px; min-width: 0; height: var(--dok-h); }
  .p-igra-mini { width: 46px; height: 46px; }
  .p-igra-mini svg { width: 24px; height: 24px; }
  .p-raskryt { position: static; flex: 1; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 3px; padding: 0 6px; border: 0; background: none; color: #fff; text-align: left; }
  .p-nazv { display: block; max-width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font: 600 .9375rem/1.2 var(--f-ui); }
  .p-mini-vremya { font: 500 .8125rem/1 var(--f-ui); color: rgba(255, 255, 255, .75); font-variant-numeric: tabular-nums; }
  .p-mini-hod { position: absolute; left: 0; right: 0; top: 0; height: 3px; background: rgba(255, 255, 255, .14); }
  .p-mini-hod i { display: block; height: 100%; background: var(--akcent); transform-origin: 0 50%; transform: scaleX(var(--hod, 0)); }
  .p-polnyy { position: fixed; left: 0; right: 0; bottom: calc(var(--dok-h) + var(--niz)); z-index: 41; max-width: 560px; margin: 0 auto; padding: 14px 20px 18px; border-radius: 24px 24px 0 0; transform: translateY(calc(100% + var(--dok-h) + var(--niz) + 8px)); visibility: hidden; transition: transform .32s var(--dvizh), visibility 0s .32s; }
  .pleer.raskryt .p-polnyy { transform: none; visibility: visible; transition-delay: 0s; }
  .p-svernut { display: grid; place-items: center; width: 44px; height: 44px; margin-right: -10px; border: 0; border-radius: 12px; background: none; color: #fff; }
  .p-knopki { gap: 22px; margin: 14px 0 10px; }
  .p-igra-bolshaya { width: 72px; height: 72px; }
  .p-sdvig { width: 56px; height: 56px; }
  .dok-podelitsya { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; width: 64px; height: var(--dok-h); padding: 0; border: 0; border-radius: 14px; background: none; color: #fff; }
  .dok-podelitsya svg { width: 22px; height: 22px; }
  .dok-podelitsya b { font: 600 .75rem/1 var(--f-ui); color: rgba(255, 255, 255, .8); font-variant-numeric: tabular-nums; }
  .shering { position: fixed; left: 0; right: 0; bottom: calc(var(--dok-h) + var(--niz)); z-index: 41; max-width: 560px; margin: 0 auto; padding: 16px 16px 20px; border-radius: 24px 24px 0 0; background: var(--fon); color: var(--tekst); transform: translateY(calc(100% + var(--dok-h) + var(--niz) + 8px)); visibility: hidden; transition: transform .32s var(--dvizh), visibility 0s .32s; }
  .levaya.shering-otkryt .shering { transform: none; visibility: visible; transition-delay: 0s; }
  .sh-zakryt { display: grid; place-items: center; width: 44px; height: 44px; margin: -6px -6px -6px 0; border: 0; border-radius: 12px; background: none; color: var(--tekst-2); }
  .shering .shering-knopki { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: none; }
  .shering .shering-knopki button { display: flex; justify-content: flex-start; gap: 12px; padding: 0 14px; min-height: 52px; background: var(--fon-2); font: 500 .9375rem/1.2 var(--f-ui); text-align: left; }
  .shering .shering-knopki span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; }
  .dok-viden .podval { padding-bottom: calc(var(--dok-h) + var(--niz) + 32px) !important; }
  .dok-viden .tost { bottom: calc(var(--dok-h) + var(--niz) + 16px) !important; }
}
.zatemnenie { position: fixed; inset: 0; z-index: 35; background: rgba(5, 12, 24, .5); }
/* № 1578: запись загружается — кнопка мерцает */
.pleer.zhdet .p-igra, .igrat.zhdet { animation: zhdet-migat .8s ease-in-out infinite alternate; }
@keyframes zhdet-migat { to { opacity: .45; } }
@media (prefers-reduced-motion: reduce) { .pleer.zhdet .p-igra, .igrat.zhdet { animation: none; opacity: .6; } }

/* ---------- виджеты ---------- */
.vidzhety { min-width: 0; padding: 40px var(--polya) 8px; margin: 0 calc(var(--polya) * -1); background: var(--fon-2); }
.vidzhety > * { max-width: 680px; margin-left: auto; margin-right: auto; }
@media (min-width: 760px) and (max-width: 1199px) {
  .vidzhety { display: grid; grid-template-columns: 1fr 1fr; column-gap: 40px; align-content: start; }
  .vidzhety > * { max-width: none; margin: 0; }
  .vd-poisk { grid-column: 1 / -1; max-width: 680px !important; }
}
@media (min-width: 1200px) {
  .vidzhety { margin: 44px 0 56px; padding: 0; background: none; }
  .vidzhety > * { max-width: none; }
}
.vd { margin: 0 0 36px; }
.vd h2 { margin: 0 0 12px; font: 600 1.25rem/1.3 var(--f-zag); color: var(--zag); letter-spacing: -.005em; }
.vd ul { margin: 0; padding: 0; list-style: none; }
ol.dorozhki { margin: 0; padding: 0; list-style: none; }   /* альбом: без отступа списка, ряд по левому краю текста */
.spisok-dorozhek li { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; align-items: center; padding: 7px 0; }
.d-tekst { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.d-tekst a, .d-tekst .d-nazv { color: var(--zag); text-decoration: none; font: 500 .9688rem/1.38 var(--f-tekst); }
.d-tekst a:hover { color: var(--akcent-t); text-decoration: underline; text-underline-offset: 3px; }
.d-tekst small { font: 500 .8125rem/1.2 var(--f-ui); color: var(--tekst-2); font-variant-numeric: tabular-nums; }
.seychas .d-tekst a, .seychas .d-tekst .d-nazv, .seychas .ss-zag { color: var(--akcent-t); }
.vd-dalee { margin: 10px 0 0; font: 600 .9375rem/1.4 var(--f-ui); }
.vd-dalee a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 3px; }
/* № 1582: три списка виджетов — один кружок, один цвет */
.vd-spisok li { padding: 0; }
.vd-ryad { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; align-items: center; padding: 7px 0; color: var(--zag); text-decoration: none; }
.znak-krug { display: grid; place-items: center; width: 44px; height: 44px; border: 2px solid var(--knopka-fon); border-radius: 50%; color: var(--knopka-fon); transition: background-color .15s, color .15s, transform .1s; }
.znak-krug svg { width: 20px; height: 20px; }
.vd-ryad:hover .znak-krug, .vd-ryad:focus-visible .znak-krug { background: var(--knopka-fon); color: var(--knopka-tekst); }
.vd-ryad:active .znak-krug { transform: scale(.96); }
.vd-ryad:hover .d-nazv, .vd-ryad:focus-visible .d-nazv { color: var(--akcent-t); text-decoration: underline; text-underline-offset: 3px; }
.d-tekst time { font: 500 .8125rem/1.2 var(--f-ui); color: var(--tekst-2); font-variant-numeric: tabular-nums; }
.yt { margin: 0; }
.yt-oblozhka { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 14px; background: var(--navy); }
.yt-oblozhka img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s var(--dvizh); }
.yt-oblozhka:hover img { transform: scale(1.03); }
.yt-igrat { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 64px; height: 46px; margin: -23px 0 0 -32px; border-radius: 14px; background: rgba(10, 26, 51, .84); color: #fff; transition: background-color .15s; }
.yt-oblozhka:hover .yt-igrat { background: var(--knopka-fon); }
.yt-igrat svg { width: 26px; height: 26px; }
.yt iframe { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 14px; background: #000; }
.yt figcaption { margin-top: 8px; font: 500 .9375rem/1.4 var(--f-ui); color: var(--zag); }

/* ---------- списки статей, разделы, аудиотека ---------- */
.spisok-blok { margin: 0 0 48px; }
.blok-zag { margin: 0 0 6px; font: 600 clamp(1.5rem, 1.3rem + .8vw, 1.875rem)/1.2 var(--f-zag); color: var(--zag); letter-spacing: -.012em; scroll-margin-top: calc(var(--sh-h) + 20px); }
.blok-zag a { color: inherit; text-decoration: none; }
.blok-zag a:hover { color: var(--akcent-t); }
.blok-podzag { margin: 32px 0 4px; font: 600 1.25rem/1.3 var(--f-zag); color: var(--zag); }
.blok-podpis { margin: 0 0 12px; font: 400 .9688rem/1.5 var(--f-ui); color: var(--tekst-2); }
.spisok-statey { margin: 0; padding: 0; list-style: none; }
.spisok-statey li { display: grid; grid-template-columns: minmax(0, 1fr) 44px; gap: 14px; align-items: center; padding: 14px 0; }
.spisok-statey.s-nomerami li { grid-template-columns: 34px minmax(0, 1fr) 44px; }
.spisok-statey li:not(:has(.igrat)) { grid-template-columns: minmax(0, 1fr); }
.spisok-statey.s-nomerami li:not(:has(.igrat)) { grid-template-columns: 34px minmax(0, 1fr); }
.ss-nomer { align-self: start; padding-top: 2px; font: 600 1.25rem/1.3 var(--f-zag); color: var(--akcent-t); font-variant-numeric: lining-nums tabular-nums; }
.ss-zag { color: var(--zag); text-decoration: none; font: 600 1.125rem/1.35 var(--f-zag); text-wrap: pretty; }
.ss-zag:hover { color: var(--akcent-t); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.ss-meta { display: flex; flex-wrap: wrap; gap: 2px 16px; margin: 5px 0 0; font: 500 .8125rem/1.35 var(--f-ui); color: var(--tekst-2); }
.rubriki-spisok, .audio-kollekcii { margin: 0; padding: 0; list-style: none; }
.rubriki-spisok > li, .audio-kollekcii > li { padding: 0 0 36px; margin: 0 0 36px; border-bottom: 2px solid var(--fon-2); }
.rubriki-spisok h2, .audio-kollekcii h2 { margin: 0; font: 600 clamp(1.75rem, 1.4rem + 1.4vw, 2.375rem)/1.15 var(--f-zag); letter-spacing: -.018em; }
.rubriki-spisok h2 a, .audio-kollekcii h2 a { color: var(--zag); text-decoration: none; }
.rubriki-spisok h2 a:hover, .audio-kollekcii h2 a:hover { color: var(--akcent-t); }
.rs-chislo, .audio-kollekcii > li > p { margin: 8px 0 12px; font: 500 .9375rem/1.4 var(--f-ui); color: var(--tekst-2); }
.rs-pervye, .ak-pervye { margin: 0; padding: 0 0 0 1.2em; font: var(--ves-tekst, 400) 1.0625rem/1.55 var(--f-tekst); color: var(--tekst); }
.rs-pervye li, .ak-pervye li { padding: 4px 0; }
.rs-pervye a { color: var(--tekst); text-underline-offset: 3px; text-decoration-color: var(--sery); }
.rs-pervye a:hover { color: var(--akcent-t); }
.audio-vse { margin: 0 0 20px; }
.igrat-vse, .knopka-glavnaya, .knopka-vtoraya { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 24px; border: 0; border-radius: 999px; background: var(--knopka-fon); color: var(--knopka-tekst); text-decoration: none; font: 600 1rem/1 var(--f-ui); transition: background-color .15s, transform .1s; }
.igrat-vse:hover, .knopka-glavnaya:hover { background: var(--knopka-fon-2); }
.igrat-vse svg, .knopka-glavnaya svg { width: 18px; height: 18px; }
.knopka-vtoraya { background: transparent; color: var(--akcent-t); box-shadow: inset 0 0 0 2px var(--akcent-t); }
.knopka-vtoraya:hover { background: var(--fon-2); }
.dorozhki li { padding: 9px 0; }
.dorozhki .d-tekst a, .dorozhki .d-tekst .d-nazv { font-size: 1.0625rem; }
.vneshniy-blok { margin: 0 0 32px; font: var(--ves-tekst, 400) 1.125rem/1.6 var(--f-tekst); }
.vneshniy-blok p { margin: 0 0 18px; }
.video-setka { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 28px 24px; margin: 0; padding: 0; list-style: none; }
.str-404-tekst { font: var(--ves-tekst, 400) 1.1875rem/1.65 var(--f-tekst); margin: 0 0 28px; }
/* 404 — спокойная служебная страница: скругления 8 px (узор шапки не трогаем) */
.str-404 .knopka-glavnaya, .str-404 .knopka-vtoraya, .str-404 .poisk-stranica input { border-radius: 8px; }
.str-404 .poisk-pole > button.po-naiti { border-radius: 6px; }
/* на страницах поиска и 404 второй поиск в боковой колонке не нужен */
.poisk-str .vd-poisk { display: none; }
.k-404 { display: flex; flex-wrap: wrap; gap: 12px; }

/* ---------- подвал ---------- */
.podval { background: var(--navy); color: rgba(255, 255, 255, .78); padding: 64px var(--polya) 40px; }
.pd-v { max-width: 1100px; margin: 0 auto; }
.pd-imya { margin: 0; font: 600 clamp(2.25rem, 1.4rem + 4.4vw, 5rem)/1 var(--f-zag); letter-spacing: -.025em; }
.pd-imya a { color: #fff; text-decoration: none; }
.pd-imya img { display: block; width: min(300px, 100%); height: auto; }
.pd-deviz { margin: 14px 0 28px; font: 600 clamp(1.125rem, 1.07rem + .25vw, 1.1875rem)/1.4 var(--f-ui); letter-spacing: .01em; color: rgba(255, 248, 238, .85); text-wrap: balance; }
.pd-menyu { display: flex; flex-wrap: wrap; gap: 0 22px; margin: 0 0 18px; }
.pd-menyu a { display: inline-flex; align-items: center; min-height: 44px; color: #fff; text-decoration: none; font: 500 1rem/1 var(--f-ui); }
.pd-menyu a:hover { text-decoration: underline; text-underline-offset: 5px; text-decoration-color: var(--akcent); }
.pd-soc { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 24px -10px; color: #fff; }
.pd-niz { display: flex; justify-content: space-between; gap: 12px 32px; margin-top: 40px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, .14); font: 400 .8125rem/1.5 var(--f-ui); color: rgba(255, 255, 255, .66); }
.pd-niz p { margin: 0; }
.pd-niz p:first-child { max-width: 62ch; }
.pd-niz p:last-child { white-space: nowrap; }
.pd-niz a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.pd-niz a:hover { color: #fff; }
@media (max-width: 719px) { .pd-niz { flex-direction: column; margin-top: 32px; } }
/* компьютер: знак и подпись слева, меню и значки справа (№ 1566) */
@media (min-width: 900px) {
  .pd-v { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 48px; align-items: start; }
  .pd-imya { grid-column: 1; grid-row: 1; }
  .pd-deviz { grid-column: 1; grid-row: 2; margin-bottom: 0; }
  .pd-menyu { grid-column: 2; grid-row: 1; align-self: center; justify-content: flex-end; margin: 0; }
  .pd-soc { grid-column: 2; grid-row: 2; justify-content: flex-end; margin: 6px -10px 0 0; }
  .pd-niz { grid-column: 1 / -1; }
}

/* ---------- всплывающее сообщение ---------- */
.tost { position: fixed; left: 50%; bottom: 24px; z-index: 60; margin: 0; padding: 12px 18px; border-radius: 12px; background: var(--navy-2); color: #fff; font: 500 .9375rem/1.3 var(--f-ui); box-shadow: 0 12px 32px rgba(5, 12, 24, .3); transform: translate(-50%, 12px); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s var(--dvizh); }
.tost.vidno { opacity: 1; transform: translate(-50%, 0); }
.tost:empty { display: none; }

/* ---------- № 1586: «Поделиться» и «PDF» в шапке статьи (Дизайнер, 21.10.2026) ----------
   Место — под строкой данных и полосой книги, до карточки «Слушать статью» (как на ПЗ, в облике КТГ).
   На тёмно-синей шапке — светлые плашки, значок голубым; на главной (светлая шапка) — плашки --fon-2.
   Касание от 44 px; размеры в rem — следуют «Мельче / Крупнее». Печать (@media print) — Верстальщик. */
.st-deystviya { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; }
.sd-knopka { display: inline-flex; align-items: center; gap: 8px; min-width: 44px; min-height: 2.75rem; padding: 0 1rem 0 .8125rem; border: 0; border-radius: 12px; background: rgba(255, 255, 255, .13); color: #fff; font: 600 .9375rem/1.2 var(--f-ui); cursor: pointer; touch-action: manipulation; -webkit-tap-highlight-color: transparent; transition: background-color .15s, color .15s; }
.sd-knopka svg { flex: none; width: 1.125rem; height: 1.125rem; color: var(--akcent); transition: color .15s; }
.sd-knopka:hover { background: rgba(255, 255, 255, .22); }
.sd-knopka:active { background: var(--akcent); color: var(--navy); }
.sd-knopka:active svg { color: var(--navy); }
.sd-knopka:focus-visible { outline-color: var(--akcent); border-radius: 12px; }
.shapka-glavnaya .sd-knopka { background: var(--fon-2); color: var(--zag); }
.shapka-glavnaya .sd-knopka svg { color: var(--akcent-t); }
.shapka-glavnaya .sd-knopka:hover { background: var(--fon-3); }
.shapka-glavnaya .sd-knopka:active { background: var(--knopka-fon); color: var(--knopka-tekst); }
.shapka-glavnaya .sd-knopka:active svg { color: var(--knopka-tekst); }
.shapka-glavnaya .sd-knopka:focus-visible { outline-color: var(--fokus); }
/* переход к блоку «Поделиться статьёй» в конце (компьютер без системного окна) — короткая подсветка */
.konec-podelitsya { scroll-margin-top: calc(var(--sh-h) + 16px); }
.kp-vspyshka .shering-knopki button { background: var(--metka); }
@media (forced-colors: active) { .sd-knopka { border: 1px solid ButtonText; } .sd-knopka svg { color: ButtonText; } }

/* ---------- сдержанное движение ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* ---------- № 1586 печать (Верстальщик, 21.10.2026): статья в PDF — свёрстанный лист в облике «Кто твой Господь?» ----------
   Образец — печать «Полезного знания» (pz-svoy/pechat.css): A4, шапка листа — строка-логотип Логомастера
   (/logo-stroka-sinij.svg) и адрес, тонкая черта цветом проекта; рубрика, заголовок, дата и время чтения, полоса книги
   «Статья N из 20»; цитаты с чертой, номера сносок цветом, содержание — перечнем без ссылок; в конце строка «Источник»;
   в поле листа внизу «Кто твой Господь? · ktotvoigospod.com» и «стр / всего». Всё плавающее и экранное скрыто.
   Тёмная тема, «Небо», выбранный шрифт и размер на бумагу не идут: skript.js снимает их на время печати, здесь — заслон.
   Гамма — «Ночное небо» — тёмно-синий и голубой сайта (выбрана из трёх проб, rabota/1586/pdf). Элементы .pch-* (statya.html) на экране не видны. */
.pch-shapka, .pch-put, .pch-istochnik { display: none; }

@media print {
  @page {
    size: A4;
    margin: 17mm 28mm 19mm;
    @bottom-left { content: "Кто твой Господь? · ktotvoigospod.com"; font: 400 8pt "Onest", Arial, sans-serif; color: #6b7480; }
    @bottom-right { content: counter(page) " / " counter(pages); font: 400 8pt "Onest", Arial, sans-serif; color: #6b7480; }
  }
  html:root:root:root {
    --pch-chernila: #0a1a33;
    --pch-akcent: #0079b0;
    --pch-akcent-t: #00689a;
    --pch-svetlyy: #b5d3e8;
    --pch-pusto: #e8edf2;
    --pch-fon: #eef5fa;
    --pch-tekst: #262b33;
    --pch-tekst-2: #5b6573;
    --f-tekst: "Literata", "Salyam", Georgia, serif; --f-zag: var(--f-tekst); --f-ui: "Onest", "Salyam", Arial, sans-serif; --ves-tekst: 400;
    --tekst: var(--pch-tekst); --tekst-2: var(--pch-tekst-2); --zag: var(--pch-chernila); --akcent: var(--pch-akcent); --akcent-t: var(--pch-akcent-t);
    --fon: #fff; --fon-2: var(--pch-fon); --fon-3: #fff; --sery: var(--pch-svetlyy);
    font-size: 100%; color-scheme: light; background: #fff !important;
  }
  html, body { background: #fff !important; color: var(--pch-tekst) !important; }
  body * { box-shadow: none !important; text-shadow: none !important; }

  /* всё экранное */
  .sh, .yashchik, .poisk-okno, .geroy, .levaya, .vidzhety, .konec-podelitsya, .tsepochka, .podval, .audio-kartochka,
  .propusk, .zatemnenie, .tost, .sn-kartochka, .podskazka, .shapka-foto, .put-podpis, .st-deystviya, .oform-menyu,
  dialog, iframe, video, audio, [data-pch-net] { display: none !important; }
  .shapka-v > :not(.pch-shapka, .rubrika-metka, .zag, .meta, .put) { display: none !important; }
  .meta > span ~ span { display: none; }   /* «озвучка 12:48» — бумага не звучит */

  /* белый лист вместо синей полосы и сетки экрана */
  html:root .shapka { margin: 0 0 7mm; background: none !important; color: var(--pch-tekst) !important; overflow: visible; }
  .shapka::after, .shapka-s-foto::after { display: none !important; }
  .shapka-v, .stranica { display: block !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
  .shapka-v > * { max-width: none; }
  .osnova { max-width: none !important; margin: 0 !important; padding: 0 !important; }
  html:root body, html:root body * { min-height: 0 !important; }   /* главная держит первый экран в рост окна — на бумаге это пустой лист */

  /* шапка листа: строка-логотип слева, адрес и девиз справа, черта цветом проекта */
  .pch-shapka { display: flex !important; align-items: flex-end; justify-content: space-between; gap: 8mm; margin: 0 0 7mm; padding: 0 0 3.2mm; border-bottom: 1.6pt solid var(--pch-akcent); -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .pch-logo { display: block; width: auto; height: 9mm; }
  .pch-sprava { margin: 0; text-align: right; font: 400 8pt/1.45 var(--f-ui); color: var(--pch-tekst-2); }
  .pch-sprava b { display: block; font-weight: 600; color: var(--pch-chernila); }
  .pch-sprava span { display: block; font-family: var(--f-tekst); font-style: italic; }

  /* рубрика, заголовок, данные, полоса книги */
  html:root .rubrika-metka { display: block; min-height: 0; margin: 0 0 2mm; font: 600 8.5pt/1.3 var(--f-ui); color: var(--pch-akcent-t); text-decoration: none; }
  html:root .shapka .zag { margin: 0; font: 600 23pt/1.16 var(--f-zag); letter-spacing: -.015em; color: var(--pch-chernila); text-wrap: balance; }
  html:root .meta { gap: 0 5mm; margin: 3mm 0 0; font: 400 8.8pt/1.4 var(--f-ui); color: var(--pch-tekst-2); }
  .put { margin: 4.5mm 0 0; }
  .put-shkala { gap: 1.2mm; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  html:root .put-shkala li { height: .9mm; border-radius: .45mm; background: var(--pch-pusto); }
  html:root .put-shkala .proydeno { background: var(--pch-svetlyy); }
  html:root .put-shkala .zdes { background: var(--pch-akcent); box-shadow: none; }
  .pch-put { display: block !important; margin: 1.8mm 0 0; font: 400 8pt/1.4 var(--f-ui); color: var(--pch-tekst-2); }

  /* текст */
  html:root .tekst { font: 400 11.4pt/1.56 var(--f-tekst); color: var(--pch-tekst); hyphens: auto; text-wrap: pretty; }
  .tekst p { margin: 0; orphans: 3; widows: 3; }
  .tekst p + p { text-indent: 6mm; }   /* книжный абзац: красная строка вместо отбивки */
  .tekst div p, .tekst hr + p, .tekst h2 + p, .tekst h3 + p { text-indent: 0; }
  .tekst ul, .tekst ol, .tekst blockquote + p { margin-top: 2.6mm; }
  .tekst li { orphans: 2; widows: 2; }
  html:root .tekst h2 { margin: 7.5mm 0 2.4mm; font: 600 14pt/1.25 var(--f-zag); color: var(--pch-chernila); break-after: avoid; page-break-after: avoid; break-inside: avoid; }
  html:root .tekst h3 { margin: 5mm 0 1.8mm; font: 600 12pt/1.3 var(--f-zag); color: var(--pch-chernila); break-after: avoid; page-break-after: avoid; break-inside: avoid; }
  .tekst h2 + *, .tekst h3 + * { break-before: avoid; page-break-before: avoid; }
  .tekst strong, .tekst b { color: var(--pch-chernila); }
  .tekst a { color: inherit; text-decoration: none; }
  html:root .tekst blockquote { margin: 4mm 0 5mm; padding: 3mm 5mm 3.5mm 5.5mm; border-left: 2.4pt solid var(--pch-akcent); border-radius: 0; background: var(--pch-fon); font: italic 400 13pt/1.45 var(--f-tekst); color: var(--pch-chernila); text-wrap: pretty; break-inside: avoid; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .tekst blockquote::before { height: .42em; margin: -.05em 0 .1em; font: italic 700 2em/1 var(--f-tekst); color: var(--pch-akcent); }
  .tekst hr { height: 0; border: 0; border-top: .8pt solid var(--pch-svetlyy); background: none; }
  .tekst img, .tekst figure { max-width: 100%; height: auto; break-inside: avoid; }
  .tekst [lang="ar"] { font-family: "Amiri", "Noto Naskh Arabic", "Scheherazade New", "Geeza Pro", serif; font-size: 1.32em; line-height: 2; font-style: normal; letter-spacing: 0; unicode-bidi: isolate; }
  .tekst p[lang="ar"], .tekst div[lang="ar"] { direction: rtl; text-align: right; hyphens: none; }

  /* содержание: на бумаге — перечень разделов (нить с кружками, как на сайте), без ссылок */
  html:root .tekst .oglavlenie, html:root .tekst > div:has(> nav) { margin: 0 0 6mm; padding: 3mm 0 2.2mm; border: 0; border-top: .6pt solid var(--pch-svetlyy); border-bottom: .6pt solid var(--pch-svetlyy); border-radius: 0; background: none; break-inside: avoid; }
  html:root .tekst .oglavlenie p, html:root .tekst > div:has(> nav) p { margin: 0 0 1mm; font: 600 9pt/1.3 var(--f-ui); color: var(--pch-chernila); }
  .tekst nav li { padding-left: 5.2mm; }
  .tekst nav li::before { left: 1.3mm; width: .7pt; background: var(--pch-svetlyy); }
  .tekst nav li:first-child::before { top: 3.2mm; }
  .tekst nav li:last-child::before { height: 3.2mm; }
  .tekst nav li::after { left: .2mm; top: 2.1mm; width: 2.2mm; height: 2.2mm; border: 1pt solid var(--pch-akcent); background: #fff; }
  html:root .tekst nav a { padding: 1mm 0; font: 400 9.5pt/1.35 var(--f-ui); color: var(--pch-tekst); text-decoration: none; }

  /* сноски */
  html:root .tekst sup.snoska a { padding: 0 .1em; margin: 0 .1em 0 .04em; border-radius: 0; background: none; color: var(--pch-akcent-t); font: 600 .62em/1 var(--f-ui); vertical-align: .5em; }
  .tekst sup.snoska a::after { display: none; }
  html:root .tekst hr.snoski-cherta { width: 24mm; margin: 8mm 0 3mm; border-top: 1.2pt solid var(--pch-akcent); break-after: avoid; }
  html:root .tekst .snoska-tekst { margin: 0 0 1.6mm; padding: 0; background: none; text-indent: 0; font: 400 8.8pt/1.5 var(--f-ui); color: var(--pch-tekst-2); break-inside: avoid; }

  /* строка источника */
  .pch-istochnik { display: block !important; margin: 8mm 0 0; padding: 2.6mm 0 0; border-top: .8pt solid var(--pch-svetlyy); font: 400 8.5pt/1.5 var(--f-ui); color: var(--pch-tekst-2); hyphens: none; overflow-wrap: break-word; break-inside: avoid; }
  .pch-istochnik b { font-weight: 600; color: var(--pch-chernila); }
}
