/* «Закуп» (static/zakup.js). Каркас — общий fd-* (findyn.css): шапка и фильтры неподвижны,
   прокручивается только таблица. Показатели — одна панель rp-grid (style.css), 6 ячеек:
   закрывается без дыр и на 3, и на 2, и на 1 колонку. */
.zk-main{gap:0}
.zk-warn{display:none;gap:12px;flex-wrap:wrap;padding:5px var(--sp-4);background:var(--warn-soft);color:var(--warn);
  font-size:var(--fs-cap);border-bottom:1px solid var(--line)}
.zk-warn.on{display:flex}
.zk-kpi{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line)}
.zk-grid{border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.zk-q input{width:200px}
.zk-chk{display:inline-flex;align-items:center;gap:6px;height:32px;font-size:13px;cursor:pointer}

/* таблица: две строки шапки — группа колонок над мерами; обе прилипают */
.zk-table .zk-h1 th{height:22px;box-sizing:border-box}
.zk-table .zk-h2 th{top:22px;cursor:pointer}
.zk-table thead .fd-c1{vertical-align:bottom}
.zk-table th.zk-gh{text-align:center;font-size:var(--fs-cap);border-left:1px solid var(--line-strong)}
.zk-table th.zk-g-dem{background:#dbe8f7}.zk-table th.zk-g-stk{background:#dcefd2}
.zk-table th.zk-g-need{background:#fbe7a6}.zk-table th.zk-g-pbi{background:#e8e2f4}
.zk-table td.zk-t{text-align:left}
.zk-table td.zk-sum{font-weight:700}
.zk-table td.zk-need{font-weight:700;color:var(--bad)}
.zk-table td.zk-ok{color:var(--ok)}.zk-table td.zk-warn{color:var(--warn)}.zk-table td.zk-bad{color:var(--bad)}
.zk-table td.zk-byplan{font-style:italic;color:#5b4fb3}
.zk-table td.zk-oos{background:var(--warn-soft)}
.zk-table tr.zk-leaf{cursor:pointer}
.zk-table tr.zk-leaf td.fd-c1{font-size:12px}
.zk-art{display:inline-flex;flex-direction:column;vertical-align:top;max-width:280px}
.zk-art b{font-weight:600;white-space:normal;line-height:1.25}
.zk-n{font-size:10px;margin-left:4px}
.zk-pill{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;background:var(--panel2);color:var(--muted);white-space:nowrap}
.zk-pill.ok{background:var(--ok-soft);color:var(--ok)}
.zk-pill.warn{background:var(--warn-soft);color:var(--warn)}
.zk-pill.bad{background:var(--bad-soft);color:var(--bad)}
.zk-outs{display:inline-block;padding:0 5px;border-radius:4px;font-size:10px;font-weight:700;background:#eceafe;color:#4f46e5}

.zk-views{display:flex;gap:4px}
.zk-table th.zk-g-wk{background:#e3f1ee}
.zk-budget{width:150px}
.zk-dtable .fd-c1{width:360px;min-width:360px;max-width:360px}
.zk-table td.zk-wrapcell{white-space:normal;max-width:320px;line-height:1.3}
/* материалы артикула в дереве: название — в 2+ строки, расшифровка — одной строкой справа */
.zk-table tr.zk-matrow td,.zk-table tr.zk-mathead td{background:#fafbfd;font-size:12px}
.zk-table tr.zk-matrow td.fd-c1{white-space:normal;line-height:1.3}
.zk-table td.zk-matcell{white-space:nowrap;color:var(--text)}
.zk-table tr.zk-matshort td{background:var(--bad-soft)}
.zk-table tr.zk-matouts td{background:#f5f4ff}
/* вид «Материалы»: длинные названия компонентов — в 2+ строки, а не обрезка */
.zk-mtable .fd-c1{width:380px;min-width:380px;max-width:380px}
.zk-mname{white-space:normal;line-height:1.3}
.zk-mname>span{display:inline-block;vertical-align:top;max-width:330px}
.zk-table tr.zk-sub td{background:#fafbfc;font-size:12px}
.zk-table tr.zk-outsline td.fd-c1{background:#f5f4ff}

/* расшифровка артикула и методика — панель fc-drawer (fincheck.css) */
.zk-artcards{margin-bottom:var(--sp-3)}
.zk-span2{grid-column:span 2}
.zk-wrap{white-space:normal !important}
.zk-bases{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:6px 0 8px}
/* состав: название компонента переносится на 2+ строки (в fincheck.css первая колонка — nowrap) */
.fc-tbl.zk-comp td:first-child{white-space:normal;min-width:300px;line-height:1.35}
.fc-tbl.zk-comp td{vertical-align:top}
.zk-calc td:first-child{width:190px}
.zk-calc td.zk-num{text-align:right;font-weight:600;font-variant-numeric:tabular-nums;width:110px}
.zk-calc tr.zk-zero td{color:var(--muted)}
.zk-calc tr.zk-sumrow td,.fc-tbl tr.zk-sumrow td{font-weight:700;border-top:1px solid var(--line-strong)}
.fc-tbl tr.zk-negrow td{color:var(--bad)}
.fc-tbl tr.zk-me td{background:#f2f7fb;font-weight:600}
.fc-tbl tr.zk-outsrow td{background:#f5f4ff}
.fc-tbl tr.zk-limrow td{background:var(--bad-soft)}
.zk-mt{margin-top:10px}
.zk-p{font-size:13px;line-height:1.45;margin:6px 0 10px}
.fc-panel.zk-wide{width:min(1240px,100%)}
.zk-lead{font-size:12px;line-height:1.5;margin:4px 0 0}
.zk-method h5{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#3b4a5a;margin:18px 0 8px;padding-bottom:3px;border-bottom:1px solid var(--line)}
.zk-chain2{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap}
.zk-st{flex:1 1 0;min-width:130px;background:var(--panel);border:1px solid var(--line);border-top:3px solid #0a66c2;border-radius:6px;padding:9px 11px}
.zk-st.minus{border-top-color:#b7791f}.zk-st.res{border-top-color:#1a7f37}
.zk-stl{font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:600}
.zk-stv{font-size:18px;font-weight:700;margin-top:4px;line-height:1.1}
.zk-sts{font-size:11px;color:var(--muted);margin-top:3px;line-height:1.4}
.zk-ar{align-self:center;color:#9aa0a6;font-size:15px;font-weight:700}
.zk-gr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin-bottom:10px}
.zk-gr>div{background:var(--panel);padding:10px 12px;font-size:12px;line-height:1.5}
.zk-gr b{display:block;margin-bottom:4px;color:#0a3069}
.zk-gr code{display:block;margin:4px 0;background:var(--panel2);border:1px solid var(--line);border-radius:4px;padding:2px 6px;font-size:11px}
.zk-mtab{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed;background:var(--panel)}
.zk-mtab th{background:#eef3fa;color:#3b4a5a;font-size:10px;text-transform:uppercase;letter-spacing:.02em;font-weight:600;padding:6px 8px;text-align:left;border-bottom:1px solid var(--line)}
.zk-mtab th.n,.zk-mtab td.n{text-align:right;font-variant-numeric:tabular-nums}
.zk-mtab td{padding:7px 8px;border-bottom:1px solid #f0f2f4;vertical-align:top;line-height:1.5}
.zk-mtab tr.zk-mg td{background:var(--panel2);font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#3b4a5a;padding:5px 8px}
.zk-mtab tr.zk-msel td{background:#eef7ff}
.zk-mtab tr.zk-mtot td{font-weight:700;background:var(--panel2);border-top:2px solid var(--line)}
.zk-ind td.zk-mnm{font-weight:600;width:15%}
.zk-mcur{font-weight:400;color:#0a66c2;font-size:12px;margin-top:3px}
.zk-mf{font-family:Consolas,monospace;color:#0a3069;font-size:11px}
.zk-ms{color:var(--muted);font-family:Consolas,monospace;font-size:10px;word-break:break-word}
.zk-ind th:nth-child(1){width:16%}.zk-ind th:nth-child(2){width:28%}.zk-ind th:nth-child(3){width:22%}
.zk-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.zk-rule{background:var(--panel);border:1px solid var(--line);border-left:3px solid #0a66c2;border-radius:0 5px 5px 0;padding:9px 11px;font-size:12px;line-height:1.5}
.zk-rule b{display:block;margin-bottom:3px}
.zk-rule.warn{border-left-color:#b7791f;background:#fffdf5}
@media (max-width:900px){.zk-gr,.zk-rules{grid-template-columns:1fr}}
