/* ============================================
   CSS BLOCK 11: KANBAN BOARD
   ============================================ */
.brd{flex:1;min-height:0;display:flex;flex-wrap:nowrap;align-items:stretch;gap:12px;padding:14px;overflow-x:auto;overflow-y:hidden;transition:all .15s}
.brd-wrap{min-width:0;min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden}
/* Сегменты этапов: модалка карточки (#lcModalStageStrip, chevron в lead-card.css); шапка колонок — .ch, не .brd-stage-seg */
.brd-stage-seg{flex:1 1 0;min-width:64px;max-width:220px;min-height:44px;cursor:pointer;clip-path:none;margin-left:0;box-sizing:border-box;padding:8px 10px;border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;border:none;font:inherit;-webkit-font-smoothing:antialiased}
.brd-stage-seg:first-child{margin-left:0;padding-left:10px}
.brd-stage-seg:hover{transform:translateY(-1px);z-index:2;filter:drop-shadow(0 4px 10px rgba(15,23,42,.1))}
.brd-stage-seg:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
.brd-stage-seg-txt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;word-break:break-word;overflow-wrap:anywhere;line-height:1.2;font-size:14px;font-weight:700}
.brd-stage-seg.brd-stage-seg--drop-target{transform:scale(1.02);z-index:3;box-shadow:inset 0 -5px 0 0 var(--lc-stage,var(--ac)),0 6px 16px rgba(15,23,42,.14)!important;filter:drop-shadow(0 4px 12px rgba(15,23,42,.12))}

/* ============================================
   CSS BLOCK 12: KANBAN COLUMNS
   ============================================ */
.col{min-width:260px;max-width:280px;flex:0 0 auto;height:100%;min-height:0;background:var(--sf);border-radius:14px;display:flex;flex-direction:column;transition:all .15s;border-top:4px solid var(--bd);position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.col.drag-over{outline:2px dashed var(--ac);outline-offset:-2px;background:#1e1f2e}
.col.col-complete{min-width:140px;max-width:140px;opacity:.7;border-top-color:var(--gn)}
.ch{padding:12px 14px;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:rgba(0,0,0,.03);min-height:48px;position:relative;transition:border-color .15s,box-shadow .15s,transform .2s ease}
/* Шапка колонки Kanban: прямоугольник без chevron (стрелки только в карточке лида) */
.ch.ch--stage-block{border-bottom:1px solid rgba(148,163,184,.35)}
.ch.ch--stage-premium{background:linear-gradient(180deg,rgba(255,255,255,.06) 0%,rgba(0,0,0,.04) 100%);box-shadow:0 2px 8px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.12)}
.ch.ch--stage-premium.ch--stage-block{border-bottom:1px solid rgba(148,163,184,.32)}
.col.drag-over .ch.ch--stage-block{border-bottom-color:var(--col-accent,#6c5ce7);box-shadow:inset 0 -4px 0 0 var(--col-accent,#6c5ce7),0 6px 16px rgba(15,23,42,.14);transform:scale(1.01)}
.ct{font-size:11px;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:8px;letter-spacing:.6px;color:var(--t1)}
.ch.ch--stage-premium .ct{font-size:14px;font-weight:800;letter-spacing:.04em}
.cdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px rgba(255,255,255,.15)}
.cc{background:var(--bd);color:var(--t2);font-size:11px;font-weight:600;padding:4px 9px;border-radius:8px;min-width:24px;text-align:center}
.csum{font-size:10px;color:var(--gn);margin-left:6px;font-weight:600}
.cb{padding:8px;overflow-y:auto;flex:1;min-height:0}
.cb::-webkit-scrollbar{width:4px}
.cb::-webkit-scrollbar-thumb{background:var(--bd);border-radius:4px}
.cem{text-align:center;padding:28px 16px;color:var(--t2);font-size:13px;font-weight:500}

/* ============================================
   CSS BLOCK 13: KANBAN CARDS
   ============================================ */
.crd{position:relative;background:rgba(34,35,46,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:13px;padding:12px 12px 30px;margin-bottom:8px;cursor:pointer;transition:transform .15s,box-shadow .15s,border-color .15s;border-left:3px solid transparent;user-select:none;-webkit-user-select:none;box-shadow:0 2px 8px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.05)}
.crd:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.crd.hot{border-left-color:#e74c3c}
.crd.warm{border-left-color:#f39c12}
.crd.cold{border-left-color:#3498db}
.crd.ov{background:rgba(220,38,38,.08);border-left-color:#dc2626;border-color:rgba(220,38,38,.25)}
.crd.ov .cnx{color:var(--rd);background:rgba(255,107,107,.08)}
.crd.dragging{opacity:.4;transform:rotate(3deg) scale(1.05);z-index:999}
.crd.touch-hold{box-shadow:0 0 0 2px var(--ac);transform:scale(1.02)}
.crd-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px;gap:6px;min-width:0}
.crd-head{display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding-right:30px}
.crd-type-ico{font-size:15px;line-height:1;opacity:.9;flex-shrink:0}
.crd-head .cn{margin-bottom:0;flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
.crd-menu-wrap{position:absolute;top:8px;right:8px;opacity:0;transition:opacity .15s;z-index:3}
.crd:hover .crd-menu-wrap,.crd-menu-wrap.open{opacity:1}
.crd-menu-btn{width:28px;height:28px;border-radius:8px;border:1px solid var(--bd);background:var(--sf);color:var(--t2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;transition:background .15s,border-color .15s}
.crd-menu-btn:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.crd-menu-dropdown{position:absolute;right:0;top:100%;margin-top:4px;min-width:140px;background:var(--sf);border:1px solid var(--bd);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.25);padding:6px;display:none;z-index:10}
.crd-menu-wrap.open .crd-menu-dropdown{display:block}
.crd-menu-item{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:0;color:var(--t1);font-size:13px;cursor:pointer;border-radius:6px;transition:background .15s;font-family:inherit}
.crd-menu-item:hover{background:rgba(255,255,255,.08)}
.crd-menu-item-danger{color:var(--rd,#dc2626)}
.crd-menu-item-danger:hover{background:rgba(220,38,38,.12)}
.crd-id{font-size:12px;color:var(--a2);font-weight:700;margin-bottom:2px}
.cn{font-size:14px;font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:5px;line-height:1.35}
.crd-heat-emoji{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-variant-emoji:emoji;filter:none}
.cp{font-size:11px;color:var(--t2);margin-bottom:4px}
.crd-agent-line{
  font-size:10px;
  color:var(--t2,#94a3b8);
  margin-bottom:4px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.crd-date-overdue{color:#dc2626!important;font-weight:600}
.crd-date-today{color:#ea580c!important;font-weight:600}
.crd-date-later{color:var(--t2,#64748b)}
.crd-deal-wrap{margin-bottom:6px}
.crd-deal.cnx{font-size:11px;color:var(--a2);padding:4px 0;background:0;border-radius:6px;display:inline-block;cursor:pointer;transition:background .15s,color .15s}
.crd-deal:hover{color:var(--ac);background:rgba(255,255,255,.06)}
.co{font-size:11px;color:#aaa;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ccm{font-size:11px;color:var(--gn);font-weight:600;margin-bottom:4px}
.crd-call-attempts{font-size:10px;color:var(--t2,#64748b);font-weight:800;margin-bottom:4px}
.cnx{font-size:10px;color:var(--yl);padding:3px 7px;background:rgba(255,212,59,.08);border-radius:5px;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cf{display:flex;justify-content:space-between;align-items:center;gap:6px;flex-wrap:wrap}
.crd-request{margin-top:6px;margin-bottom:8px}
.crd-request-label{font-size:10px;line-height:1.3;color:var(--t2,#94a3b8);font-weight:600;margin-bottom:3px}
.crd-request-text{
  font-size:11px;
  line-height:1.35;
  color:#4B5563 !important;
  white-space:pre-line;
  overflow:hidden;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  line-clamp:3;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.cdt{font-size:10px;color:#666}
.ca{position:absolute;right:12px;bottom:10px;max-width:calc(100% - 24px);font-size:10px;background:var(--bd);padding:2px 6px;border-radius:6px;color:#aaa;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tg{font-size:9px;padding:2px 5px;border-radius:4px;font-weight:500}
.s-av{background:rgba(0,175,102,.15);color:#00af66}
.s-ci{background:rgba(41,128,255,.15);color:#2980ff}
.s-re{background:rgba(162,155,254,.15);color:#a29bfe}
.s-sa{background:rgba(253,203,110,.15);color:#fdcb6e}
.s-ot{background:rgba(150,150,150,.15);color:#999}

/* ============================================
   CSS BLOCK 14: TASK VIEW
   ============================================ */
.task-acts{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}
.crd-type{font-size:12px;font-weight:800;color:var(--tx2,#6b7280)}

.task-ab{padding:5px 10px;border-radius:8px;font-size:11px;font-weight:500;cursor:pointer;border:1px solid rgba(255,255,255,.08);background:rgba(34,35,46,.4);color:var(--t2);transition:all .15s}
.task-ab:hover{border-color:rgba(108,92,231,.35);color:var(--tx);background:rgba(255,255,255,.06)}
.task-ab.green{border-color:rgba(0,184,148,.3);color:var(--gn);background:rgba(0,184,148,.1)}
.task-ab.green:hover{background:rgba(0,184,148,.25);color:#fff;border-color:rgba(0,184,148,.4)}
.touch-ghost{position:fixed;z-index:9999;pointer-events:none;opacity:.85;transform:rotate(3deg) scale(1.05);border:2px solid var(--ac);border-radius:10px}

/* Task sort bar */
.tasks-sort-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px 4px;
  flex-wrap: wrap;
  border-bottom: 1px solid var(--color-border, #e5e7eb);
  background: var(--color-bg, #fff);
}
.tasks-sort-label {
  font-size: 12px;
  color: var(--color-text-muted, #9ca3af);
  margin-right: 2px;
  white-space: nowrap;
}
.tasks-sort-chip {
  padding: 3px 10px;
  border-radius: 20px;
  border: 1px solid var(--color-border, #d1d5db);
  background: transparent;
  font-size: 12px;
  cursor: pointer;
  color: var(--color-text, #374151);
  transition: background 0.15s, border-color 0.15s, color 0.15s;
  white-space: nowrap;
}
.tasks-sort-chip.active {
  background: var(--color-primary, #2563eb);
  border-color: var(--color-primary, #2563eb);
  color: #fff;
}
.tasks-sort-chip:hover:not(.active) {
  background: var(--color-bg-hover, #f3f4f6);
}

/* ============================================
   DESKTOP ONLY: CRM-style custom dropdown for kanban filter selects (agent, source)
   Native select dropdown cannot be styled; custom popup matches kanban/CRM shell.
   Mobile: custom hidden, native select used (no changes to mobile).
   ============================================ */
.kanban-filter-select-wrap .kanban-filter-select-custom{display:none}
@media (min-width:769px){
.kanban-filter-select-wrap{position:relative;width:140px}
.kanban-filter-select-wrap .kanban-filter-select-custom{display:block;position:relative}
.kanban-filter-select-wrap select{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;pointer-events:none;z-index:-1}
.kanban-filter-select-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:30px;padding:5px 10px;border:1px solid var(--bd);border-radius:6px;background:var(--cd);color:var(--tx);font-size:12px;font-family:inherit;text-align:left;cursor:pointer;box-sizing:border-box;transition:border-color .18s,box-shadow .18s}
.kanban-filter-select-trigger:hover{border-color:var(--ac)}
.kanban-filter-select-trigger[aria-expanded="true"]{border-color:var(--ac);box-shadow:0 0 0 2px rgba(108,92,231,.15)}
.kanban-filter-select-trigger:focus{outline:none}
.kanban-filter-select-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kanban-filter-select-chevron{flex-shrink:0;width:0;height:0;margin-left:6px;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--t2);transition:transform .2s}
.kanban-filter-select-trigger[aria-expanded="true"] .kanban-filter-select-chevron{transform:rotate(180deg)}
.kanban-filter-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:100%;max-height:260px;overflow-y:auto;background:var(--sf);border:1px solid var(--bd);border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.12);z-index:25;padding:4px 0}
.kanban-filter-select-dropdown[hidden]{display:none}
.kanban-filter-select-option{display:block;width:100%;padding:8px 12px;border:none;background:0;color:var(--tx);font-size:12px;font-family:inherit;text-align:left;cursor:pointer;transition:background .12s}
.kanban-filter-select-option:hover{background:rgba(108,92,231,.08)}
.kanban-filter-select-option.is-selected{background:rgba(108,92,231,.12);color:var(--tx);font-weight:500}
.kanban-filter-select-option:focus{outline:none;background:rgba(108,92,231,.08)}
.kanban-filter-select-option--director,.kanban-filter-select-option--rop{display:flex;align-items:center;gap:8px}
.kanban-filter-select-option-mark{flex-shrink:0;margin-left:auto;width:6.75em;font-size:10px;font-weight:600;line-height:1.2;color:var(--t2);text-align:right;border-right:3px solid transparent;padding-right:8px}
.kanban-filter-select-option--director .kanban-filter-select-option-mark{border-right-color:#6c5ce7}
.kanban-filter-select-option--rop .kanban-filter-select-option-mark{border-right-color:#0891b2}
.kanban-filter-select-option-txt{flex:1;min-width:0;text-align:left}
.v10-fil .kanban-filter-select-wrap{width:auto;min-width:120px}
.v10-fil .kanban-filter-select-trigger{padding:7px 12px;font-size:13px;border-radius:8px}
.v10-fil .kanban-filter-select-dropdown{border-radius:8px}
/* Filter modal: full-width CRM dropdowns (not native OS list) */
.v10-fil-pop .kanban-filter-select-wrap{width:100%;min-width:0}
.v10-fil-pop .kanban-filter-select-trigger{min-height:40px;padding:10px 12px;font-size:14px;border-radius:12px;background:var(--cd2);border-color:var(--bd)}
/* JS sets position:fixed + width; reset base left:0;right:0;min-width:100% or fixed panel spans viewport */
.v10-fil-pop .kanban-filter-select-dropdown{left:auto!important;right:auto!important;min-width:0!important;z-index:950;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.14);padding:0}
.v10-fil-pop .kanban-filter-select-search-wrap{padding:10px 12px;border-bottom:1px solid var(--bd);flex-shrink:0;background:var(--sf)}
.v10-fil-pop .kanban-filter-select-search{width:100%;box-sizing:border-box;min-height:40px;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;background:var(--cd2);color:var(--tx);font-size:14px;font-weight:500;line-height:1.35;font-family:inherit;outline:none}
.v10-fil-pop .kanban-filter-select-search::placeholder{color:var(--t2);font-weight:400}
.v10-fil-pop .kanban-filter-select-search:focus{border-color:rgba(108,92,231,.45);box-shadow:0 0 0 3px rgba(108,92,231,.12)}
.v10-fil-pop .kanban-filter-select-options{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 0;padding-top:2px}
.v10-fil-pop .kanban-filter-select-option{font-size:14px;padding:10px 14px}
.v10-fil-pop .kanban-filter-select-option-mark{font-size:11px;width:7.1em}
}

