/* asiacare.css — наши компоненты поверх Tabler (узел stil/).
   Правило: сюда попадает ТОЛЬКО то, чего нет в Tabler готовым.
   Каждый блок — с комментарием, где используется. */

/* === Общая шапка панели (TABLER_HEAD, все страницы) ===
   Компактная шапка Tabler: кнопка меню, бренд и пользователь находятся в
   одном navbar. Разделы на всех экранах открываются в выдвижной панели
   #ac-mobile-nav, поэтому длинного меню в шапке больше нет.
   Плюс старая правка: Tabler резервирует место слева под полосу
   прокрутки — панели нужен обычный правый scrollbar без отступа. */
html{margin-left:0!important}
.ac-panel-header{padding:0;box-shadow:0 2px 10px rgba(24,36,51,.28)}
.ac-header-container{display:flex;align-items:center;gap:.65rem;min-height:4rem}
.ac-panel-header .navbar-brand{padding:0;margin:0;flex:none}
.ac-logo{display:inline-flex;align-items:center;text-decoration:none!important;
  color:#fff;line-height:1;min-width:0;white-space:nowrap}
.ac-logo:hover{color:#fff;opacity:.96}
.ac-logo-text{display:inline-flex;align-items:center;gap:.45rem;min-width:0}
.ac-logo-name{font-weight:800;font-size:1.2rem;letter-spacing:-.015em;
  font-family:"Segoe UI Semibold","Segoe UI",system-ui,sans-serif}
.ac-logo-badge{display:inline-flex;align-items:center;justify-content:center;
  min-height:1.55rem;padding:0 .55rem;border-radius:.45rem;font-size:.82rem;
  font-weight:800;letter-spacing:.025em;text-transform:lowercase;line-height:1;
  box-shadow:inset 0 -1px 0 rgba(0,0,0,.08)}
.ac-logo-login{justify-content:center;color:#1a2234;margin-bottom:.25rem}
.ac-logo-login .ac-logo-name{font-size:1.55rem;color:#1a2234}
.ac-logo-login .ac-logo-badge{min-height:1.85rem;font-size:.95rem;padding:0 .68rem}
.ac-user-avatar{background:var(--tblr-primary,#206bc4);color:#fff;font-weight:600}
.ac-user-text{line-height:1.2}
.ac-user-menu .dropdown-menu{min-width:15rem}
/* Выдвижная панель меню (#ac-mobile-nav в TABLER_HEAD):
   карточка пользователя наверху, разделы с описаниями и счётчиками,
   переключатель пространств и «Выйти» внизу. */
.ac-mobile-nav{--tblr-offcanvas-width:21rem;background:#182433;color:#d3dce8}
.ac-mobile-nav .offcanvas-header{border-bottom:1px solid rgba(255,255,255,.1)}
.ac-mnav-group>summary{display:flex;align-items:center;gap:.6rem;
  padding:.6rem .65rem;border-radius:.5rem;cursor:pointer;list-style:none;
  font-size:.95rem;color:#d3dce8}
.ac-mnav-group>summary::-webkit-details-marker{display:none}
.ac-mnav-group>summary::after{content:"";margin-left:.35rem;flex:none;
  border:solid currentColor;border-width:0 1.5px 1.5px 0;padding:3px;
  transform:rotate(45deg);transition:transform .15s}
.ac-mnav-group[open]>summary::after{transform:rotate(-135deg)}
.ac-mnav-group>summary .ac-mnav-title{flex:1}
.ac-mnav-group>summary:hover,.ac-mnav-link:hover{
  background:rgba(255,255,255,.06);color:#fff;text-decoration:none}
.ac-mnav-group>summary.active,.ac-mnav-link.active{
  background:rgba(32,107,196,.35);color:#fff;font-weight:600}
.ac-mnav-pages{padding:.15rem 0 .4rem .8rem}
.ac-mnav-link{display:flex;gap:.65rem;align-items:flex-start;
  padding:.5rem .65rem;border-radius:.5rem;color:#d3dce8;font-size:.92rem}
.ac-mnav-link .ti{margin-top:.15rem}
.ac-mnav-name{display:block}
.ac-mnav-desc{display:block;font-size:.78rem;color:#8b98ab}
.ac-mnav-top{font-weight:600}
.ac-mnav-footer{border-top:1px solid rgba(255,255,255,.1);
  padding-top:.75rem;margin-top:.75rem}

/* === Дерево файлов проекта (страница Сервер, JS renderTree) === */
.fsroot{background:var(--tblr-bg-surface,#fff);border:1px solid var(--tblr-border-color,#e6e7e9);
  border-radius:8px;padding:12px 14px;font-size:14px}
.fsline{display:flex;align-items:center;gap:7px;padding:5px 6px;border-radius:6px;line-height:1.3}
.fsdir{cursor:pointer;user-select:none}
.fsdir:hover{background:var(--tblr-active-bg,#f6f8fb)}
.fscaret{width:14px;display:inline-block;text-align:center;color:var(--tblr-secondary,#667382);
  font-size:11px;flex:none}
.fsicon{flex:none;color:var(--tblr-secondary,#667382)}
.fsname{font-family:var(--tblr-font-monospace,SFMono-Regular,Menlo,monospace);font-size:13px}
.fsdir .fsname{font-weight:600}
.fsnote{color:var(--tblr-secondary,#667382);font-size:12px;font-style:italic}
.fsheavy{background:#fff9e6}
.fsheavy .fsnote{color:#ab7607;font-style:normal;font-weight:600}
.fssize{color:var(--tblr-secondary,#667382);font-size:12px;margin-left:auto;padding-left:12px}
.fskids{margin-left:18px}

/* === Дерево каталога (страница Каталог, #kattree) — расширение fs* === */
#kattree .fsline{gap:3px}
#kattree .fsdots{flex:1;border-bottom:1px dotted var(--tblr-border-color,#dadfe5);height:0;margin:0 8px;min-width:16px}
#kattree .fssize{flex:none;width:66px;text-align:right;white-space:nowrap;font-size:12px;margin-left:0;padding-left:0}
#kattree .fsflag{flex:none;width:18px;text-align:center}
#kattree .fsbox{flex:none;width:26px;text-align:center}

/* === Автозапуск: живые списки (классы генерирует JS — не переименовывать) === */
.az-result{text-align:center;font-size:18px;font-weight:700;min-height:26px;margin:4px 0 14px;color:var(--tblr-secondary,#667382)}
.az-sec>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px}
.az-sec>summary::-webkit-details-marker{display:none}
.az-sec>summary::after{content:'\25B8';color:var(--tblr-secondary,#667382);font-size:15px;transition:transform .15s}
.az-sec[open]>summary::after{transform:rotate(90deg)}
.az-item{padding:8px 0;border-bottom:1px solid var(--tblr-border-color-light,#eef0f2);font-family:var(--tblr-font-monospace,monospace);font-size:14px;word-break:break-all}
.az-item:last-child{border-bottom:none}
.az-empty{color:var(--tblr-secondary,#667382);padding:10px 0}
.az-log{background:#1d273b;color:#dce1e7;font-family:var(--tblr-font-monospace,monospace);font-size:12.5px;padding:12px;border-radius:8px;white-space:pre-wrap;max-height:340px;overflow:auto;margin-top:10px}

/* === Баннеры, которыми управляет JS (className переключается кодом) === */
.err-banner{background:#fff4e5;border:1px solid #f5c88a;color:#984f0c;border-radius:8px;padding:12px 16px;margin-bottom:14px}
.ok-banner{background:#e8f6ee;border:1px solid #9fd7b5;color:#1a7f4b;border-radius:8px;padding:12px 16px;margin-bottom:14px}

/* === Блок лога-«консоли» (Временные/Ключевые/Разработчик; JS copyLog/refreshLog) === */
.logbox{background:#1d273b;border-radius:10px;overflow:hidden;margin-top:8px;border:1px solid #2b3a55}
.logbox .logbtns{display:flex;gap:8px;justify-content:flex-end;align-items:center;padding:8px 12px;background:#141c2e;border-bottom:1px solid #2b3a55;margin:0}
.logbox .logcopy,.logbox .logrefresh{appearance:none;-webkit-appearance:none;background:#2b3a55;color:#dce1e7;border:1px solid #3d4f73;border-radius:6px;padding:5px 14px;font-size:12.5px;line-height:1.2;cursor:pointer;font-family:inherit}
.logbox .logcopy:hover,.logbox .logrefresh:hover{background:#3d4f73}
.logbox pre{color:#dce1e7;font-family:var(--tblr-font-monospace,monospace);font-size:12.5px;padding:12px;margin:0;white-space:pre-wrap;max-height:340px;overflow:auto;background:transparent;border:0}

/* === Карточки ключевых скриптов (страница Ключевые; JS toggleKey) === */
.keyhead{cursor:pointer;display:flex;align-items:center;gap:10px}
.keybody{display:none}

/* === Лог выгрузки на Диск (страница Разработчик; классы использует JS updStatus) === */
.updlog{background:#1d273b;color:#dce1e7;font-family:var(--tblr-font-monospace,monospace);font-size:12px;padding:10px;border-radius:8px;white-space:pre-wrap;max-height:220px;overflow:auto;margin:4px 0 0}
.updlog-done{opacity:.55}

/* === Стенд (классы использует JS: stSetState, stRenderChecks, stReport, stVmsg) === */
.st-state{font-size:18px;font-weight:800;padding:14px 18px;border-radius:8px;margin:6px 0 14px}
.st-up{background:#e8f6ee;color:#1a7f4b}
.st-down{background:#eef0f2;color:#667382}
.st-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--tblr-border-color-light,#eef0f2);font-size:15px}
.st-row:last-child{border-bottom:none}
.st-ok{color:#1a7f4b;font-weight:700}
.st-no{color:#d63939;font-weight:700}
.st-url{font-family:var(--tblr-font-monospace,monospace);font-size:14px;background:#1d273b;color:#dce1e7;padding:10px 12px;border-radius:8px;word-break:break-all}
.st-log{background:#1d273b;color:#dce1e7;font-family:var(--tblr-font-monospace,monospace);font-size:12.5px;padding:12px;border-radius:8px;white-space:pre-wrap;max-height:260px;overflow:auto;margin-top:10px}

/* === Карточки базы знаний kb-* (карточка модели, Техподдержка) === */
.kb-list{margin-top:8px}
.kb-card{border:1px solid var(--tblr-border-color,#e6e7e9);border-radius:8px;padding:10px 12px;margin-bottom:8px;background:var(--tblr-bg-surface,#fff)}
.kb-head{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px;font-size:12px}
.kb-head>span{border-radius:6px;padding:2px 8px;background:#eef0f2;color:#495566;font-weight:600}
.kb-head .kb-type{background:#e0ecff;color:#1c4587}
.kb-head .kb-trust.kb-zh{background:#e8f6ee;color:#1a7f4b}
.kb-head .kb-trust.kb-nd{background:#fff4e5;color:#984f0c}
.kb-head .kb-topic{background:#f1e8ff;color:#5b3a9e}
.kb-head .kb-weight{background:#fff9db;color:#8a6d00}
.kb-head .kb-flag{background:#ffe3e3;color:#c92a2a}
.kb-q{margin-bottom:4px}
.kb-details>.kb-summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;list-style:none}
.kb-details>.kb-summary::-webkit-details-marker{display:none}
.kb-summary-title{font-weight:700;font-size:16px}
.kb-summary-hint{color:var(--tblr-secondary,#667382);font-size:12px}
.kb-head .kb-model{margin-left:auto;background:transparent;color:var(--tblr-secondary,#667382);font-weight:600}

/* === FAQ-дерево ТП (страница /biznes/tehpodderzhka/faq) === */
.faq-model-row{cursor:pointer}
.faq-model-row:hover{background:var(--tblr-active-bg,#f6f8fb)}
.faq-topics-card .list-group-item{display:flex;align-items:center;justify-content:space-between;gap:10px}
.faq-topic-name{font-weight:600;text-align:left}
.faq-topic-btn.active{background:var(--tblr-primary-lt,#e8f1fc);color:var(--tblr-primary,#206bc4);border-color:transparent}
.faq-q{font-weight:600;white-space:pre-wrap}
.faq-a{color:var(--tblr-body-color,#1d2733);white-space:pre-wrap}
.faq-tree-layout .faq-topics-card{position:sticky;top:72px}
@media (max-width:991.98px){
  .faq-tree-layout .faq-topics-card{position:static}
}

/* === Карточки отзывов rev-* (отзывы магазина) === */
.rev-card{border:1px solid var(--tblr-border-color,#e6e7e9);border-radius:8px;padding:10px 12px;margin-bottom:8px;background:var(--tblr-bg-surface,#fff)}
.rev-head{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:12px;margin-bottom:6px}
.rev-stars{color:#f59f00;font-size:14px;letter-spacing:1px}
.rev-model{color:var(--tblr-secondary,#667382);font-weight:600}
.rev-media{background:#e0ecff;color:#1c4587;border-radius:6px;padding:2px 8px;font-weight:600}
.rev-ans{background:#e8f6ee;color:#1a7f4b;border-radius:6px;padding:2px 8px;font-weight:600}
.rev-noans{background:#ffe9e9;color:#c92a2a;border-radius:6px;padding:2px 8px;font-weight:600}
.rev-date{margin-left:auto;color:var(--tblr-secondary,#667382)}
.rev-pros{color:#1a7f4b;font-size:13px;margin-top:3px}
.rev-cons{color:#d63939;font-size:13px;margin-top:3px}
.rev-answer{color:var(--tblr-secondary,#667382);font-size:13px;margin-top:5px;padding-left:12px;border-left:2px solid var(--tblr-border-color,#dadfe5)}

/* === Студия картинок и ИИ-чат (общие компоненты 4 страниц) === */
.chip-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chip{cursor:pointer;margin:0}
.chip input{position:absolute;opacity:0}
.chip-inner{display:flex;flex-direction:column;align-items:center;border:2px solid var(--tblr-border-color,#dadfe5);border-radius:10px;padding:8px 14px;font-weight:700;font-size:14px;transition:.15s;min-width:58px}
.chip-inner small{font-weight:400;font-size:11px;color:var(--tblr-secondary,#667382);margin-top:2px}
.chip input:checked + .chip-inner{border-color:#206bc4;background:#eaf1fb;color:#206bc4}
.chip input:checked + .chip-inner small{color:#206bc4}
.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:6px}
.model-card{cursor:pointer;display:block;margin:0}
.model-card input{position:absolute;opacity:0}
.model-inner{border:2px solid var(--tblr-border-color,#dadfe5);border-radius:12px;padding:14px;transition:.15s;height:100%;background:var(--tblr-bg-surface,#fff)}
.model-card input:checked + .model-inner{border-color:#206bc4;background:#eaf1fb}
.model-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.model-title{font-weight:700;font-size:15px}
.model-badge{font-size:11px;font-weight:700;background:#f59f00;color:#fff;padding:2px 8px;border-radius:20px}
.model-sub{font-size:12px;color:var(--tblr-secondary,#667382);font-family:var(--tblr-font-monospace,monospace);margin-top:3px}
.model-note{font-size:13px;margin-top:7px}
.model-price{font-size:15px;font-weight:700;color:#206bc4;margin-top:9px}
.model-usd{font-size:12px;color:var(--tblr-secondary,#667382);font-weight:400}
.compare{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.compare-col{display:flex;flex-direction:column}
.compare-label{font-size:12px;font-weight:700;color:var(--tblr-secondary,#667382);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
.compare img{width:100%;height:auto;border:1px solid var(--tblr-border-color,#dadfe5);border-radius:10px;background:#fff}
.result-dims{font-size:13px;color:var(--tblr-secondary,#667382);margin-top:8px}
@media(max-width:640px){.compare{grid-template-columns:1fr}}
.hist-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}
.hist-model{font-weight:700;font-size:15px}
.hist-date{font-size:13px;color:var(--tblr-secondary,#667382)}
.hist-meta{font-size:13px;color:var(--tblr-secondary,#667382);margin-top:4px}
.hist-prompt{font-size:14px;margin-top:8px;padding:8px 12px;background:var(--tblr-bg-surface-secondary,#f6f8fb);border-radius:8px;line-height:1.5}
.hist-imgs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.hist-col{display:flex;flex-direction:column}
.hist-lbl{font-size:12px;font-weight:700;color:var(--tblr-secondary,#667382);text-transform:uppercase;margin-bottom:6px}
.hist-imgs img{width:100%;height:auto;border:1px solid var(--tblr-border-color,#dadfe5);border-radius:8px;background:#fff}
@media(max-width:640px){.hist-imgs{grid-template-columns:1fr}}
.ai-answer{font-size:15px;line-height:1.65;background:var(--tblr-bg-surface,#fff);border:1px solid var(--tblr-border-color,#dadfe5);border-radius:10px;padding:18px 20px}
.ai-answer h3,.ai-answer h4,.ai-answer h5{margin:14px 0 8px}
.ai-answer p{margin:9px 0}
.ai-answer ul,.ai-answer ol{margin:9px 0 9px 24px}
.ai-answer li{margin:4px 0}
.ai-answer pre{background:#1d273b;color:#dce1e7;padding:14px 16px;border-radius:10px;overflow-x:auto;font-size:13px;line-height:1.5;margin:10px 0}
.ai-answer code{background:#eef0f2;padding:1px 6px;border-radius:5px;font-size:13px}
.ai-answer pre code{background:none;padding:0}
.ai-meta{font-size:13px;color:var(--tblr-secondary,#667382);margin-top:12px}
.ai-rate{margin-top:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ai-rate-label{font-size:14px;font-weight:600}
.star-btn{background:var(--tblr-bg-surface-secondary,#f6f8fb);border:1px solid var(--tblr-border-color,#dadfe5);border-radius:8px;padding:6px 12px;font-size:14px;font-weight:700;cursor:pointer;color:#206bc4}
.star-btn:hover{background:#206bc4;color:#fff}
.star-btn.star-picked{background:#206bc4;color:#fff}
.rate-done{font-size:14px;font-weight:600;color:#1a7f4b;margin-left:6px}
.gen-badge{display:inline-block;font-size:12px;font-weight:700;background:#e0ecff;color:#1c4587;padding:3px 10px;border-radius:20px;margin-top:8px}
.att-block{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.att-chip{font-size:12px;padding:3px 9px;border-radius:8px;border:1px solid var(--tblr-border-color,#dadfe5);background:var(--tblr-bg-surface,#fff)}
.att-in{border-color:#9ec5fe}
.att-out{border-color:#9fd7b5}

/* === Шапка: компактные пункты верхнего меню (пакет Р7 «Расходы», 2026-07-20) ===
   СНЯТО пакетом «Шапка» (2026-07-31): однорядная ужатая строка заменена
   двухрядной шапкой (ряд 1 — бренд и пользователь, ряд 2 — разделы),
   ужатия шрифтов и отступов больше не нужны — см. блок «Общая шапка»
   в начале файла. */


/* === Расходы: блок товарной привязки группами-фильтрами (пакет Р9, 2026-07-21) ===
   Дизайн согласован на прототипе f7: одна строка измерений на десктопе,
   сетка 4+3 на планшете, 2 колонки на мобильном; крупные чекбоксы
   с «Готово»/«Сбросить»; суммы прижаты вправо блока параметров.
   КАРТА ШРИФТОВ раздела «Расходы» (2026-07-21, единая для всех страниц):
   12px — вторичное: подсказки, бейджи, счётчики, мета-текст;
   14px — база Tabler (0.875rem): весь текст, кнопки, поля, чекбоксы, лейблы;
   16px — заголовки карточек (card-title) и акцентные числа в тексте;
   20px — единственный герой-размер: статус «Осталось распределить» (split-big). */
.rx-privyazka .card { border-radius: .75rem; }
.rx-privyazka .btn, .rx-privyazka .form-control, .rx-privyazka .form-select,
.rx-privyazka .badge { border-radius: .6rem; }
.rx-privyazka .dropdown-menu { border-radius: .75rem; }

.rx-privyazka .rx-dims { display: flex; flex-wrap: nowrap; gap: .45rem; }
.rx-mobile-progress-bar { height: 6px; overflow: hidden; border-radius: 999px; background: var(--tblr-border-color); }
.rx-mobile-progress-bar span { display: block; height: 100%; width: 50%; background: var(--tblr-primary); transition: width .2s ease; }
@media (max-width: 767.98px) {
  .rx-form-actions { position: sticky; bottom: 3.4rem; z-index: 30; padding: .65rem;
    margin-left: -.5rem; margin-right: -.5rem; background: rgba(255,255,255,.96);
    border: 1px solid var(--tblr-border-color); border-radius: .5rem; box-shadow: 0 -4px 16px rgba(0,0,0,.07); }
  .rx-form-actions .btn { flex: 1 1 auto; }
}
.rx-privyazka .rx-dims > .dropdown,
.rx-privyazka .rx-dims > .rx-business-slot {
  flex: 1 1 0; min-width: 0; position: relative;
}
.rx-privyazka .rx-dim-btn { width: 100%; display: flex; align-items: center;
  justify-content: center; gap: .28rem; font-size: 14px;
  padding: .78rem .25rem; white-space: nowrap;
  transition: box-shadow .12s, border-color .12s, background .12s; }
.rx-privyazka .rx-business-slot .rx-business-choice { width: 100%; }
.rx-privyazka .rx-dim-btn:hover { box-shadow: 0 .15rem .5rem rgba(32,107,196,.18); }
.rx-privyazka .rx-dim-t { overflow: hidden; text-overflow: ellipsis; }
.rx-privyazka .rx-dim-cnt { flex: 0 0 auto; min-width: 22px; height: 22px;
  padding: 0 .3rem; border-radius: 11px; background: rgba(255,255,255,.28);
  font-size: 12px; font-weight: 700; line-height: 22px; text-align: center; }
.rx-privyazka .rx-dim-btn.btn-outline-secondary .rx-dim-cnt {
  background: var(--tblr-primary); color: #fff; }
.rx-privyazka .rx-dim-btn .rx-chev { flex: 0 0 auto; opacity: .55; }
@media (max-width: 1199.98px) {
  .rx-privyazka .rx-dims { display: grid; grid-template-columns: repeat(4, 1fr); }
  .rx-privyazka .rx-dim-btn { font-size: 14px; padding: .8rem .4rem; }
}
@media (max-width: 767.98px) {
  .rx-privyazka .rx-dims { grid-template-columns: repeat(2, 1fr); gap: .5rem; position: relative; }
  .rx-privyazka .rx-dims > .dropdown { position: static; }
  .rx-privyazka .rx-dims .dropdown:last-child { grid-column: 1 / -1; }
  .rx-privyazka .rx-dim-btn { font-size: 14px; padding: .85rem .4rem; }
}

.rx-privyazka .dropdown-menu.rx-panel { top: calc(100% + 6px); left: 0;
  min-width: 400px; max-width: 460px; padding: 0; overflow: hidden;
  z-index: 1080; background: var(--tblr-bg-surface, #fff);
  box-shadow: 0 .75rem 2rem rgba(15,23,42,.22);
  border: 1px solid var(--tblr-border-color); }
.rx-privyazka .dropdown-menu.rx-panel.show {
  display: flex; flex-direction: column;
}
.rx-privyazka .dropdown-menu.rx-panel.rx-end { left: auto; right: 0; }
@media (max-width: 767.98px) {
  .rx-privyazka .dropdown-menu.rx-panel, .rx-privyazka .dropdown-menu.rx-panel.rx-end {
    left: 0; right: 0; min-width: 0; max-width: none; width: 100%; }
}
.rx-privyazka .rx-panel-head { padding: .9rem 1rem .7rem;
  border-bottom: 1px solid var(--tblr-border-color); }
.rx-privyazka .rx-panel-head .t { font-size: 14px; font-weight: 600;
  display: block; margin-bottom: .5rem; }
.rx-privyazka .rx-panel-list { min-height: 3rem; max-height: 350px;
  overflow-y: auto; padding: .5rem; background: var(--tblr-bg-surface, #fff); }
.rx-privyazka .rx-panel-foot { display: flex; gap: .5rem; padding: .75rem 1rem;
  border-top: 1px solid var(--tblr-border-color);
  background: var(--tblr-bg-surface-secondary); }
.rx-privyazka .rx-panel-foot .btn { font-size: 14px; padding: .55rem 1.4rem; }
.rx-privyazka .rx-panel-foot .rx-done { flex: 1 1 auto; }

.rx-privyazka .rx-check { display: flex; align-items: center; gap: .8rem;
  padding: .62rem .75rem; margin: 0; border-radius: .5rem; cursor: pointer;
  font-size: 14px; user-select: none; }
.rx-privyazka .rx-check:hover { background: rgba(32,107,196,.07); }
.rx-privyazka .rx-check input[type="checkbox"] { position: absolute; opacity: 0;
  pointer-events: none; }
.rx-privyazka .rx-check .rx-box { flex: 0 0 auto; width: 24px; height: 24px;
  border: 2px solid #a7b4c6; border-radius: 6px; background: #fff;
  display: inline-flex; align-items: center; justify-content: center;
  transition: all .12s; }
.rx-privyazka .rx-check .rx-box::after { content: '✓'; color: #fff;
  font-size: 14px; font-weight: 700; line-height: 1; opacity: 0; }
.rx-privyazka .rx-check.on { background: rgba(32,107,196,.10); }
.rx-privyazka .rx-check.on .rx-box { background: var(--tblr-primary);
  border-color: var(--tblr-primary); }
.rx-privyazka .rx-check.on .rx-box::after { opacity: 1; }
.rx-privyazka .rx-check .rx-lbl { flex: 1 1 auto; overflow: hidden;
  text-overflow: ellipsis; white-space: nowrap; }
.rx-privyazka .rx-empty { padding: 1rem; color: var(--tblr-muted); }

.rx-privyazka .rx-params { display: flex; flex-wrap: wrap; gap: .9rem 1.5rem;
  align-items: flex-end; background: var(--tblr-bg-surface-secondary);
  border: 1px solid var(--tblr-border-color-translucent);
  border-radius: .75rem; padding: .95rem 1.1rem; margin-top: 1rem; }
.rx-privyazka .rx-p-sums { margin-left: auto; display: flex; gap: 1.5rem;
  align-items: flex-end; }
.rx-privyazka .rx-method-btn { min-width: 280px; justify-content: space-between;
  font-size: 14px; padding: .7rem .9rem; }
.rx-privyazka .rx-panel-method { min-width: 100%; max-width: none; }
.rx-privyazka .rx-panel-method .rx-panel-list { max-height: none; }
.rx-privyazka .rx-panel-warehouses { min-width: 22rem; max-width: 28rem; }
.rx-privyazka .rx-panel-warehouses .rx-panel-list { max-height: none; }
.rx-privyazka .rx-warehouse-btn { min-width: 17rem; justify-content: space-between; }
.rx-privyazka .rx-sumrub { width: 170px; }
.rx-privyazka .rx-sumpct { width: 110px; }
@media (max-width: 767.98px) {
  .rx-privyazka .rx-params { gap: .8rem; }
  .rx-privyazka .rx-p-sums { margin-left: 0; flex: 1 1 100%; gap: .8rem; }
  .rx-privyazka .rx-param.rx-p-method { flex: 1 1 100%; }
  .rx-privyazka .rx-param.rx-p-warehouses { flex: 1 1 100%; }
  .rx-privyazka .rx-method-btn { width: 100%; min-width: 0; }
  .rx-privyazka .rx-warehouse-btn { width: 100%; min-width: 0; }
  .rx-privyazka .rx-panel-warehouses { min-width: 100%; max-width: none; }
  .rx-privyazka .rx-sumrub, .rx-privyazka .rx-sumpct { width: 100%; }
  .rx-privyazka .rx-p-sums .rx-p-rub { flex: 1 1 55%; }
  .rx-privyazka .rx-p-sums .rx-p-pct { flex: 1 1 35%; }
}

.rx-privyazka .rx-sel-badge { font-size: 12px; padding: .45em .7em; }
.rx-privyazka .rx-sel-badge a { text-decoration: none; font-weight: 700; }
.rx-privyazka .rx-sum { font-size: 14px; padding: .7rem .9rem; }
.rx-privyazka .rx-itog { font-size: 14px; }
.rx-privyazka .rx-itog .badge { font-size: 12px; }
.rx-privyazka .rx-panel-sticky { position: sticky; top: 1rem; }
.rx-privyazka .split-big { font-size: 20px; font-weight: 700; }
.rx-privyazka .rx-big-check { font-size: 14px; padding: .8rem .9rem; }
.rx-privyazka .rx-auto-note { font-size: 12px; }
.rx-privyazka #btn-add-filter { border-style: dashed; border-width: 2px; }


/* === Расходы: выбор обязательных данных (2026-07-24) ===
   Категория, подкатегория и способ оплаты выбираются заметными, но спокойными
   кнопками. До заполнения видна только красная рамка; после заполнения зелёная
   рамка дополняется единым очень светлым зелёным фоном всего блока. */
.rx-required-frame,
.rx-required-control { transition: border-color .15s; }
.rx-required-frame.is-invalid,
.rx-required-control.is-invalid {
  border-color: #e7a5aa !important;
  box-shadow: none;
}
.rx-required-frame.is-valid,
.rx-required-control.is-valid {
  border-color: #79bd91 !important;
  background-color: #f1faf4 !important;
  box-shadow: none;
}
.rx-required-frame.is-valid .kat-root:not(.on),
.rx-required-frame.is-valid .kat-subcategory:not(.on),
.rx-required-frame.is-valid .rx-payment-choice:not(.on) {
  background-color: #f1faf4;
}
.rx-privyazka.is-valid > .card-header,
.rx-privyazka.is-valid > .card-body,
.rx-privyazka.is-valid .rx-filter-card > .card-header,
.rx-privyazka.is-valid .rx-filter-card > .card-body {
  background-color: #f1faf4;
}

/* === Оплаты: распределение по месяцам (2026-08-06) === */
.rx-month-distribution { overflow: visible; }
.rx-month-distribution.is-valid > .card-header,
.rx-month-distribution.is-valid > .card-body,
.rx-month-distribution.is-valid .rx-month-row {
  background-color: #f1faf4;
}
.rx-month-switch { display: flex; align-items: center;
  justify-content: space-between; gap: 1rem; padding: .9rem 1rem;
  border: 1px solid var(--tblr-border-color); border-radius: .5rem;
  background: var(--tblr-bg-surface-secondary); }
.rx-month-switch .form-check-input { width: 3rem; height: 1.5rem;
  margin: 0; cursor: pointer; }
.rx-month-switch-label { cursor: pointer; user-select: none; }
.rx-current-month { margin-top: 1rem; padding: 1rem;
  border: 1px solid #79bd91; border-radius: .5rem; background: #f1faf4; }
.rx-current-month .form-select:disabled { color: var(--tblr-body-color);
  opacity: 1; background-color: #fff; }
.rx-current-month-total { display: flex; align-items: center;
  justify-content: center; min-height: 40px; padding: .45rem .8rem;
  border: 1px solid #79bd91; border-radius: .5rem; color: #1f6b36;
  background: #e5f6ea; font-weight: 600; white-space: nowrap; }
.rx-month-row { margin-bottom: .75rem;
  border: 1px solid var(--tblr-border-color); border-radius: .5rem;
  background: #fff; transition: border-color .15s, background-color .15s; }
.rx-month-row.is-duplicate { border-color: #e7a5aa;
  background: #fff7f7 !important; }
.rx-month-row-number { display: inline-flex; align-items: center;
  justify-content: center; width: 28px; height: 28px; border-radius: 50%;
  color: var(--tblr-secondary-color); background: var(--tblr-bg-surface-secondary);
  font-size: .75rem; font-weight: 700; }
.rx-month-delete { width: 36px; height: 36px; padding: 0;
  font-size: 1.25rem; line-height: 1; }
.rx-month-add { border-style: dashed; border-width: 2px; }
.rx-month-summary { position: sticky; top: 1rem; }
.rx-month-summary-value { font-size: 20px; font-weight: 700; }
.rx-month-remaining { padding: .75rem; border-radius: .5rem;
  background: #fff7e6; }
.rx-month-remaining.is-complete { color: #1f6b36; background: #eaf7ee; }
.rx-month-remaining.is-over { color: #a0222c; background: #fff0f1; }
.rx-month-progress { height: 12px; }
@media (max-width: 991.98px) {
  .rx-month-summary { position: static; }
}
/* === Оплаты: каналы продаж (2026-08-17) === */
.rx-sales-channels { overflow: hidden; }
.rx-sales-channels > summary {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; list-style: none; cursor: pointer; user-select: none;
}
.rx-sales-channels > summary::-webkit-details-marker { display: none; }
.rx-sales-channels .rx-details-chevron {
  display: inline-flex; flex: 0 0 auto; color: var(--tblr-secondary);
  transition: transform .15s ease;
}
.rx-sales-channels[open] .rx-details-chevron { transform: rotate(180deg); }
.rx-sales-channels-grid {
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .75rem;
}
.rx-sales-channel-option {
  display: flex; align-items: center; gap: .65rem; min-height: 3.25rem;
  padding: .75rem .85rem; border: 1px solid var(--tblr-border-color);
  border-radius: .5rem; background: var(--tblr-bg-surface-secondary);
  cursor: pointer; transition: border-color .15s, background-color .15s;
}
.rx-sales-channel-option:has(.form-check-input:checked) {
  border-color: #79bd91; background: #f1faf4;
}
.rx-sales-channel-option .form-check-input { flex: 0 0 auto; margin: 0; }
.rx-sales-channel-option span { font-weight: 600; }
.rx-sales-channels.is-invalid { border-color: var(--tblr-danger); }
/* Компактный фильтр тех же каналов в финансовых отчётах. */
.ac-financial-filter-dimensions {
  display: flex; align-items: stretch; flex: 1 1 100%; flex-wrap: wrap;
  gap: .75rem; min-width: 0; margin-top: .15rem;
}
.ac-financial-filter-group {
  display: flex; align-items: flex-start; flex-direction: column; gap: .35rem;
  min-width: 0;
}
.ac-financial-filter-caption {
  display: flex; align-items: center; gap: .3rem; color: var(--tblr-secondary);
  font-size: .66rem; font-weight: 700; letter-spacing: .055em;
  line-height: 1; text-transform: uppercase;
}
.ac-sales-channel-filter-group {
  padding: .55rem .65rem; border: 1px solid #bdd8f0; border-radius: .65rem;
  background: #f3f8fd;
}
.ac-sales-channel-trigger {
  border-color: #9fc7e8; color: #1967a3; background: #fff;
}
.ac-sales-channel-trigger:hover,
.ac-sales-channel-trigger:focus {
  border-color: #6ea8d6; color: #155786; background: #eef7ff;
}
.ac-product-filter-group {
  padding: .55rem 0 .55rem .9rem;
  border-left: 1px solid var(--tblr-border-color);
}
.ac-product-filter-controls {
  display: flex; align-items: center; flex-wrap: wrap; gap: .5rem;
}
.ac-financial-filter-reset { align-self: flex-end; margin-bottom: .55rem; }
.ac-sales-channel-menu { min-width: 350px; }
.ac-sales-channel-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem;
}
.ac-sales-channel-choice {
  display: flex; align-items: center; gap: .55rem; min-height: 2.65rem;
  margin: 0; padding: .55rem .65rem; border: 1px solid var(--tblr-border-color);
  border-radius: .5rem; background: var(--tblr-bg-surface-secondary);
  cursor: pointer; transition: border-color .15s, background-color .15s;
}
.ac-sales-channel-choice:has(.form-check-input:checked) {
  border-color: #79bd91; background: #f1faf4;
}
.ac-sales-channel-choice .form-check-input { flex: 0 0 auto; margin: 0; }
.ac-sales-channel-choice span { font-size: .82rem; font-weight: 600; }
/* Раскрытие оплат из строки категории в аналитике расходов. */
.rx-analytics-category-row { cursor: pointer; }
.rx-analytics-category-row > td {
  transition: background-color .15s ease;
}
.rx-analytics-category-row:hover > td,
.rx-analytics-category-row[aria-expanded="true"] > td {
  background: #f2f7fc;
}
.rx-analytics-category-row:focus-visible {
  outline: 2px solid var(--tblr-primary);
  outline-offset: -2px;
}
.rx-analytics-category-chevron {
  display: inline-flex; align-items: center; justify-content: center;
  width: 1.25rem; height: 1.25rem; margin-right: .25rem;
  color: var(--tblr-secondary); vertical-align: -.2rem;
  transition: transform .18s ease, color .18s ease;
}
.rx-analytics-category-row[aria-expanded="true"]
  .rx-analytics-category-chevron {
  color: var(--tblr-primary); transform: rotate(90deg);
}
.rx-analytics-detail-row > td {
  padding: 0 !important; border-bottom: 0 !important;
}
.rx-analytics-payments {
  padding: 1rem 1.25rem 1.15rem 2rem;
  border-top: 1px solid #d7e4ef;
  border-bottom: 1px solid var(--tblr-border-color);
  background: #f8fafc;
}
.rx-analytics-payments-table {
  min-width: 850px; border: 1px solid var(--tblr-border-color);
  border-radius: .45rem; overflow: hidden; background: #fff;
}
.rx-analytics-payments-table thead th {
  padding-top: .55rem; padding-bottom: .55rem;
  color: var(--tblr-secondary); font-size: .72rem; white-space: nowrap;
}
.rx-analytics-payments-table tbody td {
  padding-top: .65rem; padding-bottom: .65rem;
}
@media (max-width: 1199.98px) {
  .rx-sales-channels-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .rx-sales-channels-grid { grid-template-columns: 1fr; }
  .ac-financial-filter-dimensions { display: grid; grid-template-columns: 1fr; }
  .ac-sales-channel-filter-group { align-items: stretch; }
  .ac-sales-channel-filter-group .dropdown,
  .ac-sales-channel-filter-group .btn { width: 100%; }
  .ac-product-filter-group {
    padding: .75rem 0 0; border-top: 1px solid var(--tblr-border-color);
    border-left: 0;
  }
  .ac-financial-filter-reset { align-self: stretch; margin-bottom: 0; }
  .ac-sales-channel-menu { min-width: min(350px, calc(100vw - 2rem)); }
  .rx-analytics-payments { padding: .85rem; }
}
.rx-distribution-preview {
  overflow: hidden;
  transition: border-color .15s, background-color .15s;
}
.rx-distribution-preview .card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.rx-preview-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .6rem;
}
.rx-preview-table { min-width: 860px; }
.rx-preview-table th {
  white-space: nowrap;
  font-size: 12px;
  letter-spacing: .02em;
}
.rx-preview-table .rx-preview-group td {
  padding-top: .65rem;
  padding-bottom: .65rem;
  background: var(--tblr-bg-surface-secondary);
  border-top: 2px solid var(--tblr-border-color);
}
.rx-preview-table .rx-preview-name {
  min-width: 14rem;
  white-space: normal;
}
.rx-preview-table-stage {
  --rx-preview-fade-rgb: 255, 255, 255;
  position: relative;
  min-width: 860px;
}
.rx-preview-table-stage.is-collapsed::after {
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  height: 9rem;
  pointer-events: none;
  content: "";
  background: linear-gradient(
    to bottom,
    rgba(var(--rx-preview-fade-rgb), 0) 0%,
    rgba(var(--rx-preview-fade-rgb), .72) 52%,
    rgba(var(--rx-preview-fade-rgb), .98) 86%,
    rgb(var(--rx-preview-fade-rgb)) 100%
  );
}
.rx-preview-toggle {
  position: absolute;
  z-index: 2;
  bottom: .35rem;
  left: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  padding: .45rem .75rem;
  border: 0;
  background: transparent;
  color: var(--tblr-primary);
  font: inherit;
  font-weight: 600;
  white-space: nowrap;
  transform: translateX(-50%);
}
.rx-preview-toggle:hover,
.rx-preview-toggle:focus-visible {
  background: transparent;
  color: var(--tblr-primary);
  text-decoration: underline;
  text-underline-offset: .2rem;
}
.rx-preview-toggle:focus-visible {
  border-radius: .25rem;
  outline: 2px solid color-mix(in srgb, var(--tblr-primary) 35%, transparent);
  outline-offset: 2px;
}
.rx-preview-table-stage.is-expanded .rx-preview-toggle {
  position: static;
  margin: .45rem auto;
  transform: none;
}
.rx-preview-footer {
  display: flex;
  align-items: center;
  gap: 1rem;
  justify-content: space-between;
}
.rx-distribution-preview.is-confirmed {
  border-color: #79bd91;
  background-color: #f1faf4;
}
.rx-distribution-preview.is-confirmed .card-header,
.rx-distribution-preview.is-confirmed .card-body,
.rx-distribution-preview.is-confirmed .card-footer,
.rx-distribution-preview.is-confirmed .rx-preview-group td {
  background-color: #f1faf4;
}
.rx-distribution-preview.is-confirmed .rx-preview-table-stage {
  --rx-preview-fade-rgb: 241, 250, 244;
}
@media (max-width: 767.98px) {
  .rx-distribution-preview .card-header {
    align-items: stretch;
    flex-direction: column;
  }
  .rx-preview-toolbar {
    justify-content: stretch;
  }
  .rx-preview-toolbar .btn { flex: 1 1 auto; }
  .rx-preview-footer {
    align-items: stretch;
    flex-direction: column;
  }
  .rx-preview-footer .btn { width: 100%; }
}
.rx-required-control.is-invalid,
.rx-required-control.is-valid {
  background-image: none !important;
  padding-right: .75rem !important;
}
.rx-main-required-field {
  display: flex;
  flex-direction: column;
}
.rx-amount-panel {
  height: 3.75rem;
  min-height: 3.75rem;
  display: flex;
  overflow: hidden;
  border: 1px solid var(--tblr-border-color);
  border-radius: .5rem;
}
.rx-main-required-field #rx-amount {
  height: 100%;
  min-height: 0;
  font-size: 1.125rem;
  font-weight: 500;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
}
.rx-amount-panel.is-valid #rx-amount,
.rx-amount-panel.is-valid #rx-amount:-webkit-autofill {
  background-color: #f1faf4 !important;
  -webkit-box-shadow: 0 0 0 1000px #f1faf4 inset !important;
}
.rx-currency-select {
  flex: 0 0 8.5rem;
  width: 8.5rem;
  height: 100%;
  min-height: 0;
  padding-left: .85rem;
  border: 0;
  border-left: 1px solid var(--tblr-border-color);
  border-radius: 0;
  background-color: rgba(32,107,196,.06);
  color: #164b88;
  font-size: 1.05rem;
  font-weight: 700;
  box-shadow: none !important;
}
.rx-amount-panel.is-valid .rx-currency-select {
  background-color: #e7f6ec;
  border-left-color: #79bd91;
}
.kat-vybor .kat-panel { height: 100%; min-height: 17rem; padding: 1rem;
  background: var(--tblr-bg-surface-secondary, #f8fafc);
  border: 1px solid var(--tblr-border-color); border-radius: .75rem; }
.kat-vybor .kat-roots { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .5rem; }
.kat-vybor .kat-root { appearance: none; background: var(--tblr-bg-surface);
  border: 1px solid var(--tblr-border-color); border-radius: .6rem;
  min-height: 3.25rem; padding: .55rem .65rem; font-size: 14px; font-family: inherit;
  line-height: 1.3; color: var(--tblr-body-color); cursor: pointer;
  text-align: center; transition: box-shadow .12s, border-color .12s, background .12s; }
.kat-vybor .kat-root:hover { border-color: var(--tblr-primary);
  box-shadow: 0 .15rem .5rem rgba(32,107,196,.18); }
.kat-vybor .kat-root.on { background: var(--tblr-primary);
  border-color: var(--tblr-primary); color: #fff; font-weight: 600; }
.kat-vybor .kat-detail-panel { display: flex; flex-direction: column; justify-content: flex-start; }
.kat-vybor .kat-subcategories { display: grid; grid-template-columns: 1fr; gap: .45rem; }
.kat-vybor .kat-subcategory,
.rx-payment-choice { appearance: none; width: 100%; background: var(--tblr-bg-surface);
  border: 1px solid var(--tblr-border-color); border-radius: .6rem;
  min-height: 2.65rem; padding: .55rem .75rem; font-size: 14px; font-family: inherit;
  line-height: 1.3; color: var(--tblr-body-color); cursor: pointer;
  text-align: left; transition: box-shadow .12s, border-color .12s, background .12s; }
.kat-vybor .kat-subcategory:hover,
.rx-payment-choice:hover { border-color: var(--tblr-primary);
  box-shadow: 0 .15rem .5rem rgba(32,107,196,.15); }
.kat-vybor .kat-subcategory.on,
.rx-payment-choice.on { background: var(--tblr-primary);
  border-color: var(--tblr-primary); color: #fff; font-weight: 600; }
.kat-vybor .kat-empty { display: flex; min-height: 9rem; align-items: center;
  justify-content: center; padding: 1rem; text-align: center;
  color: var(--tblr-secondary-color); font-size: 14px; }
.rx-payment-panel { height: 3.75rem; min-height: 3.75rem; padding: .375rem;
  position: relative; z-index: 4;
  border: 1px solid var(--tblr-border-color); border-radius: .5rem; }
.rx-payment-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .375rem; height: 100%; }
.rx-payment-options:has(.rx-payment-option:nth-child(3)) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.rx-payment-option { position: relative; min-width: 0; height: 100%; }
.rx-payment-choice {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  height: 100%;
  min-height: 3rem;
  padding: .45rem .65rem;
  text-align: center;
}
.rx-payment-choice-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1.15;
}
.rx-payment-choice-main {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rx-payment-choice-caption {
  margin-top: .15rem;
  font-size: .68rem;
  font-weight: 500;
  opacity: .82;
}
.rx-payment-choice-chevron {
  flex: 0 0 auto;
  font-size: 1rem;
  transition: transform .15s ease;
}
.rx-payment-choice[aria-expanded="true"] .rx-payment-choice-chevron {
  transform: rotate(180deg);
}
.rx-legal-entity-menu {
  position: absolute;
  z-index: 20;
  top: calc(100% + .55rem);
  left: 0;
  width: min(20rem, calc(100vw - 2rem));
  min-width: min(15rem, calc(100vw - 2rem));
  padding: .45rem;
  border: 1px solid rgba(32,107,196,.25);
  border-radius: .65rem;
  background: var(--tblr-bg-surface);
  box-shadow: 0 .65rem 1.6rem rgba(24,36,51,.18);
}
.rx-legal-entity-menu[hidden] { display: none !important; }
.rx-legal-entity-title {
  padding: .3rem .5rem .45rem;
  color: var(--tblr-secondary-color);
  font-size: .75rem;
  font-weight: 600;
}
.rx-legal-entity-item {
  display: flex;
  width: 100%;
  min-height: 2.55rem;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  padding: .5rem .65rem;
  border: 0;
  border-radius: .45rem;
  background: transparent;
  color: var(--tblr-body-color);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.rx-legal-entity-item:hover,
.rx-legal-entity-item.on {
  background: rgba(32,107,196,.1);
  color: var(--tblr-primary);
}
.rx-legal-entity-item .ti { visibility: hidden; }
.rx-legal-entity-item.on .ti { visibility: visible; }
.rx-payment-basis { background: transparent; }
.rx-payment-basis-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 1.6rem;
  gap: .75rem;
  margin-bottom: .5rem;
}
.rx-payment-basis-control {
  width: 100%;
  min-height: 3.75rem;
  border: 1px solid var(--tblr-border-color);
  border-radius: .5rem;
  background-color: var(--tblr-bg-surface);
  font-size: 1rem;
  transition: border-color .15s, background-color .15s;
}
.rx-payment-basis.is-invalid .rx-payment-basis-control {
  border-color: #e7a5aa;
}
.rx-payment-basis.is-valid .rx-payment-basis-control {
  border-color: #79bd91;
  background-color: #f1faf4;
}
.rx-payment-basis-control.is-invalid,
.rx-invoice-control.is-invalid {
  border-color: #e7a5aa;
  background-color: var(--tblr-bg-surface);
}
.rx-payment-basis-control.is-valid,
.rx-invoice-control.is-valid {
  border-color: #79bd91;
  background-color: #f1faf4;
}
.rx-counterparty-required:placeholder-shown {
  border-color: var(--tblr-danger, #d63939);
  box-shadow: 0 0 0 .2rem rgba(214,57,57,.08);
}
.rx-counterparty-add-link {
  display: inline-flex;
  align-items: center;
  gap: .2rem;
  flex: 0 0 auto;
  padding: 0;
  border: 0;
  color: var(--tblr-primary);
  background: transparent;
  font: inherit;
  font-size: .875rem;
  font-weight: 600;
  cursor: pointer;
  animation: rx-counterparty-link-glow 2.4s ease-in-out infinite;
}
.rx-counterparty-add-link:hover {
  color: #1455a0;
  text-decoration: underline;
}
.rx-counterparty-add-link:focus-visible {
  outline: 3px solid rgba(32,107,196,.2);
  outline-offset: .25rem;
  border-radius: .2rem;
}
.rx-invoice-control {
  display: flex;
  align-items: center;
  overflow: hidden;
  padding: 0;
  cursor: pointer;
}
.rx-invoice-action {
  display: inline-flex;
  align-items: center;
  align-self: stretch;
  flex: 0 0 auto;
  padding: 0 1rem;
  border-right: 1px solid var(--tblr-border-color);
  background: var(--tblr-bg-surface-secondary, #f6f8fb);
  white-space: nowrap;
}
.rx-invoice-name {
  min-width: 0;
  padding: 0 1rem;
  overflow: hidden;
  color: var(--tblr-secondary);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rx-payment-basis.is-valid .rx-invoice-action {
  border-right-color: #79bd91;
  background: #e7f6ec;
}
@keyframes rx-counterparty-link-glow {
  0%,100% {
    opacity: .82;
    text-shadow: 0 0 0 rgba(32,107,196,0);
  }
  50% {
    opacity: 1;
    text-shadow: 0 0 .55rem rgba(32,107,196,.5);
  }
}
@media (prefers-reduced-motion: reduce) {
  .rx-counterparty-add-link { animation: none; }
}
.rx-counterparty-dialog { width: min(58rem, calc(100vw - 2rem));
  max-height: calc(100vh - 2rem); padding: 1.25rem; border: 0;
  border-radius: .85rem; box-shadow: 0 1rem 3rem rgba(15,23,42,.25);
  color: var(--tblr-body-color); background: var(--tblr-bg-surface); }
.rx-counterparty-dialog::backdrop { background: rgba(15,23,42,.45); }
.rx-counterparty-dialog-head { display: flex; justify-content: space-between;
  align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.rx-counterparty-create > summary { cursor: pointer; list-style: none; }
.rx-counterparty-create > summary::-webkit-details-marker { display: none; }
.rx-counterparty-visibility { margin: 0; padding: 1rem;
  border: 1px solid #b9d7fb; border-radius: .8rem; background: #f7fbff; }
.rx-counterparty-visibility-line { display: flex; align-items: center;
  flex-wrap: wrap; gap: .45rem; margin-bottom: .8rem; color: #475569; }
.rx-counterparty-visibility-base { display: inline-flex; align-items: center;
  min-height: 2.35rem; padding: .45rem .75rem; border: 2px solid #206bc4;
  border-radius: .55rem; color: #164b88; background: #eaf4ff;
  font-weight: 700; box-shadow: 0 0 0 .2rem rgba(32,107,196,.08); }
.rx-counterparty-visibility-options { display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.rx-counterparty-visibility-option { display: flex; align-items: center;
  gap: .75rem; min-height: 4.4rem; margin: 0; padding: .75rem .9rem;
  border: 2px solid #cbd5e1; border-radius: .7rem; background: #fff;
  color: #334155; cursor: pointer; transition: border-color .15s ease,
  background .15s ease, box-shadow .15s ease, transform .15s ease; }
.rx-counterparty-visibility-option:hover { border-color: #70a9e8;
  transform: translateY(-1px); }
.rx-counterparty-visibility-option > input { position: absolute;
  width: 1px; height: 1px; overflow: hidden; opacity: 0; }
.rx-counterparty-visibility-check { display: inline-flex;
  align-items: center; justify-content: center; flex: 0 0 2rem;
  width: 2rem; height: 2rem; border: 2px solid #94a3b8;
  border-radius: .5rem; color: transparent; background: #fff;
  font-size: 1.25rem; transition: all .15s ease; }
.rx-counterparty-visibility-option b { display: block; font-size: 1rem; }
.rx-counterparty-visibility-option small { display: block; margin-top: .15rem;
  color: var(--tblr-secondary); }
.rx-counterparty-visibility-option:has(input:checked) {
  border-color: #206bc4; background: #edf6ff;
  color: #164b88; animation: rx-visibility-glow 2.8s ease-in-out infinite; }
.rx-counterparty-visibility-option:has(input:focus-visible) {
  outline: 3px solid rgba(32,107,196,.23); outline-offset: 2px; }
.rx-counterparty-visibility-option:has(input:checked)
  .rx-counterparty-visibility-check {
  border-color: #206bc4; color: #fff; background: #206bc4; }
.rx-counterparty-visibility-option.is-disabled {
  border-color: #d7dee7;
  background: #f3f5f8;
  color: #7a8797;
  cursor: not-allowed;
  animation: none !important;
}
.rx-counterparty-visibility-option.is-disabled
  .rx-counterparty-visibility-check {
  border-color: #c6ced8;
  background: #e8edf3;
}
@keyframes rx-visibility-glow {
  0%,100% { box-shadow: 0 0 0 .15rem rgba(32,107,196,.08); }
  50% { box-shadow: 0 0 0 .38rem rgba(32,107,196,.16),
    0 .3rem .9rem rgba(32,107,196,.18); }
}
@media (max-width: 1399.98px) {
  .kat-vybor .kat-roots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575.98px) {
  .kat-vybor .kat-roots { grid-template-columns: 1fr; }
  .kat-vybor .kat-panel { min-height: 0; }
  .rx-counterparty-visibility-options { grid-template-columns: 1fr; }
  .rx-currency-select { flex-basis: 7.2rem; width: 7.2rem; padding-left: .55rem; }
  .rx-payment-basis-label { align-items: flex-start; }
  .rx-counterparty-add-link span { white-space: normal; }
}
.rx-fx-payment-fields {
  padding: 1rem;
  border: 1px solid #9fc8f5;
  border-radius: .75rem;
  background: #f7fbff;
}
.rx-fx-payment-heading {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-bottom: .9rem;
}
.rx-fx-payment-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.5rem;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: .65rem;
  background: #206bc4;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 800;
}
.rx-fx-confirm-field {
  padding: .65rem;
  border: 2px solid #70a9e8;
  border-radius: .65rem;
  background: #fff;
  animation: rx-fx-attention 2.5s ease-in-out infinite;
  transition: border-color .18s, background-color .18s, box-shadow .18s;
}
.rx-fx-confirm-field.is-confirmed {
  border-color: #2fb344;
  background: #f1faf4;
  box-shadow: 0 0 0 .2rem rgba(47,179,68,.12);
  animation: none;
}
.rx-fx-confirm-field.is-error {
  border-color: #d63939;
  background: #fff7f7;
  animation: none;
}
.rx-fx-confirm-field.is-confirmed .form-hint { color: #218535; }
.rx-fx-confirm-field.is-error .form-hint { color: #b42318; }
@keyframes rx-fx-attention {
  0%, 100% { box-shadow: 0 0 0 .12rem rgba(32,107,196,.08); }
  50% { box-shadow: 0 0 0 .35rem rgba(32,107,196,.17),
    0 .25rem .85rem rgba(32,107,196,.13); }
}
@media (prefers-reduced-motion: reduce) {
  .rx-fx-confirm-field { animation: none; }
}
.rx-pay-help { position: relative; display: inline-flex; align-items: center; }
.rx-help-icon { display: inline-flex; align-items: center; justify-content: center;
  width: 1.15rem; height: 1.15rem; padding: 0; border: 1px solid var(--tblr-primary);
  border-radius: 50%; background: transparent; color: var(--tblr-primary);
  font-family: inherit; font-size: 12px; font-weight: 700; line-height: 1; cursor: help; }
.rx-help-tip { position: absolute; z-index: 1080; bottom: calc(100% + .5rem); right: -.5rem;
  width: min(19rem, 75vw); padding: .65rem .75rem; border-radius: .5rem;
  background: var(--tblr-dark, #182433); color: #fff; font-size: 12px; line-height: 1.4;
  box-shadow: 0 .35rem 1rem rgba(24,36,51,.22); opacity: 0; visibility: hidden;
  transform: translateY(.2rem); transition: opacity .12s, transform .12s, visibility .12s;
  pointer-events: none; }
.rx-pay-help:hover .rx-help-tip, .rx-pay-help:focus-within .rx-help-tip {
  opacity: 1; visibility: visible; transform: translateY(0); }


/* === Расходы: документы в списке заявок (пакет Р11, 2026-07-21) ===
   Скрепка со счётчиком открывает панель со списком файлов и скачиванием.
   Панель не закрывается по клику мимо (решение владельца) — только
   повторным нажатием, открытием соседней или Esc. Шрифты по карте:
   14px имена, 12px типы и подписи. */
.dok-spisok { display: block; min-width: 2.5rem; }
.dok-spisok .dok-btn { appearance: none; display: inline-flex; align-items: center;
  gap: .3rem; background: var(--tblr-bg-surface);
  border: 1px solid var(--tblr-border-color); border-radius: .6rem;
  padding: .3rem .6rem; font-size: 14px; font-family: inherit;
  line-height: 1.2; color: var(--tblr-body-color); cursor: pointer;
  transition: border-color .12s, box-shadow .12s, background .12s; }
.dok-spisok .dok-btn:hover { border-color: var(--tblr-primary);
  box-shadow: 0 .1rem .4rem rgba(32,107,196,.18); }
.dok-spisok .dok-btn[aria-expanded="true"] { background: var(--tblr-azure-bg-subtle, #e9f2fc);
  border-color: var(--tblr-primary); color: var(--tblr-primary); font-weight: 600; }
.dok-spisok .dok-btn .ti { font-size: 16px; }
.dok-spisok .dok-n { font-weight: 600; }
.dok-spisok .dok-pop { position: static; width: min(430px, 70vw); min-width: 0;
  max-width: 100%; margin-top: .5rem;
  background: var(--tblr-bg-surface); border: 1px solid var(--tblr-border-color);
  border-radius: .75rem; box-shadow: 0 .25rem .8rem rgba(24,39,75,.12);
  overflow: hidden; }
.dok-spisok .dok-pop-h { font-size: 14px; font-weight: 600;
  padding: .7rem .9rem; border-bottom: 1px solid var(--tblr-border-color); }
.dok-spisok .dok-pop-list { max-height: 264px; overflow-y: auto; }
.dok-spisok .dok-row { display: flex; align-items: center; gap: .6rem;
  padding: .5rem .9rem; }
.dok-spisok .dok-row + .dok-row { border-top: 1px solid var(--tblr-border-color-translucent, rgba(24,39,75,.08)); }
.dok-spisok .dok-row:hover { background: var(--tblr-bg-surface-secondary); }
.dok-spisok .dok-tip { font-size: 12px; color: var(--tblr-secondary);
  white-space: nowrap; min-width: 4.5rem; }
.dok-spisok .dok-name { flex: 1 1 auto; font-size: 14px; min-width: 0;
  overflow-wrap: anywhere; line-height: 1.3; }
.dok-spisok .dok-dl { flex: 0 0 auto; padding: .25rem .5rem; }
.dok-spisok .dok-pop-f { font-size: 12px; color: var(--tblr-secondary);
  padding: .55rem .9rem; border-top: 1px solid var(--tblr-border-color);
  background: var(--tblr-bg-surface-secondary); }
.rx-counterparty-picker { position: relative; }
.rx-counterparty-results { position: absolute; z-index: 30; top: 100%; left: 0;
  right: 0; margin-top: .25rem; max-height: 16rem; overflow-y: auto;
  background: var(--tblr-bg-surface); border: 1px solid var(--tblr-border-color);
  border-radius: var(--tblr-border-radius);
  box-shadow: 0 .5rem 1rem rgba(24,39,75,.12); }
.rx-counterparty-option { display: flex; align-items: baseline; gap: .5rem;
  width: 100%; padding: .5rem .75rem; border: 0; background: none;
  text-align: left; cursor: pointer; }
.rx-counterparty-option:hover,
.rx-counterparty-option:focus-visible { background: var(--tblr-bg-surface-secondary); }
.rx-counterparty-option-name { min-width: 0; overflow-wrap: anywhere; }
.rx-counterparty-option-sub { margin-left: auto; flex: 0 0 auto;
  color: var(--tblr-secondary); font-size: 12px; }
.rx-counterparty-empty { padding: .6rem .75rem; color: var(--tblr-secondary);
  font-size: 12px; }
.rx-counterparty-toggle { width: 100%; max-width: 100%;
  flex-direction: column; align-items: flex-start; gap: .15rem; }
.rx-payment-line1, .rx-payment-line2 { display: block; line-height: 1.25; }
.rx-kontr-dostup-row > td { border-top: 0; }
.rx-kontr-dostup summary { list-style: none; }
.rx-kontr-dostup summary::-webkit-details-marker { display: none; }
.rx-kontr-dostup-body { padding: .75rem 0 .25rem; }
.rx-kontr-dostup-people { display: grid; gap: .35rem .75rem;
  grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
  max-height: 14rem; overflow-y: auto; padding-top: .5rem; }
.rx-kontr-dostup-person { display: flex; align-items: baseline; gap: .4rem;
  font-weight: normal; cursor: pointer; }
.rx-kontr-dostup-person input[type="checkbox"]:disabled { opacity: 1;
  appearance: none; -webkit-appearance: none; width: 15px; height: 15px;
  flex: 0 0 auto; margin: 0; border: 1.5px solid #182433; border-radius: 3px;
  background: #182433; position: relative; top: 2px; cursor: not-allowed; }
.rx-kontr-dostup-person input[type="checkbox"]:disabled::after {
  content: ""; position: absolute; left: 4px; top: 1px; width: 4px;
  height: 8px; border: solid #fff; border-width: 0 2px 2px 0;
  transform: rotate(45deg); }
.rx-kontr-dostup-person:has(input[type="checkbox"]:disabled) { cursor: default; }
.rx-counterparty-name { min-width: 0; overflow: hidden; text-overflow: ellipsis;
  white-space: nowrap; text-align: left; }
.rx-counterparty-doc-count { display: inline-flex; align-items: center; gap: .2rem;
  flex: 0 0 auto; color: var(--tblr-secondary); }
.rx-counterparty-details { display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0; max-height: 18rem; overflow-y: auto; padding: .35rem .75rem; }
.rx-counterparty-field { display: grid;
  grid-template-columns: minmax(6.5rem,.7fr) minmax(0,1.3fr) auto;
  align-items: center; gap: .45rem; min-width: 0; padding: .42rem .2rem;
  border-bottom: 1px solid var(--tblr-border-color-translucent, rgba(24,39,75,.08)); }
.rx-counterparty-field-label { color: var(--tblr-secondary); font-size: 12px; }
.rx-counterparty-value { min-width: 0; overflow-wrap: anywhere; font-size: 13px; }
.rx-copy-field { padding: .2rem .35rem; min-width: 1.75rem; }
.rx-counterparty-documents { border-top: 1px solid var(--tblr-border-color); }
.rx-counterparty-documents-title { padding: .55rem .9rem; font-size: 12px;
  font-weight: 600; color: var(--tblr-secondary);
  background: var(--tblr-bg-surface-secondary); }
@media (max-width: 767.98px) {
  .dok-spisok .dok-pop { width: 100%; min-width: 0; max-width: none; }
  .rx-counterparty-details { grid-template-columns: 1fr; max-height: 20rem; }
  .rx-counterparty-field { grid-template-columns: minmax(6rem,.65fr) minmax(0,1.35fr) auto; }
}

/* === Расходы: единый фильтр списков заявок (Р14) === */
.rx-filter-card { overflow: visible; }
.rx-list-filter { display: flex; align-items: center; gap: .65rem; min-width: 0; }
.rx-filter-search, .rx-status-search, .rx-auto-search { position: relative; }
.rx-filter-search { flex: 1 1 22rem; min-width: 15rem; }
.rx-filter-search .ti, .rx-status-search .ti, .rx-auto-search .ti {
  position: absolute; z-index: 2; left: .75rem; top: 50%; transform: translateY(-50%);
  color: var(--tblr-secondary); pointer-events: none; }
.rx-filter-search input, .rx-status-search input, .rx-auto-search input { padding-left: 2.25rem; }
.rx-filter-dates { flex: 0 1 28rem; display: grid;
  grid-template-columns: auto minmax(8.5rem,1fr) auto minmax(8.5rem,1fr);
  align-items: center; gap: .4rem; white-space: nowrap; color: var(--tblr-secondary); }
.rx-status-picker { flex: 0 0 13rem; position: relative; }
.rx-status-picker > summary { height: 40px; display: flex; align-items: center;
  list-style: none; cursor: pointer; overflow: hidden; white-space: nowrap; }
.rx-status-picker > summary::-webkit-details-marker { display: none; }
.rx-status-menu { position: absolute; z-index: 1060; right: 0; top: calc(100% + .4rem);
  width: min(22rem, calc(100vw - 2rem)); padding: .75rem;
  border: 1px solid var(--tblr-border-color); border-radius: .75rem;
  background: var(--tblr-bg-surface); box-shadow: 0 .75rem 2rem rgba(15,23,42,.18); }
.rx-status-options { max-height: 18rem; overflow-y: auto; margin: .55rem 0; }
.rx-status-option { display: flex; align-items: center; gap: .65rem; padding: .5rem;
  border-radius: .45rem; cursor: pointer; }
.rx-status-option:hover { background: var(--tblr-bg-surface-secondary); }
.rx-status-actions { display: flex; gap: .5rem; padding-top: .65rem;
  border-top: 1px solid var(--tblr-border-color); }
.rx-status-actions .btn { flex: 1 1 0; }
.rx-filter-submit { flex: 0 0 auto; }
.rx-filter-clear { flex: 0 0 auto; }
.rx-filter-result { margin-top: .45rem; font-size: 12px; color: var(--tblr-secondary); }
@media (max-width: 1199.98px) {
  .rx-list-filter { flex-wrap: wrap; }
  .rx-filter-search { flex-basis: calc(100% - 1rem); }
  .rx-filter-dates { flex: 1 1 28rem; }
}
@media (max-width: 767.98px) {
  .rx-filter-search, .rx-filter-dates, .rx-status-picker { flex: 1 1 100%; width: 100%; }
  .rx-filter-dates { grid-template-columns: auto 1fr; }
  .rx-status-menu { left: 0; right: auto; }
  .rx-filter-submit { flex: 1 1 auto; }
}

/* === Расходы: персональные правила автосогласования (Р14) === */
.rx-auto-form { display: grid; grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr);
  gap: 1.25rem; align-items: start; }
.rx-auto-people, .rx-auto-limit { min-width: 0; }
.rx-auto-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .45rem; max-height: 20rem; overflow-y: auto; margin-top: .65rem; padding: .15rem; }
.rx-auto-person { display: flex; align-items: center; gap: .65rem; min-width: 0;
  padding: .65rem; border: 1px solid var(--tblr-border-color); border-radius: .6rem;
  cursor: pointer; transition: border-color .12s, background .12s; }
.rx-auto-person:hover, .rx-auto-person:has(input:checked) {
  border-color: var(--tblr-primary); background: rgba(32,107,196,.06); }
.rx-auto-person > span { min-width: 0; }
.rx-auto-person small { display: block; overflow: hidden; text-overflow: ellipsis;
  white-space: nowrap; color: var(--tblr-secondary); }
.rx-auto-select-actions { display: flex; gap: .5rem; margin-top: .5rem; }
.rx-auto-limit { padding: 1rem; border-radius: .75rem;
  background: var(--tblr-bg-surface-secondary); }
.rx-auto-rules { width: 100%; }
@media (max-width: 991.98px) {
  .rx-auto-form { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
  .rx-auto-options { grid-template-columns: 1fr; }
  .rx-auto-select-actions { flex-wrap: wrap; }
}

/* === Расходы: единая строка заявки на всех рабочих экранах === */
.rx-request-card { overflow: visible; }
.rx-request-card .table-responsive { overflow: visible; }
.rx-request-table { width: 100%; table-layout: fixed; min-width: 78rem; }
.rx-request-table .rx-col-request { width: 18%; }
.rx-request-table .rx-col-author { width: 9%; }
.rx-request-table .rx-col-sum { width: 8%; }
.rx-request-table .rx-col-payment { width: 11%; }
.rx-request-table .rx-col-docs { width: 15%; }
.rx-request-table .rx-col-closing { width: 15%; }
.rx-request-table .rx-col-status { width: 11%; }
.rx-request-table .rx-col-actions { width: 13%; }
.rx-request-table th, .rx-request-table td { min-width: 0; white-space: normal;
  text-align: center; vertical-align: middle; overflow-wrap: anywhere; }
.rx-request-table th:first-child, .rx-request-table td:first-child { text-align: left; }
.rx-request-table td { padding-top: 1rem; padding-bottom: 1rem; }
.rx-request-table tbody tr { position: relative; }
.rx-request-table tbody tr.rx-doc-open td {
  padding-bottom: calc(var(--rx-doc-space, 0px) + 1rem);
  vertical-align: top;
}
.rx-request-table tbody tr.rx-action-open td {
  padding-bottom: calc(var(--rx-action-space, 0px) + 1rem);
  vertical-align: top;
}
.rx-nav-badge { min-width: 1.35rem; line-height: 1; text-align: center; }
.rx-mobile-nav-badge { position: absolute; top: -.45rem; right: -.35rem;
  min-width: 1.15rem; padding: .18rem .32rem; line-height: 1; font-size: 10px; }
.rx-request-category, .rx-request-subcategory { display: block; max-width: 100%;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; line-height: 1.3; }
.rx-request-category { font-size: 13px; font-weight: 600; }
.rx-request-subcategory { margin-top: .2rem; color: var(--tblr-secondary);
  font-size: 12px; }
.rx-request-author { display: inline-flex; flex-direction: column; align-items: center;
  justify-content: center; line-height: 1.3; }
.rx-request-status { display: inline-flex; flex-direction: column; align-items: center;
  justify-content: center; gap: .25rem; line-height: 1.2; }
.rx-request-table .dok-spisok { position: relative; display: inline-block;
  text-align: center; }
.rx-request-table .dok-pop { position: absolute; z-index: 8;
  top: calc(100% + .5rem); right: 0; bottom: auto; left: auto;
  width: max-content; min-width: min(20rem, calc(100vw - 3rem));
  max-width: min(38rem, calc(100vw - 3rem)); margin-top: 0;
  text-align: left; }
.rx-request-table .dok-pop-list { max-height: 10rem; }
.rx-closing-status { display: inline-flex; flex-wrap: wrap; align-items: center;
  justify-content: center; gap: .4rem; }
.rx-closing-status .badge { white-space: normal; line-height: 1.25; }
.rx-request-actions { display: flex; flex-wrap: wrap; align-items: center;
  justify-content: center; gap: .4rem; min-width: 0; position: relative; }
.rx-request-table .rx-request-actions { position: static; }
.rx-request-actions > .rx-open-action { order: 1; }
.rx-request-actions > .rx-inline-action { order: 0; }
.rx-request-mobile-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .85rem; }
.rx-request-mobile-grid > div { min-width: 0; }
.rx-request-mobile-grid > div > span:first-child { display: block; margin-bottom: .2rem;
  color: var(--tblr-secondary); font-size: 12px; }
.rx-request-mobile .rx-request-author { align-items: flex-start; }
.rx-payment-badge { display: inline-flex; flex-direction: column;
  align-items: center; border: 1px solid transparent; font-weight: 500;
  line-height: 1.25; }
.rx-payment-raschetnyj_schet { color: #475569; background: #f1f5f9;
  border-color: #e2e8f0; }
.rx-payment-podryadchik { color: #5b556f; background: #f4f2f7;
  border-color: #e7e2ed; }
.rx-payment-nalichnye { color: #665d4e; background: #f5f3ee;
  border-color: #e8e3d9; }
@keyframes rx-key-action-attention {
  0%, 100% { box-shadow: 0 0 0 0 rgba(var(--rx-attention-rgb),.12);
    filter: brightness(1); }
  50% { box-shadow: 0 0 0 .38rem rgba(var(--rx-attention-rgb),.17),
    0 .25rem .8rem rgba(var(--rx-attention-rgb),.28);
    filter: brightness(1.08); }
}
.rx-key-action-attention { --rx-attention-rgb: 32,107,196; }
.rx-key-action-attention.btn-success,
.rx-key-action-attention.btn-outline-success {
  --rx-attention-rgb: 47,179,68;
}
.rx-key-action-attention:not(:disabled) {
  animation: rx-key-action-attention 2.4s ease-in-out infinite;
}
@media (prefers-reduced-motion: reduce) {
  .rx-key-action-attention:not(:disabled) { animation: none;
    box-shadow: 0 0 0 .2rem rgba(var(--rx-attention-rgb),.16); }
  .rx-counterparty-visibility-option:has(input:checked) { animation: none;
    box-shadow: 0 0 0 .25rem rgba(32,107,196,.13); }
}
@media (max-width: 1199.98px) and (min-width: 768px) {
  .rx-request-card .table-responsive { overflow-x: auto; }
}
@media (max-width: 575.98px) {
  .rx-request-mobile-grid { grid-template-columns: 1fr; }
}
@media (max-width: 767.98px) {
  .rx-request-mobile .dok-pop { position: static; width: 100%; }
}

/* === Расходы: адаптивная навигация без системной полосы прокрутки (Р13) === */
.rx-section-nav { min-height: 3.25rem; position: relative; }
.rx-section-nav .rx-tabs-wide { flex: 0 1 auto; min-width: 0; }
.rx-tabs-compact { display: none; position: relative; }
.rx-tabs-compact > summary { display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; min-width: 13rem; list-style: none; }
.rx-tabs-compact > summary::-webkit-details-marker { display: none; }
.rx-tabs-compact[open] > summary .ti-chevron-down { transform: rotate(180deg); }
.rx-tabs-dropdown { position: absolute; z-index: 1060; top: calc(100% + .4rem); left: 0;
  min-width: 16rem; padding: .4rem; border: 1px solid var(--tblr-border-color);
  border-radius: .75rem; background: var(--tblr-bg-surface); box-shadow: 0 .75rem 2rem rgba(15,23,42,.18); }
.rx-tabs-dropdown a { display: block; padding: .65rem .75rem; border-radius: .5rem;
  color: var(--tblr-body-color); text-decoration: none; }
.rx-tabs-dropdown a:hover { background: var(--tblr-bg-surface-secondary); }
.rx-tabs-dropdown a.active { background: var(--tblr-primary); color: #fff; font-weight: 600; }
@media (max-width: 1199.98px) {
  .rx-section-nav .rx-tabs-wide { display: none; }
  .rx-tabs-compact { display: block; }
}
@media (max-width: 575.98px) {
  .rx-section-nav { align-items: flex-start !important; flex-wrap: wrap; padding-bottom: .65rem; }
  .rx-tabs-compact { flex: 1 1 auto; }
  .rx-tabs-compact > summary { width: 100%; min-width: 0; }
  .rx-tabs-dropdown { width: min(20rem, calc(100vw - 2rem)); }
  .rx-section-nav > .ms-auto { margin-left: 0 !important; }
}

/* === Расходы: спокойное уведомление о статье себестоимости === */
.rx-cost-header { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.rx-cost-notice { display: flex; align-items: center; gap: 1rem; padding: 1rem;
  border: 1px solid #dce3ea; border-radius: .75rem;
  background: #f7f9fb; }
.rx-cost-notice-icon { display: inline-flex; align-items: center; justify-content: center;
  flex: 0 0 2.5rem; width: 2.5rem; height: 2.5rem; border-radius: .7rem;
  background: #e9eef3; color: #64748b; font-size: 20px; }
.rx-cost-notice-success { border-color: #9bd8b0; background: #ecf9f0;
  color: #176b38; box-shadow: 0 0 0 .2rem rgba(47,179,68,.08); }
.rx-cost-notice-success .rx-cost-notice-icon {
  background: #d7f2df; color: #198754; }
@media (max-width: 767.98px) {
  .rx-cost-header { align-items: flex-start; flex-direction: column; gap: .75rem; }
}

/* === Расходы: сворачиваемое дерево категорий === */
.rx-tree, .rx-tree-children { margin: 0; padding: 0; list-style: none; }
.rx-tree-node + .rx-tree-node { border-top: 1px solid var(--tblr-border-color-translucent); }
.rx-tree-children { margin-left: 1.35rem; border-left: 1px solid var(--tblr-border-color); }
.rx-tree-children > .rx-tree-node { border-top: 1px solid var(--tblr-border-color-translucent); }
.rx-tree-row { display: flex; align-items: center; gap: .5rem; min-height: 3.25rem;
  padding: .55rem .85rem; transition: background .12s; }
.rx-tree-row:hover { background: var(--tblr-bg-surface-secondary); }
.rx-tree-toggle, .rx-tree-toggle-spacer { flex: 0 0 1.75rem; width: 1.75rem; height: 1.75rem; }
.rx-tree-toggle { display: inline-flex; align-items: center; justify-content: center;
  padding: 0; border: 0; border-radius: .45rem; background: transparent;
  color: var(--tblr-secondary); cursor: pointer; transition: background .12s, transform .12s; }
.rx-tree-toggle:hover { background: rgba(32,107,196,.10); color: var(--tblr-primary); }
.rx-tree-toggle .ti { transition: transform .15s; }
.rx-tree-toggle[aria-expanded="true"] .ti { transform: rotate(90deg); }
.rx-tree-name { font-weight: 600; }
.rx-tree-node[data-tree-depth]:not([data-tree-depth="0"]) .rx-tree-name { font-weight: 400; }
.rx-tree-actions { opacity: .55; transition: opacity .12s; }
.rx-tree-row:hover .rx-tree-actions, .rx-tree-row:focus-within .rx-tree-actions { opacity: 1; }
@media (max-width: 767.98px) {
  .rx-tree-children { margin-left: .65rem; }
  .rx-tree-row { align-items: flex-start; flex-wrap: wrap; padding: .65rem .5rem; }
  .rx-tree-name { flex: 1 1 calc(100% - 2.5rem); padding-top: .25rem; }
  .rx-tree-actions { width: 100%; padding-left: 2.25rem; opacity: 1; }
}

/* === Расходы: быстрые действия бухгалтера в списке === */
.rx-inline-action { position: relative; }
.rx-inline-action > summary { list-style: none; }
.rx-inline-action > summary::-webkit-details-marker { display: none; }
.rx-inline-action[open] { flex: 1 1 100%; order: 2; }
.rx-inline-action[open] > summary { margin-bottom: .5rem; }
.rx-inline-action-pop { width: 100%; min-width: 0; padding: .8rem;
  border: 1px solid var(--tblr-border-color); border-radius: .65rem;
  background: var(--tblr-bg-surface-secondary); }
.rx-request-table .rx-inline-action { position: static; }
.rx-request-table .rx-inline-action-pop { position: absolute; z-index: 8;
  right: 1rem; bottom: .75rem; left: auto;
  width: min(42rem, calc(100% - 2rem));
  min-width: min(34rem, calc(100% - 2rem)); max-width: calc(100% - 2rem);
  text-align: left; padding: 1rem; }
.rx-closing-edo-option { display: flex; align-items: flex-start; gap: .75rem;
  padding: .85rem; border: 1px solid #90bfff; border-radius: .7rem;
  background: #eef6ff; color: #174f8a; cursor: pointer; }
.rx-closing-card-edo { border: 2px solid #4299ff;
  box-shadow: 0 0 0 3px rgba(66,153,255,.12); }
.rx-closing-card-edo .card-header,
.rx-closing-card-edo .card-body { background: #eef6ff; }
.rx-closing-edo-option.is-active { border-color: #4299ff;
  background: #dcebff; box-shadow: inset 0 0 0 1px rgba(66,153,255,.2); }
.rx-closing-edo-option .form-check-input { flex: 0 0 auto; width: 1.25rem;
  height: 1.25rem; margin-top: .1rem; }
.rx-closing-edo-option small { display: block; margin-top: .15rem;
  color: var(--tblr-secondary); font-weight: 400; }
.rx-closing-documents { display: grid; gap: .45rem; margin-top: .55rem; }
.rx-closing-document { display: flex; align-items: center; gap: .6rem;
  min-width: 0; padding: .55rem .6rem; border: 1px solid var(--tblr-border-color);
  border-radius: .55rem; background: var(--tblr-bg-surface-secondary); }
.rx-closing-document-icon { display: inline-flex; flex: 0 0 auto;
  align-items: center; justify-content: center; width: 1.85rem; height: 1.85rem;
  border-radius: .45rem; background: rgba(47,179,68,.12); color: var(--tblr-success); }
.rx-closing-document-info { display: flex; flex: 1 1 auto; flex-direction: column;
  min-width: 0; line-height: 1.2; }
.rx-closing-document-name { overflow: hidden; font-weight: 600; text-overflow: ellipsis;
  white-space: nowrap; }
.rx-closing-document-meta { overflow: hidden; margin-top: .15rem;
  color: var(--tblr-secondary); font-size: .75rem; text-overflow: ellipsis;
  white-space: nowrap; }
.rx-closing-upload { margin-top: .85rem; padding: .65rem;
  border: 1px solid var(--tblr-border-color); border-radius: .65rem;
  background: var(--tblr-bg-surface-secondary); }
.rx-closing-upload-fields { display: grid; gap: .5rem; }
.rx-closing-upload-actions { display: flex; justify-content: flex-end;
  margin-top: .55rem; }
.rx-closing-upload-actions[hidden] { display: none !important; }
.rx-closing-upload-actions .btn:disabled { cursor: not-allowed; }
.rx-request-distribution > summary {
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; list-style: none; cursor: pointer; user-select: none;
}
.rx-request-distribution > summary::-webkit-details-marker { display: none; }
.rx-request-distribution .rx-details-chevron {
  display: inline-flex; color: var(--tblr-secondary);
  transition: transform .15s ease;
}
.rx-request-distribution[open] .rx-details-chevron { transform: rotate(180deg); }
.rx-request-distribution .rx-preview-group-row td {
  background: var(--tblr-bg-surface-secondary); color: var(--tblr-secondary);
  font-size: 12px; font-weight: 600; text-transform: uppercase;
  letter-spacing: .03em;
}
@media (max-width: 767.98px) {
  .rx-request-actions { min-width: 0; }
  .rx-request-actions > .btn, .rx-request-actions > details { flex: 1 1 auto; }
  .rx-request-actions summary.btn { width: 100%; }
}

/* === Сервисы: заметки сотрудников и компактный виджет === */
.zm-nav-badge { min-width: 1.35rem; height: 1.35rem; padding: 0 .35rem;
  display: inline-flex; align-items: center; justify-content: center; }
.zm-widget { position: fixed; z-index: 1080; top: 15vh; right: 1rem; }
.zm-widget-trigger { position: relative; display: inline-flex; align-items: center;
  justify-content: center; width: 3rem; height: 3rem; padding: 0;
  border: 0; border-radius: 50%; color: #fff; background: var(--tblr-primary);
  box-shadow: 0 .45rem 1.25rem rgba(32,107,196,.35); cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.zm-widget-trigger:hover, .zm-widget-trigger:focus-visible {
  transform: translateY(-2px); background: var(--tblr-primary-darken);
  box-shadow: 0 .65rem 1.5rem rgba(32,107,196,.4); }
.zm-widget-trigger:focus-visible { outline: 3px solid rgba(32,107,196,.25);
  outline-offset: 3px; }
.zm-widget-trigger .ti { font-size: 1.45rem; }
.zm-widget-badge { position: absolute; top: -.35rem; right: -.35rem;
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 1.3rem; height: 1.3rem; padding: 0 .3rem; border: 2px solid #fff;
  border-radius: 999px; color: #fff; background: var(--tblr-danger);
  font-size: 11px; font-weight: 700; line-height: 1; }
.zm-widget-panel { position: absolute; top: 0; right: 3.75rem;
  width: min(23rem, calc(100vw - 5.75rem)); max-height: 78vh;
  overflow-y: auto; box-shadow: 0 1rem 3rem rgba(24,36,51,.2); }
.zm-widget-panel[hidden] { display: none !important; }
.zm-card-preview { display: -webkit-box; overflow: hidden;
  -webkit-box-orient: vertical; -webkit-line-clamp: 3; white-space: pre-line; }
.zm-notes-grid > [class*="col-"] { min-width: 0; }
.zm-note-card { overflow: hidden; }
.zm-note-card .min-w-0 { min-width: 0 !important; }
.zm-pre { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.55; }
.zm-comment { padding: .85rem 0; }
.zm-comment + .zm-comment { border-top: 1px solid var(--tblr-border-color); }
.zm-attachment-image { height: 10rem; object-fit: cover;
  background: var(--tblr-bg-surface-secondary); }

/* Владелец: проверка панели с правами выбранного сотрудника. */
.op-widget { position: fixed; z-index: 1079; top: calc(15vh + 3.75rem);
  right: 1rem; }
.op-widget-trigger { position: relative; display: inline-flex; align-items: center;
  justify-content: center; width: 3rem; height: 3rem; padding: 0;
  border: 0; border-radius: 50%; color: #fff; background: #626976;
  box-shadow: 0 .45rem 1.25rem rgba(24,36,51,.25); cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease; }
.op-widget-trigger:hover, .op-widget-trigger:focus-visible {
  transform: translateY(-2px); background: #4b515c;
  box-shadow: 0 .65rem 1.5rem rgba(24,36,51,.32); }
.op-widget-trigger:focus-visible { outline: 3px solid rgba(98,105,118,.25);
  outline-offset: 3px; }
.op-widget.is-previewing .op-widget-trigger { background: var(--tblr-orange);
  box-shadow: 0 .45rem 1.25rem rgba(247,103,7,.35); }
.op-widget-trigger .ti { font-size: 1.4rem; }
.op-widget-trigger-photo { width: 100%; height: 100%; border-radius: 50%;
  object-fit: contain; background: #fff; }
.op-widget-initials { font-size: .82rem; font-weight: 800; letter-spacing: .02em; }
.op-widget-active-dot { position: absolute; right: -.1rem; bottom: -.1rem;
  width: .8rem; height: .8rem; border: 2px solid #fff; border-radius: 50%;
  background: var(--tblr-yellow); }
.op-widget-panel { position: absolute; top: 0; right: 3.75rem;
  width: min(25rem, calc(100vw - 5.75rem)); max-height: 78vh;
  overflow: hidden; box-shadow: 0 1rem 3rem rgba(24,36,51,.22); }
.op-widget-panel[hidden] { display: none !important; }
.op-widget-current, .op-widget-owner-state { display: flex; align-items: center;
  gap: .75rem; padding: .8rem 1rem; background: var(--tblr-bg-surface-secondary); }
.op-widget-owner-state { color: var(--tblr-secondary); font-size: .875rem; }
.op-widget-list { max-height: min(48vh, 28rem); overflow-x: hidden;
  overflow-y: auto; }
.op-widget-employee { display: flex; width: 100%; align-items: center; gap: .75rem;
  min-width: 0; overflow: hidden;
  padding: .7rem 1rem; border: 0; border-top: 1px solid var(--tblr-border-color);
  color: inherit; background: var(--tblr-bg-surface); cursor: pointer; }
.op-widget-employee .avatar { flex: 0 0 2.5rem; width: 2.5rem; height: 2.5rem; }
.op-widget-employee > .min-w-0 { min-width: 0 !important; width: 0; }
.op-widget-employee .d-flex > .text-truncate { min-width: 0; }
.op-widget-employee > .ti { flex: 0 0 auto; }
.op-widget-employee:hover, .op-widget-employee:focus-visible {
  background: var(--tblr-bg-surface-secondary); }
.op-widget-employee.active { background: rgba(247,103,7,.08); }
.op-widget-employee:disabled { cursor: not-allowed; opacity: .58; }
.op-widget-empty { padding: 1.25rem; text-align: center;
  border-top: 1px solid var(--tblr-border-color); }
.ac-employee-photo { flex-shrink: 0; object-fit: contain; background: #fff; }
@media (max-width: 575.98px) {
  .zm-widget { right: .75rem; }
  .zm-widget-panel { position: fixed; top: calc(15vh + 3.65rem);
    left: .75rem; right: .75rem; width: auto; max-height: calc(85vh - 4.5rem); }
  .op-widget { right: .75rem; }
  .op-widget-panel { position: fixed; top: calc(15vh + 7.4rem);
    left: .75rem; right: .75rem; width: auto;
    max-height: calc(85vh - 8.25rem); }
  .op-widget-list { max-height: calc(85vh - 19rem); }
  .zm-note-head { flex-wrap: wrap; }
}

/* === Единая карточка контрагента (2026-08-12) ===
   Контрагент — ключевой бизнес-объект: плотная рамка, боковой маркер и тень.
   Вложенные реквизиты, каналы и служебные блоки визуально тише и без теней. */
.rx-counterparty-object {
  position: relative;
  overflow: hidden;
  border: 2px solid #c8d5e3;
  border-left: 5px solid #5e7c99;
  border-radius: .9rem;
  background: var(--tblr-bg-surface);
  box-shadow: 0 .55rem 1.4rem rgba(31, 50, 73, .10);
}
.rx-counterparty-object-head {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 7.5rem;
  padding: 1.35rem 1.5rem;
  border-bottom: 1px solid var(--tblr-border-color);
  background: linear-gradient(135deg, #fff 0%, #f7fafe 100%);
}
.rx-counterparty-object-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 3.25rem;
  width: 3.25rem;
  height: 3.25rem;
  border-radius: .75rem;
  color: #315b83;
  background: #e9f1f9;
  font-size: 1.65rem;
}
.rx-counterparty-object-title { min-width: 0; flex: 1 1 auto; }
.rx-counterparty-object-title h1 {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: #1d2f43;
  font-size: 1.45rem;
  line-height: 1.25;
}
.rx-counterparty-object-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem 1rem;
  margin-top: .6rem;
  color: var(--tblr-secondary);
  font-size: .8rem;
}
.rx-counterparty-object-meta span { display: inline-flex; align-items: center; gap: .3rem; }
.rx-counterparty-object-edit { flex: 0 0 auto; }
.rx-counterparty-section {
  margin: 1.1rem;
  overflow: hidden;
  border: 1px solid var(--tblr-border-color);
  border-radius: .75rem;
  background: var(--tblr-bg-surface);
}
.rx-counterparty-section + .rx-counterparty-section { margin-top: 1.1rem; }
.rx-counterparty-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4.25rem;
  padding: .9rem 1.15rem;
  border-bottom: 1px solid var(--tblr-border-color);
  background: var(--tblr-bg-surface-secondary);
}
.rx-counterparty-section-head h3 { margin: 0; font-size: 1rem; }
.rx-counterparty-section-head p {
  margin: .18rem 0 0;
  color: var(--tblr-secondary);
  font-size: .8rem;
}
.rx-counterparty-section-fold > summary {
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-section-fold > summary::-webkit-details-marker { display: none; }
.rx-counterparty-section-fold:not([open]) > summary { border-bottom: 0; }
.rx-counterparty-section-fold[open] > summary .rx-counterparty-chevron {
  transform: rotate(180deg);
}
.rx-counterparty-section-body { padding: 1.05rem 1.15rem; }
.rx-counterparty-combined-part { min-width: 0; }
.rx-counterparty-combined-part + .rx-counterparty-combined-part {
  margin-top: 1.25rem;
  padding-top: 1.15rem;
  border-top: 2px solid #dce5ee;
}
.rx-counterparty-part-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: .7rem;
}
.rx-counterparty-part-head h4 {
  margin: 0;
  color: #24384d;
  font-size: .94rem;
}
.rx-counterparty-part-head p {
  margin: .15rem 0 0;
  color: var(--tblr-secondary);
  font-size: .78rem;
}
.rx-counterparty-role-picker {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
}
.rx-counterparty-role-picker label { display: block; cursor: pointer; }
.rx-counterparty-role-picker input { position: absolute; opacity: 0; pointer-events: none; }
.rx-counterparty-role-picker span {
  display: flex;
  align-items: center;
  min-height: 3rem;
  padding: .65rem .8rem;
  border: 1px solid #cbd6e2;
  border-radius: .6rem;
  background: #fff;
  font-weight: 600;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.rx-counterparty-role-picker input:checked + span {
  border-color: #66a6e7;
  color: #1262a8;
  background: #edf6ff;
  box-shadow: inset .25rem 0 #1f80d0;
}
.rx-counterparty-role-picker input:focus-visible + span {
  outline: 2px solid #8fc5f4;
  outline-offset: 2px;
}
.rx-counterparty-no-role { margin: 1.1rem; }
.rx-counterparty-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 2rem;
  margin: 0;
}
.rx-counterparty-info-grid > div {
  display: grid;
  grid-template-columns: minmax(8rem, .8fr) minmax(0, 1.2fr);
  align-items: baseline;
  gap: .65rem;
  min-width: 0;
  padding: .55rem 0;
  border-bottom: 1px solid var(--tblr-border-color-translucent, rgba(24,39,75,.08));
}
.rx-counterparty-info-grid .rx-counterparty-info-wide { grid-column: 1 / -1; }
.rx-counterparty-info-grid dt {
  color: var(--tblr-secondary);
  font-size: .78rem;
  font-weight: 500;
}
.rx-counterparty-info-grid dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--tblr-body-color);
  font-weight: 600;
}
.rx-counterparty-edit-form {
  padding: 1.15rem;
  border-top: 1px solid #9fc8f5;
  background: #f7fbff;
}
.rx-counterparty-edit-form[hidden] { display: none !important; }
.rx-counterparty-requisite {
  overflow: hidden;
  border: 1px solid #d1dbe6;
  border-radius: .65rem;
  background: #fff;
}
.rx-counterparty-requisite + .rx-counterparty-requisite { margin-top: .65rem; }
.rx-counterparty-requisite > summary {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-height: 4.25rem;
  padding: .75rem .9rem;
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-requisite > summary::-webkit-details-marker,
.rx-counterparty-inline-edit > summary::-webkit-details-marker,
.rx-counterparty-add-requisite > summary::-webkit-details-marker,
.rx-counterparty-fold > summary::-webkit-details-marker { display: none; }
.rx-counterparty-requisite[open] > summary {
  border-bottom: 1px solid var(--tblr-border-color);
  background: #f9fbfd;
}
.rx-counterparty-requisite-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.4rem;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: .55rem;
  color: #315b83;
  background: #e9f1f9;
  font-size: 1.2rem;
}
.rx-counterparty-requisite-name { min-width: 0; flex: 1 1 auto; }
.rx-counterparty-requisite-name strong,
.rx-counterparty-requisite-name small { display: block; min-width: 0; overflow-wrap: anywhere; }
.rx-counterparty-requisite-name small { margin-top: .15rem; color: var(--tblr-secondary); }
.rx-counterparty-requisite-tags { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: .35rem; }
.rx-counterparty-chevron { flex: 0 0 auto; transition: transform .16s ease; }
.rx-counterparty-requisite[open] .rx-counterparty-chevron,
.rx-counterparty-fold[open] > summary > .ti-chevron-down { transform: rotate(180deg); }
.rx-counterparty-requisite-body { padding: 1rem; }
.rx-counterparty-requisite.is-archived { opacity: .55; }
.rx-counterparty-inline-edit > summary {
  display: inline-flex;
  width: auto;
  list-style: none;
}
.rx-counterparty-add-requisite { margin-top: .85rem; padding-top: .8rem; border-top: 1px dashed #bdc9d6; }
.rx-counterparty-add-requisite > summary {
  display: inline-flex;
  align-items: center;
  color: var(--tblr-primary);
  font-weight: 600;
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-empty-state {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  padding: .9rem;
  border: 1px dashed #c5d0dc;
  border-radius: .65rem;
  color: var(--tblr-secondary);
  background: #fafbfd;
}
.rx-counterparty-empty-state > .ti { margin-top: .1rem; color: #63809d; font-size: 1.3rem; }
.rx-counterparty-empty-state strong { color: var(--tblr-body-color); }
.rx-counterparty-empty-state p { margin: .15rem 0 0; }
.rx-counterparty-table { margin: 0; border: 1px solid var(--tblr-border-color); }
.rx-counterparty-terms { padding: .85rem; border-radius: .6rem; background: var(--tblr-bg-surface-secondary); }
.rx-counterparty-term { display: flex; align-items: baseline; gap: .55rem; padding: .45rem 0; }
.rx-counterparty-term + .rx-counterparty-term { border-top: 1px solid var(--tblr-border-color); }
.rx-counterparty-role-editor > summary,
.rx-counterparty-add-channel > summary {
  display: inline-flex;
  width: auto;
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-role-editor > summary::-webkit-details-marker,
.rx-counterparty-add-channel > summary::-webkit-details-marker,
.rx-counterparty-channel-editor > summary::-webkit-details-marker { display: none; }
.rx-counterparty-role-form {
  padding: 1rem;
  border: 1px solid #c9d8e6;
  border-radius: .7rem;
  background: #f8fbfe;
}
.rx-counterparty-subtitle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.rx-counterparty-subtitle > span,
.rx-counterparty-subtitle > div > span {
  display: block;
  color: var(--tblr-secondary);
  font-size: .78rem;
}
.rx-counterparty-model-picker {
  max-height: 18rem;
  margin-top: .55rem;
  overflow: auto;
  border: 1px solid var(--tblr-border-color);
  border-radius: .6rem;
  background: #fff;
}
.rx-counterparty-model-option {
  display: flex;
  align-items: flex-start;
  gap: .7rem;
  padding: .7rem .8rem;
  cursor: pointer;
}
.rx-counterparty-model-option + .rx-counterparty-model-option {
  border-top: 1px solid var(--tblr-border-color);
}
.rx-counterparty-model-option:hover { background: #f5f9fd; }
.rx-counterparty-model-option > input { flex: 0 0 auto; margin-top: .18rem; }
.rx-counterparty-model-option > span { min-width: 0; }
.rx-counterparty-model-option strong,
.rx-counterparty-model-option small { display: block; }
.rx-counterparty-model-option small {
  margin-top: .12rem;
  overflow: hidden;
  color: var(--tblr-secondary);
  font-size: .78rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rx-counterparty-payment-terms { margin-top: .6rem; }
.rx-counterparty-payment-term {
  display: grid;
  grid-template-columns: 2rem minmax(14rem, 1fr) minmax(7rem, .25fr) minmax(9rem, .3fr) auto;
  align-items: end;
  gap: .7rem;
  padding: .65rem 0;
  border-top: 1px solid var(--tblr-border-color);
}
.rx-counterparty-payment-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.8rem;
  height: 1.8rem;
  margin-bottom: .32rem;
  border-radius: 50%;
  color: #315b83;
  background: #e9f1f9;
  font-weight: 700;
}
.rx-counterparty-channel-editor {
  overflow: hidden;
  border: 1px solid var(--tblr-border-color);
  border-radius: .6rem;
  background: #fff;
}
.rx-counterparty-channel-editor + .rx-counterparty-channel-editor { margin-top: .55rem; }
.rx-counterparty-channel-editor[open] { border-color: #9fc3e7; }
.rx-counterparty-channel-editor.is-archived { opacity: .62; }
.rx-counterparty-channel {
  display: grid;
  grid-template-columns: minmax(12rem, 1fr) auto auto auto auto;
  align-items: center;
  gap: 1rem;
  min-height: 3.7rem;
  padding: .65rem .8rem;
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-channel strong,
.rx-counterparty-channel small { display: block; }
.rx-counterparty-channel small { margin-top: .1rem; color: var(--tblr-secondary); }
.rx-counterparty-channel-editor[open] > .rx-counterparty-channel {
  border-bottom: 1px solid var(--tblr-border-color);
  background: #f8fbfe;
}
.rx-counterparty-channel-editor[open] > .rx-counterparty-channel > .ti-chevron-down {
  transform: rotate(180deg);
}
.rx-counterparty-channel-form { padding: 1rem; }
.rx-counterparty-access-inherited {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
  padding: 1rem;
  border: 1px solid #b9d7f4;
  border-radius: .7rem;
  background: #f2f8ff;
}
.rx-counterparty-access-inherited p { margin: .2rem 0 0; color: var(--tblr-secondary); }
.rx-counterparty-access-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2.4rem;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: .6rem;
  color: #1971c2;
  background: #dceeff;
  font-size: 1.25rem;
}
.rx-counterparty-access-heading {
  display: flex;
  align-items: flex-start;
  gap: .8rem;
}
.rx-counterparty-access-heading strong,
.rx-counterparty-access-heading p { display: block; }
.rx-counterparty-access-heading p {
  margin: .15rem 0 0;
  color: var(--tblr-secondary);
  font-size: .82rem;
}
.rx-counterparty-access-modes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .7rem;
}
.rx-counterparty-access-modes-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.rx-counterparty-access-modes label { display: block; cursor: pointer; }
.rx-counterparty-access-modes input { position: absolute; opacity: 0; pointer-events: none; }
.rx-counterparty-access-modes label > span {
  display: grid;
  grid-template-columns: 1.7rem minmax(0, 1fr);
  gap: .05rem .55rem;
  min-height: 5.25rem;
  padding: .8rem;
  border: 1px solid #cbd6e2;
  border-radius: .65rem;
  background: #fff;
}
.rx-counterparty-access-modes label > span > .ti {
  grid-row: 1 / 3;
  margin-top: .15rem;
  color: #63809d;
  font-size: 1.25rem;
}
.rx-counterparty-access-modes small { color: var(--tblr-secondary); font-size: .75rem; }
.rx-counterparty-access-modes em {
  grid-column: 2;
  justify-self: start;
  margin-top: .35rem;
  padding: .12rem .42rem;
  border-radius: 1rem;
  color: #1769aa;
  background: #dceeff;
  font-size: .68rem;
  font-style: normal;
  font-weight: 600;
}
.rx-counterparty-access-modes input:checked + span {
  border-color: #66a6e7;
  background: #edf6ff;
  box-shadow: inset .25rem 0 #1f80d0;
}
.rx-counterparty-access-search { width: min(17rem, 100%); }
.rx-counterparty-access-selection {
  padding: .85rem;
  border: 1px solid #d7e0e9;
  border-radius: .7rem;
  background: #f8fafc;
}
.rx-counterparty-access-employees {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .5rem;
  max-height: 15rem;
  margin-top: .7rem;
  overflow: auto;
}
.rx-counterparty-access-employees label {
  position: relative;
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr) 1.35rem;
  align-items: center;
  gap: .6rem;
  min-width: 0;
  padding: .58rem .65rem;
  border: 1px solid var(--tblr-border-color);
  border-radius: .55rem;
  background: #fff;
  cursor: pointer;
}
.rx-counterparty-access-employees input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}
.rx-counterparty-access-employees label:has(input:checked) {
  border-color: #8dbbe8;
  background: #f1f7fd;
  box-shadow: inset .2rem 0 #1f80d0;
}
.rx-counterparty-access-avatar,
.rx-counterparty-access-viewers b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
  color: #315b83;
  background: #e6eef6;
  font-size: .75rem;
  font-weight: 700;
}
.rx-counterparty-access-person { min-width: 0; }
.rx-counterparty-access-person strong,
.rx-counterparty-access-person small { display: block; overflow-wrap: anywhere; }
.rx-counterparty-access-employees small { color: var(--tblr-secondary); font-size: .72rem; }
.rx-counterparty-access-employees label > .ti-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.3rem;
  height: 1.3rem;
  border: 1px solid #c8d3de;
  border-radius: 50%;
  color: transparent;
  font-size: .85rem;
}
.rx-counterparty-access-employees label:has(input:checked) > .ti-check {
  border-color: #1f80d0;
  color: #fff;
  background: #1f80d0;
}
.rx-counterparty-access-empty { grid-column: 1 / -1; color: var(--tblr-secondary); }
.rx-counterparty-access-safety {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  color: #556b80;
  font-size: .78rem;
}
.rx-counterparty-access-safety > .ti { margin-top: .08rem; color: #2580c6; font-size: 1rem; }
.rx-counterparty-access-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: .85rem;
  border-top: 1px solid var(--tblr-border-color);
}
.rx-counterparty-access-actions > span { color: var(--tblr-secondary); font-size: .76rem; }
.rx-counterparty-access-readonly {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .8rem;
  border: 1px solid #d7e3ef;
  border-radius: .65rem;
  background: #f7fafc;
}
.rx-counterparty-access-readonly > div { display: flex; align-items: flex-start; gap: .7rem; }
.rx-counterparty-access-readonly p { margin: .15rem 0 0; color: var(--tblr-secondary); font-size: .78rem; }
.rx-counterparty-access-state-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: .55rem;
  color: #2474b5;
  background: #e4f0fb;
}
.rx-counterparty-access-viewers { display: flex; flex-wrap: wrap; gap: .5rem; }
.rx-counterparty-access-viewers > span {
  display: flex;
  align-items: center;
  gap: .5rem;
  padding: .35rem .55rem .35rem .35rem;
  border: 1px solid var(--tblr-border-color);
  border-radius: .6rem;
  background: #fff;
}
.rx-counterparty-access-viewers b { width: 1.75rem; height: 1.75rem; }
.rx-counterparty-access-viewers i { font-style: normal; font-size: .78rem; }
.rx-counterparty-access-viewers small { display: block; color: var(--tblr-secondary); font-size: .68rem; }
.rx-counterparty-access-rule {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin: 0;
}
.rx-counterparty-access-names {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin-top: .65rem;
}
.rx-counterparty-access-names span {
  padding: .25rem .5rem;
  border: 1px solid var(--tblr-border-color);
  border-radius: .4rem;
  font-size: .76rem;
}
.rx-counterparty-access-modes label > span {
  min-height: 4.25rem;
  padding: .65rem;
}
.rx-counterparty-access-employees {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  max-height: 12rem;
}
.rx-counterparty-access-employees label {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  padding: .5rem .6rem;
  background: #fff;
}
.rx-counterparty-access-employees input {
  position: static;
  width: 1rem;
  height: 1rem;
  margin-top: .15rem;
  opacity: 1;
}
.rx-counterparty-access-employees label:has(input:checked) {
  border-color: #9bbfe2;
  background: #f6faff;
  box-shadow: none;
}
.rx-counterparty-access-employees label > span strong,
.rx-counterparty-access-employees label > span small { display: block; }
.rx-counterparty-fold {
  margin: 0 1.1rem 1.1rem;
  border: 1px solid var(--tblr-border-color);
  border-radius: .7rem;
  background: var(--tblr-bg-surface);
}
.rx-counterparty-fold > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4rem;
  padding: .8rem 1rem;
  list-style: none;
  cursor: pointer;
}
.rx-counterparty-fold > summary span { display: flex; align-items: center; min-width: 0; }
.rx-counterparty-fold > summary small { margin-left: .7rem; color: var(--tblr-secondary); font-weight: 400; }
.rx-counterparty-fold > summary > .ti-chevron-down { transition: transform .16s ease; }
.rx-counterparty-fold-body { padding: 1rem; border-top: 1px solid var(--tblr-border-color); }
.rx-counterparty-history > div {
  position: relative;
  display: grid;
  grid-template-columns: .75rem minmax(0, 1fr);
  gap: 0 .65rem;
  padding-bottom: .85rem;
}
.rx-counterparty-history > div:last-child { padding-bottom: 0; }
.rx-counterparty-history > div > span {
  width: .65rem;
  height: .65rem;
  margin-top: .25rem;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #5e7c99;
  box-shadow: 0 0 0 1px #5e7c99;
}
.rx-counterparty-history small { grid-column: 2; color: var(--tblr-secondary); }
@media (max-width: 767.98px) {
  .rx-counterparty-object-head { align-items: flex-start; flex-wrap: wrap; padding: 1rem; }
  .rx-counterparty-object-title { flex-basis: calc(100% - 4.5rem); }
  .rx-counterparty-object-edit { width: 100%; }
  .rx-counterparty-info-grid { grid-template-columns: 1fr; }
  .rx-counterparty-info-grid .rx-counterparty-info-wide { grid-column: auto; }
  .rx-counterparty-section { margin: .75rem; }
  .rx-counterparty-section-head { align-items: flex-start; flex-direction: column; }
  .rx-counterparty-part-head { align-items: flex-start; flex-direction: column; }
  .rx-counterparty-requisite > summary { align-items: flex-start; flex-wrap: wrap; }
  .rx-counterparty-requisite-tags { width: calc(100% - 3.2rem); margin-left: 3.15rem; justify-content: flex-start; }
  .rx-counterparty-chevron { margin-left: auto; }
  .rx-counterparty-channel { grid-template-columns: 1fr auto; gap: .45rem .75rem; }
  .rx-counterparty-payment-term { grid-template-columns: 2rem 1fr; }
  .rx-counterparty-payment-term > div:nth-of-type(n+2) { grid-column: 2; }
  .rx-counterparty-payment-term > button { grid-column: 2; justify-self: end; }
  .rx-counterparty-access-modes,
  .rx-counterparty-access-employees { grid-template-columns: 1fr; }
  .rx-counterparty-access-actions { align-items: stretch; flex-direction: column; }
  .rx-counterparty-access-actions .btn { width: 100%; }
  .rx-counterparty-subtitle { align-items: flex-start; flex-direction: column; }
  .rx-counterparty-fold { margin: 0 .75rem .75rem; }
  .rx-counterparty-fold > summary small { display: none; }
}
@media (max-width: 479.98px) {
  .rx-counterparty-info-grid > div { grid-template-columns: 1fr; gap: .15rem; }
  .rx-counterparty-requisite-tags { width: 100%; margin-left: 0; }
  .rx-counterparty-section-body { padding: .85rem; }
  .rx-counterparty-role-picker { grid-template-columns: 1fr; }
}
