/* ===================================================================
   Janszen Media HQ v7 - Kanban Board
   Drag-and-drop kanban for deals and tickets
   =================================================================== */

/* --- Board Container --- */
.kanban-board{
  display:flex;gap:12px;overflow-x:auto;padding-bottom:16px;
  min-height:400px;align-items:flex-start;
}

/* --- Column --- */
.kanban-col{
  flex:0 0 250px;background:var(--surf);border:1px solid var(--b1);
  border-radius:var(--r);display:flex;flex-direction:column;
  max-height:calc(100vh - var(--topnav) - 180px);
  transition:background .15s;
}
.kanban-col.drag-over{
  background:var(--surf2);border-color:var(--b2);
}

/* --- Column Header --- */
.kanban-col-header{
  padding:12px 14px;border-bottom:1px solid var(--b1);
  position:sticky;top:0;background:inherit;border-radius:var(--r) var(--r) 0 0;
  z-index:1;
}

.kanban-col-title{
  font-size:.82rem;font-weight:700;color:var(--hi);
  line-height:1.3;
}
.kanban-col-meta{
  font-size:.68rem;font-weight:500;color:var(--mu);margin-top:2px;
}
.kanban-col-count{
  font-size:11px;font-weight:500;color:var(--mu);
  background:var(--b1);padding:1px 7px;border-radius:10px;
}
.kanban-col-total{
  font-size:12px;color:var(--mu);margin-top:4px;
}

/* --- Column Body --- */
.kanban-col-body{
  padding:8px;min-height:120px;flex:1;overflow-y:auto;
  display:flex;flex-direction:column;gap:8px;
}

/* --- Drop Placeholder --- */
.kanban-placeholder{
  border:2px dashed var(--b2);border-radius:var(--rs);
  min-height:60px;transition:border-color .15s;
}
.kanban-placeholder.active{border-color:var(--orange)}

/* --- Card --- */
.kanban-card{
  background:var(--surf2);border:1px solid var(--b1);border-radius:var(--rs);
  padding:12px;cursor:grab;transition:border-color .15s,opacity .15s,box-shadow .15s;
  user-select:none;
}
.kanban-card:hover{border-color:var(--b3);box-shadow:0 2px 8px rgba(0,0,0,.2)}
.kanban-card:active{cursor:grabbing}
.kanban-card.dragging{
  opacity:.5;border-color:var(--orange);
  box-shadow:0 4px 16px rgba(242,101,34,.15);
}

.kanban-card-title{
  font-size:13px;font-weight:500;color:var(--hi);
  margin-bottom:6px;line-height:1.4;
}
.kanban-card-meta{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  font-size:11px;color:var(--mu);margin-bottom:6px;
}
.kanban-card-meta svg{width:12px;height:12px}
.kanban-card-value{
  font-size:14px;font-weight:600;color:var(--hi);
}
.kanban-card-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.kanban-card-tag{
  font-size:10px;padding:1px 7px;background:var(--b1);
  border-radius:10px;color:var(--mu);
}
.kanban-card-avatar{
  width:22px;height:22px;border-radius:50%;background:var(--b2);
  display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:600;color:var(--mu);
}
.kanban-card-footer{
  display:flex;align-items:center;justify-content:space-between;
  margin-top:8px;padding-top:8px;border-top:1px solid var(--b1);
}
.kanban-card-date{font-size:11px;color:var(--mu2)}
.kanban-card-priority{font-size:11px;font-weight:600}
.kanban-card-priority.high{color:var(--red)}
.kanban-card-priority.med{color:var(--yellow)}
.kanban-card-priority.low{color:var(--green)}

/* --- Add Card Button --- */
.kanban-add{
  display:flex;align-items:center;justify-content:center;gap:6px;
  padding:8px;border-radius:var(--rx);color:var(--mu);
  font-size:12px;cursor:pointer;transition:background .12s,color .12s;
  border:1px dashed var(--b1);
}
.kanban-add:hover{background:var(--surf2);color:var(--txt);border-color:var(--b2)}
.kanban-add svg{width:14px;height:14px}

/* --- Column Footer --- */
.kanban-col-footer{
  padding:8px;border-top:1px solid var(--b1);
}

/* --- Swimlane variant (optional) --- */
.kanban-swimlane{
  padding:12px 0;border-bottom:1px solid var(--b1);
}
.kanban-swimlane-title{
  font-size:12px;font-weight:600;color:var(--mu);text-transform:uppercase;
  letter-spacing:.5px;margin-bottom:8px;padding-left:8px;
}
