/* ──────────────────────────────────────────────────────────────
   kanban-drag.css — Styles partages pour drag & drop Kanban
   Reference visuelle : pipeline.js (deja en prod).
   Charte : Teal #227666, transitions cubic-bezier(.25,.46,.45,.94)
   ────────────────────────────────────────────────────────────── */

/* ─── Carte draggable ─────────────────────────────────────────── */
/* Specificite forte (double classe) pour ecraser .tk-card { cursor:pointer } */
.kb-drag-card,
.tk-card.kb-drag-card {
  cursor: -webkit-grab; /* Safari */
  cursor: grab;
  /* Compat cross-browser pour user-select */
  -webkit-user-select: none; /* Safari */
  -moz-user-select: none;    /* Firefox */
  -ms-user-select: none;     /* IE/Edge legacy */
  user-select: none;
  /* Safari : autorise explicitement le drag sur cet element */
  -webkit-user-drag: element;
  transition:
    transform .2s cubic-bezier(.25,.46,.45,.94),
    opacity .2s cubic-bezier(.25,.46,.45,.94),
    box-shadow .2s cubic-bezier(.25,.46,.45,.94),
    border-color .15s;
}

.kb-drag-card:active,
.tk-card.kb-drag-card:active {
  cursor: -webkit-grabbing; /* Safari */
  cursor: grabbing;
}

/* Empeche les enfants <img> (avatars) d'etre drag a la place de la carte */
/* Safari/Chrome rendent les <img> draggable par defaut */
.kb-drag-card img,
.kb-drag-card svg {
  -webkit-user-drag: none;
  user-drag: none;
  pointer-events: none;
}

/* Carte en cours de drag — ghost subtil */
.kb-drag-card.is-dragging {
  opacity: .35;
  transform: scale(.97);
  box-shadow: none !important;
}

/* Carte sans droit RBAC — pas de drag */
.kb-drag-card.is-locked,
.tk-card.kb-drag-card.is-locked {
  cursor: default;
  -webkit-user-drag: none;
}

.kb-drag-card.is-locked:active,
.tk-card.kb-drag-card.is-locked:active {
  cursor: default;
}

/* ─── Zone de drop (colonne) ──────────────────────────────────── */
.kb-drag-zone {
  transition:
    background-color .2s cubic-bezier(.25,.46,.45,.94),
    box-shadow .2s cubic-bezier(.25,.46,.45,.94);
  position: relative;
}

/* Colonne survolee pendant un drag — surlignage teal sobre */
.kb-drag-zone.is-drag-over {
  background-color: rgba(34, 118, 102, .06);
  box-shadow: inset 0 0 0 1px rgba(34, 118, 102, .35);
  border-radius: 8px;
}

/* Indicateur visuel discret au top de la colonne cible */
.kb-drag-zone.is-drag-over::before {
  content: '';
  position: absolute;
  left: 8px;
  right: 8px;
  top: 4px;
  height: 2px;
  background: var(--teal, #227666);
  border-radius: 1px;
  opacity: .8;
  pointer-events: none;
}

/* ─── Mobile : neutralise le drag HTML5 (tactile non supporte) ── */
@media (hover: none) and (pointer: coarse) {
  .kb-drag-card {
    cursor: default;
  }
  .kb-drag-card:active {
    cursor: default;
  }
}
