  /* ========= KANBAN ========= */
  .cf-kanban-toolbar { margin-bottom: 14px; }
  .cf-kanban-filters-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
  .cf-kanban-toggle-concluidos { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--cf-text-secondary); cursor: pointer; user-select: none; }
  .cf-kanban-toggle-concluidos input { cursor: pointer; accent-color: var(--cf-accent); }

  .cf-kanban-board { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 8px; margin: 0 -8px; padding-left: 8px; padding-right: 8px; }

  .cf-kanban-col { flex: 0 0 280px; max-width: 280px; background: var(--cf-bg-subtle); border-radius: var(--cf-radius-lg); border: 1px solid var(--cf-border-subtle); display: flex; flex-direction: column; min-height: 200px; max-height: calc(100vh - 220px); transition: flex-basis 0.18s, max-width 0.18s; }
  .cf-kanban-col-header { padding: 12px 14px; border-bottom: 1px solid var(--cf-border-subtle); display: flex; align-items: center; justify-content: space-between; gap: 8px; }
  .cf-kanban-col-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--stage-color, var(--cf-text-muted)); flex-shrink: 0; }
  .cf-kanban-col-label { font-size: 12px; font-weight: 700; color: var(--cf-text); text-transform: uppercase; letter-spacing: 0.04em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .cf-kanban-col-count { background: var(--cf-bg-card); color: var(--cf-text-muted); padding: 2px 8px; border-radius: var(--cf-radius-pill); font-size: 11px; font-weight: 700; flex-shrink: 0; border: 1px solid var(--cf-border-subtle); }
  .cf-kanban-col-body { flex: 1; padding: 10px; overflow-y: auto; display: flex; flex-direction: column; gap: 8px; min-height: 100px; transition: background 0.12s; }
  .cf-kanban-col-body.drag-over { background: var(--cf-accent-bg); outline: 2px dashed var(--cf-accent); outline-offset: -8px; border-radius: var(--cf-radius-md); }
  .cf-kanban-empty { color: var(--cf-text-subtle); font-size: 12px; text-align: center; padding: 16px 0; font-style: italic; }
  .cf-kanban-hidden-note { font-size: 11px; color: var(--cf-text-muted); text-align: center; padding: 8px; background: var(--cf-bg-card); border-radius: var(--cf-radius-sm); border: 1px dashed var(--cf-border); margin-top: 4px; }

  /* Botão retrair (visível no hover do header da coluna expandida) */
  .cf-kanban-col-collapse-btn { background: transparent; border: none; padding: 4px; border-radius: 4px; color: var(--cf-text-muted); cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; transition: all 0.12s; flex-shrink: 0; }
  .cf-kanban-col:hover .cf-kanban-col-collapse-btn { opacity: 1; }
  .cf-kanban-col-collapse-btn:hover { background: var(--cf-bg-hover); color: var(--cf-text); }

  /* Coluna colapsada: largura estreita, label vertical */
  .cf-kanban-col-collapsed { flex: 0 0 44px; max-width: 44px; min-height: 200px; max-height: calc(100vh - 220px); background: var(--cf-bg-subtle); border: 1px solid var(--cf-border-subtle); border-radius: var(--cf-radius-lg); transition: all 0.12s; padding: 0; cursor: pointer; }
  .cf-kanban-col-collapsed:hover { background: var(--cf-bg-hover); border-color: var(--cf-border-strong); }
  .cf-kanban-col-collapsed-toggle { width: 100%; height: 100%; min-height: 200px; background: transparent; border: none; padding: 14px 0; display: flex; flex-direction: column; align-items: center; gap: 10px; cursor: pointer; font-family: inherit; color: var(--cf-text); }
  .cf-kanban-col-collapsed-toggle svg { color: var(--cf-text-muted); transition: transform 0.12s; }
  .cf-kanban-col-collapsed-toggle:hover svg { color: var(--cf-text); transform: translateX(2px); }
  .cf-kanban-col-collapsed-toggle .cf-kanban-col-dot { width: 8px; height: 8px; background: var(--stage-color, var(--cf-text-muted)); }
  .cf-kanban-col-collapsed-label { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--cf-text); writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap; }
  .cf-kanban-col-collapsed-count { background: var(--cf-bg-card); color: var(--cf-text-muted); padding: 2px 7px; border-radius: var(--cf-radius-pill); font-size: 10px; font-weight: 700; border: 1px solid var(--cf-border-subtle); margin-top: auto; }

  .cf-kanban-card { background: var(--cf-bg-card); border: 1px solid var(--cf-border); border-radius: var(--cf-radius-md); padding: 10px 12px; cursor: grab; transition: all 0.12s; box-shadow: var(--cf-shadow-xs); position: relative; }
  .cf-kanban-card:hover { box-shadow: var(--cf-shadow-md); transform: translateY(-1px); border-color: var(--cf-border-strong); }
  /* Tarefa: visual distinto (fundo levemente azulado + borda tracejada sutil) */
  .cf-card-is-tarefa { background: var(--cf-tarefa-bg, #F0F4FF); }
  .cf-app[data-theme="dark"] .cf-card-is-tarefa { background: rgba(99,102,241,0.08); }
  .cf-card-tag { display: inline-flex; align-items: center; gap: 3px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; padding: 2px 7px; border-radius: 4px; }
  .cf-card-tag-tarefa { background: #6366F1; color: #fff; }
  .cf-card-tag-done { background: var(--cf-aberto, #22C55E); color: #fff; }
  .cf-card-tag-filler { background: #0EA5E9; color: #fff; }
