/* DMI Pipeline — Funil and Follow-up share the same commercial language. */

/* Funil: mobile uses a stage list; tablet and desktop keep a productive board. */
#page-funil.active { display: block !important; }
#funilKanban { color: var(--dmi-text); }
.fk-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: var(--dmi-space-5); }
.fk-head h1 { color: var(--dmi-primary) !important; letter-spacing: -.04em; }
.fk-head p { color: var(--dmi-text-secondary) !important; }
.fk-new { min-height: 42px; border-radius: var(--dmi-radius-sm) !important; background: var(--dmi-secondary) !important; color: var(--dmi-primary-active) !important; box-shadow: none !important; }
.fk-tools { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
.fk-search { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-sm) !important; color: var(--dmi-primary) !important; }
.fk-search:focus-within { border-color: var(--dmi-focus) !important; box-shadow: 0 0 0 3px rgba(39,121,184,.14); }
.fk-filter button { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-pill) !important; color: var(--dmi-text-secondary) !important; }
.fk-filter button.active { border-color: var(--dmi-primary) !important; background: var(--dmi-primary-soft) !important; color: var(--dmi-primary) !important; }
.fk-metrics > div { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
.fk-metrics span, .fk-metrics small { color: var(--dmi-text-secondary) !important; }
.fk-metrics b { color: var(--dmi-primary) !important; font-variant-numeric: tabular-nums; }
.fk-column { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; background: #f7f9fb !important; }
.fk-column.drag-over { background: var(--dmi-primary-soft) !important; border-color: var(--dmi-accent) !important; }
.fk-column h2 { color: var(--dmi-text) !important; }
.fk-column header span { color: var(--dmi-text-secondary) !important; }
.fk-column .fk-column-vgv { color: var(--dmi-primary) !important; }
.fk-add { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-sm) !important; color: var(--dmi-primary) !important; }
.fk-add:hover { border-color: var(--dmi-primary) !important; background: var(--dmi-primary-soft) !important; }
.fk-card { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-sm) !important; box-shadow: var(--dmi-shadow-xs) !important; }
.fk-card:hover { border-color: var(--dmi-border-strong) !important; box-shadow: var(--dmi-shadow-sm) !important; }
.fk-card-top strong, .fk-card-value { color: var(--dmi-primary) !important; }
.fk-card-local, .fk-card-foot { color: var(--dmi-text-secondary) !important; }
.fk-card-foot { border-color: var(--dmi-border) !important; }
.fk-card-foot button { color: var(--dmi-success) !important; }
.fk-empty { border-color: var(--dmi-border-strong) !important; color: var(--dmi-text-muted) !important; }

/* A mesma rolagem horizontal do quadro fica disponível antes das colunas.
   A barra inferior é preservada para quem já está trabalhando no fim do Kanban. */
@media (min-width: 768px) {
  .fk-board-scroll-top { overflow-x: auto; overflow-y: hidden; height: 18px; margin: 0 0 8px; border: 1px solid var(--dmi-border); border-radius: var(--dmi-radius-sm); background: var(--dmi-surface); }
  .fk-board-scroll-top[hidden] { display: none; }
  .fk-board-scroll-spacer { height: 1px; }
}

/* Follow-up: dedicated work queue, not a list of red warnings. */
#page-followup .crm-task-head { margin-bottom: var(--dmi-space-5) !important; }
#page-followup .page-title { color: var(--dmi-primary) !important; letter-spacing: -.035em; }
#page-followup .crm-task-sub { color: var(--dmi-text-secondary) !important; }
#page-followup .count { background: var(--dmi-primary-soft) !important; color: var(--dmi-primary) !important; border-radius: var(--dmi-radius-pill) !important; }
#page-followup .crm-task-cockpit { gap: var(--dmi-space-3) !important; margin-bottom: var(--dmi-space-4) !important; }
#page-followup .crm-task-kpi { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
#page-followup .crm-task-kpi.clickable:hover { border-color: var(--dmi-border-strong) !important; box-shadow: var(--dmi-shadow-sm) !important; }
#page-followup .crm-task-kpi-icon { background: var(--dmi-primary-soft) !important; }
#page-followup .crm-task-kpi strong { color: var(--dmi-primary) !important; font-variant-numeric: tabular-nums; }
#page-followup .crm-task-kpi > span:last-child { color: var(--dmi-text-secondary) !important; }
#page-followup .crm-task-kpi.danger { border-top-color: var(--dmi-error) !important; }
#page-followup .crm-task-kpi.gold { border-top-color: var(--dmi-secondary) !important; }
#page-followup .crm-task-kpi.today { border-top-color: var(--dmi-info) !important; }
#page-followup .crm-task-kpi.success { border-top-color: var(--dmi-success) !important; }
#page-followup .crm-task-filters { gap: 8px !important; margin-bottom: var(--dmi-space-4) !important; }
#page-followup .crm-task-chip { border-color: var(--dmi-border) !important; color: var(--dmi-text-secondary) !important; }
#page-followup .crm-task-chip.active { background: var(--dmi-primary) !important; border-color: var(--dmi-primary) !important; box-shadow: none !important; }
#page-followup .section-block { gap: var(--dmi-space-3) !important; margin-bottom: var(--dmi-space-5) !important; }
#page-followup .section-block-header { border-bottom-color: var(--dmi-border) !important; }
#page-followup .section-block-title { font-weight: 800; }
#page-followup .urgente-card { border-color: var(--dmi-border) !important; border-radius: var(--dmi-radius-md) !important; box-shadow: var(--dmi-shadow-xs) !important; }
#page-followup .urgente-card:hover { box-shadow: var(--dmi-shadow-sm) !important; }
#page-followup .urgente-header { padding: var(--dmi-space-4) !important; }
#page-followup .urgente-name { color: var(--dmi-text) !important; font-weight: 750; }
#page-followup .urgente-meta { color: var(--dmi-text-secondary) !important; }
#page-followup .urgente-days { font-variant-numeric: tabular-nums; }
#page-followup .urgente-acao { padding: 0 var(--dmi-space-4) var(--dmi-space-3) !important; }
#page-followup .urgente-footer { padding: 10px var(--dmi-space-4) !important; border-color: var(--dmi-border) !important; background: #fbfcfe; }
#page-followup .lead-foot-btn { min-height: 36px; border-color: var(--dmi-border); border-radius: var(--dmi-radius-sm); color: var(--dmi-text-secondary); font-weight: 650; }
#page-followup .lead-foot-btn:hover { border-color: var(--dmi-primary); color: var(--dmi-primary); background: var(--dmi-primary-soft); }
#page-followup .empty-state { min-height: 240px; border: 1px dashed var(--dmi-border-strong); border-radius: var(--dmi-radius-lg); background: var(--dmi-surface); }

@media (max-width: 767px) {
  #page-funil { padding: 0 !important; }
  #page-funil .fk-head { align-items: flex-start; padding: 0 var(--dmi-space-4); }
  .fk-head h1 { font-size: 24px !important; }
  .fk-new { padding: 0 12px !important; white-space: nowrap; }
  .fk-tools { display: block !important; margin: 0 var(--dmi-space-4) var(--dmi-space-4) !important; padding: 10px !important; }
  .fk-search { min-width: 0 !important; width: 100%; }
  .fk-filter { flex-wrap: nowrap !important; overflow-x: auto; margin-top: 10px; padding-bottom: 2px; }
  .fk-filter button { flex: 0 0 auto; }
  .fk-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px; margin: 0 var(--dmi-space-4) var(--dmi-space-4) !important; }
  .fk-metrics > div { min-height: 88px; padding: 12px !important; }
  .fk-board { display: block !important; overflow: visible !important; padding: 0 var(--dmi-space-4) var(--dmi-space-5) !important; }
  .fk-board-scroll-top { display: none !important; }
  .fk-column { min-height: 0 !important; margin-bottom: var(--dmi-space-3); padding: 10px !important; }
  .fk-dropzone { min-height: 0 !important; }
  .fk-card { padding: 12px !important; }
  #page-followup .crm-task-cockpit { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
  #page-followup .crm-task-kpi { height: auto !important; min-height: 86px; padding: 12px !important; }
  #page-followup #followupList { grid-template-columns: 1fr !important; }
  #page-followup .section-block { grid-template-columns: 1fr !important; }
}

@media (min-width: 768px) and (max-width: 1023px) {
  #page-funil { padding: 0 var(--dmi-space-4) !important; }
  .fk-tools { flex-wrap: wrap; }
  .fk-search { min-width: 300px; flex: 1; }
  .fk-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  .fk-board { grid-template-columns: repeat(7, minmax(250px, 1fr)) !important; }
  .fk-column { min-height: 520px; }
  #page-followup .crm-task-cockpit { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  #page-followup #followupList { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #page-followup .section-block { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (min-width: 1024px) {
  #page-funil.active { width: calc(100% + 36px) !important; }
  .fk-head h1 { font-size: 30px !important; }
  .fk-new { background: var(--dmi-primary) !important; color: #fff !important; }
  .fk-tools { padding: 14px !important; }
  .fk-metrics > div { min-height: 108px; }
  .fk-board { gap: 14px !important; }
  .fk-column { border-radius: var(--dmi-radius-lg) !important; }
  .fk-card { border-radius: var(--dmi-radius-md) !important; }
}
