/* Читалка норм: документ внутри страницы — лист на «столе» со своей прокруткой
   и панелью инструментов. Разметка — chitalka() в lib/stranicy.mjs, поведение — chitalka.js.
   Без скрипта класса .ch-gotov нет: панель скрыта, текст идёт обычной страницей. */
.ch{--ch-shrift:16px;margin:20px 0 36px;border:2px solid var(--k);border-radius:14px;background:#fff;overflow:hidden;position:relative}
.ch:not(.ch-gotov) .ch-panel,.ch:not(.ch-gotov) .ch-niz,.ch:not(.ch-gotov) .ch-ogl{display:none}
.ch:not(.ch-gotov) .ch-list{padding:4px 0}

/* панель */
.ch-panel{display:flex;align-items:center;gap:var(--o2);flex-wrap:wrap;padding:8px 10px;background:var(--k);color:var(--p);position:relative;z-index:3}
.ch-k{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:inherit;font:600 14px/1 Onest,system-ui,sans-serif;cursor:pointer;white-space:nowrap}
.ch-k svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ch-k:hover,.ch-k[aria-expanded="true"],.ch-k[aria-pressed="true"]{background:#2C2F34;color:var(--y)}
.ch-k:focus-visible,.ch-poisk input:focus-visible,.ch-menu button:focus-visible{outline:2px solid var(--y);outline-offset:1px}
.ch-k:disabled{opacity:.35;cursor:default;background:transparent;color:inherit}
.ch-k-mal{padding:0 8px;min-width:36px;justify-content:center}
.ch-deystviya .ch-k span{display:none}
.ch-gruppa{display:flex;gap:var(--o1)}
.ch-shrift .ch-k{font-weight:800;font-size:15px}
.ch-deystviya{margin-left:auto}
.ch-poisk{flex:1 1 260px;max-width:420px;display:flex;align-items:center;gap:2px;height:38px;padding:0 2px 0 10px;border-radius:10px;background:var(--p);color:var(--k)}
.ch-poisk>svg{width:18px;height:18px;fill:none;stroke:var(--g);stroke-width:2;stroke-linecap:round;flex:none}
.ch-poisk input{flex:1;min-width:0;height:100%;border:0;background:transparent;font:15px Onest,system-ui,sans-serif;color:var(--k);padding:0 6px;outline:0}
.ch-poisk input::-webkit-search-cancel-button{cursor:pointer}
.ch-poisk output{font-size:13px;color:var(--g);white-space:nowrap;padding:0 4px}
.ch-poisk output.net{color:var(--fd)}
.ch-poisk .ch-k{height:32px;color:var(--k)}
.ch-poisk .ch-k:hover{background:var(--line);color:var(--k)}

.ch-menu{position:absolute;right:10px;top:100%;margin-top:4px;background:#fff;color:var(--k);border:2px solid var(--k);border-radius:12px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.18);display:flex;flex-direction:column;min-width:200px}
.ch-menu[hidden]{display:none}
.ch-menu button{border:0;background:transparent;text-align:left;font:600 15px Onest,system-ui,sans-serif;padding:10px 12px;border-radius:8px;cursor:pointer;color:var(--k)}
.ch-menu button:hover{background:var(--p)}

/* тело: содержание + стол с листом */
.ch-telo{display:flex;height:min(calc(100vh - 130px),980px);height:min(calc(100dvh - 130px),980px);min-height:420px;background:#E7E5DF;position:relative}
.ch-ogl{flex:0 0 290px;overflow:auto;background:#fff;border-right:1px solid var(--line);padding:12px 6px 24px 10px;font-size:14px;line-height:1.35;overscroll-behavior:contain}
.ch-ogl[hidden]{display:none}
.ch-ogl ol{list-style:none;margin:0;padding:0}
.ch-ogl ol ol{padding-left:14px;margin:2px 0 6px;border-left:1px solid var(--line)}
.ch-ogl li{margin:0}
.ch-ogl a{display:block;padding:5px 8px;border-radius:7px;color:var(--k);text-decoration:none}
.ch-ogl a:hover{background:var(--p)}
.ch-ogl a.ch-akt{background:var(--y);font-weight:700}
.ch-ogl-zag{font-weight:800;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--g);padding:4px 8px 8px}
.ch-stol{flex:1;min-width:0;overflow:auto;padding:28px 24px 64px;scroll-behavior:auto;overscroll-behavior:contain;outline:0}
.ch-stol:focus-visible{box-shadow:inset 0 0 0 2px var(--n)}
.ch-list{display:block;max-width:820px;margin:0 auto;background:#fff;padding:44px 56px 56px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.08),0 8px 28px rgba(0,0,0,.08)}
.ch-list>.n-plashka{margin-top:0}
.ch .ch-list .n-tekst,.ch .ch-list .n-plashka,.ch .ch-list .n-red{max-width:none}
.ch .ch-list .n-tekst{font-size:var(--ch-shrift)}
.ch .ch-list .n-tekst h2{font-size:calc(var(--ch-shrift) * 1.25)}
.ch .ch-list .n-tekst h3{font-size:calc(var(--ch-shrift) * 1.12)}
.ch .ch-list .n-tab{font-size:calc(var(--ch-shrift) - 2px)}
.ch.ch-gotov .ch-list .n-ogl{display:none}
.ch .ch-list [id]{scroll-margin-top:16px}
.ch .ch-cel,.ch .n-tekst p:has(> .n-ya.ch-cel){background:#FFF1B8;box-shadow:0 0 0 4px #FFF1B8;border-radius:2px}

/* поиск */
.ch mark.ch-naydeno{background:#FFE58A;color:inherit;border-radius:2px;padding:0}
.ch mark.ch-tek{background:var(--f);color:#fff;box-shadow:0 0 0 2px var(--f)}

/* низ: раздел и прогресс */
.ch-niz{display:flex;align-items:center;gap:10px;padding:6px 10px;border-top:1px solid var(--line);background:#fff;font-size:14px}
.ch-niz .ch-k{color:var(--k)}
.ch-niz .ch-k:hover{background:var(--p);color:var(--k)}
.ch-niz .ch-k span{display:none}
.ch-gde{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--k2)}
.ch-gde b{color:var(--k)}
.ch-progress{flex:0 0 120px;height:6px;border-radius:3px;background:var(--line);overflow:hidden}
.ch-progress i{display:block;height:100%;width:0;background:var(--f)}

.ch-toast{position:absolute;left:50%;bottom:58px;transform:translateX(-50%);background:var(--k);color:var(--p);padding:10px 16px;border-radius:10px;font-size:14px;max-width:calc(100% - 32px);box-shadow:0 8px 24px rgba(0,0,0,.2);z-index:5}
.ch-toast[hidden]{display:none}

/* развёрнуто на весь экран */
.ch.ch-ekran{position:fixed;inset:0;z-index:100;margin:0;border:0;border-radius:0;display:flex;flex-direction:column}
.ch.ch-ekran .ch-telo{flex:1;height:auto;min-height:0}
html.ch-zamok,html.ch-zamok body{overflow:hidden}

@media (max-width:1000px){
  .ch-ogl{position:absolute;inset:0 auto 0 0;width:min(340px,86%);z-index:4;box-shadow:12px 0 30px rgba(0,0,0,.18)}
}
@media (max-width:760px){
  .ch{margin:16px -12px 28px;border-radius:0;border-left:0;border-right:0}
  .ch-panel{gap:var(--o1);padding:6px}
  .ch-k-ogl span{display:none}
  .ch-poisk{order:5;flex:1 1 100%;max-width:none}
  .ch-shrift{margin-left:auto}
  .ch-deystviya{margin-left:0}
  .ch-deystviya [data-ch="original"]{display:none}
  .ch-k{height:34px;padding:0 7px}
  .ch-telo{height:calc(100vh - 150px);height:calc(100dvh - 150px);min-height:360px}
  .ch-stol{padding:10px 8px 48px}
  .ch-list{padding:20px 16px 32px}
  .ch-progress{flex-basis:60px}
}
@media (max-width:400px){
  .ch-k,.ch-k-mal{padding:0 5px;min-width:32px}
}

/* печать и PDF: только лист */
@media print{
  body.ch-pechat>*:not(main),body.ch-pechat main>*:not(.ch):not(h1):not(.lead-mal):not(#tekst),body.ch-pechat #tekst>*:not(.ch),body.ch-pechat-razdel main>h1,body.ch-pechat-razdel main>.lead-mal,body.ch-pechat .ch>*:not(.ch-telo),body.ch-pechat .ch-ogl{display:none!important}
  body.ch-pechat{background:#fff}
  body.ch-pechat main.w{max-width:none;padding:0}
  body.ch-pechat .ch{border:0;margin:0;position:static}
  body.ch-pechat .ch-telo,body.ch-pechat .ch-stol{display:block;height:auto!important;overflow:visible;background:#fff;padding:0}
  body.ch-pechat .ch-list{box-shadow:none;padding:0;max-width:none}
  body.ch-pechat .ch-list .n-tekst{font-size:11pt}
  body.ch-pechat .ch-skryt{display:none!important}
  body.ch-pechat mark{background:none!important;color:inherit!important;box-shadow:none!important}
  body.ch-pechat .n-skroll{overflow:visible}
  body.ch-pechat main>h1{font-size:22pt;margin:0 0 4pt;letter-spacing:0}
  body.ch-pechat main>.lead-mal{font-size:13pt;margin:0 0 14pt}
  body.ch-pechat-razdel .ch-kolontitul{display:block!important;font-size:9pt;color:#555;border-bottom:1px solid #999;padding-bottom:4px;margin-bottom:12px}
  body.ch-pechat h2,body.ch-pechat h3{break-after:avoid}
  body.ch-pechat tr{break-inside:avoid}
}
.ch-kolontitul{display:none}
