
/* StomaDent CRM v5.0 — workflow enhancements */

/* 3. Horizontal pipeline with persistent context */
.board-page .kanban-wrap{
  width:100%!important;
  max-width:calc(100vw - 270px);
  overflow-x:auto!important;
  overflow-y:visible;
  padding:14px 2px 24px;
  scroll-snap-type:x proximity;
}
.board-page .kanban-board{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:flex-start!important;
  min-width:max-content!important;
  gap:14px!important;
}
.board-page .kanban-column{
  flex:0 0 292px!important;
  width:292px!important;
  scroll-snap-align:start;
  max-height:calc(100vh - 255px);
  overflow-y:auto;
  position:relative;
}
.board-page .kanban-column>header{
  position:sticky;
  top:0;
  z-index:6;
  background:#eef1f6;
  border-bottom:1px solid #dde3ec;
  box-shadow:0 5px 9px rgba(23,34,59,.05);
}
.group-delete-button{
  color:#a9474f!important;
  border-radius:7px!important;
}
.group-delete-button:hover{
  background:#fdebed!important;
  color:#c2323f!important;
}

/* 5. Central search explicitly shows operator and group */
.group-location-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  max-width:190px;
  padding:5px 9px;
  border:1px solid #dce2ec;
  background:#f7f9fc;
  border-radius:999px;
  font-size:10px;
  font-weight:750;
  color:#44506a;
}
.group-location-chip i{
  width:7px;
  height:7px;
  border-radius:50%;
  flex:none;
}
.data-table tr.duplicate-row{
  background:#fff8f0;
}
.data-table tr.duplicate-row:hover{
  background:#fff2df;
}

/* 6. Duplicate warning */
.duplicate-chip{
  font-size:8px!important;
  font-weight:800!important;
  letter-spacing:.02em;
  color:#a84226!important;
  background:#fff0e8!important;
  border:1px solid #f3c5b2!important;
}
.card-top{
  gap:6px;
}
.card-top .duplicate-chip{
  margin-left:auto;
}

/* 2. Public channels + separate private chats */
.discussion-layout{
  grid-template-columns:230px minmax(0,1fr) 330px!important;
  align-items:stretch;
}
.board-v50-channels{
  background:#fff;
  border:1px solid #e0e5ee;
  border-radius:14px;
  padding:12px;
  min-height:620px;
  max-height:calc(100vh - 190px);
  overflow:auto;
}
.board-v50-channels>header{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:7px 8px 13px;
}
.board-v50-channels>header strong{font-size:14px;color:#17223b}
.board-v50-channels>header small{font-size:10px;color:#8a94a7}
.board-v50-channel-label{
  margin:16px 8px 7px;
  font-size:8px;
  letter-spacing:.12em;
  font-weight:800;
  color:#9aa3b4;
}
.board-v50-channel{
  width:100%;
  border:0;
  background:transparent;
  border-radius:10px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px;
  cursor:pointer;
  text-align:left;
  color:#4d5870;
}
.board-v50-channel:hover{background:#f3f6fc}
.board-v50-channel.active{
  color:#2947c7;
  background:#edf1ff;
  box-shadow:inset 3px 0 0 #4058d6;
}
.board-v50-channel>span:last-child{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.board-v50-channel b{
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
  overflow:hidden;
}
.board-v50-channel small{font-size:8px;color:#919bad;margin-top:2px}
.board-v50-avatar,.board-v50-team-icon{
  width:31px;height:31px;border-radius:50%;
  display:grid;place-items:center;flex:none;
  color:#fff;font-size:9px;font-weight:800;
  background:var(--avatar-color,#4f64df);
}
.board-v50-team-icon{background:#4058d6;font-size:14px}
.board-v50-feed{
  display:flex!important;
  flex-direction:column;
  gap:11px;
}
.board-v50-message{
  display:flex;
  align-items:flex-end;
  gap:8px;
  max-width:82%;
}
.board-v50-message.own{
  align-self:flex-end;
  flex-direction:row-reverse;
}
.board-v50-bubble{
  background:#fff;
  border:1px solid #e2e6ee;
  border-radius:13px 13px 13px 4px;
  padding:10px 12px;
  min-width:160px;
  box-shadow:0 4px 12px rgba(28,42,70,.05);
}
.board-v50-message.own .board-v50-bubble{
  color:#fff;
  background:#4058d6;
  border-color:#4058d6;
  border-radius:13px 13px 4px 13px;
}
.board-v50-bubble header{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.board-v50-bubble header>span:first-child{
  display:flex;flex-direction:column;gap:2px;
}
.board-v50-bubble strong{font-size:10px}
.board-v50-bubble small{font-size:8px;opacity:.7}
.board-v50-bubble p{
  white-space:pre-wrap;
  margin:7px 0 0;
  font-size:11px;
  line-height:1.55;
}
.board-v50-flags{display:flex;gap:4px;align-items:center}
.board-v50-flags em{
  font-style:normal;font-size:7px;padding:3px 6px;border-radius:99px;
  background:#edf1ff;color:#4058d6;
}
.board-v50-message.own .board-v50-flags em{
  background:rgba(255,255,255,.16);color:#fff;
}
.board-v50-flags button{
  border:0;background:transparent;color:inherit;cursor:pointer;font-size:18px;line-height:1;
}
.board-v50-empty{
  margin:auto;
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  gap:6px;
  color:#8993a6;
}
.board-v50-empty strong{font-size:13px;color:#59657b}
.board-v50-empty span{font-size:10px}
.board-v50-compose-channel{
  margin:0 0 10px;
  padding:10px 12px;
  border-radius:10px;
  background:#edf1ff;
  color:#304cc7;
  font-size:10px;
  font-weight:800;
}
.board-v50-status{
  padding:9px 11px;
  margin-bottom:8px;
  border-radius:9px;
  font-size:10px;
  font-weight:700;
}
.board-v50-status[data-kind="error"]{background:#fff0f0;color:#a52f38}
.board-v50-status[data-kind="success"]{background:#e9f8f0;color:#167047}
.board-v50-status[data-kind="info"]{background:#eef3ff;color:#3451bf}

@media(max-width:1100px){
  .discussion-layout{grid-template-columns:190px minmax(0,1fr)!important}
  .discussion-compose{grid-column:1/-1}
  .board-page .kanban-wrap{max-width:calc(100vw - 32px)}
}
@media(max-width:760px){
  .discussion-layout{display:flex!important;flex-direction:column}
  .board-v50-channels{min-height:auto;max-height:220px}
  .board-page .kanban-column{flex-basis:84vw!important;width:84vw!important}
}
