/* =====================================================================
   Caçador de Clientes — estilo do painel
   Paleta sóbria e profissional (CRM 2026): índigo profundo + âmbar.
   ===================================================================== */
:root{
  --cc-bg:        #f3f4fa;
  --cc-surface:   #ffffff;
  --cc-ink:       #1c1d2b;
  --cc-muted:     #6b6f82;
  --cc-line:      #e7e8f0;
  --cc-primary:   #3b3f8f;   /* índigo */
  --cc-primary-d: #2c2f73;
  --cc-accent:    #f6a609;   /* âmbar */
  --cc-sidebar:   #161827;
  --cc-sidebar-2: #1f2236;
  --cc-radius:    14px;
  --cc-shadow:    0 1px 2px rgba(16,18,40,.06), 0 6px 24px rgba(16,18,40,.06);
  --cc-sb-w:      256px;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:'Plus Jakarta Sans',-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--cc-bg);
  color:var(--cc-ink);
  -webkit-font-smoothing:antialiased;
}

.btn-primary{--bs-btn-bg:var(--cc-primary);--bs-btn-border-color:var(--cc-primary);
  --bs-btn-hover-bg:var(--cc-primary-d);--bs-btn-hover-border-color:var(--cc-primary-d);
  --bs-btn-active-bg:var(--cc-primary-d);}
.text-primary{color:var(--cc-primary)!important}
.bg-primary-subtle{background:#e9eaf7!important}

/* ---------- Estrutura ---------- */
.cc-shell{display:flex;min-height:100vh}
.cc-main{flex:1;min-width:0;display:flex;flex-direction:column}

/* ---------- Sidebar ---------- */
.cc-sidebar{
  width:var(--cc-sb-w);flex-shrink:0;
  background:linear-gradient(180deg,var(--cc-sidebar),var(--cc-sidebar-2));
  color:#c7cad8;display:flex;flex-direction:column;
  position:sticky;top:0;height:100vh;
}
.cc-brand{display:flex;align-items:center;gap:.65rem;padding:1.25rem 1.25rem;color:#fff}
.cc-brand-mark{
  width:38px;height:38px;border-radius:11px;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--cc-primary),var(--cc-accent));
  color:#fff;font-size:1.05rem;box-shadow:0 6px 16px rgba(59,63,143,.45);
}
.cc-brand-mark.lg{width:54px;height:54px;font-size:1.5rem;border-radius:16px;margin:0 auto}
.cc-brand-text{font-weight:600;font-size:1.05rem;letter-spacing:-.2px}
.cc-brand-text strong{font-weight:800}
.cc-nav{display:flex;flex-direction:column;gap:2px;padding:.5rem .75rem;flex:1}
.cc-nav-link{
  display:flex;align-items:center;gap:.8rem;padding:.7rem .85rem;border-radius:10px;
  color:#aeb2c4;text-decoration:none;font-size:.92rem;font-weight:500;transition:.15s;
}
.cc-nav-link i{width:18px;text-align:center;font-size:1rem}
.cc-nav-link:hover{background:rgba(255,255,255,.06);color:#fff}
.cc-nav-link.active{background:rgba(99,102,241,.18);color:#fff;box-shadow:inset 3px 0 0 var(--cc-accent)}
.cc-sidebar-foot{padding:1rem 1.25rem;color:#6a6f86;border-top:1px solid rgba(255,255,255,.06)}

/* ---------- Topbar ---------- */
.cc-topbar{
  display:flex;align-items:center;gap:1rem;padding:.85rem 1.5rem;
  background:var(--cc-surface);border-bottom:1px solid var(--cc-line);
  position:sticky;top:0;z-index:20;
}
.cc-page-title{font-size:1.15rem;font-weight:700;margin:0;letter-spacing:-.3px}
.cc-topbar-right{margin-left:auto}
.cc-burger{display:none;border:1px solid var(--cc-line);background:#fff}
.cc-user{display:flex;align-items:center;gap:.5rem;border:1px solid var(--cc-line);background:#fff;font-weight:600;font-size:.9rem}
.cc-avatar{width:30px;height:30px;border-radius:50%;background:var(--cc-primary);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.85rem}

/* ---------- Conteúdo ---------- */
.cc-content{padding:1.5rem;max-width:1320px;width:100%}

/* ---------- Cards de métrica ---------- */
.cc-metric{
  background:var(--cc-surface);border:1px solid var(--cc-line);border-radius:var(--cc-radius);
  padding:1.15rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--cc-shadow);height:100%;
}
.cc-metric-icon{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;font-size:1.3rem;flex-shrink:0}
.cc-metric-value{font-size:1.9rem;font-weight:800;line-height:1;letter-spacing:-1px}
.cc-metric-value small{font-size:.9rem;font-weight:600;color:var(--cc-muted)}
.cc-metric-label{color:var(--cc-muted);font-size:.85rem;font-weight:500;margin-top:.25rem}

/* ---------- Cards genéricos ---------- */
.cc-card{background:var(--cc-surface);border:1px solid var(--cc-line);border-radius:var(--cc-radius);box-shadow:var(--cc-shadow);overflow:hidden}
.cc-card-head{padding:1rem 1.25rem;border-bottom:1px solid var(--cc-line)}
.cc-card-head h3{font-size:.98rem;font-weight:700;margin:0}
.cc-card-body{padding:1.25rem}

/* ---------- Selo de pontuação (usado nas próximas partes) ---------- */
.cc-selo{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .65rem;border-radius:999px;font-weight:700;font-size:.8rem}
.cc-selo-bom{background:#d8f5e3;color:#0f7a44}
.cc-selo-regular{background:#fff2cf;color:#9a6b00}
.cc-selo-ruim{background:#fde0e0;color:#b42323}

/* ---------- Estado vazio ---------- */
.cc-empty{text-align:center;padding:4rem 1.5rem;color:var(--cc-muted)}
.cc-empty i{font-size:3rem;color:var(--cc-primary);opacity:.55;margin-bottom:1rem}
.cc-empty h2{font-weight:800;color:var(--cc-ink);font-size:1.4rem}
.cc-empty p{max-width:460px;margin:.5rem auto 1.5rem}

/* ---------- Login ---------- */
.cc-auth-body{background:radial-gradient(1200px 600px at 50% -10%,#26294a,#0f1020);min-height:100vh}
.cc-auth-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem}
.cc-auth-card{background:#fff;border-radius:20px;padding:2.25rem;width:100%;max-width:390px;box-shadow:0 24px 60px rgba(0,0,0,.35)}
.cc-auth-brand{text-align:center;margin-bottom:1.5rem}
.cc-auth-brand h1{font-size:1.4rem;font-weight:600;margin:.75rem 0 .15rem;letter-spacing:-.4px}
.cc-auth-brand h1 strong{font-weight:800}
.cc-auth-foot{margin-top:1.25rem;color:#9aa!important}

/* ---------- Responsivo ---------- */
@media (max-width: 992px){
  .cc-sidebar{position:fixed;left:0;top:0;z-index:1050;transform:translateX(-100%);transition:transform .25s ease;box-shadow:0 0 40px rgba(0,0,0,.4)}
  .cc-shell.cc-open .cc-sidebar{transform:translateX(0)}
  .cc-burger{display:inline-flex}
  .cc-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:1040;display:none}
  .cc-shell.cc-open .cc-backdrop{display:block}
}

/* ---------- Timeline (histórico) ---------- */
.cc-timeline{position:relative;padding-left:6px}
.cc-tl-item{display:flex;gap:.7rem;padding-bottom:.9rem;position:relative}
.cc-tl-item:not(:last-child)::before{content:"";position:absolute;left:11px;top:24px;bottom:-2px;width:2px;background:var(--cc-line)}
.cc-tl-dot{width:24px;height:24px;border-radius:50%;background:#eef0fb;color:var(--cc-primary);display:grid;place-items:center;font-size:.7rem;flex-shrink:0}
.cc-tl-meta{color:var(--cc-muted);font-size:.72rem;margin-top:.1rem}

/* ---------- Círculo de nota ---------- */
.cc-score-circle{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;font-size:1.9rem;font-weight:800;color:#fff;margin:0 auto}
.cc-score-bom{background:linear-gradient(135deg,#1aa260,#0f7a44)}
.cc-score-regular{background:linear-gradient(135deg,#f0b429,#cf8a00)}
.cc-score-ruim{background:linear-gradient(135deg,#e35d6a,#c5303f)}

/* ---------- Kanban ---------- */
.cc-kanban{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;align-items:flex-start}
.cc-kanban-col{flex:0 0 280px;background:#eef0f6;border-radius:var(--cc-radius);max-height:calc(100vh - 180px);display:flex;flex-direction:column}
.cc-kanban-head{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-radius:var(--cc-radius) var(--cc-radius) 0 0;font-size:.9rem}
.cc-kanban-cards{padding:.65rem;overflow-y:auto;min-height:80px;flex:1}
.cc-kanban-card{background:#fff;border:1px solid var(--cc-line);border-radius:10px;padding:.7rem .8rem;margin-bottom:.6rem;cursor:grab;box-shadow:0 1px 2px rgba(16,18,40,.05);transition:.12s}
.cc-kanban-card:hover{box-shadow:var(--cc-shadow);transform:translateY(-1px)}
.cc-kanban-card:active{cursor:grabbing}
.cc-card-ghost{opacity:.45;border:1px dashed var(--cc-primary)}

/* ---------- Oportunidades ---------- */
.cc-op-card{border-left:4px solid var(--cc-line)}
.cc-op-p3{border-left-color:#f0b429}
.cc-op-p4{border-left-color:#f6863f}
.cc-op-p5{border-left-color:#e3463f}
.cc-fire{color:#f6863f;font-size:.8rem;letter-spacing:-2px}
