/* Панель «Фильтр» воронок — всплывающее окно под кнопкой, на телефоне шторка снизу (20.10.2026).
   Логика — js/91_dz6-filters.js. Для всех (рабочий вид и «Лаборатория» обеих версий): прежняя
   простыня сдвигала доску — это поломка вида, а не проба. Цвета только токенами.
   Откат: убрать строку dz6-filters.css в index.html и js/91_dz6-filters.js. */

/* ─── окно ─── */
#platform #pfFilters.dz6-host{display:none}
#platform #pfFilters.dz6-host.open{display:flex;flex-direction:column;position:fixed;z-index:290;
  left:var(--dz6-l,auto);right:auto;top:var(--dz6-t,120px);bottom:auto;width:var(--dz6-w,560px);max-height:var(--dz6-mh,70vh);
  margin:0;padding:0;gap:0;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:14px;
  box-shadow:var(--sh-pop);overflow:hidden;animation:dz6In .16s cubic-bezier(.23,1,.32,1) both}
#platform #pfFilters.dz6-host.open>:not(#dz6Fp){display:none!important}
#platform #pfFilters.dz6-host.open>#dz6Fp{width:auto;flex:1 1 auto}
@keyframes dz6In{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.dz6-fp{display:flex;flex-direction:column;min-height:0;max-height:inherit}
.dz6-i{flex:none;display:inline-block}
.dz6-fp-h{display:flex;align-items:center;gap:8px;padding:10px 8px 10px 16px;border-bottom:1px solid var(--line);flex:none}
.dz6-fp-h b{font-size:15px;font-weight:650;color:var(--ink)}
.dz6-fp-c:not(:empty){min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--gold-fill);color:var(--on-gold);
  font-size:11.5px;font-weight:700;display:inline-grid;place-items:center;font-variant-numeric:tabular-nums}
.dz6-grab{display:none}
.dz6-x{width:36px;height:36px;display:inline-grid;place-items:center;border:0;border-radius:10px;background:none;color:var(--muted);cursor:pointer}
.dz6-x:hover{background:var(--panel2);color:var(--ink)}
.dz6-fp-b{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.dz6-fp-f{flex:none;display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--line);background:var(--panel)}
.dz6-fp-n,.dz6-fp-n .dz-fp-n{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
#platform #pfFilters .dz6-fp-f .btn{width:auto;height:38px;display:inline-flex;align-items:center;gap:6px;padding:0 16px;font-size:13.5px;border-radius:10px}
#pfFilters :is(button,label,input,select):focus-visible{outline:2px solid var(--gold);outline-offset:1px}

/* ─── разделы-аккордеоны ─── */
.dz6-sec{border-bottom:1px solid var(--line)}
.dz6-sec:last-child{border-bottom:0}
.dz6-sec-h{width:100%;min-height:46px;display:flex;align-items:center;gap:8px;padding:0 16px;border:0;background:none;color:var(--ink);
  font:inherit;font-size:13.5px;font-weight:600;text-align:left;cursor:pointer}
.dz6-sec-h:hover{background:var(--panel2)}
.dz6-sec-v{margin-left:auto;font-size:12.5px;font-weight:600;color:var(--ink-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.dz6-sec-h .dz6-i{color:var(--muted);transition:transform .16s}
.dz6-sec-v:empty+.dz6-i{margin-left:auto}
.dz6-sec.open>.dz6-sec-h .dz6-i{transform:rotate(180deg)}
.dz6-sec-b{display:none;padding:2px 16px 14px}
.dz6-sec.open>.dz6-sec-b,.dz6-sec.dz6-probe>.dz6-sec-b{display:block}
.dz6-lbl{display:block;font-size:12px;font-weight:600;color:var(--muted)}
.dz6-row{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.dz6-row:last-child{margin-bottom:0}

/* ─── «Ответственный» ─── */
.dz6-rs-sel{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.dz6-rs-sel:empty{display:none}
.dz6-badge{display:inline-flex;align-items:center;gap:6px;height:30px;max-width:100%;padding:0 8px 0 4px;border-radius:99px;cursor:pointer;
  border:1px solid color-mix(in srgb,var(--gold) 40%,transparent);background:var(--soft-gold);color:var(--ink-gold);font:inherit;font-size:12.5px;font-weight:600}
.dz6-badge span:not(.dz2b-ava){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dz6-badge:not(:has(.dz2b-ava)){padding-left:11px}
.dz6-badge .dz6-i{opacity:.7}
.dz6-badge:hover{border-color:var(--gold)}
.dz6-badge .dz2b-ava{width:22px;height:22px}
.dz6-rs-box{display:flex;align-items:center;gap:8px;height:40px;padding:0 4px 0 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);color:var(--muted);cursor:text}
.dz6-rs-box:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px var(--soft-gold)}
#pfFilters .dz6-rs-box input{flex:1 1 auto;min-width:0;width:auto;height:100%;border:0!important;outline:0;background:none!important;box-shadow:none!important;border-radius:0;color:var(--ink);font:inherit;font-size:14px;padding:0!important}
#pfFilters .dz6-rs-box input:focus-visible{outline:0}
.dz6-rs-tog{width:32px;height:32px;display:inline-grid;place-items:center;border:0;border-radius:8px;background:none;color:var(--muted);cursor:pointer}
.dz6-rs-tog:hover{background:var(--panel);color:var(--ink)}
.dz6-rs-open .dz6-rs-tog .dz6-i{transform:rotate(180deg)}
.dz6-rs-list{display:none;margin-top:6px;max-height:264px;overflow:auto;overscroll-behavior:contain;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.dz6-rs-open .dz6-rs-list{display:block}
.dz6-rs-off>:not(.dz6-rs-legacy){display:none}
.dz6-rs:not(.dz6-rs-off)>.dz6-rs-legacy{display:none}
.dz6-empty{padding:12px;font-size:13px;color:var(--muted);text-align:center}

/* строка выбора: сотрудник, этап */
.dz6-opt{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:4px 10px;border:0;border-radius:8px;
  background:none;color:var(--ink);font:inherit;font-size:13.5px;text-align:left;cursor:pointer;user-select:none}
.dz6-opt:hover{background:var(--panel2)}
.dz6-opt.on{font-weight:600}
.dz6-opt-t{min-width:0;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dz6-opt .dz2b-ava{width:26px;height:26px;font-size:10.5px}
.dz6-tick{flex:none;color:var(--ink-gold);opacity:0}
.dz6-opt.on .dz6-tick{opacity:1}
.dz6-opt input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.dz6-opt:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:-2px}

/* ─── «Этап»: галочка, цветная точка, число карточек ─── */
.dz6-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px}
.dz6-box{flex:none;width:18px;height:18px;border-radius:5px;border:1.5px solid color-mix(in srgb,var(--muted) 70%,transparent);display:inline-grid;place-items:center;color:transparent;background:var(--panel)}
.dz6-opt.on .dz6-box{background:var(--gold-fill);border-color:var(--gold-fill);color:var(--on-gold)}
.dz6-dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--c,var(--muted))}
.dz6-st{gap:9px;min-height:32px;padding:2px 8px}
.dz6-n{flex:none;font-size:12px;color:var(--muted);font-weight:500;font-variant-numeric:tabular-nums}

/* ─── сегменты и метки ─── */
.dz6-seg{display:inline-flex;flex-wrap:wrap;gap:2px;padding:3px;border-radius:10px;background:var(--panel2);align-self:flex-start;max-width:100%}
.dz6-seg>button{height:32px;padding:0 13px;border:0;border-radius:8px;background:none;color:var(--muted);font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}
.dz6-seg>button:hover{color:var(--ink)}
.dz6-seg>button.on{background:var(--panel);color:var(--ink);font-weight:600;box-shadow:var(--sh-1)}
.dz6-chips{display:flex;flex-wrap:wrap;gap:6px}
.dz6-chip{position:relative;display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--line);border-radius:99px;
  background:var(--panel);color:var(--ink);font-size:13px;cursor:pointer;user-select:none}
.dz6-chip:hover{border-color:color-mix(in srgb,var(--gold) 45%,var(--line))}
.dz6-chip.on{background:var(--soft-gold);border-color:color-mix(in srgb,var(--gold) 55%,transparent);color:var(--ink-gold);font-weight:600}
.dz6-chip input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.dz6-chip:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:1px}

/* ─── «Объект»: сетка полей «от — до» ─── */
.dz6-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.dz6-cell{display:flex;flex-direction:column;gap:6px;min-width:0}
.dz6-cell-price{grid-column:1/-1}
#pfFilters .dz6-cell .pf-frange{display:flex;align-items:center;gap:6px;min-width:0}
#pfFilters .dz6-cell .pf-frange>span:not(.pf-dash){display:none}
#pfFilters .dz6-cell .pf-frange input{flex:1 1 0;min-width:0;width:auto!important;height:38px;box-sizing:border-box;font-size:14px}
#pfFilters .dz6-cell select,#pfFilters .dz6-cell #pfRegion{width:100%!important;max-width:none!important;height:38px;box-sizing:border-box;font-size:14px!important;
  background:var(--panel2)!important;border:1px solid var(--line)!important;border-radius:var(--r-sm)!important;color:var(--ink)!important;padding:0 9px!important}
#pfFilters .dz6-cell #pfRegionWrap{display:flex!important;width:100%}
#pfFilters .dz6-cell #pfRegionWrap>span:first-child{display:none}
#pfFilters .dz6-cell #pfWtFilter{display:flex!important;flex-direction:column;width:100%}
#pfFilters .dz6-cell #pfWtFilter>button{width:100%;height:38px;justify-content:flex-start;background:var(--panel2)!important;font-size:14px!important}
#pfFilters #dz6Fp #pfWtPanel,#pfFilters #dz6Fp #pfRespPanel,#pfFilters #dz6Fp [id^="pfCsiF_"]{position:static!important;box-shadow:none!important;margin-top:6px;min-width:0!important;max-height:240px;overflow:auto}

/* ─── «Трейд-ин» и «Показы и локаторы» ─── */
#pfFilters #dz6S_csi #pfCsiFilters{margin:0!important;padding:0!important;border:0!important;gap:8px!important;flex-direction:column;align-items:stretch!important}
#pfFilters #dz6S_csi #pfCsiFilters>span:first-child{display:none}
#pfFilters #dz6S_csi #pfCsiFilters>div{width:100%}
#pfFilters #dz6S_csi #pfCsiFilters>div>button{width:100%;justify-content:flex-start}
#pfFilters #dz6S_csi #pfCsiFilters button{min-height:38px}
#pfFilters #dz6S_csi #pfCsiFilters label{justify-content:space-between}
#pfFilters #dz6S_csi #pfCsiFilters select{min-height:38px;flex:1 1 auto}
#pfFilters #dz6S_more{display:none;flex-direction:column;gap:8px}
#pfFilters .dz6-sec.open>#dz6S_more,#pfFilters .dz6-sec.dz6-probe>#dz6S_more{display:flex}
#pfFilters #dz6S_more>button{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;min-height:44px;padding:0 12px;margin:0;
  border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--ink);font-size:13.5px;font-weight:500;text-align:left}
#pfFilters #dz6S_more>button[style*="display: none"],#pfFilters #dz6S_more>button[style*="display:none"]{display:none!important}
#pfFilters #dz6S_more>button:hover{border-color:color-mix(in srgb,var(--gold) 45%,var(--line))}
/* «Запросы на показы» — переключатель: тот же класс .active, что ставит js/09 */
#pfFilters #dz6S_more #pfShowReqBtn::after{content:"";margin-left:auto;flex:none;width:38px;height:22px;border-radius:99px;background-color:var(--line);
  background-image:radial-gradient(circle at 11px 50%,var(--panel) 8px,transparent 8.5px);transition:background-color .15s}
#pfFilters #dz6S_more #pfShowReqBtn.active{background:var(--panel);border-color:color-mix(in srgb,var(--gold) 55%,var(--line));color:var(--ink)}
#pfFilters #dz6S_more #pfShowReqBtn.active::after{background-color:var(--gold-fill);background-image:radial-gradient(circle at calc(100% - 11px) 50%,var(--on-gold) 8px,transparent 8.5px)}
#pfFilters #dz6S_more #pfLocEditBtn::after{content:"";margin-left:auto;width:7px;height:7px;border:solid var(--muted);border-width:0 2px 2px 0;transform:rotate(-45deg)}
#pfFilters #dz6S_more #pfScope:empty,#pfFilters #dz6S_more #pfScope:has(> #pfAgentView:only-child){display:none}

/* ─── активные условия над доской: бейджи с крестиком ─── */
.dz-fchips{gap:6px}
.dz-fchips .dz-chip{height:28px;font-weight:600}
.dz-fchips .dz-fl{font-weight:600}

/* ─── телефон: шторка снизу на всю ширину ─── */
.dz6-scrim{display:none}
@media (max-width:640px){
  #platform #pfFilters.dz6-host.open{left:0;right:0;top:auto;bottom:0;width:auto;max-height:88vh;max-height:88dvh;z-index:9640;
    border-radius:18px 18px 0 0;border-bottom:0;animation:dz6Up .22s cubic-bezier(.23,1,.32,1) both}
  .dz6-scrim.show{display:block;position:fixed;inset:0;z-index:9630;background:var(--scrim);animation:dz6Fade .2s both}
  body.dz6-fp-lock{overflow:hidden}
  .dz6-fp-h{position:relative;padding:18px 8px 10px 16px}
  .dz6-grab{display:block;position:absolute;left:50%;top:7px;width:36px;height:4px;margin-left:-18px;border-radius:99px;background:var(--line)}
  .dz6-x{width:44px;height:44px}
  .dz6-fp-f{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}
  #platform #pfFilters .dz6-fp-f .btn{height:44px;padding:0 18px;font-size:15px}
  .dz6-sec-h{min-height:52px;font-size:15px}
  .dz6-opt{min-height:44px;font-size:15px}
  .dz6-stages{grid-template-columns:1fr}
  .dz6-rs-box{height:48px}
  #pfFilters .dz6-rs-box input{font-size:16px}
  .dz6-st{min-height:44px}
  .dz6-rs-tog{width:44px;height:44px}
  .dz6-badge{height:36px;font-size:14px}
  .dz6-seg{display:flex;width:100%;box-sizing:border-box}
  .dz6-seg>button{flex:1 1 auto;height:44px;padding:0 10px;font-size:14px}
  .dz6-chip{height:44px;padding:0 16px;font-size:14px}
  .dz6-grid{grid-template-columns:1fr}
  #pfFilters .dz6-cell .pf-frange input,#pfFilters .dz6-cell select,#pfFilters .dz6-cell #pfRegion,#pfFilters .dz6-cell #pfWtFilter>button{height:44px;font-size:16px!important}
  #pfFilters #dz6S_csi #pfCsiFilters button,#pfFilters #dz6S_csi #pfCsiFilters select{min-height:44px}
  #pfFilters #dz6S_more>button{min-height:48px;font-size:15px}
  .dz-fchips .dz-chip,.dz-fchips .dz-clr{position:relative;height:32px}
  .dz-fchips .dz-chip::before,.dz-fchips .dz-clr::before{content:"";position:absolute;inset:-6px -2px}
}
@keyframes dz6Up{from{transform:translateY(100%)}to{transform:none}}
@keyframes dz6Fade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){#platform #pfFilters.dz6-host.open,.dz6-scrim.show{animation:none}.dz6-sec-h .dz6-i{transition:none}}
