/* =====================================================================
   ВЕРСИЯ ДЛЯ СЛАБОВИДЯЩИХ (ГОСТ Р 52872-2019)
   Включается кнопкой в топбаре и в бургер-меню, выбор живёт в localStorage
   ('elitmed-vi'). Реализована переопределением тех же токенов, на которых
   построен весь сайт — поэтому не нужно дублировать вёрстку:
     data-vi        — режим включён
     data-vi-color  — bw (чёрным по белому) / wb / by (синим по голубому)
     data-vi-size   — 1 / 2 / 3
     data-vi-ls     — 1 / 2 (межбуквенный интервал)
     data-vi-img    — on / off
   ===================================================================== */

/* ---------- цветовые схемы ---------- */
:root[data-vi][data-vi-color="bw"]{
  --bg:#ffffff; --bg-alt:#ffffff; --surface:#ffffff; --field:#ffffff; --plate:#ffffff;
  --ink:#000000; --ink-2:#000000; --ink-3:#000000;
  --line:#000000; --line-2:#000000;
  --red:#000000; --red-dk:#000000; --red-lt:#ffffff;
  --panel:#ffffff; --panel-fg:#000000; --panel-fg-2:#000000; --panel-fg-3:#000000;
  --panel-soft:#ffffff; --panel-line:#000000;
  --hdr-bg:#ffffff; --err-bg:#ffffff; --ok:#000000;
  color-scheme:light;
}
:root[data-vi][data-vi-color="wb"]{
  --bg:#000000; --bg-alt:#000000; --surface:#000000; --field:#000000; --plate:#000000;
  --ink:#ffffff; --ink-2:#ffffff; --ink-3:#ffffff;
  --line:#ffffff; --line-2:#ffffff;
  --red:#ffffff; --red-dk:#ffffff; --red-lt:#000000;
  --panel:#000000; --panel-fg:#ffffff; --panel-fg-2:#ffffff; --panel-fg-3:#ffffff;
  --panel-soft:#000000; --panel-line:#ffffff;
  --hdr-bg:#000000; --err-bg:#000000; --ok:#ffffff;
  color-scheme:dark;
}
:root[data-vi][data-vi-color="by"]{
  --bg:#9dd1ff; --bg-alt:#9dd1ff; --surface:#9dd1ff; --field:#9dd1ff; --plate:#9dd1ff;
  --ink:#063462; --ink-2:#063462; --ink-3:#063462;
  --line:#063462; --line-2:#063462;
  --red:#063462; --red-dk:#063462; --red-lt:#9dd1ff;
  --panel:#9dd1ff; --panel-fg:#063462; --panel-fg-2:#063462; --panel-fg-3:#063462;
  --panel-soft:#9dd1ff; --panel-line:#063462;
  --hdr-bg:#9dd1ff; --err-bg:#9dd1ff; --ok:#063462;
  color-scheme:light;
}

/* ---------- размер текста ---------- */
:root[data-vi][data-vi-size="1"]{font-size:100%}
:root[data-vi][data-vi-size="2"]{font-size:125%}
:root[data-vi][data-vi-size="3"]{font-size:155%}
:root[data-vi] body{font-size:1.06rem;line-height:1.75}
:root[data-vi][data-vi-ls="2"] body{letter-spacing:.09em;word-spacing:.16em;line-height:1.95}

/* ---------- общий сброс украшательств ---------- */
:root[data-vi] body{
  font-family:"Times New Roman",Georgia,serif;
  background:var(--bg);color:var(--ink);
}
:root[data-vi] .rv{opacity:1!important;transform:none!important;transition:none!important}
:root[data-vi] *{
  box-shadow:none!important;text-shadow:none!important;
  transition:none!important;animation:none!important;
  border-radius:0!important;backdrop-filter:none!important;
}
:root[data-vi] a{text-decoration:underline;text-underline-offset:3px}
:root[data-vi] .btn,
:root[data-vi] .chip,
:root[data-vi] .times button,
:root[data-vi] .bkcal__d.has{
  border:2px solid var(--ink)!important;background:var(--bg)!important;color:var(--ink)!important;
  font-weight:700;
}
:root[data-vi] .btn:hover,
:root[data-vi] .chip.on,
:root[data-vi] .times button.on,
:root[data-vi] .bkcal__d.on{background:var(--ink)!important;color:var(--bg)!important}
:root[data-vi] input,:root[data-vi] select,:root[data-vi] textarea{
  border:2px solid var(--ink)!important;background:var(--bg)!important;color:var(--ink)!important;
  font-size:1rem;
}
:root[data-vi] .hdr{position:static;border-bottom:2px solid var(--ink)}
:root[data-vi] .annbar{background:var(--bg)!important;color:var(--ink)!important;
                       border-bottom:2px solid var(--ink)}
:root[data-vi] .topbar{border-bottom:2px solid var(--ink)}
:root[data-vi] .vi-open{color:var(--ink)!important}
:root[data-vi] .ftr{border-top:2px solid var(--ink)}
:root[data-vi] .card,:root[data-vi] .doc,:root[data-vi] .eq,:root[data-vi] .why,
:root[data-vi] .form,:root[data-vi] .bkcta,:root[data-vi] .bkm__win{
  border:2px solid var(--ink)!important;background:var(--bg)!important;
}
:root[data-vi] .bkm__ov{background:rgba(0,0,0,.5)!important;backdrop-filter:none!important}
:root[data-vi] .fabs{display:none!important}
:root[data-vi] .callme{display:none!important}
:root[data-vi] .theme{display:none!important}      /* тема тут задаётся схемой */
:root[data-vi] .hero__badge{display:none}
:root[data-vi] .gal__i figcaption{position:static;background:none!important;
                                  color:var(--ink)!important;padding:8px 0}
:root[data-vi] .map,
:root[data-vi] .hero__photo::after{filter:none}

/* ---------- изображения ---------- */
:root[data-vi][data-vi-img="off"] img,
:root[data-vi][data-vi-img="off"] .map,
:root[data-vi][data-vi-img="off"] .gal,
:root[data-vi][data-vi-img="off"] .hero__art,
:root[data-vi][data-vi-img="off"] .eq__media,
:root[data-vi][data-vi-img="off"] .doc__photo{display:none!important}
:root[data-vi][data-vi-img="gray"] img{filter:grayscale(1) contrast(1.15)}

/* ---------- панель настроек ---------- */
.vipanel{display:none}
:root[data-vi] .vipanel{
  display:block;background:var(--bg);color:var(--ink);
  border-bottom:2px solid var(--ink);padding:14px 0;
}
.vipanel__in{display:flex;flex-wrap:wrap;gap:18px 26px;align-items:center}
.vipanel__g{display:flex;align-items:center;gap:9px}
.vipanel__g > b{font-size:.85rem;font-weight:700}
.vipanel__b{border:2px solid var(--ink);background:var(--bg);color:var(--ink);
            font:inherit;font-weight:700;cursor:pointer;padding:6px 13px;line-height:1.2}
.vipanel__b.on,.vipanel__b:hover{background:var(--ink);color:var(--bg)}
.vipanel__b--a1{font-size:.9rem}
.vipanel__b--a2{font-size:1.15rem}
.vipanel__b--a3{font-size:1.4rem}
.vipanel__b--bw{background:#fff;color:#000;border-color:#000}
.vipanel__b--wb{background:#000;color:#fff;border-color:#000}
.vipanel__b--by{background:#9dd1ff;color:#063462;border-color:#063462}
.vipanel__off{margin-left:auto}
@media (max-width:720px){
  .vipanel__in{gap:12px 16px}
  .vipanel__off{margin-left:0;width:100%}
}
/* выбранная кнопка: у образцов цветовых схем фон свой, поэтому состояние
   показываем рамкой цветом текста — она видна и на белой, и на чёрной схеме */
:root[data-vi] .vipanel__b.on{outline:3px solid var(--ink);outline-offset:3px}
