/**
 * Дизайн 13.10.2026: доводка деталей в рамках текущего дизайна.
 *
 * Цвета, шрифты и сетка прежние: фиолетовый #4B326B, Montserrat в заголовках,
 * .container 1140px. Номера блоков (P01...) - пункты дизайн-аудита 13.10.2026,
 * у каждого замер «до» и проверка «после» на копии.
 *
 * Файл подключается последним (phase12-design-install.py), поэтому при равной
 * специфичности его правила перекрывают styles.css и additionalStyles.css.
 * Прежние правила темы не удаляются: откат - снять подключение файла.
 */

/* ---- P73. Мягкая палитра (владелец 13.10.2026: «везде мягкие для глаза
   сочетания»). Вместо чёрного #202020 и холодных серых - тёмные
   фиолетово-серые того же бренда: текст #2e2938 (13:1 на тонированном фоне),
   заголовки #2a2335, вторичный текст #5f586b (6,4:1), третичный #736b80
   (4,7:1 на тонированном фоне, 5,1:1 на белом; только мелкие подписи-даты;
   P80, track-1-8: #776f84 давал 4,46:1). Акцент #4B326B прежний.
   Переменные - для всего файла и для страниц темы. ---- */
:root{--avs-ink:#2e2938;--avs-head:#2a2335;--avs-muted:#5f586b;--avs-faint:#736b80}
html,body{color:var(--avs-ink)}
:is(h1,h2,h3,h4,h5,.pageTitle){color:var(--avs-head)}
.content :is(p,li,td,th,blockquote),.postSingle .content{color:var(--avs-ink)}

/* ---- P52. Шрифты - одна система на всём сайте (решение владельца
   13.10.2026: «везде приятные, в одном стиле, и в меню, и везде»). Текст,
   таблицы и поля - Inter: тема объявляла его, но не подключала, и браузер
   рисовал системный Helvetica, Arial или Roboto. Заголовки, меню (верхнее,
   мобильное, строка подпунктов, футер), кнопки, ссылки-действия и цифры -
   Montserrat, как H1 страниц. Грузинский - Noto Sans Georgian (P33). ---- */
html,body{font-family:"Inter",Helvetica,Arial,sans-serif}
.topMenu a,.mobileMenuWrapper.slinky-menu li a,.footer .menu a,
.nButton,.avs-btn,.avq2-btn,.wpcf7-submit,.postCardMore a,.notFoundLink,
.postListPagination a,.postListPagination span,.avsResearch .panel-title{font-family:'Montserrat',sans-serif}
.topMenu a{letter-spacing:.02em}
.footer .menu a{font-weight:500}
.nButton,.avs-btn,.avq2-btn,.wpcf7-submit{font-weight:600;letter-spacing:.01em}
.avsResearch{--sans:"Inter",Helvetica,Arial,sans-serif}

/* ---- P01. Подпункты раздела - строкой под «палочкой» ----
   Открытый раздел (его страница, подстраница или запись): строка под
   пунктом видна всегда, текущая подстраница отмечена своей «палочкой».
   Классы avsSubnavPinned у пункта и avsSubnavOpen у body ставит
   functions.php. Другие разделы: строка появляется только при наведении,
   фокусе с клавиатуры или первом касании (.is-open из avs-design.js) - на
   том же месте и в том же виде, что и закреплённая: место под строку в
   шапке есть на всех страницах, и меню при переходах не сдвигается ни по
   вертикали, ни по горизонтали (владелец 13.10.2026: «меню на разных
   страницах не должно сдвигаться»; раньше шапка была 68 или 100px, а
   стрелка у пункта то была, то нет). Строка центрована по пункту; если
   она упирается в край шапки, avs-design.js сдвигает её через
   --avs-sub-shift. Старые правила Elementor (.subMenu: фиолетовая
   плашка, серый #3f444b) перекрыты. */
.topMenu ul > li.current-menu-parent .current-menu-item > a{background:none}
.topMenu > ul > li.current-menu-ancestor > a:after{transform:scale(1);opacity:1}
.topMenu > ul > li.menu-item-has-children > a .sub-arrow{padding:0 0 0 6px;margin-block:0}
.topMenu > ul > li.menu-item-has-children > a .sub-arrow svg{width:8px;height:8px;transition:transform .2s ease}
.topMenu > ul > li.menu-item-has-children:is(:hover,:focus-within,.is-open) > a .sub-arrow svg{transform:rotate(180deg)}
.topMenu > ul > li.menu-item-has-children > .sub-menu{--avs-sub-x:calc(-50% + var(--avs-sub-shift, 0px));position:absolute;top:100%;left:50%;z-index:20;display:flex;flex-wrap:nowrap;gap:4px;width:max-content;min-width:0;max-width:none;margin:0;padding:2px 8px 6px;list-style:none;background:#fff;border:0;border-radius:0 0 10px 10px;box-shadow:0 14px 28px rgba(43,28,64,.12);opacity:0;visibility:hidden;transform:translate(var(--avs-sub-x),-4px);transition:opacity .16s ease .12s,transform .16s ease .12s,visibility 0s linear .28s}
.topMenu > ul > li.menu-item-has-children > .sub-menu > li{display:block;position:static}
.topMenu > ul > li.menu-item-has-children > .sub-menu a{display:block;width:auto;padding:7px 12px;background:none;color:#6f5a8c;fill:#6f5a8c;font-size:13px;font-weight:600;line-height:1.3;letter-spacing:0;text-transform:none;white-space:nowrap;transition:color .15s ease}
.topMenu > ul > li.menu-item-has-children > .sub-menu a:after{content:'';display:block;position:absolute;inset-inline:12px;bottom:1px;width:auto;height:2px;background:#4B326B;opacity:0;transform:scaleX(.4);transition:opacity .2s ease,transform .2s ease}
.topMenu > ul > li.menu-item-has-children > .sub-menu a:hover,
.topMenu > ul > li.menu-item-has-children > .sub-menu a:focus-visible,
.topMenu > ul > li.menu-item-has-children > .sub-menu :is(.current-menu-item,.current-menu-ancestor) > a{background:none;color:#4B326B}
.topMenu > ul > li.menu-item-has-children > .sub-menu a:hover:after,
.topMenu > ul > li.menu-item-has-children > .sub-menu :is(.current-menu-item,.current-menu-ancestor) > a:after{opacity:1;transform:none;width:auto;inset-inline:12px}
/* «Наши статьи» - заголовок раздела без своей страницы (ссылка «#») */
.topMenu > ul > li > a[href="#"]{cursor:default}
.topMenu > ul > li.menu-item-has-children:is(:hover,:focus-within,.is-open) > .sub-menu{opacity:1;visibility:visible;transform:translate(var(--avs-sub-x),0);transition:opacity .16s ease,transform .16s ease,visibility 0s}
.topMenu > ul > li.menu-item-has-children:not(.avsSubnavPinned).is-dismissed > .sub-menu{opacity:0;visibility:hidden;transform:translate(var(--avs-sub-x),-4px)}
/* открытый раздел: строка на месте всегда и без подложки - она внутри шапки */
.topMenu > ul > li.avsSubnavPinned > .sub-menu{opacity:1;visibility:visible;transform:translate(var(--avs-sub-x),0);background:none;box-shadow:none;transition:none}
/* наведение на другой раздел с подпунктами прячет строку открытого, чтобы они не легли друг на друга */
.topMenu > ul:has(> li.menu-item-has-children:not(.avsSubnavPinned):is(:hover,:focus-within,.is-open)) > li.avsSubnavPinned > .sub-menu{opacity:0;visibility:hidden}
/* Шапка компактнее (владелец 13.10.2026: «чуть покомпактней, но с учётом
   подменю»): 90 -> 100px вместе со строкой подпунктов - 68px меню и 32px
   под строку, на всех страницах одинаково (см. выше). «Палочка» ровно
   посередине: по 9px от низа букв пункта до неё и от неё до верха букв
   подпунктов. Вертикальные отступы ссылок меню одинаковы на всех ширинах
   десктопа, тема меняет на 1140px только боковые. Строка при наведении -
   без подложки и тени, как закреплённая: она внутри шапки. */
@media (min-width:993px){
	.header{height:100px;padding-bottom:32px}
	body{padding-top:100px}
	.header .logo{width:84px}
	.header .logo img{width:84px;height:auto;display:block}
	.topMenu > ul > li > a{padding-top:12px;padding-bottom:12px;line-height:20px}
	.topMenu > ul > li > a:after{bottom:3px}
	.topMenu > ul > li.menu-item-has-children > .sub-menu{top:calc(100% - 2px);padding-top:0;background:none;box-shadow:none;border-radius:0}
}
@media (prefers-reduced-motion:reduce){.topMenu > ul > li.menu-item-has-children > .sub-menu{transition:none}}

/* ---- P29. Мобильное меню: панель на всю высоту под шапкой, край по логотипу,
   текущий раздел отмечен той же полоской, что подменю и карточки ---- */
@media screen and (max-width:992px){
	.mobileMenu{z-index:998;height:calc(100vh - 76px);height:calc(100dvh - 76px);max-height:none;overflow-y:auto;overscroll-behavior:contain}
	body.admin-bar .mobileMenu{height:calc(100dvh - 122px)}
	.mobileMenuWrapper.slinky-menu li{padding:0 3%}
	.mobileMenuWrapper.slinky-menu li a{font-weight:600;letter-spacing:.01em}
	.mobileMenuWrapper.slinky-menu li.current-menu-item,
	.mobileMenuWrapper.slinky-menu li.current-menu-ancestor{box-shadow:inset 3px 0 0 #4B326B;background:#f8f6fb}
}
@media screen and (max-width:768px){.mobileMenuWrapper.slinky-menu li{padding:0 16px}}

/* ---- P02. Мобильное меню: подпункты списком сразу под «Нашими статьями»
   (avs-design.js выносит их из вложенного ul, чтобы slinky не уводил вглубь) ---- */
@media screen and (max-width:992px){
	.mobileMenu .mobileMenuWrapper.slinky-menu li > a .sub-arrow{display:none}
	.mobileMenu .mobileMenuWrapper.slinky-menu li.menu-item-has-children{border-bottom:0}
	.mobileMenu .mobileMenuWrapper.slinky-menu li.menu-item-has-children > a{padding-bottom:6px}
	.mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem{min-height:44px;padding-left:calc(3% + 14px);border-bottom:0;background:none;box-shadow:none}
	.mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem a{display:flex;align-items:center;min-height:44px;box-sizing:border-box;padding:10px 0 10px 14px;border-left:2px solid rgba(75,50,107,.2);font-size:14px;line-height:1.35;font-weight:500;text-transform:none}
	/* у записи её подпункт («Блог») - .current-menu-ancestor: отмечен так же, как текущий */
	.mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem:is(.current-menu-item,.current-menu-ancestor) a{border-left-color:#4B326B;font-weight:700}
	.mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem.is-last{border-bottom:1px solid #DCDCDC;padding-bottom:10px}
}
@media screen and (max-width:768px){.mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem{padding-left:30px}}

/* ---- P12. Бургер больше не прокручивает страницу наверх: фон держит html.ovh ---- */
html.ovh{overflow:hidden}
.mobileMenu{overscroll-behavior:contain}

/* ---- P30. Бургер - кнопка с зоной нажатия 47x43, полоски на прежнем месте ---- */
.menuTrigger .hamburger{padding:10px;margin:-10px}

/* ---- P13, P31. Переключатель языка: кнопка (тап и Enter открывают список)
   и одна «таблетка» с фиолетовой рамкой вместо двух коробок ---- */
.langSwitcher button.current-lang{font:inherit;color:inherit;margin:0;cursor:pointer}
.langSwitcher.is-open .lang-list{display:block}
.langSwitcher.is-open .current-lang .arrow{transform:rotate(180deg)}
@media (hover:none){
	.langSwitcher:not(.is-open):hover .lang-list{display:none}
	.langSwitcher:not(.is-open):hover .current-lang .arrow{transform:none}
}
@media (max-width:992px){
	.langSwitcher .current-lang{min-height:44px;padding:0 12px}
}
/* левый и правый блоки шапки одной ширины - меню точно по центру окна
   (справа теперь переключатели темы и языка) */
.header .topContactsAndButton{gap:8px}
@media (min-width:993px){.header .logo{flex:0 0 136px}.header .topContactsAndButton{flex:0 0 136px;justify-content:flex-end}}
.langSwitcher.is-open .current-lang{border-color:#4B326B;border-bottom-left-radius:0;border-bottom-right-radius:0}
@media (hover:hover){.langSwitcher:hover .current-lang{border-color:#4B326B;border-bottom-left-radius:0;border-bottom-right-radius:0}}
.langSwitcher .lang-list{border:1px solid #4B326B;border-top:0;border-radius:0 0 6px 6px;box-shadow:0 12px 24px rgba(43,28,64,.12)}

/* ---- P05. Видимый фокус с клавиатуры. styles.css гасит outline у всего
   (body *{outline:none !important}); :focus-visible мышью не срабатывает ---- */
body *:focus-visible{outline:2px solid #4B326B !important;outline-offset:2px}
.topMenu > ul > li.menu-item-has-children > .sub-menu a:focus-visible,
.langSwitcher .lang-list a:focus-visible{outline-offset:-2px}
body .footerAuthInput:focus-visible,
body .avs-auth input:not([type=checkbox]):not([type=radio]):focus-visible{outline:none !important}

/* ---- P06. Наведение на кнопки: тёмный фирменный вместо малинового #c36 ---- */
.avs-btn:hover,.avq2-btn:hover,body .avs-btn:hover{background:#352357 !important;border-color:#352357 !important}
.wpcf7-submit:hover,.nButton:hover{background:#352357}

/* ---- P34. Кнопки и поля шрифтом сайта (normalize ставил sans-serif), рука над кнопками ---- */
button,input,select,textarea{font-family:inherit}
.nButton,button,[type=submit],[type=button]{cursor:pointer}
button:disabled,[type=submit]:disabled{cursor:not-allowed;opacity:.6}

/* ---- P09. Поля ввода: видимая рамка (была белой на белом), один вид в футере
   и кабинете, 16px на телефоне - iOS не увеличивает страницу при фокусе ---- */
.footerAuthInput,
.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]){width:100%;box-sizing:border-box;min-height:44px;padding:10px 14px;border:1px solid #9384a6;border-radius:10px;background:#fff;color:var(--avs-ink);font:inherit;font-size:15px;line-height:1.3;transition:border-color .2s,box-shadow .2s}
.footerAuthInput::placeholder,.avs-auth input::placeholder{color:var(--avs-faint);opacity:1}
.footerAuthInput:hover,
.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):hover{border-color:#4B326B}
.footerAuthInput:focus,
.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):focus{border-color:#4B326B;box-shadow:0 0 0 3px rgba(75,50,107,.15)}
@media (max-width:768px){
	.footerAuthInput,
	.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]){font-size:16px}
}

/* ---- P10. Кнопка входа в футере в одну строку («Войти», «შესვლა») ---- */
.footerAuth .nButton.short{white-space:nowrap}

/* ---- P48. Кабинет: компактная карточка входа по центру; второй формы
   в футере на этой странице нет (footer.php) ---- */
.avs-card.avs-auth{max-width:460px;margin:0 auto 16px}
@media (min-width:600px){.avs-card.avs-auth{padding:28px}}
.avs-auth .avs-btn{padding:12px 24px;font-size:13px;min-width:150px}
.avs-auth .avs-auth-hint a{text-decoration:none}
.avs-auth .avs-auth-hint a:hover{text-decoration:underline}

/* ---- P14. Футер прижат к низу окна на коротких страницах ---- */
body{display:flex;flex-direction:column;min-height:100vh;box-sizing:border-box}
body.admin-bar{min-height:calc(100vh - 32px)}
@media screen and (max-width:782px){body.admin-bar{min-height:calc(100vh - 46px)}}
.mainPageContentWrapper{flex:1 0 auto;width:100%}
.footer{flex-shrink:0}
/* во flex нижний margin контента больше не схлопывается с margin-top футера */
.mainPageContentWrapper .container > :last-child,
.mainPageContentWrapper .container > :last-child > :last-child,
.mainPageContentWrapper .container > :last-child > :last-child > :last-child{margin-bottom:0}

/* ---- P32. Поля и отступы: отступ под шапку 76px на планшете и телефоне,
   боковое поле 16px на телефоне, исследование без белых полос ---- */
@media screen and (max-width:992px){body{padding-top:76px}}
@media screen and (max-width:768px){.container{width:calc(100% - 32px)}}
.page-template-research-home .mainPageContentWrapper{padding-top:0}
.page-template-research-home .footer{margin-top:0}

/* ---- P37. Разделители в тон бренда вместо бирюзового rgba(3,53,55,.2) ---- */
.footer{border-top-color:rgba(75,50,107,.15)}
.mobileMenuIsOpened .header,.header.fixedHeader{border-bottom-color:rgba(75,50,107,.15)}
.trArchiveList li{border-bottom-color:rgba(75,50,107,.12)}
#inputResult div a:hover{color:#352357}

/* ---- P11. Длинный адрес без пробелов больше не раздвигает колонку
   (на телефоне страница уменьшалась до 47-55%) ---- */
.postCardTitle,.postCardExcerpt,.postSingle .pageTitle,
.postSingle .content p,.postSingle .content li{overflow-wrap:anywhere}

/* ---- P23. Шкала заголовков: H1 26/24 > H2 раздела 22/19 > карточка 20/17 >
   H3 19/17 > H4 17/16. Только прямые потомки .content: карточки ленты и
   исследование не задеты; старую главную (.home) не трогаем ---- */
.trLatestTitle{font-size:20px;line-height:1.3}
.trArchiveTitle{font-size:18px}
:is(.postSingle,.page-template-default:not(.home) .container) > .content > h2{font-size:22px;line-height:1.3;margin:44px 0 12px}
:is(.postSingle,.page-template-default:not(.home) .container) > .content > h3{font-size:19px;line-height:1.35;margin:32px 0 10px}
:is(.postSingle,.page-template-default:not(.home) .container) > .content > h4{font-size:17px;line-height:1.35;margin:24px 0 8px}
.postSingle .avsTgsTitle{font-size:18px;letter-spacing:.02em}
@media (max-width:768px){
	.trLatestTitle{font-size:18px}
	:is(.postSingle,.page-template-default:not(.home) .container) > .content > h2{font-size:19px;margin:32px 0 10px}
	:is(.postSingle,.page-template-default:not(.home) .container) > .content > h3{font-size:17px}
	:is(.postSingle,.page-template-default:not(.home) .container) > .content > h4{font-size:16px}
}

/* ---- P24. Текст на телефоне 16px вместо 14px; отрывок карточки с
   нормальным межстрочным (это div, а не p, и интервал был 1.15) ---- */
@media (max-width:768px){
	ol,ul,p{font-size:16px;line-height:26px}
	.breadcrumbs{font-size:13px}
}

/* ---- P25. Колонка чтения. Текстовые страницы: колонка 860px по центру,
   свободное место поровну слева и справа, как отступы абзаца (владелец
   13.10.2026, три замечания подряд: колонка 760 по центру с полями по 190px
   «ломает глаз» под шапкой у левого края; у левого края - пустое место
   справа; итог - «свободное разделить, текст посередине, но к краям
   поближе»). На 1440 поля по 140px, на 1024 - по 51px; длина строки около
   90 знаков. Та же колонка 860px - у записей, трэк-рекорда и главной
   (P67), чтобы текст стоял одинаково на всех страницах («и на главной так
   же»). Шапка - крошки, H1, у записи и дата - везде у левого края
   контейнера: у записи и трэк-рекорда она стояла внутри узкой колонки и
   «прыгала» при переходе с других страниц (владелец: «а здесь почему
   старое меню?»). Лента остаётся на всю ширину ---- */
.postSingle > :is(.content,.postSingleImage),
.single-post .container > :is(.postNavBottom,.postSingleBack),
.page-template-track-record .mainPageContentWrapper > .container > .content{max-width:860px;margin-inline:auto}
.postSingle > .content > :is(p,ul,ol,blockquote,h2,h3,h4),
.trLatestBody > :is(p,ul,ol){max-width:860px}
.page-template-default:not(.home) .container > .content:not(.borderedText):not(.coloredTables) > :is(p,ul,ol,blockquote,h2,h3,h4){max-width:860px;margin-inline:auto}
.content.tac > :is(p,ul,ol,blockquote,h2,h3,h4){margin-inline:auto}
.single-post .pageTitle{text-align:left}
.postSingle .pageTitle{margin:12px 0 8px}
.postSingle > .postCardMeta{margin:0 0 28px}

/* ---- P26. Крошки тише H1; на телефоне последняя крошка в одну строку ---- */
.breadcrumbs{font-size:13px;color:var(--avs-muted)}
.breadcrumbs a{color:inherit;text-decoration:none}
.breadcrumbs a:hover{color:#4B326B;text-decoration:underline}
@media (max-width:768px){.breadcrumbs .breadcrumb_last{display:inline-block;max-width:55vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}}
.postSingleBack a{font:600 13px/1 'Montserrat',sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#4B326B;text-decoration:none}
.postSingleBack a:hover{text-decoration:underline}

/* ---- P27. Пагинация: заметная текущая страница, наведение, ячейки 40px ---- */
.postListPagination a,.postListPagination span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid rgba(75,50,107,.2);border-radius:6px;transition:background-color .2s,border-color .2s}
.postListPagination a:hover{border-color:#4B326B;background:#f8f6fb}
.postListPagination .current{background:#4B326B;border-color:#4B326B;color:#fff;font-weight:600}
.postListPagination .dots{min-width:24px;padding:0;border-color:transparent}
@media (max-width:768px){.postListPagination ul{gap:6px}}

/* ---- P07. 404: два выхода - на главную и в статьи ---- */
.notFoundActions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:20px}
.notFoundLink{color:#4B326B;font-weight:600;text-decoration:none}
.notFoundLink:hover{text-decoration:underline}

/* ---- P35. Футер: средняя колонка по центру, верхние края на одной линии,
   три кегля, контраст ссылок 6.7:1, на телефоне форма по центру. Боковые
   колонки не уже 260px - средняя по центру окна и на 993-1100px (P80).
   Ссылки правовых страниц не рвутся внутри; если не помещаются в строку
   (RU и KA на 993-1199px и на телефоне), встают друг под другом по центру
   с шагом 6px и читаются одной группой (P80). В нижней полосе между
   копирайтом и адресом не меньше 24px: на KA при 993-1015px они сходились
   вплотную (P80) ---- */
@media (min-width:993px){
	.footerColumns{display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(260px,1fr);align-items:start;column-gap:40px;padding:40px 0 36px}
	.footerColumns .column1{justify-self:start}
	.footerColumns .column2{justify-self:center}
	.footerColumns .column3{justify-self:end;width:260px}
	.footer .copyrightColumns{column-gap:24px}
	.footer .copyrightColumns .column{text-wrap:balance}
}
.footer .menu{font-size:15px;flex-wrap:wrap;justify-content:center;gap:6px 24px}
.footer .menu a{color:var(--avs-muted);white-space:nowrap}
.footerContactLink{font-size:15px}
.footerAuthHint{font-size:13px;opacity:1;color:#6b5a85}
@media screen and (max-width:1140px){.footer .menu{font-size:15px}}
@media screen and (max-width:992px){
	.footerAuth{max-width:320px;margin:0 auto;align-items:stretch}
	.footerAuth .nButton.short{max-width:none;width:100%}
	.footer .copyrightColumns .column{text-align:center}
	.footer .copyrightColumns{gap:6px}
}

/* ---- P36. Соцсети в фирменном цвете вместо трёх чужих, наведение заметно ---- */
.tgIcon a,.socialLinks a{width:44px;height:44px;border-radius:10px;transition:background-color .2s,transform .2s}
.tgIcon a,.socialLinks a.instagram,.socialLinks a.telegram,.socialLinks a.facebook{background:#4B326B}
.socialLinks a svg{width:22px;height:22px;fill:#fff}
.tgIcon a:hover,.socialLinks a:hover{opacity:1;background:#352357;transform:translateY(-2px)}
.footerLogo a{display:block}

/* ---- P15. Таблицы How to use: без обрезки на 993-1169px, на телефоне
   сетка 2x4 вместо столбика на 7 экранов ---- */
@media (min-width:993px) and (max-width:1170px){
	.coloredTables table{min-width:0}
	.coloredTables table td:first-child{width:22%;white-space:normal}
	.coloredTables table td.bordered,.coloredTables table td.padding{padding:10px 4px}
}
@media (max-width:992px){
	.coloredTables table tr td:first-child{width:100%}
	.coloredTables table tr td.bordered{width:50%;margin:0 -1px -1px 0}
	.coloredTables table tr td.bordered,
	.coloredTables table tr:last-of-type td.bordered,
	.coloredTables table tr td.bordered:last-of-type,
	.coloredTables table tr:last-of-type td.bordered:last-of-type{border:1px solid rgba(75,50,107,.12)}
}
@media (min-width:600px) and (max-width:992px){.coloredTables table tr td.bordered{width:25%}}

/* ---- P43. Итоговое правило How to use - плашка, а не кнопка: строки не слипаются ---- */
.nButton.likeDiv{line-height:1.45;padding:14px 20px;cursor:default}
@media (max-width:768px){.nButton.likeDiv{font-size:16px}}

/* ---- P44. Скриншоты счетов в записях: рамка, увеличение по клику ---- */
.postSingle .content > p img,.postSingle .avs-doc img,.postSingleImage img{display:block;max-width:min(100%,760px);height:auto;border:1px solid rgba(75,50,107,.15);border-radius:8px}
.postSingle .zoomLink{display:block;width:fit-content;max-width:100%;margin:0 0 16px;cursor:zoom-in}
.postSingle .zoomLink + br{display:none}

/* ---- P45. Списки в тексте с висячим отступом: перенос не уходит под маркер ---- */
:is(.postSingle,.page-template-default .container) > .content :is(ul,ol):not([class]){list-style-position:outside;padding-left:1.4em;margin:0 0 18px}
:is(.postSingle,.page-template-default .container) > .content :is(ul,ol):not([class]) > li + li{margin-top:4px}

/* ---- P46. «О нас»: одна шкала текста, реквизиты не крупнее био, фото меньше на телефоне ---- */
.imageOnRightWrapper .text{font-size:100%;line-height:1.7}
/* имя - первый strong первого абзаца при любой вложенности span (на KA лишняя
   обёртка: p > span > span.coloredText > strong; шрифт KA - P80, about-1-3) */
.imageOnRightWrapper .text > p:first-child span:first-child > strong:first-child{font-family:'Montserrat',sans-serif;font-size:20px}
.borderedText{font-size:16px;line-height:1.6;padding:20px 24px;border-width:1px}
@media (max-width:768px){.imageOnRightWrapper .image{max-width:240px}}

/* ---- P47. «4 гипотезы»: лёгкая рамка (тонкая линия, как у остальных белых
   поверхностей; было 2px #4B326B), цифра Montserrat, текст по левому краю ---- */
.blockWithCards .cardItem{border:1px solid rgba(75,50,107,.16);border-radius:10px;padding:24px 28px}
.blockWithCards .cardItem .title{font-family:'Montserrat',sans-serif;font-size:56px;font-weight:700;line-height:1;margin:4px 0 12px}
.blockWithCards .cardItem .subtitle{font-family:'Montserrat',sans-serif;font-size:18px;font-weight:700;line-height:1.3;margin-bottom:12px}
.blockWithCards .cardItem .text{text-align:left}

/* ---- P49. Скачивание документа записи - главное действие, с иконкой ---- */
.avs-doc-download .nButton{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:14px 26px;font-size:16px;font-weight:600}
.avs-doc-download .nButton::before{content:'';width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10.2l3.6-3.6L18 11l-6 6-6-6 1.4-1.4 3.6 3.6V3zM5 19h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M11 3h2v10.2l3.6-3.6L18 11l-6 6-6-6 1.4-1.4 3.6 3.6V3zM5 19h14v2H5z'/%3E%3C/svg%3E") center/contain no-repeat}
@media (max-width:768px){.avs-doc-download .nButton{width:100%;justify-content:center}}

/* ---- P33. Грузинский: в Montserrat нет грузинских букв, и заголовок шёл
   двумя шрифтами (DejaVu + Montserrat). На KA весь текст - Noto Sans Georgian
   (подключается в header.php), латиница без капса среди строчных слов ---- */
body[data-language="ka"]{font-family:'Noto Sans Georgian',sans-serif}
body[data-language="ka"] :is(h1,h2,h3,h4,h5,.topMenu a,.mobileMenuWrapper a,.uppercase){font-family:'Noto Sans Georgian',sans-serif;text-transform:none;letter-spacing:0}
body[data-language="ka"] :is(button,input,select,textarea,.blockWithCards .cardItem .title,.blockWithCards .cardItem .subtitle,.postSingleBack a,
	.footer .menu a,.nButton,.avs-btn,.avq2-btn,.wpcf7-submit,.postCardMore a,.notFoundLink,.postListPagination a,.postListPagination span,
	.kicker,.fact .n,.sum-t,.panel-title,.themeSwitcher){font-family:'Noto Sans Georgian',sans-serif}
body[data-language="ka"] .avsResearch{--sans:'Noto Sans Georgian',sans-serif;font-family:'Noto Sans Georgian',sans-serif}

/* ---- P66. Таблицы - один вид на всём сайте (замечание владельца 13.10.2026:
   «какие-то округлые, какие-то нет»). Было три: скруглённые 12px на старой
   главной, панели исследования 10px с серо-стальными линиями и прямоугольная
   сетка с чёрными рамками и яркими заливками в How to use. Стало: рамка
   rgba(75,50,107,.16) со скруглением 10px как у кнопок, внутренние линии
   светлее, шапка таблицы #f8f6fb с фиолетовым текстом, без серой «зебры». */
/* старая главная EN/KA (tables.css) */
.nice-table{border:1px solid rgba(75,50,107,.16);border-radius:10px;box-shadow:none}
.nice-table thead th{background:#f8f6fb;color:#4B326B;border-bottom-color:rgba(75,50,107,.16)}
.nice-table td,.nice-table th[scope="row"]{border-bottom-color:rgba(75,50,107,.1)}
.nice-table thead th+th,.nice-table td+td{border-left-color:rgba(75,50,107,.1)}
/* (0,2,3): общая «зебра» tables.css - table tbody>tr:nth-child(odd)>td, (0,1,4) */
.nice-table tbody > tr:nth-child(n) > td,.nice-table tbody > tr:nth-child(n) > th{background-color:transparent}
@media (max-width:640px){
	.nice-table tr{border-color:rgba(75,50,107,.16);border-radius:10px;box-shadow:none}
	.nice-table th[scope="row"]{background:#f8f6fb;border-bottom-color:rgba(75,50,107,.1)}
	/* подпись карточки была зашита по-русски на всех языках */
	body[data-language="en"] .nice-table th[scope="row"]::before{content:"Strategy"}
	body[data-language="ka"] .nice-table th[scope="row"]::before{content:"სტრატეგია"}
}
/* How to use и старая главная: таблицы показателей (.coloredTables) */
.coloredTables .tableWrapper{border:1px solid rgba(75,50,107,.16);border-radius:10px;overflow-x:auto;margin-bottom:24px}
.coloredTables table td{padding:10px 12px}
.coloredTables table tr:first-child > td{background:#f8f6fb;color:#4B326B;font-size:13px;line-height:1.35;border-bottom:1px solid rgba(75,50,107,.16)}
.coloredTables table tr > td:first-child{padding-left:16px;text-align:left}
.coloredTables table td.bordered,
.coloredTables table tr td.bordered:last-of-type,
.coloredTables table tr:last-of-type td.bordered{border:0;border-left:1px solid rgba(75,50,107,.1)}
.coloredTables table tr + tr > td{border-top:1px solid rgba(75,50,107,.1)}
.coloredTables table tr:nth-child(2) > td{border-top:0}
/* смысл цветов прежний (доходность, просадка, Шарп, лучший и худший год), тон мягче */
.coloredTables table td.bordered.colored1{background:#e9f5ef}
.coloredTables table td.bordered.colored2{background:#fdecee}
.coloredTables table td.bordered.colored3{background:#f1edf7}
.coloredTables table td.bordered.colored4{background:#fff6dc}
@media (max-width:992px){
	.coloredTables .tableWrapper{border:0;border-radius:0;overflow:visible}
	.coloredTables table tr > td:first-child{padding:16px 0 8px}
	/* сетка показателя - тоже карточка со скруглёнными углами */
	.coloredTables table tr td.bordered:nth-child(2){border-top-left-radius:10px}
	.coloredTables table tr td.bordered:nth-child(3){border-top-right-radius:10px}
	.coloredTables table tr td.bordered:nth-last-child(2){border-bottom-left-radius:10px}
	.coloredTables table tr td.bordered:last-child{border-bottom-right-radius:10px}
	.coloredTables table tr:first-child > td{background:none;border-bottom:0}
	.coloredTables table tr + tr > td{border-top:0}
	.coloredTables table tr td.bordered,
	.coloredTables table tr:last-of-type td.bordered,
	.coloredTables table tr td.bordered:last-of-type,
	.coloredTables table tr:last-of-type td.bordered:last-of-type{border:1px solid rgba(75,50,107,.12)}
}
/* планшет: в сетке 4 колонки - другие угловые ячейки */
@media (min-width:600px) and (max-width:992px){
	.coloredTables table tr td.bordered:nth-child(3){border-top-right-radius:0}
	.coloredTables table tr td.bordered:nth-child(5){border-top-right-radius:10px}
	.coloredTables table tr td.bordered:nth-last-child(2){border-bottom-left-radius:0}
	.coloredTables table tr td.bordered:nth-last-child(4){border-bottom-left-radius:10px}
}
/* исследование: панели уже скруглены 10px - линии и цвет шапки как у остальных
   таблиц; подложку шапке не даём: таблица стоит в панели с полями, и полоса
   обрывалась бы, не доходя до рамки */
.avsResearch .panel.scroll{border-color:rgba(75,50,107,.16)}
.avsResearch .panel.scroll table th,
.avsResearch .panel.scroll table td{border-color:rgba(75,50,107,.1)}
.avsResearch .panel.scroll table thead th{color:#4B326B}
/* таблицы в тексте записей и документах трек-рекорда (.avs-doc) */
.postSingle .content table,
.avs-doc table{display:block;max-width:100%;overflow-x:auto;border-collapse:separate;border-spacing:0;border:1px solid rgba(75,50,107,.16);border-radius:10px;margin:0 0 20px;font-size:15px;font-variant-numeric:tabular-nums}
:is(.postSingle .content,.avs-doc) table :is(td,th){padding:9px 12px;border:0;border-bottom:1px solid rgba(75,50,107,.1);background:transparent;vertical-align:top}
:is(.postSingle .content,.avs-doc) table tr:last-child > :is(td,th){border-bottom:0}
:is(.postSingle .content,.avs-doc) table :is(td,th) + :is(td,th){border-left:1px solid rgba(75,50,107,.1)}
:is(.postSingle .content,.avs-doc) table :is(thead th,tr:first-child th){background:#f8f6fb;color:#4B326B;font-weight:700;text-align:left}

/* ---- P67. Исследование (/ru/): текст колонкой по центру страницы, а не у
   левого края (замечание владельца 13.10.2026 «текст на половину
   страницы»). Графики и подписи к ним - на всю ширину; текст, строки
   разделов-аккордеонов и сноски - в одной колонке 860px с общей левой осью,
   как на остальных страницах (P25)
   (первый экран - P68). Все текстовые блоки исследования размечены .col,
   в том числе строка раздела (summary > .col.sum-in) - она отставала у
   левого края, пока правило касалось только абзацев. На всех ширинах, а
   не только от 993px: на 601-992px колонка 640px стояла у левого края, а
   карточки и графики шли на всю ширину (P80, home-ru-1-1). Карточки-цифры
   (.facts.col) - на всю ширину, P68 ---- */
.avsResearch .col:not(.facts){max-width:860px;margin-inline:auto}

/* ---- P68. Первый экран главной-исследования (замечание владельца 13.10.2026:
   «слишком большой заголовок, первая страница должна заинтересовать»).
   Было: надзаголовок, H1 Georgia 57px в три строки и лид в три строки
   занимали весь экран, а цифры, ради которых страницу читают, стояли ниже
   графика и вводного текста. Стало: компактный H1 шрифтом сайта по центру,
   короткий лид, сразу под ним четыре ключевые цифры карточками, за ними
   график - он начинается на первом экране. Порядок меняется только
   визуально (order во flex), разметка и переводы страницы не трогаются.
   Шрифты и цвета - система сайта: Montserrat в заголовках и цифрах, текст
   шрифтом сайта, фон фирменный светлый вместо серо-синего (P54, вариант 1).
   Графики research.js берут шрифт из --sans, поэтому они тоже на Inter
   (P52) - шаг подписей оси счетов подстроен под его ширину. ---- */
.avsResearch{--ink:#2e2938;--muted:#5f586b;--bg:#F8F6FB;font-family:"Inter",Helvetica,Arial,sans-serif}
.avsResearch .wrap{display:flex;flex-direction:column}
.avsResearch .wrap > header.hero{order:-2}
.avsResearch .wrap > .facts{order:-1}
.avsResearch header.hero{text-align:center;padding:32px 0 0}
/* без висячего слова в последней строке заголовка и лида */
.avsResearch :is(.kicker,h1,.dek){text-wrap:balance}
.avsResearch .hero > *{margin-inline:auto}
.avsResearch .kicker{font:600 12px/1.4 'Montserrat',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#4B326B;margin:0 auto 14px}
.avsResearch h1{font-family:'Montserrat',sans-serif;font-weight:700;font-size:clamp(26px,2.5vw,36px);line-height:1.2;letter-spacing:-.01em;color:var(--avs-head);text-align:center;max-width:900px;width:auto;margin:0 auto 14px}
/* лид 16px (владелец 13.10.2026: «чуть уменьши»): на десктопе в две строки, а не в три */
.avsResearch .dek{font-size:16px;line-height:1.6;color:var(--avs-muted);max-width:720px;width:auto;margin:0 auto}
.avsResearch h2,.avsResearch .sum-t{font-family:'Montserrat',sans-serif;font-weight:700;letter-spacing:-.005em}
.avsResearch .sum-t{font-size:20px}
.avsResearch .facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:none;width:100%;margin:20px 0 16px}
.avsResearch .wrap > .facts + figure,.avsResearch .wrap > figure:first-of-type{margin-top:0}
.avsResearch .fact{background:#fff;border:1px solid rgba(75,50,107,.16);border-radius:10px;padding:14px 16px;text-align:left}
.avsResearch .fact .n{font-family:'Montserrat',sans-serif;font-weight:700;font-size:clamp(20px,1.9vw,28px);line-height:1.15;color:#4B326B;text-wrap:balance}
.avsResearch .fact .l{font-size:14px;line-height:1.45;color:var(--avs-muted);margin-top:6px}
@media (max-width:992px){
	.avsResearch .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
	.avsResearch header.hero{text-align:left;padding-top:24px}
	.avsResearch .hero > *{margin-inline:0}
	.avsResearch .kicker{font-size:11px;letter-spacing:.06em;margin-bottom:10px}
	.avsResearch h1{font-size:22px;line-height:1.25;text-align:left;margin-bottom:10px}
	.avsResearch .dek{font-size:15px;line-height:1.5}
	.avsResearch .facts{gap:8px;margin:16px 0 12px}
	.avsResearch .fact{padding:12px}
	/* цифра в одну строку и в узкой карточке («от +63 до +82%»), подпись не мельче подписи графика */
	.avsResearch .fact .n{font-size:clamp(16px,4.6vw,19px);letter-spacing:-.01em;white-space:normal}
	.avsResearch .fact .l{font-size:13px;line-height:1.4;margin-top:6px}
}

/* ---- P71. Тонированный центр на всех страницах, как на главной (замечание
   владельца 13.10.2026). Шапка и футер белые, контентная зона - фирменный
   светлый #F8F6FB. Отступ до футера перенесён внутрь зоны (padding вместо
   margin футера), иначе между тоном и футером оставалась белая полоса.
   Подсветки, которые были тем же #f8f6fb (наведение на карточку, цветные
   блоки, «4 гипотезы», пагинация), на тоне стали бы невидимы - они белые. ---- */
.mainPageContentWrapper{background:#F8F6FB;padding-bottom:60px}
.page-template-research-home .mainPageContentWrapper{padding-bottom:0}
.footer{background:#fff;margin-top:0}
.coloredBackground,.coloredBlockquote{background:#fff;border-color:rgba(75,50,107,.16)}
.blockWithCards .cardItem{background:#fff}
/* текущая страница - фиолетовая из P27 (белый фон отсюда делал её пустой: белая цифра на белом) */
.postListPagination a,.postListPagination span:not(.dots):not(.current){background:#fff}
.coloredTables .tableWrapper,.nice-table{background:#fff}

/* ---- P04. Лента - сетка карточек (переделано 13.10.2026 по замечанию
   владельца «выглядит так себе»: заголовки капсом кричали, при наведении
   карточка становилась широкой белой плитой, края текста и заголовков не
   совпадали). Белая карточка с тонкой рамкой на тонированном фоне, дата над
   заголовком, заголовок обычным регистром, отрывок не длиннее трёх строк,
   «Читать далее» прижата к низу - карточки ряда одной высоты. Кликабельна
   вся карточка (растянутая ссылка заголовка); при наведении карточка чуть
   приподнимается, заголовок - фирменного цвета. На десктопе две колонки. ---- */
.postList{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin:0}
@media (min-width:993px){.postList{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
.postCard,.postCard:first-child,.postCard:last-child{position:relative;display:flex;flex-direction:column;margin:0;padding:22px 24px 20px;background:#fff;border:1px solid rgba(75,50,107,.12);border-radius:10px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.postCardMeta{order:-1;margin:0 0 8px;font-size:13px;line-height:1.3;color:var(--avs-faint);opacity:1}
.postCardTitle{margin:0 0 10px;font-size:19px;line-height:1.35;text-transform:none;letter-spacing:0}
.postCardTitle a{color:var(--avs-head);text-decoration:none;transition:color .2s ease}
.postCardTitle a::after{content:'';position:absolute;inset:0;z-index:1}
.postCardExcerpt{max-width:none;margin:0 0 14px;font-size:15px;line-height:1.6;color:var(--avs-muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.postCardMore{margin:auto 0 0}
.postCardMore a{color:#4B326B;font-size:14px;font-weight:600;line-height:1.4;text-decoration:none}
.postCardArrow{display:inline-block;transition:transform .2s ease}
.postCard:focus-within{border-color:#4B326B}
@media (hover:hover){
	.postCard:hover{border-color:rgba(75,50,107,.32);box-shadow:0 10px 24px rgba(43,28,64,.08);transform:translateY(-2px)}
	.postCard:hover .postCardTitle a{color:#4B326B}
	.postCard:hover .postCardArrow{transform:translateX(4px)}
}
@media (prefers-reduced-motion:reduce){.postCard,.postCardArrow{transition:none}.postCard:hover{transform:none}}
@media (max-width:768px){
	.postCard,.postCard:first-child,.postCard:last-child{padding:18px 16px 16px}
	.postCardTitle{font-size:17px}
	.postCardExcerpt{font-size:15px;line-height:1.55}
}
/* заголовок записи - тоже обычным регистром: это длинные фразы, капсом они
   занимали до пяти строк (P53); короткие H1 разделов остаются капсом */
.single-post .postSingle .pageTitle{text-transform:none;font-size:28px;line-height:1.3}
@media (max-width:768px){.single-post .postSingle .pageTitle{font-size:22px}}

/* ---- P69. Переключатель темы: дневная, ночная, автоматически - та же
   «таблетка», что у языков. Иконка на кнопке - выбранный режим (атрибут
   data-theme-pref ставит avs-theme-head.js до отрисовки). ---- */
.themeSwitcher{position:relative}
.themeSwitcher .current-theme{display:flex;align-items:center;gap:6px;height:36px;margin:0;padding:0 10px;border:1px solid #e5e5e5;border-radius:6px;background:#fff;color:#4B326B;font:inherit;cursor:pointer}
.themeSwitcher .ti{display:none;width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.themeSwitcher .ti-auto .fill{fill:currentColor;stroke:none}
html[data-theme-pref="light"] .current-theme .ti-light,
html[data-theme-pref="dark"] .current-theme .ti-dark,
html[data-theme-pref="auto"] .current-theme .ti-auto,
html:not([data-theme-pref]) .current-theme .ti-auto{display:block}
.themeSwitcher .arrow{font-size:10px;line-height:1;transition:transform .2s ease}
.themeSwitcher .theme-list{display:none;position:absolute;right:0;top:100%;z-index:30;min-width:180px;margin:0;padding:6px;list-style:none;background:#fff;border:1px solid #4B326B;border-radius:8px 0 8px 8px;box-shadow:0 12px 24px rgba(43,28,64,.12)}
.themeSwitcher.is-open .theme-list{display:block}
.themeSwitcher.is-open .current-theme{border-color:#4B326B;border-bottom-left-radius:0;border-bottom-right-radius:0}
.themeSwitcher.is-open .arrow{transform:rotate(180deg)}
.themeSwitcher .theme-list li{margin:0;padding:0}
.themeSwitcher .theme-list button{display:flex;align-items:center;gap:10px;width:100%;margin:0;padding:9px 10px;border:0;border-radius:6px;background:none;color:var(--avs-ink);font:500 14px/1.2 'Montserrat',sans-serif;text-align:left;cursor:pointer}
.themeSwitcher .theme-list .ti{display:block;color:#4B326B}
.themeSwitcher .theme-list button:hover{background:#f8f6fb}
.themeSwitcher .theme-list button[aria-pressed="true"]{background:#f8f6fb;color:#4B326B;font-weight:700}
.themeSwitcher .theme-list button:focus-visible{outline-offset:-2px}
@media (max-width:992px){.themeSwitcher .current-theme{min-height:44px;padding:0 12px}.themeSwitcher .theme-list button{min-height:44px}}

/* ---- P70. Ночная тема (владелец 13.10.2026). Включается переключателем в
   шапке или автоматически от заката до рассвета (avs-theme-head.js ставит
   html[data-theme="dark"] до отрисовки). Тот же фирменный фиолетовый, но
   для тёмного фона: текст и линии - светлая лаванда, кнопки - фиолетовый
   светлее #4B326B, чтобы читался белый текст. Шапка и футер чуть светлее
   контентной зоны - как белые шапка и футер над тонированным центром днём. ---- */
html[data-theme="dark"]{
	--d-bg:#121017;--d-surface:#1b1722;--d-raise:#221d2b;--d-soft:#2a2434;
	--d-text:#e8e4ef;--d-muted:#a9a1b6;--d-accent:#c4b0ec;--d-btn:#6a4b98;--d-btn-hover:#7b5bad;
	--d-line:rgba(255,255,255,.12);--d-line-soft:rgba(255,255,255,.07);
	/* мягкая палитра P73 ночью - светлая: без этого текст записей
	   (.postSingle .content{color:var(--avs-ink)}) шёл #2e2938 на #121017 */
	--avs-ink:var(--d-text);--avs-head:var(--d-text);--avs-muted:var(--d-muted);--avs-faint:#8f879c;
}
html[data-theme="dark"],html[data-theme="dark"] body{background:var(--d-bg);color:var(--d-text)}
html[data-theme="dark"] ::selection{background:rgba(196,176,236,.35)}
html[data-theme="dark"] :is(h1,h2,h3,h4,h5,.pageTitle){color:var(--d-text)}
html[data-theme="dark"] .pageTitle span{color:var(--d-accent)}
/* фирменные выделения в тексте страниц («О нас»: имена и регалии) - #4B326B на ночном фоне давал 1,8:1 */
html[data-theme="dark"] :is(.coloredText,.coloredText :is(strong,b)){color:var(--d-accent)}
html[data-theme="dark"] :is(p,li,td,th,label,blockquote){color:inherit}
html[data-theme="dark"] .content a:not(.nButton):not(.zoomLink),html[data-theme="dark"] .notFoundLink{color:var(--d-accent)}
html[data-theme="dark"] .mainPageContentWrapper{background:var(--d-bg)}
html[data-theme="dark"] .breadcrumbs,html[data-theme="dark"] .breadcrumbs a{color:var(--d-muted)}
html[data-theme="dark"] .breadcrumbs a:hover{color:var(--d-accent)}
/* шапка и меню */
html[data-theme="dark"] .header{background:var(--d-surface);color:var(--d-accent)}
html[data-theme="dark"] .mobileMenuIsOpened .header,html[data-theme="dark"] .header.fixedHeader{border-bottom-color:var(--d-line)}
html[data-theme="dark"] .topMenu a{color:var(--d-text);fill:var(--d-text)}
html[data-theme="dark"] .topMenu > ul > li > a:after{background-color:var(--d-accent)}
html[data-theme="dark"] .topMenu > ul > li.menu-item-has-children > .sub-menu a{color:var(--d-muted);fill:var(--d-muted)}
html[data-theme="dark"] .topMenu > ul > li.menu-item-has-children > .sub-menu a:hover,
html[data-theme="dark"] .topMenu > ul > li.menu-item-has-children > .sub-menu .current-menu-item > a{color:var(--d-accent)}
html[data-theme="dark"] .topMenu > ul > li.menu-item-has-children > .sub-menu a:after{background:var(--d-accent)}
html[data-theme="dark"] .header .logo img,html[data-theme="dark"] .footerLogo img{filter:invert(1) hue-rotate(180deg) brightness(1.15) saturate(.8)}
html[data-theme="dark"] .hamburger .hamburger-inner,html[data-theme="dark"] .hamburger .hamburger-inner::before,html[data-theme="dark"] .hamburger .hamburger-inner::after,
html[data-theme="dark"] .hamburger.is-active .hamburger-inner,html[data-theme="dark"] .hamburger.is-active .hamburger-inner::before,html[data-theme="dark"] .hamburger.is-active .hamburger-inner::after{background-color:var(--d-accent)}
html[data-theme="dark"] :is(.langSwitcher,.themeSwitcher) .arrow{color:var(--d-accent)}
html[data-theme="dark"] .avsResearch .seg button[aria-pressed="true"]{background:var(--d-btn);color:#fff}
html[data-theme="dark"] .avsResearch .chip[aria-pressed="true"]{border-color:var(--d-accent);background:var(--d-soft);color:var(--d-text)}
html[data-theme="dark"] .mobileMenu{background:var(--d-surface)}
html[data-theme="dark"] .mobileMenuWrapper.slinky-menu li{border-color:var(--d-line)}
html[data-theme="dark"] .mobileMenuWrapper.slinky-menu li a{color:var(--d-text)}
/* подпункт отмечен своей полосой у ссылки (P02) - без подложки и второй полосы у края, как днём */
html[data-theme="dark"] .mobileMenuWrapper.slinky-menu li:not(.mobileSubItem):is(.current-menu-item,.current-menu-ancestor){background:var(--d-soft);box-shadow:inset 3px 0 0 var(--d-accent)}
html[data-theme="dark"] .mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem a{border-left-color:var(--d-line);color:var(--d-muted)}
html[data-theme="dark"] .mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem:is(.current-menu-item,.current-menu-ancestor) a{border-left-color:var(--d-accent);color:var(--d-accent)}
html[data-theme="dark"] .mobileMenu .mobileMenuWrapper.slinky-menu li.mobileSubItem.is-last{border-bottom-color:var(--d-line)}
/* переключатели языка и темы */
html[data-theme="dark"] :is(.langSwitcher .current-lang,.themeSwitcher .current-theme){background:var(--d-raise);border-color:var(--d-line);color:var(--d-accent)}
html[data-theme="dark"] :is(.langSwitcher .lang-list,.themeSwitcher .theme-list){background:var(--d-raise);border-color:var(--d-accent);box-shadow:0 12px 24px rgba(0,0,0,.45)}
html[data-theme="dark"] :is(.langSwitcher.is-open .current-lang,.themeSwitcher.is-open .current-theme){border-color:var(--d-accent)}
@media (hover:hover){html[data-theme="dark"] .langSwitcher:hover .current-lang{border-color:var(--d-accent)}}
html[data-theme="dark"] .langSwitcher .lang-list a{background:transparent}
html[data-theme="dark"] .themeSwitcher .theme-list button{color:var(--d-text)}
html[data-theme="dark"] .themeSwitcher .theme-list .ti{color:var(--d-accent)}
html[data-theme="dark"] .themeSwitcher .theme-list button:hover,
html[data-theme="dark"] .themeSwitcher .theme-list button[aria-pressed="true"]{background:var(--d-soft);color:var(--d-accent)}
/* кнопки и поля */
html[data-theme="dark"] :is(.nButton,.avs-btn,.avq2-btn,.wpcf7-submit){background:var(--d-btn) !important;border-color:var(--d-btn) !important;color:#fff !important}
html[data-theme="dark"] :is(.nButton,.avs-btn,.avq2-btn,.wpcf7-submit):hover{background:var(--d-btn-hover) !important;border-color:var(--d-btn-hover) !important}
html[data-theme="dark"] :is(.footerAuthInput,.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),input[type=text],input[type=email],input[type=password],input[type=number],select,textarea){background:var(--d-raise);border-color:rgba(255,255,255,.22);color:var(--d-text)}
html[data-theme="dark"] :is(.footerAuthInput,.avs-auth input)::placeholder{color:#8f879c}
/* наведение и фокус - тем же списком, что рамка выше: иначе (0,6,2) рамки перебивал :focus, и фокус ночью был не виден */
html[data-theme="dark"] :is(.footerAuthInput,.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),input[type=text],input[type=email],input[type=password],input[type=number],select,textarea):hover{border-color:rgba(196,176,236,.55)}
html[data-theme="dark"] :is(.footerAuthInput,.avs-auth input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),input[type=text],input[type=email],input[type=password],input[type=number],select,textarea):focus{border-color:var(--d-accent);box-shadow:0 0 0 3px rgba(196,176,236,.25)}
html[data-theme="dark"] body *:focus-visible{outline-color:var(--d-accent) !important}
/* лента, записи, пагинация */
html[data-theme="dark"] .postCard{background:var(--d-surface);border-color:var(--d-line)}
/* заголовок карточки светлый, акцент - при наведении: общее правило ссылок
   .content a:not(.nButton):not(.zoomLink) (0,4,2) красило его акцентом, как «Читать далее» */
html[data-theme="dark"] .content .postCard .postCardTitle a:not(.nButton){color:var(--d-text)}
html[data-theme="dark"] .postCardMeta{color:var(--d-muted)}
html[data-theme="dark"] .postCardExcerpt{color:#c9c2d4}
html[data-theme="dark"] .postCardMore a{color:var(--d-accent)}
html[data-theme="dark"] .postCard:focus-within{border-color:var(--d-accent)}
@media (hover:hover){
	html[data-theme="dark"] .postCard:hover{border-color:rgba(196,176,236,.4);box-shadow:0 10px 24px rgba(0,0,0,.4)}
	html[data-theme="dark"] .content .postCard:hover .postCardTitle a:not(.nButton){color:var(--d-accent)}
}
/* текущий номер исключён через :where: с :not(.current) внутри :is правило вырастало
   до (0,4,2), и ночное наведение ниже (0,3,2) не срабатывало (lists-1-2) */
html[data-theme="dark"] .postListPagination :is(a,span:not(.dots)):where(:not(.current)){background:var(--d-surface);border-color:var(--d-line);color:var(--d-text)}
html[data-theme="dark"] .postListPagination a:hover{border-color:var(--d-accent);background:var(--d-raise)}
html[data-theme="dark"] .postListPagination .current{background:var(--d-btn);border-color:var(--d-btn);color:#fff}
html[data-theme="dark"] .postSingleBack a{color:var(--d-accent)}
html[data-theme="dark"] .postSingle .content img,html[data-theme="dark"] .postSingleImage img{border-color:var(--d-line)}
/* текстовые блоки страниц */
html[data-theme="dark"] :is(.coloredBackground,.coloredBlockquote){background:var(--d-surface);border-color:var(--d-line);color:var(--d-text)}
html[data-theme="dark"] .coloredBlockquote{border-left-color:var(--d-accent)}
html[data-theme="dark"] .borderedText{border-color:var(--d-accent)}
html[data-theme="dark"] .blockWithCards .cardItem{background:var(--d-surface);border-color:var(--d-line)}
html[data-theme="dark"] .blockWithCards .cardItem :is(.title,.subtitle){color:var(--d-accent)}
html[data-theme="dark"] .content ul li::marker{color:var(--d-accent)}
html[data-theme="dark"] .nButton.likeDiv{background:var(--d-soft) !important;border-color:var(--d-soft) !important;color:var(--d-text) !important}
/* таблицы */
html[data-theme="dark"] :is(.nice-table,.coloredTables .tableWrapper){background:var(--d-surface);border-color:var(--d-line)}
html[data-theme="dark"] .nice-table thead th,html[data-theme="dark"] .nice-table th[scope="row"]{background:var(--d-raise);color:var(--d-accent);border-color:var(--d-line)}
html[data-theme="dark"] .nice-table :is(td,th){color:var(--d-text);border-color:var(--d-line-soft)}
html[data-theme="dark"] .coloredTables table tr:first-child > td{background:var(--d-raise);color:var(--d-accent);border-bottom-color:var(--d-line)}
html[data-theme="dark"] .coloredTables table td{color:var(--d-text)}
html[data-theme="dark"] .coloredTables table :is(td.bordered,tr + tr > td){border-color:var(--d-line-soft)}
html[data-theme="dark"] .coloredTables table td.bordered.colored1{background:rgba(46,160,103,.2)}
html[data-theme="dark"] .coloredTables table td.bordered.colored2{background:rgba(220,70,90,.2)}
html[data-theme="dark"] .coloredTables table td.bordered.colored3{background:rgba(150,120,210,.22)}
html[data-theme="dark"] .coloredTables table td.bordered.colored4{background:rgba(230,180,40,.18)}
html[data-theme="dark"] :is(.postSingle .content,.avs-doc) table{border-color:var(--d-line)}
html[data-theme="dark"] :is(.postSingle .content,.avs-doc) table :is(td,th){border-color:var(--d-line-soft)}
html[data-theme="dark"] :is(.postSingle .content,.avs-doc) table :is(thead th,tr:first-child th){background:var(--d-raise);color:var(--d-accent)}
/* исследование: свои переменные - их же берут графики research.js */
html[data-theme="dark"] .avsResearch{--bg:var(--d-bg);--surface:var(--d-surface);--ink:var(--d-text);--muted:var(--d-muted);--rule:var(--d-line);--soft:var(--d-soft);--brand:var(--d-accent);--brand-soft:var(--d-soft);--c-EW8:#f1edf7;--c-SP500:#9aa3b2;color:var(--d-text)}
html[data-theme="dark"] .avsResearch :is(h1,h2,.sum-t){color:var(--d-text)}
html[data-theme="dark"] .avsResearch :is(.kicker,.fact .n){color:var(--d-accent)}
html[data-theme="dark"] .avsResearch :is(.dek,.fact .l){color:var(--d-muted)}
html[data-theme="dark"] .avsResearch .fact{background:var(--d-surface);border-color:var(--d-line)}
html[data-theme="dark"] .avsResearch .panel.scroll table thead th{color:var(--d-accent)}
/* футер */
html[data-theme="dark"] .footer{background:var(--d-surface);border-top-color:var(--d-line)}
html[data-theme="dark"] .footer .menu a{color:var(--d-muted)}
html[data-theme="dark"] .footer .menu a:hover{color:var(--d-accent)}
html[data-theme="dark"] .footerContactLink{color:var(--d-accent)}
html[data-theme="dark"] .footerAuthHint{color:var(--d-muted)}
html[data-theme="dark"] :is(.tgIcon a,.socialLinks a){background:var(--d-btn)}
html[data-theme="dark"] .copyrightLine{background:#2b2238;color:var(--d-muted)}
/* кабинет и обсуждение из Telegram */
html[data-theme="dark"] :is(.avs-card,.avs-auth){background:var(--d-surface) !important;border-color:var(--d-line) !important;color:var(--d-text)}
html[data-theme="dark"] .avs-auth :is(h3,h4,label,p,a){color:inherit}
html[data-theme="dark"] .avs-auth .avs-auth-hint a{color:var(--d-accent)}
/* блок Telegram без плашки, как днём: у плашки не было боковых полей, текст прилипал к её краям */
html[data-theme="dark"] .avsTgs{border-color:var(--d-line);color:var(--d-text)}
html[data-theme="dark"] .avsTgs :is(a,.avsTgsTitle){color:var(--d-accent)}
html[data-theme="dark"] .avsTgsChip{background:var(--d-raise);border-color:var(--d-line);color:var(--d-text)}

/* ---- P74. Выделения в тексте исследования (владелец 13.10.2026). Опорные
   слова - полужирный 600 цветом текста: не фиолетовым и без подчёркивания,
   так выглядят ссылки. Главный тезис «Итога» - мягкий маркер во всю высоту
   строки (полоска снизу читалась бы как подчёркивание-ссылка). Разметку
   ставит phase11-home-build.py (EMPHASIS). ---- */
.avsResearch :is(p,li) :is(strong,b){font-weight:600;color:inherit;text-decoration:none}
/* margin-inline гасит поля .2em у каждой строки маркера: текст на оси абзаца, подложка выходит за край */
.avsResearch mark{background:#E2D5F3;color:inherit;padding:.05em .2em;margin-inline:-.2em;border-radius:.2em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.avsResearch mark :is(strong,b){font-weight:inherit}
@media (forced-colors:active){.avsResearch mark{background:Mark;color:MarkText}}
html[data-theme="dark"] .avsResearch :is(p,li) :is(strong,b){color:#f3f0f8}
html[data-theme="dark"] .avsResearch mark{background:rgba(196,176,236,.24)}

/* ---- P48, P45 (от направлений кабинета и текстов страниц). Поля входа во
   всю ширину карточки 460px: плагин ограничивает их 380px, а плашка
   сообщения и Turnstile шире. Длинное слово в H1 правовых страниц
   («КОНФИДЕНЦИАЛЬНОСТИ») на самых узких телефонах шире колонки. ---- */
.avs-card.avs-auth .avs-auth-grid--single{max-width:none}
.avs-card.avs-auth input:not([type=checkbox]):not([type=radio]){max-width:none}
@media (max-width:374px){h1.pageTitle{font-size:20px;overflow-wrap:anywhere}}

/* ---- P76. Шапка страницы - одна на все шаблоны (владелец 13.10.2026 о
   шапке ленты: «а можно так же оформить остальные страницы?»). Крошки, под
   ними H1 у левого края и подзаголовок в одну строку через тонкий
   разделитель; H1 по вертикали посередине подзаголовка, если тот в две
   строки (владелец 13.10.2026), до содержимого 28px (и у правовых страниц,
   которые начинаются с H2 со своим отступом 44px). Длинный H1 переносится сам
   (не шире 60%), а не сжимает подзаголовок. До 992px подзаголовок под H1.
   Разметку даёт avs_page_head() в functions.php. Заменяет P75 - ту же
   шапку, но только у ленты. ---- */
.pageHead{margin:6px 0 28px}
.pageHead .pageTitle{margin:0;text-align:left}
.mainPageContentWrapper .container > .pageHead + .content > :first-child{margin-top:0}
.pageLead{margin:8px 0 0;max-width:760px;color:var(--avs-muted);font-size:18px;line-height:1.5}
@media (min-width:993px){
	.pageHead.hasLead{display:flex;align-items:center;column-gap:28px}
	.pageHead.hasLead .pageTitle{flex:0 1 auto;max-width:60%}
	.pageLead{flex:1 1 0;min-width:0;max-width:none;margin:0;padding-left:28px;border-left:1px solid rgba(75,50,107,.18)}
}
@media (max-width:992px){.pageLead{font-size:16px;line-height:1.55}}
html[data-theme="dark"] .pageLead{color:var(--d-muted);border-left-color:var(--d-line)}

/* ---- P77. Соседние записи сверху и снизу (владелец 13.10.2026: «нужно
   иметь возможность переходить к следующему и предыдущему сверху и снизу
   от записи»). Сверху - короткие ссылки справа в строке крошек (заголовок
   соседа - в подсказке); крошки при этом в одну строку с многоточием -
   полный заголовок стоит сразу под ними в H1. До 768px ссылки - отдельной
   строкой под крошками, предыдущая у левого края, следующая у правого. Снизу -
   две карточки с заголовками в стиле карточек ленты: предыдущая слева,
   следующая справа, на телефоне друг под другом. Разметка - single.php. ---- */
.postTopBar{display:flex;align-items:baseline;gap:6px 24px}
.postTopBar .breadcrumbs{flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.postNavTop{display:flex;gap:20px;font-size:13px;line-height:1.4}
.postNavTop .postNavNext{margin-left:auto}
@media (max-width:768px){
	.postTopBar{flex-wrap:wrap}
	.postTopBar .breadcrumbs{flex-basis:100%;white-space:normal}
	.postNavTop{flex:1 0 100%}
}
.postNavTop a{color:#4B326B;font-weight:600;text-decoration:none;white-space:nowrap}
.postNavTop a:hover{text-decoration:underline}
.postNavBottom{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-top:40px}
@media (min-width:600px){
	.postNavBottom{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
	.postNavBottom .postNavNext{grid-column:2;text-align:right}
}
.postNavCard{display:flex;flex-direction:column;gap:6px;padding:16px 20px;background:#fff;border:1px solid rgba(75,50,107,.12);border-radius:10px;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.postNavCard:focus-visible{border-color:#4B326B}
.postNavLabel{font:600 12px/1.3 'Montserrat',sans-serif;text-transform:uppercase;letter-spacing:.04em;color:var(--avs-faint)}
.postNavTitle{font-size:16px;line-height:1.4;font-weight:600;color:var(--avs-head);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s ease}
@media (hover:hover){
	.postNavCard:hover{border-color:rgba(75,50,107,.32);box-shadow:0 10px 24px rgba(43,28,64,.08);transform:translateY(-2px)}
	.postNavCard:hover .postNavTitle{color:#4B326B}
}
@media (prefers-reduced-motion:reduce){.postNavCard{transition:none}.postNavCard:hover{transform:none}}
.postNavBottom + .postSingleBack{margin-top:24px}
body[data-language="ka"] .postNavLabel{font-family:'Noto Sans Georgian',sans-serif;text-transform:none;letter-spacing:0}
html[data-theme="dark"] .postNavTop a{color:var(--d-accent)}
html[data-theme="dark"] .postNavCard{background:var(--d-surface);border-color:var(--d-line)}
html[data-theme="dark"] .postNavCard:focus-visible{border-color:var(--d-accent)}
html[data-theme="dark"] .postNavLabel{color:var(--d-muted)}
html[data-theme="dark"] .postNavTitle{color:var(--d-text)}
@media (hover:hover){
	html[data-theme="dark"] .postNavCard:hover{border-color:rgba(196,176,236,.4);box-shadow:0 10px 24px rgba(0,0,0,.4)}
	html[data-theme="dark"] .postNavCard:hover .postNavTitle{color:var(--d-accent)}
}

/* ---- P79. Разметка ИИ-редактора в записях (владелец 13.10.2026: «выделит
   блоки, оформит, абзацы и важное в тексте»; avs-translations,
   includes/editor.php). Подзаголовки записи - обычным регистром, как её H1
   (P53): капсом длинные фразы кричат. Лид - первый абзац крупнее и темнее.
   Ключевые фразы - полужирные 600 в цвет заголовков, как выделения главной
   (P74). Вывод - белая карточка с фирменной полосой слева, ночью - на
   поверхности темы. ---- */
.postSingle > .content > :is(h2,h3){text-transform:none;letter-spacing:0}
.postSingle > .content > p.avsLead{font-size:20px;line-height:1.6;color:var(--avs-head);margin-bottom:24px}
.postSingle > .content :is(strong,b){font-weight:600;color:var(--avs-head)}
.postSingle > .content > :is(h2,h3) :is(strong,b){font-weight:inherit}
.postSingle > .content > .avsKey{margin:28px 0 8px;padding:18px 22px;background:#fff;border:1px solid rgba(75,50,107,.16);border-left:4px solid #4B326B;border-radius:10px}
.postSingle > .content > .avsKey > p{margin:0;color:var(--avs-head);font-weight:600}
@media (max-width:768px){
	.postSingle > .content > p.avsLead{font-size:18px;line-height:28px}
	.postSingle > .content > .avsKey{padding:14px 16px}
}
html[data-theme="dark"] .postSingle > .content > .avsKey{background:var(--d-surface);border-color:var(--d-line);border-left-color:var(--d-accent)}

/* ---- P80. Доводка по визуальной проверке 13.10.2026 (находки QA,
   подтверждённые на копии; в комментариях - id находок). Правила, которые
   этим находкам мешали, поправлены на месте, а не перебиты здесь:
   P73 --avs-faint (track-1-8); P01 «палочка» раздела (header-1-3);
   P13 строки списка языков (header-2-6); P05, P09 и P70 фокус и наведение
   полей входа (cabinet-1-1); P35 футер (header-1-13, home-ru-1-7,
   lists-1-11, theory-4g-1-9, theory-sila-1-4, legal-1-5, legal-1-6,
   cabinet-1-12); P46 имя в био (about-1-3); P47 и P70 рамка карточек
   гипотез (theory-4g-1-1, theory-4g-1-2); P66 минус вплотную к цифрам
   (theory-how-1-7); P67 колонка исследования (home-ru-1-1); P68 цифры
   карточек на телефоне (home-ru-1-5, home-enka-1-16); P02 и P70 отметка
   подпункта раздела у записи, P70 ночное мобильное меню (header-1-4),
   заголовки ленты (lists-1-3), блок Telegram (posts-1-3); P71 и P70
   пагинация (lists-1-1, lists-1-2); P74 маркер (home-ru-1-4,
   home-enka-1-4). ---- */

/* шапка: «палочка» пункта - по ширине подписи, как у подпунктов: у текущего
   пункта и пункта под мышью черты не сливаются (header-1-3, header-2-4);
   поля ссылки 20px, до 1140px - 10px, как в styles.css */
.topMenu > ul > li > a{--avs-np:20px}
@media (max-width:1140px){.topMenu > ul > li > a{--avs-np:10px}}
.topMenu > ul > li:is(:hover,.current-menu-item,.current-menu-parent,.current-menu-ancestor) > a:after{inset-inline-start:var(--avs-np);width:calc(100% - 2 * var(--avs-np))}
/* KA: пункты меню не мельче своих подпунктов 13px (home-enka-1-12) */
body[data-language="ka"] .topMenu > ul > li > a{font-size:13px}
@media (min-width:1200px){body[data-language="ka"] .topMenu > ul > li > a{font-size:14px}}
/* мобильное меню: подпись открытого раздела посередине своей полосы (header-1-5) */
@media screen and (max-width:992px){.mobileMenu .mobileMenuWrapper.slinky-menu li.menu-item-has-children:is(.current-menu-ancestor,.current-menu-parent) > a{padding-top:14px;padding-bottom:14px}}

/* переключатели языка и темы - одна система: стрелки 10px с зазором 6px
   (header-1-8, header-2-5, home-enka-2-6, lists-2-12); флаги списка ровно
   под флагом кнопки, строки 36px, на телефоне 44px (header-2-6); у флага
   тонкий контур - белый грузинский не сливается с таблеткой (header-2-9);
   между таблетками и бургером только gap, без старого margin-left 18px
   (header-2-8) */
.langSwitcher .current-lang .arrow{font-size:10px;margin-left:6px}
.langSwitcher .lang-list li a{justify-content:flex-start;box-sizing:border-box;min-height:36px;padding:0 10px}
@media (max-width:992px){.langSwitcher .lang-list li a{min-height:44px;padding:0 12px}}
.langSwitcher img{border-radius:2px;box-shadow:0 0 0 1px rgba(43,28,64,.18)}
html[data-theme="dark"] .langSwitcher img{box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.header .topContactsAndButton > :is(.langSwitcher,.menuTrigger){margin-left:0}
@media (max-width:992px){.header .topContactsAndButton{gap:12px}}

/* без висячего слова в последней строке. Ровными строками: подзаголовок
   страницы и заголовки карточек ленты (header-2-12, lists-1-6, lists-2-11,
   mix-1-13), H2 и H3 текстовых страниц и записей (legal-1-8), подзаголовки
   карточек гипотез (theory-4g-1-4), подписи карточек-цифр главной
   (home-enka-1-10, home-ru-2-7), H1 записи на десктопе (posts-1-12).
   Без одного слова в последней строке: абзацы и пункты списков текста,
   записей и исследования (header-2-12, track-1-5, posts-1-12, legal-2-6,
   home-enka-2-5) */
.pageLead,.postCardTitle,.blockWithCards .cardItem .subtitle,.avsResearch .fact .l,
:is(.postSingle,.page-template-default:not(.home) .container) > .content > :is(h2,h3){text-wrap:balance}
.postSingle .pageTitle,.content :is(p,li),.avsResearch :is(.col p,figcaption,footer){text-wrap:pretty}
@media (min-width:769px){.postSingle .pageTitle{text-wrap:balance}}

/* колонка текста 860px. How to use: итоговая плашка - в колонке, как абзацы
   над и под ней (header-1-14, header-2-10, theory-how-1-3, theory-how-2-3);
   шаги - неразрывные блоки, стрелка держится за свой шаг (span.likeDivStep
   ставит avs-design.js), строки ровные (theory-how-1-4, theory-how-2-4).
   «О нас»: блоки команды и рамка реквизитов в той же колонке, фото 240px у
   правого края колонки - без пустых полос под коротким био (header-2-11,
   about-1-2) */
.page-template-default:not(.home) .container > .content > .nButton.likeDiv{display:block;max-width:860px;margin-inline:auto;box-sizing:border-box}
.nButton.likeDiv{text-wrap:balance}
.nButton.likeDiv .likeDivStep{display:inline-block}
.page-template-default:not(.home) .container > .content:is(.imageOnRight,.borderedText){max-width:860px;margin-inline:auto;box-sizing:border-box}
@media (min-width:769px){
	.imageOnRightWrapper .text{flex:1 1 0;width:auto;min-width:0}
	.imageOnRightWrapper .image{flex:0 0 240px;width:240px;align-self:flex-start}
}
/* «О нас»: реквизиты с шагом строки рамки 25,6px, а не 32px от p темы
   (about-1-7); на телефоне био с тем же шагом 26px, что остальной текст
   (about-1-9); на KA имя - Noto Sans Georgian: в Montserrat нет грузинских
   букв (about-1-3) */
.borderedText p{line-height:inherit}
@media (max-width:768px){.imageOnRightWrapper .text p{line-height:26px}}
body[data-language="ka"] .imageOnRightWrapper .text > p:first-child span:first-child > strong:first-child{font-family:'Noto Sans Georgian',sans-serif}

/* How to use на телефоне и планшете: под сетками показателей нет подложки
   таблицы, бесцветные сетки - белые карточки (ночью - на поверхности темы),
   подпись «На интервале...» без ночной полосы (theory-how-1-1,
   theory-how-2-1, theory-how-2-8) */
@media (max-width:992px){
	.coloredTables .tableWrapper,
	html[data-theme="dark"] .coloredTables .tableWrapper{background:transparent}
	html[data-theme="dark"] .coloredTables table tr:first-child > td{background:none;border-bottom:0}
	.coloredTables table tr td.bordered{background:#fff}
	html[data-theme="dark"] .coloredTables table tr td.bordered{background:var(--d-surface)}
}
/* блок таблиц: H3 ближе к своей таблице, пояснение - сразу под таблицей
   (theory-how-1-5, theory-how-2-6); подписи показателей с нормальным
   межстрочным там, где они переносятся (theory-how-2-15) */
.page-template-default:not(.home) .container > .content > .content.coloredTables{margin-bottom:24px}
.page-template-default:not(.home) .container > .content > .content.coloredTables > h3{margin:32px 0 10px}
@media (max-width:992px){.coloredTables table tr:first-child > td:first-child{padding-top:0}}
@media (max-width:1170px){.coloredTables table tr > td:first-child{line-height:1.45}}
/* врезка «Важно понимать»: прямая акцентная полоса, как ночью; после врезки
   отступ как у абзаца (theory-how-1-2, theory-how-2-7) */
.coloredBlockquote{border-left-color:#4B326B;border-radius:0 10px 10px 0;margin-bottom:18px}
@media (max-width:768px){.coloredBlockquote{margin-bottom:16px}}
/* карточки гипотез на телефоне: поля 20/18px, колонка текста шире (theory-4g-1-1) */
@media (max-width:768px){.blockWithCards .cardItem{padding:20px 18px}}

/* главная-исследование. H2 меньше H1 на всех ширинах (home-ru-1-2,
   home-ru-2-1); KA: цифра карточки в одну строку (home-enka-1-5) и
   надзаголовок без разрядки, рассчитанной на латинский капс
   (home-enka-2-8) */
.avsResearch h2{font-size:clamp(22px,1.9vw,28px)}
@media (max-width:600px){.avsResearch h2{font-size:20px;line-height:1.25}}
@media (min-width:601px){body[data-language="ka"] .avsResearch .fact .n{font-size:clamp(19px,1.9vw,24px)}}
body[data-language="ka"] .avsResearch .kicker{letter-spacing:0}
/* линии в фиолетовом тоне, как рамки карточек и таблиц, ночью - свои из
   P70 (home-ru-1-11, home-ru-2-2, home-enka-1-6); кнопки графиков шрифтом
   кнопок сайта (home-ru-1-10, home-ru-2-15); выключенные фишки легенды
   заметно тише включённых (home-enka-1-11) */
.avsResearch{--rule:#E2DEE7;--soft:#EFEBF5}
.avsResearch :is(.seg button,.chip){font-family:'Montserrat',sans-serif;font-weight:500;font-size:12.5px}
.avsResearch .chip[aria-pressed="false"]:not(:hover){color:var(--avs-faint)}
.avsResearch .chip[aria-pressed="false"] .sw{opacity:.4}
/* заголовки панелей плотнее и ровными строками (home-ru-1-13, home-ru-2-9,
   home-enka-2-4); подпись под графиком не длиннее ~100 знаков
   (home-ru-1-16, home-enka-1-9) */
.avsResearch .panel-title{line-height:1.35;text-wrap:balance}
.avsResearch figure > figcaption{max-width:760px}
/* интервалы: от главного графика до первого H2 72px, как «разделы → Итог»
   (home-enka-2-2); на телефоне H2 и вводный абзац ближе, у графиков
   разделов поле 24px (home-ru-2-10, home-enka-1-15) */
.avsResearch .wrap > figure{margin-bottom:16px}
@media (max-width:600px){
	.avsResearch figure{margin-bottom:24px}
	.avsResearch h2,.avsResearch .more-intro{margin-top:40px}
}
/* таблицы: без линии под последней строкой - внизу была двойная с рамкой
   панели (home-ru-2-16); на телефоне шапки в одну строку, таблицы и так
   листаются вбок (home-ru-2-11); у раскрытого последнего раздела линия под
   текстом, а не под заголовком (home-ru-2-4) */
.avsResearch .panel.scroll tbody tr:last-child > *{border-bottom:0}
.avsResearch .scroll table tbody tr:last-child > :first-child::after{border-bottom:0}
@media (max-width:600px){.avsResearch .scroll thead th{white-space:nowrap}}
.avsResearch details.sec:last-child[open] > summary .sum-in{border-bottom:0}
.avsResearch details.sec:last-child[open] > :last-child{border-bottom:1px solid var(--rule)}
/* ночь: линии таблиц как у остальных ночных таблиц (home-ru-2-12,
   home-enka-1-3); признак прокрутки широкой таблицы - светлое свечение у
   правого края, тёмная тень на #1b1722 не видна (home-ru-1-15, home-ru-2-3) */
html[data-theme="dark"] .avsResearch .panel.scroll{border-color:var(--d-line)}
html[data-theme="dark"] .avsResearch .panel.scroll table :is(td,th){border-color:var(--d-line-soft)}
html[data-theme="dark"] .avsResearch .panel.scroll table thead th{border-bottom-color:var(--d-line)}
html[data-theme="dark"] .avsResearch .scroll{background:linear-gradient(to left,var(--d-surface) 30%,rgba(27,23,34,0)) right center/40px 100% no-repeat local,radial-gradient(farthest-side at 100% 50%,rgba(196,176,236,.28),transparent) right center/12px 100% no-repeat scroll,var(--d-surface)}

/* лента: на телефоне отрывок карточки до 4 строк - запас к обрезке по длине
   в avs_card_excerpt() (lists-1-8, lists-2-4); трэк-рекорд: заголовок
   свежей записи обычным регистром, как на её странице (track-1-1) */
@media (max-width:768px){.postCardExcerpt{-webkit-line-clamp:4;line-clamp:4}}
.trLatestTitle{text-transform:none;letter-spacing:0}

/* обсуждение в Telegram под записью (плагин avs-tg-social): кнопка
   «Написать комментарий» - Montserrat, как все кнопки (posts-1-5,
   posts-2-4); подписи с межстрочным по своему кеглю, а не абзаца 32/26px
   (posts-1-11, posts-2-6); верхняя линия в тон бренда, ночью - P70
   (posts-2-3); ссылка «Открыть пост в Telegram» с зоной нажатия 44px на
   телефоне без сдвига строки (posts-2-10) */
.avsTgsWrite .nButton{font-family:'Montserrat',sans-serif}
.avsTgs :is(.avsTgsNote,.avsTgsEmpty){line-height:1.5}
.avsTgs{border-top-color:rgba(75,50,107,.15)}
@media (max-width:768px){.avsTgsOpen{padding-block:14px;margin-block:-14px}}

/* футер: кнопка «Войти» высотой с поля 44px на всех ширинах (home-enka-1-14,
   cabinet-1-8); нижняя полоса с межстрочным 1.5 - адрес в две строки на
   телефоне не слипается (track-1-7, posts-2-7, legal-1-6) */
.footerAuth .nButton.short{min-height:44px}
.footer .copyrightLine{line-height:1.5}

/* 404: ссылка «Блог →» кеглем ссылок-действий 14px и высотой с кнопку; на
   телефоне обе цели 44px (legal-1-9, legal-2-4) */
.notFoundActions .notFoundLink{display:inline-flex;align-items:center;min-height:37px;font-size:14px;line-height:1.4}
@media (max-width:768px){.notFoundActions :is(.nButton,.notFoundLink){display:inline-flex;align-items:center;min-height:44px;box-sizing:border-box}}

/* калькулятор MIX: запасная ссылка нужна, только пока врезка не прислала
   свою высоту (mix-1-10) */
.mixCalcFrame[style*="height"] ~ .mixCalcFallback{display:none}

/* кабинет: карточка входа - как карточки ленты (cabinet-1-3), на телефоне
   поля 20/16px (cabinet-1-6); заголовок отделён от формы, шаг формы 12px,
   заголовки входа (h4) и восстановления (h3) одного вида (cabinet-1-9,
   cabinet-1-10); «Запомнить меня» кеглем полей, галочка крупнее и в цвет
   бренда (cabinet-1-2); место под Turnstile до загрузки и отступ до кнопки
   (cabinet-1-4); служебный текст 14px вторичным цветом, ссылка с зоной
   нажатия 37px (cabinet-1-5); кнопка высотой с поле, на телефоне во всю
   ширину формы (cabinet-1-8) */
.avs-card.avs-auth{border:1px solid rgba(75,50,107,.12);border-radius:10px;box-shadow:none}
@media (max-width:599px){.avs-card.avs-auth{padding:20px 16px}}
/* до 374px поля 12px, как у плагина: Turnstile не уже 300px и при 16px
   вылезал в правое поле, поля ввода растягивались за ним (cabinet-1-6) */
@media (max-width:374px){.avs-card.avs-auth{padding-inline:12px}}
.avs-card.avs-auth :is(h3,h4){margin:0 0 16px;font-size:18px;line-height:1.25}
.avs-card.avs-auth .avs-auth-grid{margin-top:0}
.avs-card.avs-auth form > p{margin:0 0 12px}
.avs-auth form label{display:flex;width:fit-content;align-items:center;gap:10px;min-height:40px;font-size:15px;line-height:1.4;cursor:pointer}
.avs-auth input[type=checkbox]{width:18px;height:18px;margin:0;flex:none;accent-color:#4B326B;cursor:pointer}
html[data-theme="dark"] .avs-auth input[type=checkbox]{accent-color:var(--d-accent)}
.avs-auth .cf-turnstile{min-height:65px;margin:0 0 12px}
.avs-card.avs-auth .avs-auth-hint{font-size:14px;line-height:1.5;color:var(--avs-muted);opacity:1;margin:12px 0;text-wrap:pretty}
.avs-card.avs-auth form > :last-child{margin-bottom:0}
.avs-auth .avs-auth-hint a{display:inline-block;padding:8px 0}
.avs-auth .avs-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
@media (max-width:599px){.avs-auth .avs-btn{width:100%}}
/* плашки «ошибка» и «готово»: кеглем полей, а не 18px - не крупнее
   заголовка карточки; ночью подложка в тон, иначе светлый текст темы
   на светлой плашке плагина (#ffedea, #e8f6e8) давал 1,1:1 */
.avs-auth-msg{font-size:15px;line-height:1.45}
html[data-theme="dark"] .avs-auth-msg.error{background:rgba(255,120,110,.12);border-color:rgba(255,120,110,.4);color:var(--d-text)}
html[data-theme="dark"] .avs-auth-msg.success{background:rgba(120,210,130,.12);border-color:rgba(120,210,130,.4);color:var(--d-text)}

/* ---- P81. Шапка сжимается при прокрутке (владелец 13.10.2026: «при скролле
   меню уменьшалось вверх, занимая меньше места, чтобы было удобно читать»).
   Класс html.avsCompact ставит avs-design.js, когда страница прокручена
   дальше 80px, и снимает выше 24px: разрыв, чтобы шапка не мигала на
   границе. Шапка ниже (десктоп 100 -> 56px, планшет и телефон 76 -> 56px),
   логотип меньше; строка подпунктов открытого раздела в сжатой шапке
   прячется и появляется при наведении или фокусе - плашкой под шапкой, на
   том же месте по горизонтали. Отступ страницы под шапку прежний: текст не
   прыгает, просто видно больше строк. ---- */
.header,.header .logo,.header .logo img{transition:height .2s ease,padding .2s ease,width .2s ease,border-color .2s ease}
html.avsCompact .header{height:56px;padding-bottom:0}
html.avsCompact .header .logo,html.avsCompact .header .logo img{width:64px}
@media (min-width:993px){
	html.avsCompact .topMenu > ul > li.menu-item-has-children > .sub-menu{top:100%;padding-top:4px;background:#fff;border-radius:0 0 10px 10px;box-shadow:0 14px 28px rgba(43,28,64,.12);transition:opacity .16s ease,transform .16s ease,visibility 0s}
	html.avsCompact .topMenu > ul > li.menu-item-has-children:not(:hover):not(:focus-within):not(.is-open) > .sub-menu{opacity:0;visibility:hidden;transform:translate(var(--avs-sub-x),-4px);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s}
	html[data-theme="dark"].avsCompact .topMenu > ul > li.menu-item-has-children > .sub-menu{background:var(--d-raise);box-shadow:0 14px 28px rgba(0,0,0,.45)}
}
@media screen and (max-width:992px){
	html.avsCompact .mobileMenu{top:56px;height:calc(100vh - 56px);height:calc(100dvh - 56px)}
}
@media (prefers-reduced-motion:reduce){.header,.header .logo,.header .logo img{transition:none}}

/* ---- P82. Лента листается только кнопками «новые записи» и «ранние записи»
   (владелец 13.10.2026: «чтобы блог кнопками вправо-влево листался лишь»),
   без ряда номеров страниц; стрелки клавиатуры ← → - те же кнопки
   (avs-design.js, P82). Кнопка «ранние записи» всегда у правого края,
   даже когда «новых» нет (первая страница). ---- */
.postListPager{display:flex;align-items:center;gap:12px;margin:32px 0 0}
.postListPager a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 20px;border:1px solid rgba(75,50,107,.2);border-radius:10px;background:#fff;color:#4B326B;font:600 14px/1.2 'Montserrat',sans-serif;text-decoration:none;transition:border-color .2s ease,background-color .2s ease}
.postListPager a:hover{border-color:#4B326B;background:#f8f6fb}
.postListPager a:focus-visible{outline:2px solid #4B326B;outline-offset:2px}
.postListPager a[rel="next"]{margin-left:auto}
body[data-language="ka"] .postListPager a{font-family:'Noto Sans Georgian',sans-serif}
@media (max-width:480px){.postListPager a{padding:0 14px;font-size:13px}}
html[data-theme="dark"] .postListPager a{background:var(--d-surface);border-color:var(--d-line);color:var(--d-accent)}
html[data-theme="dark"] .postListPager a:hover{border-color:var(--d-accent);background:var(--d-raise)}

/* ---- #27. Поиск: форма под шапкой страницы, результаты - карточки ленты
   (search.php). Прежняя синяя шапка поиска осталась от старой темы без
   единого правила в стилях. ---- */
.avsSearchForm{display:flex;gap:10px;max-width:640px;margin:0 0 28px}
.avsSearchForm input[type="search"]{flex:1 1 auto;min-width:0;height:44px;padding:0 14px;border:1px solid rgba(75,50,107,.25);border-radius:10px;background:#fff;color:#2e2938;font:400 15px/1.2 'Inter',sans-serif;-webkit-appearance:none;appearance:none}
.avsSearchForm input[type="search"]::placeholder{color:#7a7287}
.avsSearchForm input[type="search"]:focus-visible{outline:2px solid #4B326B;outline-offset:1px}
.avsSearchForm .nButton{min-height:44px;padding:0 22px;border:0;cursor:pointer;font:600 14px/1.2 'Montserrat',sans-serif}
body[data-language="ka"] .avsSearchForm .nButton{font-family:'Noto Sans Georgian',sans-serif}
.avsSrOnly{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:480px){.avsSearchForm{flex-direction:column}.avsSearchForm .nButton{width:100%}}
html[data-theme="dark"] .avsSearchForm input[type="search"]{background:var(--d-surface);border-color:var(--d-line);color:var(--d-text)}
html[data-theme="dark"] .avsSearchForm input[type="search"]::placeholder{color:var(--d-muted)}
html[data-theme="dark"] .avsSearchForm input[type="search"]:focus-visible{outline-color:var(--d-accent)}

/* ---- #27. Карточки страниц оплаты (success, fail, portfolio-paid) ночью:
   tables.css задаёт карточке белый фон, а ночные правила выше красят её
   заголовок и текст в светлый - контраст был 1,3:1. ---- */
html[data-theme="dark"] .avs-result__card{background:var(--d-surface);border-color:var(--d-line);box-shadow:0 20px 60px rgba(0,0,0,.45)}
html[data-theme="dark"] .avs-result__title{color:var(--d-text)}
html[data-theme="dark"] .avs-result__text{color:#c9c2d4}
html[data-theme="dark"] .avs-result__hint{color:var(--d-muted)}
html[data-theme="dark"] :is(.avs-result__icon,.avs-result__btn){background:var(--d-btn);border-color:var(--d-btn);color:#fff;box-shadow:none}
html[data-theme="dark"] .avs-result__btn:hover{background:var(--d-btn-hover);border-color:var(--d-btn-hover)}
/* кнопка внутри .content: общее ночное правило ссылок (.content a, выше) красило её текст в акцентный */
html[data-theme="dark"] .content a.avs-result__btn:not(.nButton):not(.zoomLink){color:#fff}
