/* ── METRIC CARDS ── */
.mcg{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.7rem;margin-bottom:1.2rem}
.mc{background:var(--card);border:1px solid var(--border);border-radius:var(--r);
  padding:.75rem .9rem;position:relative;overflow:hidden}
.mc::before{content:'';position:absolute;top:0;left:0;width:2px;height:100%;background:var(--blue)}
.mc.g::before{background:#4caf50}.mc.y::before{background:var(--glad-gold)}.mc.r::before{background:var(--brasas-red)}
.mc-l{font-family:var(--font);font-size:.56rem;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.8px;margin-bottom:.25rem}
.mc-v{font-size:1.6rem;font-weight:800;line-height:1;color:#fff}
.mc-s{font-size:.62rem;color:#aaa;margin-top:.1rem}

/* ── CHART CARD ── */
.cc{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:1.1rem;margin-bottom:1.1rem}
.cc-t{font-size:.74rem;font-weight:700;color:#ddd;display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}
.cc-t span{color:#999;font-weight:400;font-size:.64rem}
.cw{position:relative}.cw.h220{height:220px}.cw.h260{height:260px}.cw.h360{height:360px}.cw.h180{height:180px}.cw.h300{height:300px}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem}
@media(max-width:920px){.g2,.g3{grid-template-columns:1fr}}

/* ── FUNIL VISUAL ── */
.fv{padding:.5rem 0;display:flex;flex-direction:column;align-items:center;gap:0;width:100%}
.fv-row{margin-bottom:2px;width:100%;overflow:hidden}
.fv-lbl{font-size:.6rem;font-weight:700;color:#bbb;text-transform:uppercase;text-align:center;margin-bottom:1px}
.fv-bar{height:34px;border-radius:4px;display:flex;align-items:center;justify-content:center;
  padding:0 .65rem;min-width:50px;max-width:100%;margin:0 auto;transition:width .35s}
.fv-val{font-size:.88rem;font-weight:800;color:#fff;white-space:nowrap}
.fv-rate{font-size:.62rem;color:var(--blue);font-weight:700;text-align:center;padding:.15rem 0}
.fv-conn{margin-bottom:0}
.fv-conn-line{display:none}
.fv-conn-dot{display:none}
.fv-row-delta{display:grid;grid-template-columns:1fr 60px;align-items:center;gap:.3rem}
.fv-delta-box{text-align:left}
.fv-delta{font-size:.65rem;font-weight:800;white-space:nowrap}
.fv-bar[data-fv-tip]{cursor:pointer}
.fv-tip{display:none;position:fixed;z-index:9999;background:#1a2a3a;color:#ddd;
  font-size:.65rem;padding:.5rem .7rem;border-radius:4px;border:1px solid var(--border);
  max-width:320px;max-height:400px;overflow-y:auto;line-height:1.5;pointer-events:none}
.fv-tip.on{display:block}
.fv-tip div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ── COMPARATIVO: funis lado a lado ── */
.fv-compare{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;padding:.8rem 0}
.fv-compare-item{width:160px;flex:0 0 160px;display:flex;flex-direction:column;align-items:center;overflow:hidden}
.fv-compare-item .fv{padding:.3rem 0;width:100%}
.fv-compare-item .fv-row{max-width:100%}
.fv-compare-item .fv-bar{height:28px;max-width:100%}
.fv-compare-item .fv-val{font-size:.72rem}
.fv-compare-item .fv-lbl{font-size:.52rem}
.fv-compare-item .fv-rate{font-size:.52rem}
.fv-compare-avatar{display:flex;flex-direction:column;align-items:center;gap:.3rem;margin-bottom:.4rem}
.fv-compare-emoji{font-size:1.8rem;margin-bottom:.3rem}
.fv-compare-rev{font-size:1.15rem;font-weight:900;text-align:center;margin-top:.5rem;letter-spacing:.3px}
.fv-compare-maq{font-size:.7rem;font-weight:700;color:#888;text-align:center;margin-top:.1rem}
.fv-compare-label{font-size:.78rem;font-weight:800;text-align:center;margin-top:.3rem;letter-spacing:.4px}
.fv-compare-sub{font-size:.58rem;color:#999;text-align:center;margin-top:.1rem}
.fv-compare-tip{cursor:help;border-bottom:1px dashed #666;position:relative}
.fv-compare-tip:hover::after{content:attr(title);position:absolute;bottom:120%;left:50%;transform:translateX(-50%);
  background:#1a2a3a;color:#eee;font-size:.62rem;padding:.4rem .65rem;border-radius:4px;white-space:nowrap;
  border:1px solid var(--border);z-index:10;pointer-events:none;font-weight:600;letter-spacing:.2px}

/* ── TEAM HEADER ── */
.th{display:flex;align-items:center;gap:.9rem;padding:.8rem 1.1rem;border-radius:var(--r);
  border-left:4px solid;margin-bottom:1rem}
.th.glad{background:linear-gradient(135deg,rgba(128,0,32,.15),rgba(255,215,0,.03));border-color:var(--glad-wine)}
.th.kv{background:rgba(255,255,255,.02);border-color:#555}
.th.br{background:linear-gradient(135deg,rgba(255,107,107,.07),rgba(100,100,100,.05));border-color:var(--brasas-red)}
.th.solo{background:rgba(59,165,221,.05);border-color:var(--blue)}
.th-name{font-size:1.05rem;font-weight:900;letter-spacing:1px}
.th-name.glad{color:var(--glad-gold)}.th-name.kv{color:var(--kv-silver)}
.th-name.br{color:var(--brasas-red)}.th-name.solo{color:var(--solo-blue)}
.th-mem{font-size:.68rem;color:#ccc;margin-top:.12rem}
.th-stat{text-align:center;min-width:52px}
.th-stat-v{font-size:1.3rem;font-weight:800}
.th-stat-l{font-size:.58rem;color:#888;text-transform:uppercase;letter-spacing:.3px}

/* ── MINI FUNNEL STAGES ── */
.mstg{display:grid;grid-template-columns:repeat(5,1fr);gap:.35rem;margin:.6rem 0}
.ms{background:var(--bg);border-radius:7px;padding:.55rem .5rem;text-align:center}
.ms-l{font-size:.56rem;color:#bbb;text-transform:uppercase;font-weight:700;margin-bottom:.1rem}
.ms-v{font-size:1.15rem;font-weight:800}
.ms-r{font-size:.6rem;color:var(--blue);font-weight:600;margin-top:.08rem}

/* ── TAGS ── */
.tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:1rem}
.tag{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:.25rem .5rem;font-size:.68rem}
.tl{color:#bbb}.tv{color:#fff;font-weight:700}

/* ── CONSULTANT CARDS ── */
.ccg{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:.8rem;margin-bottom:1.25rem}
.ccard{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:.9rem}
.cc-name{font-size:.82rem;font-weight:700;margin-bottom:.08rem}
.cc-role{font-size:.64rem;color:#bbb;margin-bottom:.75rem}
.cstg{display:grid;grid-template-columns:repeat(5,1fr);gap:.28rem}
.cs{text-align:center}
.cs-l{font-size:.54rem;color:#bbb;text-transform:uppercase;font-weight:700}
.cs-v{font-size:.98rem;font-weight:800}
.cs-r{font-size:.58rem;color:var(--blue);font-weight:600}

/* ── TABLE ── */
.tw{background:var(--card);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;margin-bottom:1.1rem}
.ts{max-height:420px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#1e3040 #091420}
.dt{width:100%;border-collapse:collapse;font-size:.7rem}
.dt th{background:var(--bg);color:#bbb;font-family:var(--font);font-weight:700;font-size:.56rem;text-transform:uppercase;
  letter-spacing:.8px;padding:.45rem .6rem;text-align:left;border-bottom:1px solid var(--border);
  white-space:nowrap;position:sticky;top:0;z-index:2}
.dt td{padding:.42rem .6rem;border-bottom:1px solid var(--bg);vertical-align:middle;color:#ddd}
.dt tr:last-child td{border-bottom:none}
.dt tr:hover td{background:rgba(59,165,221,.03)}

/* ── CONSULTANT ROW (card + funnel side by side) ── */
.fc-row{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:1rem;align-items:start}
@media(max-width:1000px){.fc-row{grid-template-columns:1fr}}
.fc-row-card{min-width:0}
.fc-row-funnel{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:1rem;overflow:hidden}

/* ── ACCORDION (funil consultores) ── */
.fc-accordion{margin-bottom:.8rem}
.fc-acc-hdr{display:flex;align-items:center;gap:.7rem;padding:.9rem 1.2rem;
  background:var(--card);border:1px solid var(--border);border-left:4px solid;
  border-radius:var(--r);cursor:pointer;transition:background .15s;user-select:none}
.fc-acc-hdr:hover{background:rgba(255,255,255,.02)}
.fc-acc-arrow{font-size:.7rem;color:#666;transition:transform .2s;flex:0 0 auto}
.fc-accordion.open .fc-acc-arrow{transform:rotate(90deg);color:#bbb}
.fc-acc-emoji{font-size:1.4rem}
.fc-acc-name{font-size:1.2rem;font-weight:900;letter-spacing:.5px}
.fc-acc-count{font-size:.68rem;color:#888;margin-left:auto;font-weight:600}
.fc-acc-body{display:none;padding:.8rem 0 0}
.fc-accordion.open .fc-acc-body{display:block}

/* ── BADGES ── */
.bdg{display:inline-block;padding:.12rem .4rem;border-radius:3px;font-size:.58rem;font-weight:700;text-transform:uppercase;white-space:nowrap;letter-spacing:.3px}
.bi{background:rgba(59,165,221,.12);color:var(--blue);border:1px solid rgba(59,165,221,.2)}
.bo{background:rgba(255,215,0,.1);color:var(--glad-gold);border:1px solid rgba(255,215,0,.18)}
.bok{background:rgba(76,175,80,.12);color:#4caf50;border:1px solid rgba(76,175,80,.2)}
.bng{background:rgba(255,107,107,.12);color:var(--brasas-red);border:1px solid rgba(255,107,107,.2)}
.bsm{background:rgba(255,255,255,.04);color:#888;border:1px solid rgba(255,255,255,.08)}
.diag-toggle-btn{cursor:pointer;transition:all .15s;font-family:var(--font)}
.diag-toggle-btn:hover{filter:brightness(1.3);transform:scale(1.05)}

/* ── INNER TABS ── */
.itabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:1.25rem}
.itab{padding:.4rem .95rem;border:none;background:transparent;color:#bbb;
  font-family:var(--font);font-size:.7rem;font-weight:700;cursor:pointer;
  border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s;
  text-transform:uppercase;letter-spacing:.4px}
.itab.on{color:var(--blue);border-bottom-color:var(--blue)}.itab:hover{color:#fff}
.itp{display:none}.itp.on{display:block}

/* ── CONSULTANT RICH CARD GRID ── */
.rcards-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}
@media(max-width:1100px){.rcards-grid{grid-template-columns:1fr}}

/* ── CONSULTANT RICH CARD ── */
.rcard{background:var(--card);border:1px solid var(--border);border-radius:12px;overflow:hidden}
.rcard-hdr{display:flex;align-items:flex-start;justify-content:space-between;padding:1.1rem 1.3rem .7rem;border-bottom:1px solid var(--border);gap:.8rem}
.rcard-ident{display:flex;align-items:center;gap:.8rem;min-width:0}
.rcard-name{font-size:1.4rem;font-weight:900;letter-spacing:.5px}
.rcard-team{font-size:.62rem;font-weight:700;color:#bbb;text-transform:uppercase;letter-spacing:.5px;margin-top:.15rem;display:flex;align-items:center;gap:.35rem}
.rcard-rev{text-align:right}
.rcard-rev-v{font-size:1.3rem;font-weight:900}
.rcard-tkt{font-size:.68rem;color:#aaa;margin-top:.1rem}

/* ── AVATAR ── */
.avatar-wrap{position:relative;display:inline-block;border-radius:50%;overflow:hidden}
.avatar-fb{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;letter-spacing:.5px}
.avatar-img{position:relative;width:100%;height:100%;object-fit:cover;display:block}

.rcard-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--border)}
.rmbox{background:var(--card);padding:.7rem .5rem;text-align:center}
.rm-l{font-size:.56rem;font-weight:700;color:#ccc;text-transform:uppercase;letter-spacing:.4px;margin-bottom:.25rem}
.rm-v{font-size:1.35rem;font-weight:800}
.rm-r{font-size:.62rem;color:#7dd4f8;font-weight:600;margin-top:.12rem;min-height:.85rem}

.rcard-rates{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border-top:1px solid var(--border)}
.rrbox{background:var(--bg);padding:.6rem .5rem;text-align:center}
.rr-l{font-size:.56rem;font-weight:700;color:#ccc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:.2rem;display:flex;align-items:center;justify-content:center;gap:.25rem}
.rr-v{font-size:1.1rem;font-weight:800}
.rr-v.maq{color:var(--glad-gold)}
.rr-v.bad{color:var(--brasas-red)}
.rr-v.good{color:#4caf50}

.rcard-months{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.6rem;padding:.9rem 1.1rem;background:var(--bg);border-top:1px solid var(--border)}
.mbox{background:var(--card);border-radius:7px;padding:.55rem .5rem;text-align:center;border:1px solid var(--border)}
.mbox-l{font-size:.56rem;font-weight:700;color:#ccc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:.2rem}
.mbox-v{font-size:.88rem;font-weight:800}
.mbox-n{font-size:.58rem;color:#999;margin-top:.1rem}
.mbox-tm{font-size:.56rem;color:#7dd4f8;font-weight:700;margin-top:.1rem;letter-spacing:.3px}

.rcard-rd{padding:.55rem 1.1rem;background:var(--bg);border-top:1px solid var(--border);font-size:.72rem;color:#ccc}
.rcard-rd strong{color:var(--blue)}

/* ── META (rich card) ── */
.rcard-meta{padding:.75rem 1.1rem;background:var(--bg);border-top:1px solid var(--border)}
.meta-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}
.meta-lbl{font-size:.68rem;font-weight:700;color:#ccc;letter-spacing:.3px}
.meta-val{font-size:.82rem;font-weight:800;color:#fff}
.meta-none{font-size:.65rem;color:#888;font-style:italic}
.meta-bar{height:8px;background:var(--card);border-radius:4px;overflow:hidden;margin-bottom:.4rem;border:1px solid var(--border)}
.meta-fill{height:100%;border-radius:3px;transition:width .4s ease}
.meta-fill.bad{background:linear-gradient(90deg,#c0392b,#FF6B6B)}
.meta-fill.warn{background:linear-gradient(90deg,#d4a017,#FFD700)}
.meta-fill.good{background:linear-gradient(90deg,#2e8b57,#4caf50)}
.meta-row{display:flex;align-items:center;justify-content:space-between;font-size:.68rem;color:#bbb;gap:.5rem;flex-wrap:wrap}
.meta-sub strong{color:#fff}
.meta-pct{font-size:.9rem;font-weight:900;letter-spacing:.3px}
.meta-pct.bad{color:var(--brasas-red)}
.meta-pct.warn{color:var(--glad-gold)}
.meta-pct.good{color:#4caf50}

/* ── Ranking — nome com avatar + cores de % meta ── */
.rk-name{display:flex;align-items:center;gap:.55rem}
.pct-good{color:#4caf50}
.pct-warn{color:var(--glad-gold)}
.pct-bad{color:var(--brasas-red)}

.rcard-ai{padding:.8rem 1.1rem;border-top:1px solid var(--border)}
.ai-section{margin-bottom:.65rem}
.ai-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.35rem}
.ai-badge.gargalo{color:#FFB347}
.ai-badge.acao{color:#4caf50}
.ai-badge.funil{color:var(--blue)}
.ai-text{font-size:.74rem;color:#d0d0d0;line-height:1.55}
.ai-loading{font-size:.72rem;color:#999;font-style:italic}

.rcard-funnel{background:var(--bg);border-top:1px solid var(--border);padding:.8rem 1.1rem}
.funnel-row{display:flex;align-items:center;justify-content:space-between;padding:.25rem 0;border-bottom:1px solid var(--border)}
.funnel-row:last-child{border-bottom:none}
.funnel-lbl{font-size:.7rem;color:#bbb}
.funnel-val{font-size:.82rem;font-weight:700;color:var(--blue)}

/* ── CRM LINK ── */
.crm-lk{color:#999;text-decoration:none;font-size:.78rem;font-weight:600;transition:color .15s}
.crm-lk:hover{color:var(--blue)}
