/* ── Доска-воронка (amo-style) ─────────────────────────────────────────── */
.board-top {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:14px 20px 0; flex-wrap:wrap;
}
.board-tabs { display:flex; gap:4px; }
.board-tab {
  padding:7px 16px; border-radius:9px 9px 0 0; font-weight:700; font-size:13px;
  color:var(--muted); background:transparent; text-decoration:none;
}
.board-tab:hover { color:var(--text); text-decoration:none; background:rgba(0,0,0,.04); }
.board-tab.active { color:var(--teal); background:#fff; box-shadow:0 -2px 8px rgba(0,0,0,.05); }
.board-meta { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.board-total { font-size:13px; color:var(--muted); }
.board-total b { color:var(--text); font-size:15px; font-weight:800; }
.board-total-sum b { color:var(--success); }
.board-filter {
  border:1px solid var(--border); border-radius:9px; padding:7px 12px; font-size:13px;
  width:220px; max-width:46vw; outline:none; background:#fff;
}
.board-filter:focus { border-color:var(--teal); box-shadow:0 0 0 3px rgba(109,40,217,.1); }
.board-cfg { background:#fff; border:1px solid var(--border); color:var(--text2); font-weight:700; }
.board-cfg:hover { border-color:var(--teal); color:var(--teal); text-decoration:none; }

.board-alert {
  margin:10px 20px 0; padding:9px 14px; background:#fff7ed; border:1px solid #fed7aa;
  color:#9a3412; border-radius:9px; font-size:13px; font-weight:600;
}

.board-scroll { overflow-x:auto; padding:12px 20px 28px; -webkit-overflow-scrolling:touch; }
.board { display:flex; gap:12px; align-items:flex-start; min-height:60vh; }

.bcol {
  flex:0 0 290px; width:290px; background:var(--bg2); border-radius:12px;
  display:flex; flex-direction:column; max-height:calc(100vh - 150px);
}
.bcol-head {
  border-top:3px solid #94a3b8; border-radius:12px 12px 0 0; background:#fff;
  padding:10px 12px 9px; position:sticky; top:0; z-index:2;
}
.bcol-title { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.4px; color:var(--text2); }
.bcol-stat { display:flex; align-items:baseline; gap:8px; margin-top:3px; }
.bcol-cnt { font-size:13px; font-weight:800; color:var(--text); }
.bcol-cnt::after { content:' сд.'; font-weight:600; color:var(--muted); font-size:11px; }
.bcol-sum { font-size:12px; font-weight:700; color:var(--success); margin-left:auto; }

.bcol-quick { display:flex; flex-direction:column; gap:6px; padding:10px; }
.bcol-quick input {
  border:1px solid var(--border); border-radius:8px; padding:7px 10px; font-size:13px; outline:none; font-family:inherit;
}
.bcol-quick input:focus { border-color:var(--teal); }
.bcol-quick-btn { padding:7px; font-size:13px; }

.bcol-body { padding:8px; overflow-y:auto; display:flex; flex-direction:column; gap:8px; flex:1; min-height:40px; }
.bcol-body.drag-over { background:rgba(109,40,217,.07); outline:2px dashed var(--teal); outline-offset:-4px; border-radius:8px; }
.bcol-more { text-align:center; font-size:12px; color:var(--muted); padding:6px; }

.bcard {
  background:#fff; border-radius:10px; box-shadow:var(--shadow-sm);
  border:1px solid transparent; transition:box-shadow .12s, transform .05s; cursor:grab;
}
.bcard:hover { box-shadow:var(--shadow-md); border-color:var(--border); }
.bcard.dragging { opacity:.5; }
.bcard[draggable="false"] { cursor:default; }
.bcard-link { display:block; padding:11px 12px; color:inherit; text-decoration:none; }
.bcard-link:hover { text-decoration:none; }
.bcard-row1 { display:flex; align-items:center; gap:6px; }
.bcard-name { font-weight:700; font-size:13.5px; color:var(--text); flex:1; line-height:1.25; }
.bcard-dot { width:8px; height:8px; border-radius:50%; background:var(--danger); flex:0 0 auto; box-shadow:0 0 0 3px rgba(229,62,62,.15); }
.bcard-amount { font-size:13px; font-weight:800; color:var(--success); margin-top:3px; }
.bcard-comment { font-size:12px; color:var(--muted); margin-top:5px; line-height:1.35; }
.bcard-tags { display:flex; flex-wrap:wrap; gap:4px; margin-top:7px; }
.bchip { font-size:10.5px; font-weight:700; padding:2px 7px; border-radius:6px; background:var(--teal-light); color:var(--teal-dark); }
.bchip-owner { background:#eef2f8; color:var(--text2); }
.bcard-foot { display:flex; justify-content:space-between; align-items:center; margin-top:8px; font-size:11px; color:var(--muted); }
.bcard-phone { font-variant-numeric:tabular-nums; }

@media (max-width:640px){
  .bcol { flex-basis:84vw; width:84vw; }
  .board-top { padding:10px 12px 0; }
  .board-scroll { padding:10px 12px 24px; }
}

/* ── Фаза 1: посадка доски в новый каркас (левый рельс) ── */
.appbody .board-top { padding: 0; }
.appbody .board-scroll { padding: 4px 0 20px; }
.board-filters { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin: 4px 0 14px; }
.board-sel { border:1px solid var(--border); border-radius:9px; padding:7px 10px; font-size:13px; background:#fff; font-family:inherit; outline:none; }
.board-sel:focus { border-color:var(--teal); }
/* Цветная точка задачи на карточке (amo: красный=просрочено, зелёный=есть задача, серый=нет) */
.bcard-task { width:9px; height:9px; border-radius:50%; flex:0 0 auto; }
.bcard-task.red   { background:var(--danger); box-shadow:0 0 0 3px rgba(229,62,62,.15); }
.bcard-task.green { background:var(--success); }
.bcard-task.none  { background:#cbd5e1; }
