/* ===================== Conecta: painel do afiliado =====================
   A única página da área de membros em 100% da largura: o menu do Conecta na esquerda (recolhe para uma coluna de ícones)
   e o conteúdo ao lado. A visão geral é um bento que cabe na tela: na esquerda, a pessoa (foto, pin do nível, velocímetro,
   escada dos níveis e o link); na direita, comissão, próxima live, página, rede, o caminho dos convidados e quem espera.
   Fundo cinza no claro, blocos bem arredondados, números grandes e finos, rostos, um bloco verde (a comissão).
   O administrador arrasta um bloco para o lugar de outro e cada um se ajusta ao tamanho da vaga. */
.fc-nx-main:has(> .fc-cx) { max-width: none; padding: var(--fc-topbar) 0 0; }
body.fc-claro:has(.fc-cx) { background: var(--fc-nevoa, #EAEFEE); }
.fc-cx { display: grid; grid-template-columns: 236px minmax(0, 1fr); min-height: calc(100dvh - var(--fc-topbar)); --fc-text-2: var(--fc-text); transition: grid-template-columns .25s var(--fc-ease); }
.fc-cx.is-recolhido { grid-template-columns: 84px minmax(0, 1fr); }

/* menu: Recolher no topo e os itens em pílulas com o ícone num círculo */
.fc-cx-menu { position: sticky; top: var(--fc-topbar); align-self: start; height: calc(100dvh - var(--fc-topbar)); display: flex; flex-direction: column; gap: 6px; padding: 44px 14px 24px; overflow: hidden; }
.fc-cx-menu button, .fc-cx-menu a.fc-cx-menu__ir { display: flex; align-items: center; gap: 12px; width: 100%; height: 54px; border: 0; background: none; border-radius: 999px; padding: 0 16px 0 5px; color: var(--fc-text); font-size: 15px; text-align: left; cursor: pointer; white-space: nowrap; }
.fc-cx-menu button > svg, .fc-cx-menu a.fc-cx-menu__ir > svg { box-sizing: content-box; width: 18px; height: 18px; flex: none; padding: 13px; border-radius: 50%; background: var(--cx-bloco); }
.fc-cx-menu button:hover, .fc-cx-menu a.fc-cx-menu__ir:hover { background: var(--cx-hover); }
.fc-cx-menu button.is-trancado { opacity: .4; cursor: not-allowed; }
.fc-cx-menu button.is-trancado:hover { background: none; }
.fc-cx-menu button[aria-current="page"] { background: var(--cx-bloco); font-weight: 600; }
.fc-cx-menu button[aria-current="page"] > svg { background: var(--cx-forte); color: var(--cx-on-forte); }
.fc-cx-menu button em { margin-left: auto; min-width: 22px; height: 22px; padding: 0 7px; border-radius: 999px; display: grid; place-items: center; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font: 600 12px var(--fc-font-text); font-style: normal; }
.fc-cx.is-recolhido .fc-cx-menu span, .fc-cx.is-recolhido .fc-cx-menu em { display: none; }
.fc-cx.is-recolhido .fc-cx-menu button, .fc-cx.is-recolhido .fc-cx-menu a.fc-cx-menu__ir { width: 54px; padding: 0 5px; }
.fc-cx.is-recolhido .fc-cx-menu button[aria-current="page"] { background: none; }
.fc-cx.is-recolhido .fc-cx-menu__recolher svg { transform: scaleX(-1); }

/* conteúdo */
.fc-cx-main { min-width: 0; padding: 44px clamp(16px, 2.4vw, 36px) 64px; }
.fc-cx-main > section { max-width: 1560px; margin-inline: auto; }
.fc-cx-tit { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; margin-bottom: 24px; }
.fc-cx-tit h1 { margin: 0; font: 600 var(--fc-h2)/1.15 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-vazio { max-width: 520px; margin: 40px auto; text-align: center; display: grid; justify-items: center; gap: 10px; }
.fc-cx-vazio > svg { width: 34px; height: 34px; }
.fc-cx-vazio h2 { margin: 0; font: 600 20px var(--fc-font-title); }
.fc-cx-vazio p { margin: 0 0 8px; }
@media (max-width: 900px) {
  .fc-cx, .fc-cx.is-recolhido { grid-template-columns: 1fr; }
  .fc-cx-menu { position: static; height: auto; flex-direction: row; overflow-x: auto; padding: 14px 16px 0; scrollbar-width: none; }
  .fc-cx-menu__recolher { display: none !important; }
  .fc-cx-menu button, .fc-cx-menu a.fc-cx-menu__ir { width: auto; height: 48px; }
  .fc-cx.is-recolhido .fc-cx-menu span { display: inline; }
  .fc-cx-main { padding: 20px 16px 72px; }
}

/* peças comuns */
img.fc-cx-av { object-fit: cover; background: var(--cx-bloco-2); }

/* VISÃO GERAL: em cima você e o nível | a comissão; no meio o link | os números; embaixo quem espera | a live e o desempenho.
   Cartões discretos (um tom acima do fundo, fio fino), números grandes, textos pequenos. Verde só no principal. */
.fc-cx { --cx-tx2: color-mix(in srgb, var(--fc-text) 62%, transparent); }
.fc-cx-painel { display: grid; grid-template-rows: auto auto minmax(0, 1fr); gap: 14px; }
.fc-cx-l1, .fc-cx-l3 { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 14px; min-width: 0; min-height: 0; }
/* meio: dois cartões da mesma altura, o link de indicação e os números */
.fc-cx-l2 { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: stretch; gap: 14px; min-width: 0; }
.fc-cx-card { position: relative; min-width: 0; min-height: 0; background: var(--cx-bloco); border-radius: var(--fc-r-xl); }
.fc-cx-cab { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 20px 0; }
.fc-cx-cab h2 { margin: 0; font: 600 15px var(--fc-font-title); letter-spacing: -.01em; }
.fc-cx-lnk { display: inline-flex; align-items: center; gap: 6px; padding: 0; border: 0; background: none; color: var(--cx-tx2); font-size: 12.5px; font-weight: 500; white-space: nowrap; cursor: pointer; }
.fc-cx-lnk:hover { color: var(--fc-text); }
.fc-cx-lnk svg { width: 14px; height: 14px; }
/* rótulo ou variação: texto no contorno arredondado (nada de etiqueta verde) */
.fc-cx-pil { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 999px; border: 1px solid var(--cx-linha); color: var(--fc-text); font-size: 11.5px; font-style: normal; font-weight: 500; white-space: nowrap; }
.fc-cx-circ { width: 36px; height: 36px; flex: none; border: 1px solid var(--cx-linha); border-radius: 50%; display: grid; place-items: center; background: none; color: var(--fc-text); cursor: pointer; text-decoration: none; }
.fc-cx-circ:hover { color: var(--fc-text); background: var(--cx-hover); }
.fc-cx-circ svg { width: 16px; height: 16px; }

/* em cima: você e o nível */
.fc-cx-voce { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 18px 40px 18px 22px; }
.fc-cx-voce__quem { display: flex; align-items: center; gap: 30px; min-width: 0; }
.fc-cx-foto { position: relative; flex: none; width: 112px; height: 112px; }
.fc-cx-foto > img, .fc-cx-foto > span { display: grid; place-items: center; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; background: var(--cx-bloco-2); font: 600 36px var(--fc-font-title); box-shadow: 0 0 0 4px var(--cx-bloco), 0 0 0 7px var(--fc-menta, #2EFFA0); }
.fc-cx-pin { position: absolute; right: -10px; bottom: -8px; width: 44px; height: 44px; display: grid; place-items: center; }
.fc-cx-pin .fc-medalha { filter: drop-shadow(0 3px 5px rgba(0, 0, 0, .35)); }
.fc-cx-voce__tx { min-width: 0; }
.fc-cx-voce__tx h1 { margin: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 24px/1.2 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-voce__tx p { margin: 4px 0 12px; color: var(--cx-tx2); font-size: 13px; }
.fc-cx-voce__tx p b { color: var(--fc-text); font-weight: 600; }
.fc-cx-degraus { display: flex; align-items: center; }
.fc-cx-degraus span { position: relative; flex: none; width: 34px; height: 34px; display: grid; place-items: center; filter: grayscale(1); opacity: .35; }
.fc-cx-degraus span + span { margin-left: 10px; }
.fc-cx-degraus span + span::before { content: ""; position: absolute; right: 100%; top: 50%; width: 10px; height: 2px; background: var(--cx-trilho); }
.fc-cx-degraus span.is-feito, .fc-cx-degraus span.is-atual { filter: none; opacity: 1; }
.fc-cx-degraus span.is-atual { transform: scale(1.18); }
.fc-cx-degraus .fc-medalha { filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .3)); }
.fc-cx-velo { display: flex; align-items: center; gap: 14px; margin-inline: auto; }
.fc-cx-velo svg { display: block; width: 196px; height: auto; overflow: visible; }
.fc-cx-velo .is-trilho { fill: none; stroke: var(--cx-trilho); stroke-width: 22; stroke-linecap: round; }
.fc-cx-velo .is-cheio { fill: none; stroke: var(--fc-menta, #2EFFA0); stroke-width: 22; stroke-linecap: round; transition: stroke-dasharray .9s cubic-bezier(.2, .8, .2, 1); }
.fc-cx-velo .is-ponteiro { transform-origin: 100px 104px; transform: rotate(-90deg); transition: transform .9s cubic-bezier(.2, .8, .2, 1); }
.fc-cx-velo .is-ponteiro path { fill: var(--fc-menta, #2EFFA0); }
.fc-cx-velo circle { fill: var(--cx-bloco); stroke: var(--cx-linha); }
.fc-cx-velo__tx b { display: block; font: 600 30px/1.1 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-velo__tx span { display: block; color: var(--cx-tx2); font-size: 12.5px; }
.fc-cx-velo__tx .fc-cx-pil { margin-top: 8px; }

/* em cima: a comissão (o bloco verde) */
.fc-cx-com { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 20px 26px; border: 0; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); overflow: hidden; }
.fc-cx-com small { display: block; font-size: 12.5px; font-weight: 500; opacity: .75; }
.fc-cx-com b { display: block; margin-top: 4px; font: 600 48px/1 var(--fc-font-title); letter-spacing: -.04em; white-space: nowrap; font-variant-numeric: tabular-nums; }
.fc-cx-com b sup { font-size: 17px; letter-spacing: 0; vertical-align: 22px; margin-right: 4px; }
.fc-cx-com b em { font-style: normal; opacity: .45; }
.fc-cx-com p { margin: 8px 0 0; font-size: 12.5px; font-weight: 500; }
.fc-cx-com__meses { display: grid; gap: 6px; flex: none; }
.fc-cx-meses { display: grid; grid-template-columns: repeat(6, 18px); align-items: end; gap: 8px; height: 84px; }
.fc-cx-meses i { height: var(--h); min-height: 6px; border-radius: 6px; background: rgba(18, 25, 35, .2); }
.fc-cx-meses i:last-child { background: var(--fc-marinho, #121923); }
.fc-cx-meses-eixo { display: grid; grid-template-columns: repeat(6, 18px); gap: 8px; font-size: 10.5px; text-align: center; opacity: .7; }

/* no meio: o link e os números */
.fc-cx-divulga { display: flex; align-items: center; padding: 14px 18px; }
.fc-cx-divulga small { color: color-mix(in srgb, var(--fc-text) 80%, transparent); font-size: 12.5px; font-weight: 600; }
/* o link de indicação em destaque: contorno claro e o endereço maior */
.fc-cx-divulga .fc-cx-linkbox { flex: 1; width: auto; min-width: min(460px, 100%); height: 56px; padding-left: 22px; background: var(--fc-branco, #FFFFFF); box-shadow: 0 0 0 1px rgba(18, 25, 35, .12); }
.fc-cx-divulga .fc-cx-linkbox span { color: var(--fc-tom-32, #5E6369); font-size: 12.5px; font-weight: 600; }
.fc-cx-divulga .fc-cx-linkbox a { font-size: 14.5px; color: var(--fc-marinho, #121923); }
.fc-cx-divulga .fc-cx-linkbox button { height: 46px; padding: 0 26px; font-size: 14px; }
.fc-cx-divulga__in { display: flex; align-items: center; gap: 8px; }
.fc-cx-linkbox { display: flex; align-items: center; gap: 8px; flex: none; width: min(420px, 40vw); height: 46px; padding: 0 4px 0 18px; border-radius: 999px; background: var(--cx-bloco); }
.fc-cx-linkbox span { font-size: 11.5px; color: var(--cx-tx2); white-space: nowrap; }
.fc-cx-linkbox a { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--fc-text); font-size: 13px; font-weight: 600; text-decoration: none; }
.fc-cx-linkbox button { height: 38px; padding: 0 18px; border: 0; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-weight: 600; font-size: 13px; cursor: pointer; white-space: nowrap; }
.fc-cx-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: center; padding: 14px 0; }
.fc-cx-kpi { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 4px 22px; }
.fc-cx-kpi + .fc-cx-kpi { border-left: 1px solid var(--cx-linha); }
.fc-cx-kpi > i { flex: none; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--cx-bloco-2); color: var(--fc-text); }
.fc-cx-kpi > i svg { width: 16px; height: 16px; }
.fc-cx-kpi div { min-width: 0; }
.fc-cx-kpi span { display: block; overflow: hidden; text-overflow: ellipsis; color: color-mix(in srgb, var(--fc-text) 80%, transparent); font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.fc-cx-kpi b { display: inline-block; margin: 2px 8px 0 0; font: 600 30px/1.1 var(--fc-font-title); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }

/* embaixo: quem espera você (a lista) */
.fc-cx-espera { display: flex; flex-direction: column; }
/* a lista fica solta no fundo, sem caixa */
.fc-cx-l3 > .fc-cx-espera { background: none; border-radius: 0; }
.fc-cx-l3 > .fc-cx-espera .fc-cx-cab, .fc-cx-l3 > .fc-cx-espera .fc-cx-filtros { padding-inline: 6px; }
.fc-cx-l3 > .fc-cx-espera .fc-cx-tabela { margin-inline: 0; }
.fc-cx-l3 > .fc-cx-espera .fc-cx-tabela__cab { background: var(--cx-chao); }
.fc-cx-filtros { display: flex; gap: 6px; padding: 12px 20px 0; }
.fc-cx-filtros button { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 12px; border: 1px solid var(--cx-linha); border-radius: 999px; background: none; color: var(--cx-tx2); font-size: 12.5px; cursor: pointer; }
.fc-cx-filtros button b { color: var(--fc-text); font-weight: 600; }
.fc-cx-filtros button[aria-pressed="true"] { border-color: transparent; background: var(--cx-forte); color: var(--cx-on-forte); }
.fc-cx-filtros button[aria-pressed="true"] b { color: var(--cx-on-forte); }
.fc-cx-tabela { flex: 1; min-height: 0; overflow: auto; margin: 10px 8px 8px; }
.fc-cx-tabela__cab, .fc-cx-lead { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 96px 132px 104px; gap: 12px; align-items: center; padding: 0 12px; }
.fc-cx-tabela__cab { position: sticky; top: 0; z-index: 1; height: 30px; background: var(--cx-bloco); color: var(--cx-tx2); font-size: 12px; }
.fc-cx-lead { min-height: 58px; border-top: 1px solid var(--cx-linha); cursor: pointer; }
.fc-cx-lead:hover { border-radius: 14px; background: var(--cx-bloco-2); }
.fc-cx-lead:hover + .fc-cx-lead { border-top-color: transparent; }
.fc-cx-lead__p { display: flex; align-items: center; gap: 12px; min-width: 0; }
.fc-cx-lead__p .fc-cx-av { width: 38px; height: 38px; font-size: 13px; }
.fc-cx-lead__p b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13.5px; font-weight: 600; }
.fc-cx-lead__p small { display: block; color: var(--cx-tx2); font-size: 12px; }
.fc-cx-lead time { color: var(--cx-tx2); font-size: 12.5px; white-space: nowrap; }
.fc-cx-st { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 500; white-space: nowrap; }
.fc-cx-st i { width: 8px; height: 8px; border-radius: 50%; background: var(--fc-text); box-shadow: 0 0 0 3px var(--cx-bloco-2); }
.fc-cx-st.is-feito { color: var(--cx-tx2); }
.fc-cx-st.is-feito i { background: none; border: 1.5px solid var(--cx-tx2); box-shadow: none; }
.fc-cx-chamar { justify-self: end; display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border: 0; border-radius: 999px; background: var(--cx-forte); color: var(--cx-on-forte); font-size: 12.5px; font-weight: 600; cursor: pointer; }
.fc-cx-chamar svg { width: 14px; height: 14px; }
.fc-cx-chamar.is-leve { border: 1px solid var(--cx-linha); background: none; color: var(--fc-text); }
.fc-cx-lista-vazia { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 12px; margin: 0; padding: 28px 12px; border-top: 1px solid var(--cx-linha); color: var(--cx-tx2); text-align: center; }

/* embaixo: a live e o desempenho */
.fc-cx-lado { display: grid; grid-template-rows: minmax(150px, .8fr) minmax(0, 1fr); gap: 14px; min-width: 0; min-height: 0; }
.fc-cx-live { display: flex; flex-direction: column; justify-content: space-between; padding: 16px 18px; overflow: hidden; border: 0; color: var(--fc-branco, #FFFFFF); background: var(--fc-marinho, #121923) var(--foto) 76% 28% / cover no-repeat; }
.fc-cx-live::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(18, 25, 35, .92) 0%, rgba(18, 25, 35, .6) 48%, rgba(18, 25, 35, .05) 80%); }
.fc-cx-live > * { position: relative; }
.fc-cx-ao { align-self: flex-start; display: inline-flex; align-items: center; gap: 7px; height: 28px; padding: 0 12px; border-radius: 999px; background: rgba(255, 255, 255, .14); backdrop-filter: blur(8px); font-size: 12px; font-weight: 600; }
.fc-cx-ao i { width: 8px; height: 8px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); animation: fc-cx-pulsa 1.8s infinite; }
@keyframes fc-cx-pulsa { 0% { box-shadow: 0 0 0 0 rgba(240, 74, 104, .6); } 70% { box-shadow: 0 0 0 8px rgba(240, 74, 104, 0); } 100% { box-shadow: 0 0 0 0 rgba(240, 74, 104, 0); } }
@media (prefers-reduced-motion: reduce) { .fc-cx-ao i { animation: none; } }
.fc-cx-live h3 { margin: 0; color: var(--fc-branco, #FFFFFF); font: 600 26px/1.1 var(--fc-font-title); letter-spacing: -.03em; }
.fc-cx-live p { margin: 4px 0 12px; max-width: 30ch; color: rgba(255, 255, 255, .8); font-size: 13px; }
.fc-cx-live__pe { display: flex; align-items: center; gap: 10px; }
.fc-cx-rostos { display: flex; align-items: center; }
.fc-cx-rostos .fc-cx-av, .fc-cx-rostos > span { width: 28px; height: 28px; margin-left: -8px; font-size: 10.5px; box-shadow: 0 0 0 2px var(--fc-marinho, #121923); }
.fc-cx-rostos > :first-child { margin-left: 0; }
.fc-cx-rostos > span.is-mais { display: grid; place-items: center; border-radius: 50%; background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); font: 600 10.5px var(--fc-font-text); }
.fc-cx-convite { margin-left: auto; display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 4px 0 14px; border: 0; border-radius: 999px; background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); font-weight: 600; font-size: 13px; cursor: pointer; }
.fc-cx-convite i { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--fc-menta, #2EFFA0); }
.fc-cx-convite svg { width: 14px; height: 14px; }
.fc-cx-desemp { display: flex; flex-direction: column; }
/* o desempenho fica solto no fundo, como a lista (só a foto da live é bloco) */
.fc-cx-lado > .fc-cx-desemp { background: none; border-radius: 0; }
.fc-cx-lado > .fc-cx-desemp .fc-cx-cab, .fc-cx-lado > .fc-cx-desemp .fc-cx-leg { padding-inline: 6px; }
.fc-cx-lado > .fc-cx-desemp .fc-cx-graf { margin-inline: 6px; }
.fc-cx-lado > .fc-cx-desemp .fc-cx-funil { padding: 12px 6px 4px; }
.fc-cx-lado > .fc-cx-desemp .fc-cx-seg { background: var(--cx-bloco); }
.fc-cx-lado > .fc-cx-desemp .fc-cx-seg button[aria-pressed="true"] { background: var(--cx-bloco-2); }
.fc-cx-lado > .fc-cx-desemp .fc-cx-bar { background: var(--cx-bloco); }
/* linhas fantasmas da lista vazia */
.fc-cx-lead.is-fantasma { pointer-events: none; cursor: default; }
.fc-cx-lead.is-fantasma .fc-cx-av { width: 38px; height: 38px; background: var(--cx-bloco-2); }
.fc-cx-lead.is-fantasma i { display: block; height: 8px; border-radius: 999px; background: var(--cx-bloco-2); }
.fc-cx-lead.is-fantasma .fc-cx-lead__p div { display: grid; gap: 6px; width: 50%; }
.fc-cx-lead.is-fantasma .fc-cx-lead__p i:last-child { width: 60%; }
.fc-cx-lead.is-fantasma > span i { width: 70%; }
.fc-cx-seg { display: flex; padding: 3px; border-radius: 999px; background: var(--cx-bloco-2); }
.fc-cx-seg button { border: 0; border-radius: 999px; padding: 5px 12px; background: none; color: var(--cx-tx2); font-size: 12.5px; white-space: nowrap; cursor: pointer; }
.fc-cx-seg button[aria-pressed="true"] { background: var(--cx-bloco); color: var(--fc-text); font-weight: 600; box-shadow: 0 1px 2px rgba(0, 0, 0, .14); }
.fc-cx-leg { display: flex; gap: 16px; padding: 10px 20px 0; color: var(--cx-tx2); font-size: 12px; }
.fc-cx-leg i { display: inline-block; width: 10px; height: 3px; margin-right: 6px; border-radius: 2px; vertical-align: middle; }
.fc-cx-leg i.is-vis { background: var(--cx-tx2); }
.fc-cx-leg i.is-ins { background: var(--fc-menta, #2EFFA0); }
.fc-cx-graf { position: relative; flex: 1; min-height: 70px; margin: 8px 18px 0; }
.fc-cx-graf svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.fc-cx-graf .is-g { stroke: var(--cx-linha); stroke-width: 1; }
.fc-cx-graf text { fill: var(--cx-tx2); font: 10.5px var(--fc-font-text); }
.fc-cx-graf .is-area { fill: var(--cx-tx2); opacity: .12; }
.fc-cx-graf .is-vis { fill: none; stroke: var(--cx-tx2); stroke-width: 1.5; stroke-linejoin: round; }
.fc-cx-graf .is-ins { fill: none; stroke: var(--fc-menta, #2EFFA0); stroke-width: 2.5; stroke-linejoin: round; stroke-linecap: round; }
.fc-cx-graf .is-mira { stroke: var(--cx-tx2); stroke-dasharray: 3 4; }
.fc-cx-dica { position: absolute; z-index: 2; pointer-events: none; padding: 5px 9px; border-radius: 10px; background: var(--cx-forte); color: var(--cx-on-forte); font-size: 11.5px; white-space: nowrap; transform: translate(-50%, -115%); opacity: 0; transition: opacity .1s; }
.fc-cx-funil { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 10px; padding: 12px 18px 16px; border-top: 1px solid var(--cx-linha); }
.fc-cx-funil span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cx-tx2); font-size: 11.5px; }
.fc-cx-funil b { font: 600 18px var(--fc-font-title); }
.fc-cx-funil small { margin-left: 4px; color: var(--cx-tx2); font-size: 11.5px; }
.fc-cx-bar { height: 5px; margin-top: 6px; border-radius: 999px; background: var(--cx-bloco-2); overflow: hidden; }
.fc-cx-bar i { display: block; height: 100%; border-radius: inherit; background: var(--fc-text); opacity: .8; }
.fc-cx-funil > div:last-child .fc-cx-bar i { background: var(--fc-menta, #2EFFA0); opacity: 1; }

/* QR code da página */
.fc-cx-qrbox { padding: 24px; border: 0; border-radius: var(--fc-r-xl); background: var(--cx-bloco); color: var(--fc-text); text-align: center; }
.fc-cx-qrbox::backdrop { background: rgba(18, 25, 35, .6); }
.fc-cx-qrbox [data-cx-qrimg] { display: inline-block; padding: 12px; border-radius: 16px; background: var(--fc-branco, #FFFFFF); }
.fc-cx-qrbox [data-cx-qrimg] img, .fc-cx-qrbox [data-cx-qrimg] canvas { display: block; width: 220px !important; height: 220px !important; }
.fc-cx-qrbox p { margin: 14px 0; color: var(--cx-tx2); font-size: 13px; }
.fc-cx-qrbox div:last-child { display: flex; justify-content: center; gap: 8px; }

/* em computador a visão geral cabe na tela: sem rolagem; embaixo divide o que sobra */
@media (min-width: 1281px) and (min-height: 700px) {
  body:has(.fc-cx) { overflow: hidden; }
  .fc-cx .fc-cx-main { height: calc(100dvh - var(--fc-topbar)); padding-bottom: 20px; }
  .fc-cx-main > [data-cx-vista]:not([hidden]) { height: 100%; display: flex; flex-direction: column; }
  .fc-cx-quadro, .fc-cx-lista, .fc-cx-previa { flex: 1; min-height: 0; }
  .fc-cx-raia { min-height: 0; }
  .fc-cx-lista { overflow: auto; }
  [data-cx-vista="geral"] > :is(.fc-cx-boas, .fc-cx-at) { overflow: auto; }
  .fc-cx-painel { flex: 1; min-height: 0; }
}
@media (max-width: 1280px), (max-height: 699px) {
  .fc-cx-l1, .fc-cx-l2, .fc-cx-l3 { grid-template-columns: 1fr; }
  .fc-cx-voce { flex-wrap: wrap; }
  .fc-cx-tabela { max-height: 440px; }
  .fc-cx-lado { grid-template-rows: 200px 320px; }
}
@media (max-width: 760px) {
  .fc-cx-kpis { grid-template-columns: 1fr 1fr; row-gap: 14px; }
  .fc-cx-linkbox { flex: 1; width: auto; min-width: 0; }
  .fc-cx-kpi:nth-child(3) { border-left: 0; }
  .fc-cx-voce__quem { flex-wrap: wrap; gap: 18px; }
  .fc-cx-tabela__cab { display: none; }
  .fc-cx-lead { grid-template-columns: minmax(0, 1fr) auto; padding: 10px 12px; }
  .fc-cx-lead > span, .fc-cx-lead time { display: none; }
  .fc-cx-funil { grid-template-columns: 1fr 1fr; }
}

/* ABAS: título com uma linha de apoio e as ações na direita */
.fc-cx-tit > div:first-child { min-width: 0; }
.fc-cx-sub { margin: 4px 0 0; color: var(--cx-tx2); font-size: 13.5px; }
.fc-cx-sub b { color: var(--fc-text); font-weight: 600; }
.fc-cx-tit__acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.fc-cx-pil.is-grande { height: 34px; padding: 0 14px; font-size: 13px; }
.fc-cx-pil.is-grande b { font-weight: 600; }
.fc-cx-seg button { display: inline-flex; align-items: center; gap: 6px; }
.fc-cx-seg button svg { width: 15px; height: 15px; }
.fc-cx-busca { display: flex; align-items: center; gap: 8px; width: 280px; height: 40px; padding: 0 14px; border-radius: 999px; background: var(--cx-bloco); color: var(--cx-tx2); }
.fc-cx-busca svg { width: 16px; height: 16px; flex: none; }
.fc-cx-busca input { flex: 1; min-width: 0; border: 0; background: none; color: var(--fc-text); font: inherit; font-size: 13.5px; outline: none; }
.fc-cx-busca:focus-within { box-shadow: 0 0 0 2px var(--cx-linha); }

/* CONTATOS: quadro (colunas leves, sem moldura) */
.fc-cx-quadro { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(240px, 1fr); gap: 14px; overflow-x: auto; padding-bottom: 6px; scroll-snap-type: x proximity; }
.fc-cx-raia { display: flex; flex-direction: column; min-height: 420px; padding: 12px 8px 8px; border-radius: var(--fc-r-xl); background: color-mix(in srgb, var(--cx-bloco) 55%, transparent); scroll-snap-align: start; transition: box-shadow .15s; }
.fc-cx-raia.is-alvo { box-shadow: inset 0 0 0 2px var(--c); }
.fc-cx-raia__cab { display: flex; align-items: center; gap: 8px; padding: 2px 8px 12px; font-size: 13.5px; font-weight: 600; }
.fc-cx-raia__cab i { width: 8px; height: 8px; border-radius: 50%; background: var(--c); }
.fc-cx-raia__cab span { margin-left: auto; color: var(--cx-tx2); font-weight: 500; font-variant-numeric: tabular-nums; }
.fc-cx-raia__lista { flex: 1; min-height: 60px; display: flex; flex-direction: column; gap: 6px; overflow-y: auto; }
.fc-cx-ficha { display: flex; align-items: center; gap: 10px; padding: 6px 12px 6px 6px; border-radius: 999px; background: var(--cx-bloco); cursor: grab; user-select: none; touch-action: none; transition: background .15s; }
.fc-cx-ficha:hover { background: var(--cx-bloco-2); }
.fc-cx-ficha > div { min-width: 0; }
.fc-cx-ficha b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13.5px; font-weight: 600; }
.fc-cx-ficha small { display: block; color: var(--cx-tx2); font-size: 11.5px; white-space: nowrap; }
.fc-cx-ficha.is-quente small { color: var(--fc-text); font-weight: 600; }
.fc-cx-ficha.is-quente .fc-cx-av { box-shadow: 0 0 0 2px var(--cx-bloco), 0 0 0 3.5px var(--fc-text); }
.fc-cx-ficha.is-fantasma { position: fixed; left: 0; top: 0; z-index: 9999; pointer-events: none; cursor: grabbing; box-shadow: 0 18px 40px rgba(0, 0, 0, .3); }
.fc-cx-lugar { border-radius: 999px; border: 2px dashed color-mix(in srgb, var(--c) 60%, transparent); background: color-mix(in srgb, var(--c) 8%, transparent); }
.fc-cx-av { position: relative; flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--c); color: var(--fc-branco, #FFFFFF); font: 600 12px var(--fc-font-title); }
.fc-cx-raia__lista:not(:has(.fc-cx-ficha, .fc-cx-lugar))::before { content: attr(data-vazio); display: block; margin: 0 4px; padding: 14px; border-radius: 16px; border: 1.5px dashed var(--cx-linha); color: var(--cx-tx2); font-size: 12.5px; line-height: 1.45; }

/* CONTATOS: lista (a mesma tabela da visão geral) */
.fc-cx-lista .fc-cx-tabela__cab, .fc-cx-lista .fc-cx-lead { grid-template-columns: minmax(0, 1.4fr) minmax(0, .9fr) minmax(0, .9fr) 96px 132px 104px; }
.fc-cx-lista { margin: 0; }
.fc-cx-lista .fc-cx-tabela__cab { background: var(--cx-chao); }
.fc-cx-ponto { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: var(--c); }
.fc-cx-mudo { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cx-tx2); font-size: 12.5px; }
@media (max-width: 760px) { .fc-cx-busca { width: 100%; } .fc-cx-lista .fc-cx-lead { grid-template-columns: minmax(0, 1fr) auto; } .fc-cx-lista .fc-cx-lead > :not(:first-child):not(:last-child) { display: none; } }
/* gaveta do contato */
.fc-cx-veu { position: fixed; inset: 0; z-index: 900; background: rgba(18, 25, 35, .45); opacity: 0; pointer-events: none; transition: opacity .25s; }
.fc-cx-veu.is-on { opacity: 1; pointer-events: auto; }
.fc-cx-gaveta { position: fixed; z-index: 901; top: 0; right: 0; bottom: 0; width: min(430px, 100%); display: flex; flex-direction: column; background: var(--fc-surface); border-radius: 26px 0 0 26px; box-shadow: -24px 0 60px rgba(0, 0, 0, .25); transform: translateX(105%); transition: transform .38s cubic-bezier(.2, .8, .2, 1); }
.fc-cx-gaveta.is-on { transform: none; }
.fc-cx-g__topo { display: flex; align-items: center; gap: 14px; padding: 26px 24px 18px; }
.fc-cx-g__topo .fc-cx-av { width: 56px; height: 56px; font-size: 18px; }
.fc-cx-g__topo h2 { margin: 0; font: 600 20px/1.2 var(--fc-font-title); }
.fc-cx-g__topo small { color: var(--fc-text-3); overflow-wrap: anywhere; }
.fc-cx-g__fechar { margin-left: auto; align-self: flex-start; width: 36px; height: 36px; border: 0; border-radius: 50%; display: grid; place-items: center; background: var(--fc-sunken); color: var(--fc-text); cursor: pointer; flex: none; }
.fc-cx-g__corpo { flex: 1; overflow-y: auto; padding: 4px 24px 24px; display: grid; gap: 24px; align-content: start; }
.fc-cx-trilha { display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; }
.fc-cx-trilha button { display: grid; gap: 6px; padding: 0; border: 0; background: none; text-align: left; font-size: 11.5px; line-height: 1.25; color: var(--fc-text-3); cursor: pointer; }
.fc-cx-trilha button i { display: block; height: 6px; border-radius: 99px; background: var(--fc-sunken); }
.fc-cx-trilha button.is-feito i { background: var(--c); }
.fc-cx-trilha button.is-atual { color: var(--fc-text); font-weight: 600; }
.fc-cx-rot { margin: 0 0 10px; font-size: 13px; color: var(--fc-text-3); }
.fc-cx-perfil { display: grid; gap: 1px; border-radius: 16px; overflow: hidden; background: var(--fc-border); }
.fc-cx-perfil div { display: flex; justify-content: space-between; gap: 14px; padding: 11px 14px; background: var(--fc-surface-2); font-size: 14px; }
.fc-cx-perfil span { color: var(--fc-text-3); }
.fc-cx-perfil b { text-align: right; }
.fc-cx-perfil-vazio { padding: 14px; border-radius: 16px; border: 1px dashed var(--fc-border-strong); color: var(--fc-text-3); font-size: 14px; }
.fc-cx-hist { display: grid; gap: 12px; }
.fc-cx-hist div { display: flex; align-items: center; gap: 12px; font-size: 14px; }
.fc-cx-hist span { flex: none; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--fc-sunken); color: var(--fc-text-2); }
.fc-cx-hist span svg { width: 16px; height: 16px; }
.fc-cx-hist small { margin-left: auto; color: var(--fc-text-3); font-size: 12.5px; white-space: nowrap; }
.fc-cx-linkp { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 16px; background: var(--fc-surface-2); font-size: 14px; }
.fc-cx-linkp b { overflow-wrap: anywhere; }
.fc-cx-linkp small { display: block; color: var(--fc-text-3); font-size: 12.5px; }
.fc-cx-g__pe { display: grid; gap: 10px; padding: 16px 24px calc(18px + env(safe-area-inset-bottom, 0px)); border-top: 1px solid var(--fc-border); }
.fc-cx-g__pe textarea { width: 100%; padding: 12px 14px; border-radius: 14px; border: 1px solid var(--fc-border); background: var(--fc-surface-2); color: var(--fc-text); font: inherit; font-size: 14px; line-height: 1.5; resize: none; }
.fc-cx-zapbt { justify-content: center; }

/* MINHA PÁGINA: a prévia ocupa a área toda; Computador/Celular na barra dela; a configuração abre numa janela */
.fc-cx-chamar.is-alto { height: 40px; padding: 0 16px; }
.fc-cx-previa { flex: 1; min-height: 520px; display: flex; min-width: 0; }
.fc-cx-janela { flex: 1; min-width: 0; display: flex; flex-direction: column; overflow: hidden; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
.fc-cx-janela__barra { display: flex; align-items: center; gap: 8px; flex: none; height: 60px; padding: 0 8px 0 18px; }
.fc-cx-janela__barra > i { width: 10px; height: 10px; border-radius: 50%; background: var(--cx-trilho); }
.fc-cx-janela__barra > i + i { margin-left: -2px; }
.fc-cx-janela__barra .fc-cx-linkbox { width: min(440px, 34vw); height: 42px; margin-left: 12px; background: var(--fc-branco, #FFFFFF); box-shadow: 0 0 0 1px rgba(18, 25, 35, .12); }
.fc-cx-janela__barra .fc-cx-linkbox span { color: var(--fc-tom-32, #5E6369); }
.fc-cx-janela__barra .fc-cx-linkbox a { color: var(--fc-marinho, #121923); }
.fc-cx-janela__barra .fc-cx-linkbox button { height: 34px; }
.fc-cx-janela__config { margin-left: auto; height: 38px; padding: 0 14px; }
.fc-cx-janela__abrir { flex: none; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; color: var(--cx-tx2); }
.fc-cx-janela__abrir:hover { background: var(--cx-hover); color: var(--fc-text); }
.fc-cx-janela__abrir svg { width: 15px; height: 15px; }
.fc-cx-janela__barra .fc-cx-seg { background: var(--cx-bloco-2); }
.fc-cx-janela__barra .fc-cx-seg button[aria-pressed="true"] { background: var(--cx-bloco); }
.fc-cx-janela__palco { position: relative; flex: 1; min-height: 0; display: flex; justify-content: center; }
.fc-cx-janela__tela { position: relative; flex: 1; min-width: 0; overflow: hidden; background: var(--fc-marinho, #121923); }
.fc-cx-janela__tela iframe { position: absolute; left: 0; top: 0; border: 0; transform-origin: 0 0; background: var(--fc-marinho, #121923); }
.fc-cx-previa.is-cel .fc-cx-janela__palco { padding: 18px; background: var(--cx-bloco-2); }
.fc-cx-previa.is-cel .fc-cx-janela__tela { flex: none; height: 100%; max-height: 760px; aspect-ratio: 9 / 19; border: 10px solid var(--fc-marinho, #121923); border-radius: 44px; }
.fc-cx-previa.is-cel .fc-cx-janela__tela iframe { width: 100%; height: 100%; }
@media (max-width: 760px) { .fc-cx-janela__barra { flex-wrap: wrap; height: auto; padding: 10px; } .fc-cx-janela__barra > i { display: none; } .fc-cx-janela__barra .fc-cx-linkbox { width: 100%; margin: 0; } .fc-cx-previa.is-cel .fc-cx-janela__tela { height: 640px; } }

/* a janela de configurar */
.fc-cx-config { width: min(580px, calc(100% - 32px)); max-height: calc(100dvh - 48px); padding: 0; overflow: hidden; border: 0; border-radius: var(--fc-r-xl); background: var(--cx-bloco); color: var(--fc-text); }
.fc-cx-config::backdrop { background: rgba(18, 25, 35, .62); }
.fc-cx-config form { display: flex; flex-direction: column; max-height: calc(100dvh - 48px); }
.fc-cx-config__cab { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 32px 32px 8px 40px; }
.fc-cx-config__cab h2 { margin: 0; font: 600 var(--fc-h3)/1.2 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-config__corpo { display: grid; gap: 24px; padding: 18px 40px 10px; overflow-y: auto; }
.fc-cx-config__pe { display: flex; justify-content: space-between; gap: 8px; padding: 24px 40px 36px; }
.fc-cx-campo { display: grid; gap: 7px; }
.fc-cx-campo label { font-size: 13.5px; font-weight: 600; }
.fc-cx-campo input, .fc-cx-campo textarea { width: 100%; padding: 12px 16px; border: 1px solid transparent; border-radius: 16px; background: var(--cx-bloco-2); color: var(--fc-text); font: inherit; font-size: 14px; outline: none; transition: border-color .15s; }
.fc-cx-campo input { height: 46px; }
.fc-cx-campo textarea { resize: vertical; min-height: 92px; }
.fc-cx-campo input:focus, .fc-cx-campo textarea:focus, .fc-cx-prefixo:focus-within { border-color: transparent; background: var(--cx-hover); } /* sem borda nunca: o foco só clareia o fundo */
.fc-cx-campo small { color: var(--cx-tx2); font-size: 12px; }
.fc-cx-prefixo { display: flex; align-items: center; height: 46px; border: 1px solid transparent; border-radius: 16px; background: var(--cx-bloco-2); overflow: hidden; }
.fc-cx-prefixo span { padding: 0 2px 0 16px; color: var(--cx-tx2); white-space: nowrap; font-size: 14px; }
.fc-cx-prefixo input { height: 100%; border: 0; border-radius: 0; padding-left: 0; background: none; }
.fc-cx-cel { width: 312px; max-width: 100%; padding: 10px; border-radius: 44px; background: var(--fc-marinho, #121923); box-shadow: 0 40px 80px rgba(0, 0, 0, .3); position: sticky; top: 90px; }
.fc-cx-cel iframe { display: block; width: 100%; height: 620px; border: 0; border-radius: 34px; background: var(--fc-marinho, #121923); }

/* ===================== Conecta: páginas do convidado (escuro do site, fotos reais) ===================== */
.fc-cxp-body { background: var(--fc-marinho, #121923); color: var(--fc-nevoa, #EAEFEE); }
.fc-cxp { --cx-verde: var(--fc-menta, #2EFFA0); --cx-2: var(--fc-tom-70, #B8BABD); background: var(--fc-marinho, #121923); color: var(--fc-nevoa, #EAEFEE); min-height: 100vh; font-family: var(--fc-font-text); }
.fc-cxp h1, .fc-cxp h2, .fc-cxp h3 { font-family: var(--fc-font-title); color: inherit; }
.fc-cxp-logo { display: block; height: 24px; width: auto; }
.fc-cxp-logo.is-fixo { margin: 0 0 56px; }
.fc-cxp-topo { position: absolute; z-index: 2; top: 0; left: 0; right: 0; display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: 1440px; margin: 0 auto; padding: 24px 40px; }
.fc-cxp-quem { display: flex; align-items: center; gap: 12px; color: var(--cx-2); font-size: 13px; line-height: 1.3; text-align: right; }
.fc-cxp-quem b { display: block; color: var(--fc-nevoa, #EAEFEE); font-size: 14.5px; font-weight: 600; }
.fc-cxp-quem .fc-cxp-av { width: 42px; height: 42px; font-size: 14px; box-shadow: 0 0 0 2px var(--fc-marinho, #121923), 0 0 0 4px var(--fc-menta, #2EFFA0); }
.fc-cxp-hero { position: relative; min-height: 680px; display: grid; align-items: center; isolation: isolate; overflow: hidden; }
.fc-cxp-hero__foto { position: absolute; inset: 0; z-index: -2; background: 82% 22% / cover no-repeat; animation: fc-cxp-zoom 24s ease-in-out infinite alternate; }
@keyframes fc-cxp-zoom { to { transform: scale(1.08); } }
.fc-cxp-hero__veu { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(18, 25, 35, .97) 0%, rgba(18, 25, 35, .85) 38%, rgba(18, 25, 35, .35) 70%, rgba(18, 25, 35, .55) 100%), linear-gradient(0deg, var(--fc-marinho, #121923) 0%, transparent 30%); }
.fc-cxp-hero__in { width: 100%; max-width: 1440px; margin: 0 auto; padding: 120px 40px 72px; }
.fc-cxp-hero__in > * { max-width: 600px; }
.fc-cxp-av { width: 32px; height: 32px; border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); font: 600 11px var(--fc-font-title); flex: none; }
.fc-cxp-av img { width: 100%; height: 100%; object-fit: cover; }
.fc-cxp h1 { margin: 22px 0 18px; font-size: clamp(38px, 5.6vw, 72px); font-weight: 700; line-height: 1; letter-spacing: -.045em; text-wrap: balance; }
.fc-cxp-sub { margin: 0; font-size: 19px; color: var(--cx-2); max-width: 46ch; }
.fc-cxp-sub b { color: var(--fc-nevoa, #EAEFEE); }
/* contagem padrão (sala e páginas do Conecta): uma caixinha de vidro escuro por unidade, segundos em Menta */
.fc-cxp-conta { display: flex; gap: 10px; margin-top: 24px; font-variant-numeric: tabular-nums; }
.fc-cxp-conta div { min-width: 70px; padding: 12px 8px 10px; border: 1px solid rgba(255, 255, 255, .1); border-radius: 14px; background: rgba(255, 255, 255, .06); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); text-align: center; }
.fc-cxp-conta b { display: block; font: 700 30px/1 var(--fc-font-title); color: var(--fc-branco, #FFFFFF); }
.fc-cxp-conta small { display: block; margin-top: 6px; font-size: 11px; color: var(--cx-2); }
.fc-cxp-conta .s b { color: var(--cx-verde); }
/* sala com live marcada: tudo centralizado, um embaixo do outro (logo, selo, título, capa, data, contagem, Grupo VIP) */
.fc-cxp-sala__in.is-centro { max-width: 1000px; padding-top: 24px; padding-bottom: 28px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.fc-cxp-sala__in.is-centro .fc-cxp-logo.is-fixo { margin: 0 0 20px; }
.fc-cxp-sala__in.is-centro .fc-cxp-ok { margin: 0; }
.fc-cxp-sala__in.is-centro h1 { margin: 14px 0 22px; font-size: clamp(30px, 3.2vw, 48px); line-height: 1.08; }
.fc-cxp-sala__in.is-centro .fc-cxp-capa { width: min(720px, 100%); margin-top: 0; }
.fc-cxp-data { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 20px 0 0; }
.fc-cxp-data svg { width: 26px; height: 26px; color: var(--cx-verde); }
.fc-cxp-data b { font: 700 24px var(--fc-font-title); letter-spacing: -.03em; color: var(--fc-branco, #FFFFFF); }
.fc-cxp-data small { font-size: 13px; color: var(--cx-2); }
.fc-cxp-sala__in.is-centro .fc-cxp-grupo { margin-top: 18px; }
.fc-cxp-sala__in.is-centro .fc-cxp-conta { justify-content: center; margin-top: 18px; }
.fc-cxp-sala__in.is-centro .fc-cxp-teste { text-align: left; }
.fc-cxp-sala:has(.is-centro) { display: flex; align-items: center; }
.fc-cxp-sala:has(.is-centro) .fc-cxp-sala__in { width: 100%; }
@media (max-width: 640px) { .fc-cxp-conta div { min-width: 0; flex: 1; } }
/* a capa da live (miniatura do YouTube): travada até 5 minutos antes; depois vira o botão (play + "Já vamos começar") */
.fc-cxp-capa { position: relative; display: grid; place-items: center; width: 100%; max-width: 100%; aspect-ratio: 16 / 9; margin-top: 30px; border-radius: 18px; overflow: hidden; background: var(--fc-escuro, #202836) center / cover no-repeat; color: var(--fc-branco, #FFFFFF); text-decoration: none; cursor: default; }
.fc-cxp-player { width: min(100%, calc((100vh - 320px) * 16 / 9 + 376px)); margin: 0 auto; }
.fc-cxp-sala__in.is-centro:has(.fc-cxp-player) { max-width: 1480px; } /* live pelo nosso servidor: o vídeo no lugar da capa (AoVivo::player) */
.fc-cxp-capa::before { content: ""; position: absolute; inset: 0; background: rgba(18, 25, 35, .55); transition: background .2s; }
.fc-cxp-capa__trava, .fc-cxp-capa__play { position: relative; }
.fc-cxp-capa__trava { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 999px; background: rgba(18, 25, 35, .85); font-weight: 600; font-size: 15px; }
.fc-cxp-capa__trava svg { width: 16px; height: 16px; color: var(--cx-verde); }
.fc-cxp-capa__selo { position: absolute; top: 14px; left: 14px; display: none; align-items: center; gap: 7px; padding: 6px 12px; border-radius: 999px; background: rgba(18, 25, 35, .85); font-size: 13px; font-weight: 600; }
.fc-cxp-capa__selo i { width: 8px; height: 8px; border-radius: 50%; background: var(--fc-framboesa, #F04A68); animation: fc-cxp-pisca 1.4s infinite; }
.fc-cxp-capa__play { display: none; place-items: center; width: 76px; height: 76px; border-radius: 50%; background: var(--cx-verde); color: var(--fc-marinho, #121923); transition: transform .15s; }
.fc-cxp-capa__play svg { width: 30px; height: 30px; margin-left: 4px; }
.fc-cxp-capa.is-livre { cursor: pointer; }
.fc-cxp-capa.is-livre::before { background: rgba(18, 25, 35, .25); }
.fc-cxp-capa.is-livre .fc-cxp-capa__trava { display: none; }
.fc-cxp-capa.is-livre .fc-cxp-capa__selo { display: inline-flex; }
.fc-cxp-capa.is-livre .fc-cxp-capa__play { display: grid; }
.fc-cxp-capa.is-livre:hover .fc-cxp-capa__play { transform: scale(1.06); }
@keyframes fc-cxp-pisca { 50% { opacity: .25; } }
@media (prefers-reduced-motion: reduce) { .fc-cxp-capa__selo i { animation: none; } }
.fc-cxp-dica { margin: 10px 0 0; color: var(--cx-2); font-size: 14px; }
/* login da sala (/live em outro navegador): e-mail ou WhatsApp, sem senha */
.fc-cxp-login { display: flex; align-items: center; justify-content: center; }
.fc-cxp-login__in { width: 100%; max-width: 640px; padding: 32px 20px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.fc-cxp-login .fc-cxp-logo { height: 30px; margin-bottom: 26px; }
.fc-cxp-login__capa { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: 16px; overflow: hidden; background: var(--fc-escuro, #202836) center / cover no-repeat; }
.fc-cxp-login__capa::before { content: ""; position: absolute; inset: 0; background: rgba(18, 25, 35, .45); }
.fc-cxp-login__capa span { position: absolute; left: 14px; bottom: 14px; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; background: rgba(18, 25, 35, .85); font-size: 15px; font-weight: 600; }
.fc-cxp-login__capa i { width: 9px; height: 9px; border-radius: 50%; background: var(--fc-framboesa, #F04A68); animation: fc-cxp-pisca 1.4s infinite; } /* o vermelho piscando de "ao vivo" */
.fc-cxp-login h1 { margin: 30px 0 12px; font-size: clamp(32px, 3.4vw, 48px); line-height: 1.08; }
.fc-cxp-login .fc-cxp-sub { font-size: 19px; }
.fc-cxp-login__form { display: grid; gap: 14px; justify-items: center; width: 100%; margin-top: 26px; }
.fc-cxp-login__form input { height: 60px; font-size: 18px; text-align: center; }
.fc-cxp-login__form .fc-cx-at__bt { height: 56px; padding-left: 28px; font-size: 17px; }
.fc-cxp-login__form .fc-cx-at__bt span { width: 44px; height: 44px; }
.fc-cxp-login .fc-cxp-mini { font-size: 16px; }
.fc-cxp-login__form .fc-cxp-aviso { text-align: left; }
.fc-cxp-login__form input { width: 100%; height: 52px; padding: 0 20px; border: 1.5px solid rgba(137, 140, 145, .35); border-radius: 999px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); font: 16px var(--fc-font-text); outline: none; }
.fc-cxp-login__form input:focus { border-color: var(--cx-verde); }
.fc-cxp-login__form .fc-cx-at__bt { border: 0; cursor: pointer; }
.fc-cxp-aviso { display: flex; gap: 10px; margin: 0; padding: 14px 16px; border-radius: 14px; background: var(--fc-escuro, #202836); font-size: 14px; }
.fc-cxp-aviso svg { flex: none; width: 18px; height: 18px; color: var(--fc-framboesa, #F04A68); }
.fc-cxp-mini { margin: 18px 0 0; color: var(--cx-2); font-size: 14px; }
.fc-cxp-login__form .fc-cxp-mini { margin: 0; }
.fc-cxp-mini a, .fc-cxp-mini button { padding: 0; border: 0; background: none; color: var(--fc-nevoa, #EAEFEE); font: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.fc-cxp-vidro { margin-top: 34px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 18px; border-radius: 24px; background: rgba(18, 25, 35, .72); border: 1px solid rgba(255, 255, 255, .12); backdrop-filter: blur(18px); }
.fc-cxp-vidro .is-cheio { grid-column: 1 / -1; }
.fc-cxp-vidro input { width: 100%; padding: 14px 16px; border-radius: 14px; border: 1px solid rgba(255, 255, 255, .14); background: rgba(255, 255, 255, .06); color: var(--fc-nevoa, #EAEFEE); font: inherit; }
.fc-cxp-vidro input::placeholder { color: var(--fc-tom-50, #898C91); }
.fc-cxp-vidro input:focus { outline: none; border-color: var(--cx-verde); }
.fc-cxp-vidro p { margin: 0; text-align: center; font-size: 12.5px; color: var(--fc-tom-50, #898C91); }
.fc-cxp-mel { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.fc-cxp-bt { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 15px 28px; border: 0; border-radius: 999px; background: var(--cx-verde); color: var(--fc-marinho, #121923); font: 600 16px var(--fc-font-text); text-decoration: none; cursor: pointer; transition: transform .1s, filter .15s; }
.fc-cxp-bt:hover { filter: brightness(1.05); }
.fc-cxp-bt:active { transform: scale(.98); }
.fc-cxp-bt svg { width: 18px; height: 18px; }
.fc-cxp-sec { max-width: 1440px; margin: 0 auto; padding: 72px 40px; }
.fc-cxp-aprende { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.fc-cxp-aprende div { padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, .14); }
.fc-cxp-aprende svg { width: 26px; height: 26px; color: var(--cx-verde); }
.fc-cxp-aprende h3 { margin: 14px 0 6px; font-size: 20px; line-height: 1.25; letter-spacing: -.02em; }
.fc-cxp-aprende p { margin: 0; color: var(--cx-2); }
.fc-cxp-prof { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: 56px; align-items: center; }
.fc-cxp-prof__foto { aspect-ratio: 4 / 5; max-width: 100%; border-radius: 26px; background: center 20% / cover no-repeat; }
.fc-cxp-prof h2 { margin: 0 0 14px; font-size: clamp(30px, 3.6vw, 46px); line-height: 1.05; letter-spacing: -.04em; }
.fc-cxp-prof p { margin: 0 0 24px; font-size: 17px; color: var(--cx-2); max-width: 46ch; }
.fc-cxp-pe { padding: 36px 24px 48px; text-align: center; font-size: 13px; color: var(--fc-tom-40, #71757B); border-top: 1px solid rgba(255, 255, 255, .08); }
.fc-cxp-pe a { color: inherit; }
@media (max-width: 900px) {
  .fc-cxp-hero__in { padding: 96px 20px 56px; }
  .fc-cxp-topo { padding: 20px; }
  .fc-cxp-sec { padding-inline: 20px; }
  .fc-cxp-quem > span:first-child { display: none; }
  .fc-cxp-hero__veu { background: linear-gradient(180deg, rgba(18, 25, 35, .55) 0%, rgba(18, 25, 35, .9) 45%, var(--fc-marinho, #121923) 100%); }
  .fc-cxp-aprende, .fc-cxp-prof { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 480px) { .fc-cxp-vidro { grid-template-columns: 1fr; } }

/* sala da live (link pessoal) */
.fc-cxp-sala { background: var(--fc-marinho, #121923); }
.fc-cxp-sala__in { max-width: 720px; margin: 0 auto; padding: 32px 24px 64px; }
.fc-cxp-ok { display: flex; width: fit-content; align-items: center; gap: 8px; margin: 0 0 8px; padding: 8px 14px; border-radius: 999px; background: rgba(255, 255, 255, .12); color: var(--cx-verde); font-weight: 600; }
.fc-cxp-ok svg { width: 18px; height: 18px; }
.fc-cxp-vivo { display: flex; margin-top: 18px; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; color: var(--cx-2); }
.fc-cxp-vivo i { width: 8px; height: 8px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); }
.fc-cxp-sala .fc-cxp-bt { margin-top: 30px; }
.fc-cxp-de { margin: 48px 0 0; font-size: 13px; color: var(--fc-tom-40, #71757B); }

/* diagnóstico */
.fc-cxp-diag { background: var(--fc-marinho, #121923); }
.fc-cxp-diag__in { max-width: 680px; margin: 0 auto; padding: 28px 20px 60px; display: grid; gap: 30px; }
.fc-cxp-diag__topo { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 14px; color: var(--cx-2); }
.fc-cxp-diag__topo img { height: 22px; width: auto; }
.fc-cxp-diag__topo b { color: var(--fc-nevoa, #EAEFEE); }
.fc-cxp-barra { height: 4px; border-radius: 99px; background: rgba(255, 255, 255, .1); overflow: hidden; }
.fc-cxp-barra i { display: block; width: 0; height: 100%; background: var(--cx-verde); transition: width .5s cubic-bezier(.2, .8, .2, 1); }
.fc-cxp-diag h1 { margin: 0 0 18px; font-size: clamp(30px, 4.4vw, 46px); line-height: 1.08; }
.fc-cxp-passo { display: grid; gap: 8px; animation: fc-cxp-entra .45s cubic-bezier(.2, .8, .2, 1); }
.fc-cxp-passo[hidden] { display: none; }
.fc-cxp-passo .fc-cxp-bt { margin-top: 18px; }
@keyframes fc-cxp-entra { from { opacity: 0; transform: translateY(14px); } }
.fc-cxp-ops { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 560px) { .fc-cxp-ops { grid-template-columns: 1fr; } }
.fc-cxp-ops label { position: relative; display: grid; gap: 14px; padding: 20px; border-radius: 20px; border: 1px solid rgba(255, 255, 255, .12); background: rgba(255, 255, 255, .04); font-size: 16px; font-weight: 500; cursor: pointer; transition: background .15s, border-color .15s; }
.fc-cxp-ops label:hover { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .24); }
.fc-cxp-ops label:has(input:checked) { border-color: var(--cx-verde); background: rgba(255, 255, 255, .08); }
.fc-cxp-ops input { position: absolute; opacity: 0; pointer-events: none; }
.fc-cxp-ops svg { width: 26px; height: 26px; color: var(--cx-verde); }
.fc-cxp-res { display: grid; gap: 20px; animation: fc-cxp-entra .5s cubic-bezier(.2, .8, .2, 1); }
.fc-cxp-tipo { font: 800 clamp(44px, 7vw, 76px)/1 var(--fc-font-title); letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1.4px var(--cx-verde); }
.fc-cxp-res__lin { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 560px) { .fc-cxp-res__lin { grid-template-columns: 1fr; } }
.fc-cxp-res__lin div { padding: 16px; border-radius: 18px; background: rgba(255, 255, 255, .05); }
.fc-cxp-res__lin span { display: block; margin-bottom: 4px; font-size: 12.5px; color: var(--cx-2); }
.fc-cxp-prox { display: flex; align-items: center; gap: 14px; padding: 16px; border-radius: 20px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .25); }
.fc-cxp-prox svg { color: var(--cx-verde); flex: none; }
.fc-cxp-prox small { display: block; color: var(--cx-2); }
@media (prefers-reduced-motion: reduce) { .fc-cxp-hero__foto, .fc-cxp-passo, .fc-cxp-res { animation: none; } }

/* Minha rede: o mesmo efeito da página de vendas (fotos em bolinhas ligadas, com mola) */
.fc-cx-rede-l { flex: 1; min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px; }
.fc-cx-rede-l[hidden] { display: none; }
.fc-cx-rede { position: relative; min-height: 480px; overflow: hidden; touch-action: pan-y; user-select: none; }
.fc-cx-rede__palco { position: absolute; left: 50%; top: 50%; width: 600px; height: 600px; margin: -300px 0 0 -300px; transform-origin: 50% 50%; }
.fc-cx-rede-lista { min-height: 0; display: flex; flex-direction: column; gap: 6px; }
.fc-cx-rede-lista h2 { margin: 0 0 8px; color: var(--cx-tx2); font: 600 12px var(--fc-font-text); }
.fc-cx-rede-lista > div { display: grid; gap: 6px; overflow-y: auto; }
.fc-cx-rede-p { display: flex; align-items: center; gap: 12px; padding: 6px 12px 6px 6px; border-radius: 999px; background: var(--cx-bloco); cursor: pointer; }
.fc-cx-rede-p:hover { background: var(--cx-bloco-2); }
.fc-cx-rede-p.is-padrinho { cursor: default; background: none; box-shadow: inset 0 0 0 1px var(--cx-linha); }
.fc-cx-rede-p b { display: block; font-size: 13.5px; font-weight: 600; }
.fc-cx-rede-p small { color: var(--cx-tx2); font-size: 12px; }
.fc-cx-rede-vazio { flex: 1; display: grid; place-items: center; align-content: center; gap: 10px; text-align: center; }
.fc-cx-rede-vazio[hidden] { display: none; }
.fc-cx-rede-vazio h2 { margin: 18px 0 0; font: 600 20px var(--fc-font-title); }
.fc-cx-rede-vazio p { max-width: 42ch; margin: 0 0 8px; color: var(--cx-tx2); }
.fc-cx-rede-vazio .fc-cx-chamar { justify-self: center; height: 40px; padding: 0 16px; }
.fc-cx-orbita { position: relative; display: grid; place-items: center; width: 300px; height: 300px; }
.fc-cx-orbita > i { position: absolute; inset: 0; border-radius: 50%; border: 1.5px dashed var(--cx-vazio); }
.fc-cx-orbita > i + i { inset: 60px; }
.fc-cx-orbita .fc-cx-foto { width: 96px; height: 96px; }
@media (max-width: 960px) { .fc-cx-rede-l { grid-template-columns: 1fr; } .fc-cx-rede { min-height: 420px; } }.fc-cx-rede__svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; }
.fc-cx-rede__svg path { stroke: var(--fc-border-strong); stroke-width: 1.4; fill: none; transition: stroke .3s, opacity .3s; }
.fc-cx-rede__svg path.is-on { stroke: var(--fc-green); stroke-width: 1.2; }
.fc-cx-b { position: absolute; width: var(--t); height: var(--t); margin: calc(var(--t) / -2) 0 0 calc(var(--t) / -2); border-radius: 50%; background: var(--fc-surface-3); box-shadow: 0 0 0 3px var(--fc-surface), 0 10px 24px rgba(0, 0, 0, .18); transition: box-shadow .4s, opacity .3s; cursor: grab; will-change: transform; }
.fc-cx-b img, .fc-cx-b span { display: block; width: 100%; height: 100%; border-radius: 50%; }
.fc-cx-b img { object-fit: cover; object-position: center 28%; -webkit-user-drag: none; }
.fc-cx-b span { display: grid; place-items: center; background: var(--c); color: var(--fc-branco, #FFFFFF); font: 600 calc(var(--t) * .3) var(--fc-font-title); }
.fc-cx-b.is-eu, .fc-cx-b.is-on { box-shadow: 0 0 0 3px var(--fc-green), 0 10px 24px rgba(0, 0, 0, .18); }
.fc-cx-b.is-eu { cursor: default; }
.fc-cx-rede__palco.is-foco .fc-cx-b:not(.is-on):not(.is-viz):not(.is-eu) { opacity: .45; }
.fc-cx-rede__palco.is-foco .fc-cx-rede__svg path:not(.is-on) { opacity: .35; }
.fc-cx-rede__palco.is-arrasta .fc-cx-b { cursor: grabbing; }
.fc-cx-b.is-padrinho { box-shadow: 0 0 0 3px var(--fc-text-3), 0 10px 24px rgba(0, 0, 0, .18); }
.fc-cx-b small { position: absolute; left: 50%; top: calc(100% + 8px); transform: translateX(-50%); white-space: nowrap; font-size: 12px; color: var(--fc-text-3); }

/* Topo enquanto a página não está no ar: painel no estilo das seções do site, nos dois modos (sem brilho) */
.fc-cx-boas { display: grid; grid-template-columns: minmax(240px, 320px) minmax(0, 620px); justify-content: center; align-items: center; gap: clamp(32px, 6vw, 96px); margin: 8px 0 48px; padding: clamp(32px, 4vw, 56px) clamp(20px, 4vw, 56px); border-radius: 28px; background: var(--cx-painel); border: 1px solid var(--cx-linha); color: var(--fc-text); }
.fc-cx-boas__cel .fc-cx-cel { position: static; width: 300px; max-width: 100%; margin: 0 auto; transform: rotate(-3deg); box-shadow: 0 30px 60px rgba(18, 25, 35, .22); }
.fc-cx-boas__cel .fc-cx-cel iframe { height: 600px; }
.fc-cx-boas__txt { display: flex; flex-direction: column; align-items: flex-start; }
.fc-cx-boas__olho { margin: 0; color: var(--fc-text); font: 700 20px var(--fc-font-title); }
.fc-cx-boas h1 { margin: 4px 0 14px; color: var(--fc-text); font: 700 clamp(32px, min(4.4vw, 7vh), 58px)/1.05 var(--fc-font-title); letter-spacing: -0.035em; text-wrap: balance; }
.fc-cx-boas__frase { margin: 0; max-width: 560px; color: var(--fc-text-2); font-size: 19px; line-height: 1.5; }
.fc-cx-boas__frase b { font-weight: 700; color: var(--fc-text); }
.fc-cx-boas__passos { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 22px 0 26px; }
.fc-cx-boas__passos span { display: inline-flex; align-items: center; gap: 6px; height: 38px; padding: 0 14px; border-radius: 999px; border: 1.5px dashed var(--fc-border-strong); color: var(--fc-text-3); font-size: 14px; font-weight: 600; }
.fc-cx-boas__passos span svg { width: 16px; height: 16px; }
.fc-cx-boas__passos span.is-ok { border: 0; background: var(--cx-forte); color: var(--cx-on-forte); }
.fc-cx-boas__passos span.is-ok svg { color: var(--cx-ok-ic); stroke-width: 3; }
.fc-cx-boas__passos span.is-agora { border-style: solid; border-color: var(--cx-forte); color: var(--fc-text); }
.fc-cx-boas__bt { display: inline-flex; align-items: center; gap: 16px; padding: 8px 8px 8px 26px; border: 0; border-radius: 999px; background: var(--cx-forte); color: var(--cx-on-forte); font: 600 16px var(--fc-font-text); text-decoration: none; white-space: nowrap; cursor: pointer; transition: transform .25s var(--fc-ease); }
.fc-cx-boas__bt:hover { color: var(--cx-on-forte); transform: translateY(-2px); }
.fc-cx-boas__bt span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); transition: transform .3s var(--fc-ease); }
.fc-cx-boas__bt:hover span { transform: rotate(45deg); }
.fc-cx-boas__bt svg { width: 18px; height: 18px; stroke-width: 2.4; }
.fc-cx-boas__form { display: flex; gap: 10px; width: 100%; max-width: 600px; }
.fc-cx-boas__form input { flex: 1; min-width: 0; height: 60px; padding: 0 20px; border-radius: 999px; border: 1px solid var(--fc-border-strong); background: var(--fc-bg); color: var(--fc-text); font: inherit; font-size: 16px; }
.fc-cx-boas__form input::placeholder { color: var(--fc-text-3); }
.fc-cx-boas__form input:focus { outline: none; border-color: var(--cx-forte); }
.fc-cx-boas__nota { margin: 18px 0 0; color: var(--fc-text-3); font-size: 14px; }
.fc-cx-boas__nota a, .fc-cx-boas__nota button { padding: 0; border: 0; background: none; color: var(--fc-text); font: inherit; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
@media (max-width: 900px) {
  .fc-cx-boas { grid-template-columns: 1fr; }
  .fc-cx-boas__cel { order: 2; }
  .fc-cx-boas__cel .fc-cx-cel { transform: none; }
  .fc-cx-boas__form { flex-direction: column; }
}

/* Tema do Conecta: fundo cinza no claro (#E9ECEF) e o da plataforma no escuro (#121923); blocos e peças mudam por modo */
body:has(.fc-cx) { --cx-raia: var(--fc-nevoa, #EAEFEE); --cx-ficha: var(--fc-branco, #FFFFFF); --cx-painel: var(--fc-branco, #FFFFFF); --cx-linha: rgba(18, 25, 35, .1); --cx-hover: rgba(18, 25, 35, .05); --cx-forte: var(--fc-marinho, #121923); --cx-on-forte: var(--fc-branco, #FFFFFF); --cx-ok-ic: var(--fc-menta, #2EFFA0); --cx-bloco: var(--fc-branco, #FFFFFF); --cx-bloco-2: var(--fc-nevoa, #EAEFEE); --cx-vazio: rgba(18, 25, 35, .14); --cx-trilho: var(--fc-nevoa, #EAEFEE); --cx-chao: var(--fc-nevoa, #EAEFEE); }
body:not(.fc-claro):has(.fc-cx) { --cx-raia: rgba(255, 255, 255, .035); --cx-ficha: var(--fc-marinho, #121923); --cx-painel: var(--fc-marinho, #121923); --cx-linha: rgba(255, 255, 255, .07); --cx-hover: rgba(255, 255, 255, .06); --cx-forte: var(--fc-nevoa, #EAEFEE); --cx-on-forte: var(--fc-marinho, #121923); --cx-ok-ic: var(--fc-marinho, #121923); --cx-bloco: var(--fc-marinho, #121923); --cx-bloco-2: var(--fc-marinho, #121923); --cx-vazio: rgba(255, 255, 255, .16); --cx-trilho: var(--fc-ardosia, #2A3446); --cx-chao: var(--fc-bg); }
.fc-cx { --fc-text-3: color-mix(in srgb, var(--fc-text) 78%, transparent); }

/* Comissão no modo escuro: bloco da cor dos outros e o valor em verde (o verde cheio fica para o modo claro) */
body:not(.fc-claro) .fc-cx-com { background: var(--cx-bloco); color: var(--fc-text); }
body:not(.fc-claro) .fc-cx-com b { color: var(--fc-menta, #2EFFA0); }
body:not(.fc-claro) .fc-cx-com b em { opacity: .55; }
body:not(.fc-claro) .fc-cx-com small, body:not(.fc-claro) .fc-cx-com p { color: var(--cx-tx2); opacity: 1; }
body:not(.fc-claro) .fc-cx-meses i { background: rgba(255, 255, 255, .14); }
body:not(.fc-claro) .fc-cx-meses i:last-child { background: var(--fc-menta, #2EFFA0); }
body:not(.fc-claro) .fc-cx-meses-eixo { color: var(--cx-tx2); opacity: 1; }
/* Janela de configurar no modo escuro: campos mais claros, com contorno, para ler fácil */
body:not(.fc-claro) .fc-cx-config .fc-cx-campo input, body:not(.fc-claro) .fc-cx-config .fc-cx-campo textarea, body:not(.fc-claro) .fc-cx-config .fc-cx-prefixo { background: var(--fc-ardosia, #2A3446); border-color: rgba(255, 255, 255, .12); }
body:not(.fc-claro) .fc-cx-config .fc-cx-prefixo input { background: none; border: 0; }
body:not(.fc-claro) .fc-cx-config .fc-cx-campo input:focus, body:not(.fc-claro) .fc-cx-config .fc-cx-campo textarea:focus, body:not(.fc-claro) .fc-cx-config .fc-cx-prefixo:focus-within { border-color: rgba(255, 255, 255, .35); }
body:not(.fc-claro) .fc-cx-config ::placeholder { color: rgba(255, 255, 255, .5); }
body:not(.fc-claro) .fc-cx-config .fc-cx-prefixo span { color: rgba(255, 255, 255, .62); }

/* COMO FUNCIONA v3: em cima o título e o seu momento; no meio a trilha dos níveis numa linha só; embaixo as regras em três blocos de leitura */
.fc-cx-como { display: grid; gap: 18px; align-content: start; }
.fc-cx-como__cima { display: flex; align-items: baseline; justify-content: space-between; gap: 12px 28px; flex-wrap: wrap; padding: 0 4px; }
.fc-cx-como__cima h1 { margin: 0; font: 600 32px/1.12 var(--fc-font-title); letter-spacing: -.03em; text-wrap: balance; }
.fc-cx-como__cima p { margin: 0; color: var(--cx-tx2); font-size: 15.5px; }
.fc-cx-como__cima p b { color: var(--fc-text); }
/* você na trilha dos níveis: cartão com a foto + linha pontilhada até a bolinha na linha verde */
/* você na trilha: a bolinha verde fica na ponta da linha verde (que enche com os pontos); dela sobe uma linha branca pontilhada até a sua foto (com borda branca), e "Você está aqui" em cima da foto */
.fc-cx-aqui { position: absolute; z-index: 1; top: -86px; left: calc(50% / var(--n, 5) + (100% - 100% / var(--n, 5)) * var(--feito)); width: 0; height: 138px; }
.fc-cx-aqui__card { position: absolute; top: 0; left: 0; transform: translateX(-50%); display: flex; flex-direction: column-reverse; align-items: center; gap: 6px; color: var(--fc-branco, #FFFFFF); font-size: 13px; line-height: 18px; font-weight: 700; white-space: nowrap; }
.fc-cx-aqui__av { box-sizing: border-box; width: 46px; height: 46px; border: 5px solid var(--fc-branco, #FFFFFF); border-radius: 50%; overflow: hidden; display: grid; place-items: center; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-size: 13px; }
.fc-cx-aqui__av img { width: 100%; height: 100%; object-fit: cover; }
.fc-cx-aqui__fio { position: absolute; top: 70px; bottom: 16px; left: -1px; border-left: 2px dotted var(--fc-branco, #FFFFFF); opacity: .85; }
.fc-cx-aqui__ponto { position: absolute; bottom: 0; left: -8px; width: 16px; height: 16px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); }
body.fc-claro .fc-cx-aqui__card { color: var(--fc-marinho, #121923); }
body.fc-claro .fc-cx-aqui__av { border-color: var(--fc-marinho, #121923); }
body.fc-claro .fc-cx-aqui__fio { border-left-color: var(--fc-marinho, #121923); }


.fc-cx-nvtrilha { padding: 20px 32px 24px; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
.fc-cx-nvtrilha__linha { position: relative; display: grid; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); margin-top: 96px; }
.fc-cx-nvtrilha__linha::before, .fc-cx-nvtrilha__linha::after { content: ""; position: absolute; left: calc(50% / var(--n, 5)); top: 42px; height: 4px; border-radius: 999px; }
.fc-cx-nvtrilha__linha::before { right: calc(50% / var(--n, 5)); background: var(--cx-trilho); }
.fc-cx-nvtrilha__linha::after { width: calc((100% - 100% / var(--n, 5)) * var(--feito)); background: var(--fc-menta, #2EFFA0); }
.fc-cx-parada { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 8px; min-width: 0; }
.fc-cx-parada__pino { width: 88px; height: 88px; display: grid; place-items: center; }
/* medalhas dos níveis (Fourclass\Engajamento\Medalha) */
.fc-medalha { display: block; flex: none; filter: drop-shadow(0 6px 10px rgba(0, 0, 0, .3)); }
.fc-cx-parada h3 { margin: 12px 0 2px; font: 600 22px var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-parada__meta { color: var(--cx-tx2); font-size: 15px; font-weight: 500; }
.fc-cx-parada__com { margin-top: 10px; font: 600 40px/1 var(--fc-font-title); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.fc-cx-parada__com sup { font-size: 19px; vertical-align: 21px; margin-left: 2px; }
.fc-cx-parada__coml { margin-top: 4px; color: var(--cx-tx2); font-size: 14.5px; font-weight: 500; }
.fc-cx-parada__premio { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; margin-top: 10px; min-height: 26px; padding: 3px 10px; border-radius: 999px; box-shadow: inset 0 0 0 1px var(--cx-linha); color: var(--cx-tx2); font-size: 12px; font-weight: 500; }
.fc-cx-parada__premio svg { flex: none; width: 13px; height: 13px; }
.fc-cx-pl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.fc-cx-pl__box { padding: 22px 26px 24px; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
.fc-cx-pl__tit { display: inline-flex; align-items: center; gap: 12px; height: 42px; margin: 0 0 16px; padding: 0 18px 0 4px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font: 600 17px var(--fc-font-title); letter-spacing: -.01em; white-space: nowrap; }
.fc-cx-pl__tit > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--fc-marinho, #121923); color: var(--fc-menta, #2EFFA0); }
.fc-cx-pl__tit svg { width: 18px; height: 18px; }
.fc-cx-pl ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
.fc-cx-pl li { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 14px; align-items: start; }
.fc-cx-pl__ic { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--cx-bloco-2); color: var(--fc-text); }
.fc-cx-pl__ic svg { width: 16px; height: 16px; }
.fc-cx-pl li.is-nao .fc-cx-pl__ic { background: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); }
.fc-cx-pl li.is-sim .fc-cx-pl__ic { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-pl li b { display: block; color: var(--fc-text); font-size: 16px; line-height: 30px; font-weight: 600; }
.fc-cx-pl li small { display: block; margin-top: -2px; color: var(--cx-tx2); font-size: 14px; line-height: 1.4; }
@media (max-width: 1100px) { .fc-cx-pl { grid-template-columns: 1fr; } .fc-cx-nvtrilha { overflow-x: auto; } .fc-cx-nvtrilha__linha { grid-template-columns: repeat(var(--n, 5), minmax(140px, 1fr)); min-width: calc(var(--n, 5) * 150px); } }

.fc-cx-janela__abrir { border: 0; background: none; cursor: pointer; }
.fc-cx-main > [data-cx-vista="plano"], .fc-cx-main > [data-cx-vista="regras"] { overflow: auto; }

/* Visão geral: letras maiores e brancas no fundo escuro (pedido de 16/10); destaque em etiqueta branca com letra preta */
body:not(.fc-claro) .fc-cx { --cx-tx2: var(--fc-nevoa, #EAEFEE); }
.fc-cx-voce { gap: 24px; padding-right: 28px; }
.fc-cx-voce__quem { gap: 26px; }
.fc-cx-voce__tx p { margin: 6px 0 14px; font-size: 15.5px; }
.fc-cx-pin { right: -14px; bottom: -12px; width: 58px; height: 58px; }
.fc-cx-degraus span { width: 42px; height: 42px; }
.fc-cx-degraus span + span { margin-left: 10px; }
.fc-cx-degraus span + span::before { width: 10px; }
.fc-cx-velo svg { width: 180px; }
.fc-cx-velo__tx b { font-size: 36px; }
.fc-cx-velo__tx span { font-size: 15px; }
.fc-cx-velo__tx .fc-cx-pil { height: 28px; padding: 0 12px; border: 0; background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); font-size: 13.5px; font-weight: 600; }
.fc-cx-com small, .fc-cx-com p { font-size: 14.5px; }
.fc-cx-meses, .fc-cx-meses-eixo { grid-template-columns: repeat(6, 26px); gap: 10px; }
.fc-cx-meses { height: 90px; }
.fc-cx-meses-eixo { font-size: 13px; }

/* VISÃO GERAL no desenho do Exemplo 1 do Figma (16/10): você | comissão e quem espera | live e sua página */
.fc-cx-bento { display: grid; grid-template-columns: minmax(300px, .9fr) minmax(0, 1.45fr) minmax(0, 1.2fr); gap: 14px; min-height: 0; }
@media (min-width: 1281px) { .fc-cx-bento { flex: 1; } }
.fc-cx-eu { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 26px 22px 22px; text-align: center; overflow: hidden; }
.fc-cx-eu__marca { margin: 0 0 6px; font: 600 40px/1 var(--fc-font-title); letter-spacing: -.03em; }
.fc-cx-eu .fc-cx-foto { width: 124px; height: 124px; }
.fc-cx-eu__nome { max-width: 100%; margin: 6px 0 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 24px/1.2 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-eu__nivel { display: inline-flex; align-items: center; gap: 4px; height: 28px; padding: 0 12px; border-radius: 999px; background: var(--cx-bloco-2); font-size: 14px; }
.fc-cx-eu__nivel b { font-weight: 600; }
.fc-cx-eu .fc-cx-velo { margin: 6px 0 0; }
.fc-cx-eu .fc-cx-velo svg { width: 200px; }
.fc-cx-eu__pts { margin: 0; font: 600 19px var(--fc-font-title); letter-spacing: -.01em; }
.fc-cx-eu__pts b { font-weight: 600; }
.fc-cx-eu .fc-cx-degraus span { width: 40px; height: 40px; }
.fc-cx-eu .fc-cx-linkbox { width: 100%; height: 50px; margin-top: auto; background: var(--fc-branco, #FFFFFF); box-shadow: 0 0 0 1px rgba(18, 25, 35, .12); }
.fc-cx-eu .fc-cx-linkbox span { color: var(--fc-tom-32, #5E6369); }
.fc-cx-eu .fc-cx-linkbox a { color: var(--fc-marinho, #121923); }
.fc-cx-dobro { display: flex; align-items: center; gap: 10px; width: 100%; box-sizing: border-box; margin: 0; padding: 3px; border-radius: 999px; background: var(--fc-ardosia, #2A3446); color: var(--fc-branco, #FFFFFF); text-align: left; }
.fc-cx-dobro > b { flex: none; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font: 800 14px var(--fc-font-title); }
.fc-cx-dobro > span { min-width: 0; flex: 1; font-size: 12.5px; line-height: 1.25; color: var(--fc-tom-80, #D0D1D3); }
.fc-cx-dobro strong { color: var(--fc-branco, #FFFFFF); font-weight: 700; }
.fc-cx-dobro small { display: block; font-size: 11.5px; color: var(--fc-tom-80, #D0D1D3); }
.fc-cx-dobro > em { flex: none; display: grid; place-items: center; height: 34px; padding: 0 14px; border-radius: 999px; background: var(--fc-marinho, #121923); font: 700 14px var(--fc-font-title); font-style: normal; color: var(--fc-branco, #FFFFFF); font-variant-numeric: tabular-nums; white-space: nowrap; }
.fc-cx-eu .fc-cx-eu__nivel, .fc-cx-eu .fc-cx-dobro { flex-shrink: 0; }
.fc-cx-eu .fc-cx-dobro { margin-top: 6px; }
.fc-cx-meio { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 14px; min-width: 0; min-height: 0; }
.fc-cx-bento .fc-cx-lado { grid-template-rows: minmax(0, 1.25fr) auto; }
.fc-cx-bento .fc-cx-live h3 { font-size: 40px; }
.fc-cx-bento .fc-cx-live p { font-size: 15px; }
/* comissão em verde nos dois modos */
.fc-cx-bento .fc-cx-com, body:not(.fc-claro) .fc-cx-bento .fc-cx-com { align-items: stretch; padding: 22px 24px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-com__tx h2 { margin: 0; font: 600 17px var(--fc-font-title); }
.fc-cx-bento .fc-cx-com small, body:not(.fc-claro) .fc-cx-bento .fc-cx-com small { display: block; margin-top: 14px; color: rgba(18, 25, 35, .7); font-size: 14px; opacity: 1; }
.fc-cx-bento .fc-cx-com b, body:not(.fc-claro) .fc-cx-bento .fc-cx-com b { color: var(--fc-marinho, #121923); font-size: 58px; }
body:not(.fc-claro) .fc-cx-bento .fc-cx-com b em { opacity: .45; }
.fc-cx-com__pils { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.fc-cx-com__pils span { display: inline-flex; align-items: center; height: 30px; padding: 0 12px; border-radius: 999px; background: rgba(18, 25, 35, .1); font-size: 13.5px; font-weight: 600; }
.fc-cx-com__pils .is-escura { background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); }
.fc-cx-bento .fc-cx-com__meses { align-self: end; }
.fc-cx-bento .fc-cx-meses i, body:not(.fc-claro) .fc-cx-bento .fc-cx-meses i { background: rgba(18, 25, 35, .16); }
.fc-cx-bento .fc-cx-meses i:last-child, body:not(.fc-claro) .fc-cx-bento .fc-cx-meses i:last-child { background: var(--fc-marinho, #121923); }
.fc-cx-bento .fc-cx-meses, .fc-cx-bento .fc-cx-meses-eixo { grid-template-columns: repeat(6, 34px); gap: 10px; }
.fc-cx-bento .fc-cx-meses { height: 112px; }
.fc-cx-bento .fc-cx-meses-eixo, body:not(.fc-claro) .fc-cx-bento .fc-cx-meses-eixo { color: rgba(18, 25, 35, .7); }
/* quem espera você: lista simples, uma pessoa por linha */
.fc-cx-bento .fc-cx-cab h2 { display: flex; align-items: center; gap: 8px; font-size: 17px; }
.fc-cx-cont { display: inline-grid; place-items: center; min-width: 24px; height: 24px; padding: 0 7px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font: 700 13px var(--fc-font-text); font-style: normal; }
.fc-cx-ir { display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--cx-bloco-2); color: var(--fc-text); cursor: pointer; }
.fc-cx-ir svg { width: 16px; height: 16px; }
/* sua página */
.fc-cx-sua { display: flex; flex-direction: column; padding-bottom: 18px; }
.fc-cx-sua__n { padding: 14px 20px 0; font-size: 18px; }
.fc-cx-sua__n b { font: 600 48px/1 var(--fc-font-title); letter-spacing: -.03em; }
.fc-cx-sua__tx { margin: 6px 20px 0; font-size: 15px; }
.fc-cx-sua__linha { display: block; width: calc(100% - 40px); height: 56px; margin: 16px 20px 0; overflow: visible; }
.fc-cx-sua__linha polyline { fill: none; stroke: var(--fc-menta, #2EFFA0); stroke-width: 2.5; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke; }
@media (max-width: 1280px) { .fc-cx-bento { grid-template-columns: 1fr 1fr; } .fc-cx-eu { grid-row: span 2; } }
@media (max-width: 760px) { .fc-cx-bento { grid-template-columns: 1fr; } .fc-cx-eu { grid-row: auto; } .fc-cx-bento .fc-cx-com { flex-direction: column; } }
.fc-cx-eu { justify-content: space-between; }
.fc-cx-eu .fc-cx-foto { width: 140px; height: 140px; }
.fc-cx-eu .fc-cx-velo svg { width: 236px; }
.fc-cx-eu .fc-cx-degraus span { width: 46px; height: 46px; }
.fc-cx-eu .fc-cx-linkbox { margin-top: 0; }
/* coluna do nível agrupada (16/10): Conecta mais baixo; foto, nome e nível juntos; velocímetro, pontos e medalhas juntos no meio; link no pé */
.fc-cx-eu { justify-content: flex-start; gap: 0; padding: 40px 22px 22px; }
.fc-cx-eu__marca { margin: 0 0 22px; }
.fc-cx-eu .fc-cx-pin { right: -16px; bottom: -14px; width: 70px; height: 70px; }
.fc-cx-eu__nome { margin: 16px 0 8px; }
.fc-cx-eu .fc-cx-velo { margin: auto 0 0; }
.fc-cx-eu .fc-cx-velo svg { width: 272px; }
.fc-cx-eu__pts { margin: 2px 0 16px; font-size: 21px; }
.fc-cx-eu .fc-cx-degraus { margin-bottom: auto; }
.fc-cx-eu .fc-cx-degraus span { width: 52px; height: 52px; }
.fc-cx-eu .fc-cx-degraus span + span { margin-left: 12px; }
.fc-cx-eu .fc-cx-degraus span + span::before { width: 12px; }
.fc-cx-eu .fc-cx-linkbox { margin-top: 20px; }
/* coluna do nível, ajuste 2: foto mais longe do título e do nome; velocímetro e medalhas maiores; a comissão do nível embaixo das medalhas */
.fc-cx-eu__marca { margin-bottom: 30px; }
.fc-cx-eu .fc-cx-foto { width: 156px; height: 156px; }
.fc-cx-eu__nome { margin: 28px 0 8px; }
.fc-cx-eu .fc-cx-velo svg { width: 300px; }
.fc-cx-eu .fc-cx-degraus { margin-bottom: 0; }
.fc-cx-eu .fc-cx-degraus span { width: 56px; height: 56px; }
.fc-cx-eu__prox { margin: 18px 0 auto; font-size: 15px; }
.fc-cx-eu__prox b { color: var(--fc-menta, #2EFFA0); font-weight: 700; }
.fc-claro .fc-cx-eu__prox b { color: var(--fc-text); }
.fc-cx-eu > * { flex-shrink: 0; }
@media (max-height: 800px) { .fc-cx-eu { padding-top: 24px; } .fc-cx-eu__marca { margin-bottom: 18px; font-size: 34px; } .fc-cx-eu .fc-cx-foto { width: 116px; height: 116px; } .fc-cx-eu__nome { margin-top: 20px; } .fc-cx-eu .fc-cx-velo svg { width: 220px; } .fc-cx-eu .fc-cx-degraus span { width: 46px; height: 46px; } }
/* ponteiro do velocímetro arredondado (16/10): uma haste de ponta redonda e o eixo verde com miolo escuro */
.fc-cx-velo .is-ponteiro line { stroke: var(--fc-menta, #2EFFA0); stroke-width: 11; stroke-linecap: round; }
.fc-cx-velo circle.is-eixo { fill: var(--fc-menta, #2EFFA0); stroke: none; }
.fc-cx-velo circle.is-miolo { fill: var(--cx-bloco); stroke: none; }
/* velocímetro sem ponteiro (16/10): a bolinha branca anda no arco e a porcentagem do caminho fica no centro */
.fc-cx-velo .is-ponteiro { transform: rotate(0deg); }
.fc-cx-velo circle.is-bola { fill: var(--fc-nevoa, #EAEFEE); stroke: var(--cx-bloco); stroke-width: 5; }
.fc-cx-velo text.is-pct { fill: var(--fc-text); font: 600 34px var(--fc-font-title); letter-spacing: -1px; }
.fc-cx-velo text.is-pct { font-size: 21px; }
.fc-cx-eu__pts { font-size: 19px; }
.fc-cx-eu__pts, .fc-cx-eu__pts b { font-weight: 500; }
/* medalhas e comissão descem para perto do link, separadas do velocímetro por uma linha clara */
.fc-cx-eu .fc-cx-degraus { justify-content: center; width: 100%; margin-top: auto; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, .1); }
.fc-claro .fc-cx-eu .fc-cx-degraus { border-top-color: rgba(18, 25, 35, .1); }
.fc-cx-eu__prox { margin: 16px 0 0; }
.fc-cx-eu .fc-cx-linkbox { margin-top: 18px; }

/* tela mais baixa (ex.: 1920 × 850): o cartão da esquerda da Visão geral encolhe a foto e o velocímetro para o Link de venda não passar da tela */
@media (min-width: 1281px) and (max-height: 940px) {
  .fc-cx-eu { padding-top: 26px; }
  .fc-cx-eu__marca { margin-bottom: 12px; font-size: 36px; }
  .fc-cx-eu .fc-cx-foto { width: 116px; height: 116px; }
  .fc-cx-eu .fc-cx-pin { width: 58px; height: 58px; }
  .fc-cx-eu .fc-cx-velo svg { width: 232px; }
  .fc-cx-eu .fc-cx-degraus span { width: 46px; height: 46px; }
}

/* Cadastro do Conecta (convite, link, endereço) no computador: tudo se mede pela tela, não por um tamanho fixo.
   A caixa ocupa a altura que sobra; o celular cresce com a altura (proporção de celular); o texto ocupa o resto da largura
   e os campos acompanham a coluna. Abaixo de 1281 px de largura vale o layout empilhado de antes. */
@media (min-width: 1281px) and (min-height: 700px) {
  [data-cx-vista="geral"] > .fc-cx-boas {
    --cel-h: clamp(440px, calc(100dvh - 300px), 700px);
    margin: 0; flex: 1 1 auto; min-height: 0; box-sizing: border-box;
    grid-template-columns: auto minmax(0, 1fr); justify-content: stretch; align-items: center;
    column-gap: clamp(40px, 5vw, 110px); padding: clamp(24px, 4vh, 48px) clamp(40px, 6vw, 120px);
  }
  [data-cx-vista="geral"] > .fc-cx-boas.fc-cx-end { grid-template-columns: minmax(0, 1fr) auto; }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-boas__txt { max-width: 900px; }
  [data-cx-vista="geral"] > .fc-cx-boas h1 { font-size: clamp(36px, min(3.6vw, 6.4vh), 64px); }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-boas__frase { max-width: none; font-size: clamp(16px, calc(.6vw + 8px), 20px); }
  [data-cx-vista="geral"] > .fc-cx-boas form, [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-boas__form { width: 100%; max-width: none; }
  /* o celular de prévia (convite e link) e o exemplo em pé (endereço) com a mesma altura */
  .fc-cx-boas .fc-cx-cel { position: static; width: calc(var(--cel-h) * .56); }
  .fc-cx-boas .fc-cx-cel iframe { height: var(--cel-h); }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo { height: var(--cel-h); width: calc(var(--cel-h) * .58); min-height: 0; }
}
@media (min-width: 1281px) and (min-height: 700px) {
  /* endereço: texto e campo mais curtos na esquerda; o exemplo vira uma tela de notebook, que equilibra a largura */
  [data-cx-vista="geral"] > .fc-cx-boas.fc-cx-end { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
  [data-cx-vista="geral"] > .fc-cx-boas.fc-cx-end .fc-cx-boas__txt { max-width: 640px; }
  [data-cx-vista="geral"] > .fc-cx-boas.fc-cx-end h1 { font-size: clamp(34px, min(3.2vw, 6vh), 54px); }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo { justify-self: center; width: min(100%, calc(var(--cel-h) * 1.5)); height: auto; aspect-ratio: 16 / 10; max-height: var(--cel-h); padding: 32px 48px; border-radius: 16px; align-items: center; box-shadow: 0 0 0 12px var(--fc-ardosia, #2A3446), 0 34px 0 12px var(--fc-tom-04, #1B222C), 0 40px 70px rgba(0, 0, 0, .35); }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo > .fc-cx-end__dlabel, [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo > .fc-cx-end__dcampo, [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo > .fc-cx-end__dlink { width: 100%; max-width: 520px; box-sizing: border-box; }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo > .fc-cx-end__rot, [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__demo > .fc-cx-end__dbt { align-self: center; }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-end__dpronto { border-radius: 16px; }
}
@media (min-width: 1281px) and (min-height: 700px) and (max-height: 820px) {
  /* tela baixa (notebook): menos espaço entre as partes do cadastro */
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-boas__frase { font-size: 16px; }
  [data-cx-vista="geral"] > .fc-cx-boas .fc-cx-boas__passos { margin: 10px 0 12px; }
  [data-cx-vista="geral"] > .fc-cx-boas.fc-cx-end .fc-cx-end__fica { margin: 8px 0 12px; padding: 10px 16px; }
  [data-cx-vista="geral"] > .fc-cx-boas h1 { margin-bottom: 8px; }
}
/* celular do cadastro, igual ao Figma (página CLAUDE, 17/10): medidas do quadro com a tela de 616 px de altura, tudo proporcional */
.fc-cx-cel__tela { box-sizing: border-box; height: var(--cel-h, 616px); overflow: hidden; display: flex; flex-direction: column; align-items: center; padding: calc(var(--cel-h, 616px) * 56 / 616) 0 0; border-radius: 34px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); text-align: center; }
.fc-cx-cel__tela h3 { margin: 0; font: 700 calc(var(--cel-h, 616px) * 34 / 616)/1.02 'Sora', var(--fc-font-title); letter-spacing: -.035em; color: var(--fc-branco, #FFFFFF); }
.fc-cx-cel__pct { position: relative; align-self: stretch; height: calc(var(--cel-h, 616px) * 196 / 616); margin-top: calc(var(--cel-h, 616px) * 14 / 616); }
.fc-cx-cel__pct > * { position: absolute; white-space: nowrap; line-height: 1; font-family: 'Sora', var(--fc-font-title); font-weight: 700; letter-spacing: -.05em; }
.fc-cx-cel__pct .is-20 { left: calc(var(--cel-h, 616px) * 35 / 616); top: calc(var(--cel-h, 616px) * 14 / 616); font-size: calc(var(--cel-h, 616px) * 83 / 616); color: var(--fc-menta, #2EFFA0); }
.fc-cx-cel__pct .is-a { left: calc(var(--cel-h, 616px) * 72 / 616); top: calc(var(--cel-h, 616px) * 94 / 616); font-size: calc(var(--cel-h, 616px) * 34 / 616); letter-spacing: 0; color: var(--fc-branco, #FFFFFF); }
.fc-cx-cel__pct .is-30 { left: calc(var(--cel-h, 616px) * 94 / 616); top: calc(var(--cel-h, 616px) * 80 / 616); font-size: calc(var(--cel-h, 616px) * 90 / 616); color: var(--fc-menta, #2EFFA0); }
.fc-cx-cel__pct .is-de { right: calc(var(--cel-h, 616px) * 52 / 616); top: calc(var(--cel-h, 616px) * 160 / 616); font-size: calc(var(--cel-h, 616px) * 24.5 / 616); font-weight: 600; letter-spacing: 0; color: var(--fc-menta, #2EFFA0); }
.fc-cx-cel__plano { margin: calc(var(--cel-h, 616px) * 22 / 616) 0 0; font: 700 calc(var(--cel-h, 616px) * 23 / 616)/1 'Sora', var(--fc-font-title); letter-spacing: -.035em; color: var(--fc-branco, #FFFFFF); }
.fc-cx-cel__nv { display: flex; align-items: center; justify-content: center; gap: 0; margin-top: calc(var(--cel-h, 616px) * 8 / 616); }
.fc-cx-cel__nv i { display: grid; place-items: center; width: calc(var(--cel-h, 616px) * 58 / 616); height: calc(var(--cel-h, 616px) * 58 / 616); }
.fc-cx-cel__nv i:nth-child(4) { width: calc(var(--cel-h, 616px) * 66 / 616); height: calc(var(--cel-h, 616px) * 66 / 616); }
.fc-cx-cel__nv svg { width: 100%; height: 100%; }
.fc-cx-cel__faixa { align-self: stretch; margin: auto calc(var(--cel-h, 616px) * 23 / 616) calc(var(--cel-h, 616px) * 11 / 616); padding: calc(var(--cel-h, 616px) * 14 / 616) calc(var(--cel-h, 616px) * 12 / 616) calc(var(--cel-h, 616px) * 16 / 616); border-radius: calc(var(--cel-h, 616px) * 24 / 616); background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-cel__faixa small { display: block; font: 700 calc(var(--cel-h, 616px) * 26.7 / 616)/1.15 'Sora', var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-cel__faixa b { display: block; margin-top: calc(var(--cel-h, 616px) * 4 / 616); font: 700 calc(var(--cel-h, 616px) * 20 / 616)/1.2 'Sora', var(--fc-font-title); letter-spacing: -.01em; }
@media (min-width: 1281px) and (min-height: 700px) {
  /* convite e link: título bem maior (pedido de 17/10) */
  [data-cx-vista="geral"] > .fc-cx-boas:not(.fc-cx-end) h1 { font-size: clamp(42px, min(4.6vw, 8.4vh), 84px); line-height: 1; }
}

/* cadastro, ordem do Figma: olho, título, texto, nota, passos e o botão */
.fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > * { order: 5; }
.fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > .fc-cx-boas__olho, .fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > h1, .fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > .fc-cx-boas__frase { order: 1; }
.fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > .fc-cx-boas__nota { order: 2; margin: 14px 0 0; color: var(--fc-text); opacity: .7; }
.fc-cx-boas:not(.fc-cx-end) .fc-cx-boas__txt > .fc-cx-boas__passos { order: 3; margin: 22px 0 34px; }
@media (min-width: 1281px) and (min-height: 700px) { .fc-cx-boas .fc-cx-cel { width: calc(var(--cel-h) * .563 + 20px); } }
/* cartão verde da comissão: tudo escuro (o título "Comissão" ficava branco no verde e os centavos apagados) */
.fc-cx-bento .fc-cx-com h2, .fc-cx-bento .fc-cx-com__pils span:not(.is-escura), .fc-cx-bento .fc-cx-com__meses, .fc-cx-bento .fc-cx-com__meses * { color: var(--fc-marinho, #121923); }
.fc-cx-bento .fc-cx-com b em, body:not(.fc-claro) .fc-cx-bento .fc-cx-com b em { opacity: 1; }

/* Start: "Comece aqui" ocupa o meio inteiro (vídeo em cima, os 3 passos embaixo) até a pessoa fazer os 3 */


/* Movimento suave (17/10/2026): janelas, a ficha do contato, as abas do Conecta e as listas que trocam surgem com um fade
   curto em vez de pular na tela. Quem pediu menos movimento no computador não vê nada disso. */
@media (prefers-reduced-motion: no-preference) {
  .fc-nx [role="dialog"] { transition: opacity .22s ease, scale .26s cubic-bezier(.16, 1, .3, 1); }
  .fc-nx [data-cx-vista], .fc-nx [data-cx-lista], .fc-nx [data-cx-quadro], .fc-nx [data-cx-rede-l] { transition: opacity .22s ease, translate .26s cubic-bezier(.16, 1, .3, 1); }
  @starting-style {
    .fc-nx [role="dialog"] { opacity: 0; scale: .96; }
    .fc-nx [data-cx-vista], .fc-nx [data-cx-lista], .fc-nx [data-cx-quadro], .fc-nx [data-cx-rede-l] { opacity: 0; translate: 0 6px; }
  }
}

/* ===== conecta.php ===== */
      .fc-cx-treino { display: grid; gap: 8px; margin-top: auto; padding-top: 14px; border-top: 1px solid var(--cx-linha); }
      .fc-cx.is-recolhido .fc-cx-treino { display: none; }
      .fc-cx-treino form { margin: 0; }
      .fc-cx-treino__tag { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-size: 13px; font-weight: 700; }
      .fc-cx-treino__tag svg { width: 15px; height: 15px; }
      .fc-cx-treino__tag, .fc-cx-treino__chave, .fc-cx-treino__bt { justify-content: center; }
      .fc-cx-treino__chave, .fc-cx-treino__bt { width: 100%; display: inline-flex; align-items: center; gap: 8px; height: 32px; padding: 0 12px; border: 1px solid var(--cx-linha); border-radius: 999px; background: none; color: var(--fc-text); font: 600 13px var(--fc-font-body, Inter, sans-serif); cursor: pointer; }
      .fc-cx-treino__chave i { position: relative; width: 30px; height: 18px; border-radius: 999px; background: var(--cx-bloco-2); transition: background .2s; }
      .fc-cx-treino__chave i::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: var(--fc-branco, #FFFFFF); transition: transform .2s; }
      .fc-cx-treino__chave[aria-checked="true"] i { background: var(--fc-menta, #2EFFA0); }
      .fc-cx-treino__chave[aria-checked="true"] i::after { transform: translateX(12px); background: var(--fc-marinho, #121923); }
      .fc-cx-treino__bt svg { width: 15px; height: 15px; }
      .fc-cx-treino__bt.is-confirmar { background: var(--fc-framboesa, #F04A68); border-color: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); }

    .fc-cx-rm { width: min(860px, calc(100vw - 32px)); max-height: calc(100dvh - 48px); padding: 34px 36px 30px; border: 0; border-radius: 28px; background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); overflow-y: auto; }
    .fc-cx-rm::backdrop { background: rgba(18, 25, 35, .72); backdrop-filter: blur(6px); }
    .fc-cx-rm--pausa { width: min(520px, calc(100vw - 32px)); text-align: center; }
    .fc-cx-rm__ic { display: inline-grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); margin-bottom: 14px; }
    .fc-cx-rm__ic.is-pausa { background: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); }
    .fc-cx-rm__ic svg { width: 26px; height: 26px; }
    .fc-cx-rm h2 { margin: 0 0 10px; font: 600 28px/1.15 var(--fc-font-title); letter-spacing: -.02em; color: var(--fc-marinho, #121923); }
    .fc-cx-rm > p { margin: 0 0 22px; max-width: 70ch; color: var(--fc-tom-24, #4B5058); font-size: 16px; line-height: 1.5; }
    .fc-cx-rm--pausa > p { margin: 0 auto 14px; }
    .fc-cx-rm p b { color: var(--fc-marinho, #121923); }
    .fc-cx-rm .fc-cx-div__col { background: var(--fc-nevoa, #EAEFEE); }
    .fc-cx-rm .fc-cx-div__col h3 { color: var(--fc-marinho, #121923); }
    .fc-cx-rm .fc-cx-div__col li small { color: var(--fc-tom-24, #4B5058); }
    .fc-cx-rm .fc-cx-div__col li b { color: var(--fc-marinho, #121923); }
    .fc-cx-rm__pe { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; margin-top: 22px; }
    .fc-cx-rm__pe p { flex: 1 1 320px; margin: 0; color: var(--fc-tom-24, #4B5058); font-size: 14.5px; }
    .fc-cx-rm__pe form { margin: 0; }
    .fc-cx-rm .fc-cx-convite { height: 48px; padding: 0 6px 0 20px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); font-size: 15px; }
    .fc-cx-rm .fc-cx-convite i { width: 36px; height: 36px; color: var(--fc-marinho, #121923); }
    .fc-cx-rm .fc-cx-convite svg { width: 18px; height: 18px; }
    .fc-cx-rm__bts { display: flex; justify-content: center; align-items: center; gap: 10px; flex-wrap: wrap; margin: 22px 0 12px; }
    .fc-cx-rm__bts .fc-cx-chamar.is-leve { height: 44px; padding: 0 20px; color: var(--fc-marinho, #121923); border-color: var(--fc-tom-88, #E3E3E5); font-size: 14px; }
    .fc-cx-rm small { color: var(--fc-tom-40, #71757B); font-size: 13px; }
    /* tela das regras compacta: cabe sem barra de rolagem (pedido de 17/10) */
    .fc-cx-rm:not(.fc-cx-rm--pausa) { width: min(1240px, calc(100vw - 32px)); padding: 28px 36px 24px; }
    .fc-cx-rm:focus, .fc-cx-rm:focus-visible { outline: none; }
    .fc-cx-rm:not(.fc-cx-rm--pausa) .fc-cx-rm__ic { width: 38px; height: 38px; margin-bottom: 8px; }
    .fc-cx-rm:not(.fc-cx-rm--pausa) .fc-cx-rm__ic svg { width: 20px; height: 20px; }
    .fc-cx-rm:not(.fc-cx-rm--pausa) h2 { font-size: 27px; margin-bottom: 6px; }
    .fc-cx-rm:not(.fc-cx-rm--pausa) > p { margin-bottom: 16px; font-size: 16.5px; max-width: none; }
    .fc-cx-rm .fc-cx-div__cols { gap: 14px; }
    .fc-cx-rm .fc-cx-div__col { padding: 20px 24px 22px; }
    .fc-cx-rm .fc-cx-div__col h3 { margin-bottom: 12px; font-size: 20px; }
    .fc-cx-rm .fc-cx-div__col ul { gap: 9px; }
    .fc-cx-rm .fc-cx-div__col li { grid-template-columns: 26px minmax(0, 1fr); gap: 12px; }
    .fc-cx-rm .fc-cx-div__ic { width: 26px; height: 26px; }
    .fc-cx-rm .fc-cx-div__ic svg { width: 15px; height: 15px; }
    .fc-cx-rm .fc-cx-div__col li b { font-size: 17px; line-height: 26px; }
    .fc-cx-rm .fc-cx-div__col li small { margin-top: 0; font-size: 14.5px; line-height: 1.4; }
    .fc-cx-rm .fc-cx-rm__pe { margin-top: 14px; }
    .fc-cx-rm__aceite { display: flex; align-items: center; gap: 16px; flex-wrap: wrap; }
    .fc-cx-rm__aceite label { display: flex; align-items: center; gap: 10px; color: var(--fc-marinho, #121923); font-size: 16.5px; font-weight: 600; cursor: pointer; }
    .fc-cx-rm__aceite input { width: 22px; height: 22px; accent-color: var(--fc-marinho, #121923); cursor: pointer; }
    .fc-cx-rm__aceite a { color: var(--fc-marinho, #121923); text-decoration: underline; text-underline-offset: 3px; }
    .fc-cx-rm .fc-cx-convite:disabled { opacity: .35; cursor: not-allowed; }
    .fc-cx-div__manual { color: var(--fc-text); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
    .fc-cx-div { display: grid; gap: 20px; }
    .fc-cx-div__tit h1 { margin: 0 0 8px; }
    .fc-cx-div__tit p { margin: 0; max-width: 70ch; color: var(--cx-tx2); font-size: 16px; }
    .fc-cx-div__cols { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .fc-cx-div__col { padding: 22px 26px 24px; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
    .fc-cx-div__col h3 { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; font: 600 20px var(--fc-font-title); letter-spacing: -.02em; }
    .fc-cx-div__col ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 7px; }
    .fc-cx-div__col li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 12px; align-items: start; }
    .fc-cx-div__ic { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; }
    .fc-cx-div__ic svg { width: 15px; height: 15px; stroke-width: 3; }
    .fc-cx-div__col.is-pode .fc-cx-div__ic { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
    .fc-cx-div__col.is-nao .fc-cx-div__ic { background: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); }
    .fc-cx-div__col li b { display: block; color: var(--fc-text); font-size: 16px; line-height: 26px; font-weight: 600; }
    .fc-cx-div__col li small { display: block; margin-top: 2px; color: var(--cx-tx2); font-size: 14px; line-height: 1.45; }
    .fc-cx-div__pe { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; padding: 20px 24px; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
    .fc-cx-div__pe p { display: flex; align-items: center; gap: 10px; margin: 0; flex: 1 1 360px; color: var(--cx-tx2); font-size: 15px; }
    .fc-cx-div__pe p svg { flex: none; width: 22px; height: 22px; }
    .fc-cx-div__pe p b { color: var(--fc-text); }
    .fc-cx-div__ok { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-weight: 700; font-size: 14px; }
    .fc-cx-div__ok svg { width: 18px; height: 18px; }
    @media (max-width: 760px) { .fc-cx-div__cols { grid-template-columns: 1fr; } .fc-cx-rm { padding: 26px 20px 22px; } .fc-cx-rm h2 { font-size: 23px; } }

      .fc-cx-excluir { justify-self: start; height: 36px; padding: 0 14px; border: 1px solid rgba(240, 74, 104, .35); border-radius: 999px; background: none; color: var(--fc-framboesa, #F04A68); font: 600 13px var(--fc-font-body, Inter, sans-serif); cursor: pointer; }
      .fc-cx-excluir.is-confirmar { background: var(--fc-framboesa, #F04A68); border-color: var(--fc-framboesa, #F04A68); color: var(--fc-branco, #FFFFFF); }
      a.fc-cx-chamar { text-decoration: none; }

      .fc-cx-dados { display: grid; gap: 16px; max-width: 760px; }
      .fc-cx-dado { display: grid; gap: 12px; padding: 20px 24px; }
      .fc-cx-dado .fc-cx-campo label { font: 600 16px var(--fc-font-title); letter-spacing: -.01em; }
      .fc-cx-codigo { margin: 0; color: var(--cx-tx2); font-size: 13.5px; }
      .fc-cx-codigo b { color: var(--fc-text); }
      .fc-cx-fica { display: grid; gap: 8px; }
      .fc-cx-fica div { display: flex; justify-content: space-between; gap: 16px; padding: 12px 16px; border-radius: 14px; background: var(--cx-bloco-2); font-size: 14px; }
      .fc-cx-fica span { color: var(--cx-tx2); }
      body:not(.fc-claro) .fc-cx-fica div { background: var(--fc-ardosia, #2A3446); }
      .fc-cx-fica b { font-weight: 600; text-align: right; overflow-wrap: anywhere; }
      .fc-cx-dados__pe { display: flex; justify-content: flex-end; }
      /* campos com dado: um tom mais claro que o cartão, para aparecer que é campo (no modo escuro) */
      body:not(.fc-claro) .fc-cx-dados .fc-cx-campo input, body:not(.fc-claro) .fc-cx-dados .fc-cx-prefixo { background: var(--fc-ardosia, #2A3446); border: 1.5px solid var(--fc-tom-16, #383E46); color: var(--fc-nevoa, #EAEFEE); }
      .fc-cx-dados .fc-cx-campo input, .fc-cx-dados .fc-cx-prefixo { border-radius: 999px; padding-left: 20px; }
      .fc-cx-dados .fc-cx-prefixo { padding-left: 0; }
      .fc-cx-dados .fc-cx-prefixo span { padding-left: 20px; }
      .fc-cx-dados .fc-cx-prefixo input { padding-left: 2px; border-radius: 0; }
      .fc-cx-fica div { border-radius: 999px; padding: 12px 20px; }
      body:not(.fc-claro) .fc-cx-dados .fc-cx-prefixo input { background: none; border: 0; color: var(--fc-nevoa, #EAEFEE); }
      body:not(.fc-claro) .fc-cx-dados .fc-cx-prefixo span { color: var(--fc-tom-60, #A0A3A7); }
      .fc-cx-dados .fc-cx-campo input:focus, .fc-cx-dados .fc-cx-prefixo:focus-within { border-color: var(--fc-border-strong); box-shadow: none; }


html{scrollbar-width:none}html::-webkit-scrollbar{display:none}

/* ===== _conecta-endereco.php ===== */
.fc-cx-end { align-items: center; grid-template-columns: minmax(0, 660px) auto; }
.fc-cx-end h1 { margin-bottom: 10px; }

.fc-cx-end .fc-cx-boas__passos { margin: 14px 0 18px; }
.fc-cx-end .fc-cx-end__label { color: var(--fc-text); }
.fc-cx-end .fc-cx-end__fica { margin: 10px 0 16px; padding: 12px 18px; }
/* texto na esquerda (a gente lê da esquerda para a direita); o exemplo na direita, em pé, como um celular (pedido de 17/10) */
.fc-cx-end .fc-cx-boas__txt { order: 1; }
.fc-cx-end .fc-cx-end__demo { order: 2; width: 360px; height: 600px; display: flex; flex-direction: column; justify-content: center; padding: 36px 26px; border-radius: 44px; box-shadow: 0 0 0 10px var(--fc-ardosia, #2A3446), 0 30px 60px rgba(0, 0, 0, .35); }
.fc-cx-end .fc-cx-end__rot { align-self: flex-start; font-size: 13px; margin-bottom: 18px; }
.fc-cx-end .fc-cx-end__dlabel { font-size: 16px; }
.fc-cx-end .fc-cx-end__dcampo { height: 58px; padding: 0 18px; font-size: 14.5px; }
.fc-cx-end .fc-cx-end__dlink { margin-top: 18px; font-size: 14px; }
.fc-cx-end .fc-cx-end__dlink b { font-size: 14.5px; }
.fc-cx-end .fc-cx-end__dbt { align-self: flex-start; margin-top: 22px; padding: 7px 7px 7px 24px; font-size: 17px; gap: 14px; }
.fc-cx-end .fc-cx-end__dbt i { width: 46px; height: 46px; }
.fc-cx-end .fc-cx-end__cursor { width: 28px; height: 28px; }
.fc-cx-end .fc-cx-end__dpronto { border-radius: 44px; }
.fc-cx-end__demo { position: relative; align-self: center; padding: 28px; border-radius: 22px; background: var(--fc-branco, #FFFFFF); box-shadow: 0 20px 50px rgba(18, 25, 35, .08); overflow: hidden; color: var(--fc-marinho, #121923); }
.fc-cx-end__rot { display: inline-flex; align-items: center; gap: 6px; margin-bottom: 14px; padding: 4px 10px; border-radius: 999px; background: var(--fc-nevoa, #EAEFEE); color: var(--fc-tom-32, #5E6369); font-size: 12px; font-weight: 600; }
.fc-cx-end__rot i { width: 7px; height: 7px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); animation: fc-cx-end-pisca 1.4s infinite; }
@keyframes fc-cx-end-pisca { 50% { opacity: .3; } }
.fc-cx-end__dlabel, .fc-cx-end__label { display: block; margin-bottom: 8px; font-weight: 700; font-size: 14px; color: var(--fc-marinho, #121923); }
.fc-cx-end__dcampo { display: flex; align-items: center; height: 52px; padding: 0 20px; border: 2px solid var(--fc-tom-88, #E3E3E5); border-radius: 999px; font-size: 15px; transition: border-color .3s, box-shadow .3s; }
.fc-cx-end__dcampo.is-foco { border-color: var(--fc-menta, #2EFFA0); box-shadow: 0 0 0 4px rgba(255, 255, 255, .25); }
.fc-cx-end__dcampo span { color: var(--fc-tom-32, #5E6369); }
.fc-cx-end__dcampo b { font-weight: 600; }
.fc-cx-end__barra { display: inline-block; width: 2px; height: 20px; margin-left: 1px; background: var(--fc-marinho, #121923); opacity: 0; }
.fc-cx-end__dcampo.is-foco .fc-cx-end__barra { opacity: 1; animation: fc-cx-end-pisca 1s steps(1) infinite; }
.fc-cx-end__dlink { margin-top: 16px; padding: 14px 18px; border-radius: 16px; background: var(--fc-nevoa, #EAEFEE); font-size: 14px; color: var(--fc-tom-32, #5E6369); opacity: 0; transform: translateY(6px); transition: opacity .4s, transform .4s; }
.fc-cx-end__dlink.is-on { opacity: 1; transform: none; }
.fc-cx-end__dlink b, .fc-cx-end__fica b { display: block; margin-top: 2px; color: var(--fc-marinho, #121923); font-size: 16px; overflow-wrap: anywhere; }
.fc-cx-end__dbt { display: inline-flex; align-items: center; gap: 12px; margin-top: 18px; padding: 6px 6px 6px 22px; border-radius: 999px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); font-weight: 700; transition: transform .15s; }
.fc-cx-end__dbt i { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-style: normal; }
.fc-cx-end__dbt.is-clique { transform: scale(.96); }
.fc-cx-end__cursor { position: absolute; left: 0; top: 0; z-index: 3; width: 22px; height: 22px; pointer-events: none; transition: transform .9s cubic-bezier(.5, 0, .2, 1); filter: drop-shadow(0 2px 3px rgba(0, 0, 0, .3)); }
.fc-cx-end__dpronto { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(255, 255, 255, .94); text-align: center; opacity: 0; transition: opacity .4s; }
.fc-cx-end__dpronto.is-on { opacity: 1; }
.fc-cx-end__dpronto b { display: block; font: 700 20px var(--fc-font-title); }
.fc-cx-end__dpronto span { color: var(--fc-tom-32, #5E6369); font-size: 14px; }
.fc-cx-end__dpronto i { display: grid; place-items: center; width: 52px; height: 52px; margin: 0 auto 10px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); font-style: normal; font-weight: 700; font-size: 22px; }
.fc-cx-end__entrada { display: flex; align-items: center; height: 54px; padding: 0 6px 0 20px; border: 2px solid var(--fc-tom-88, #E3E3E5); border-radius: 999px; background: var(--fc-branco, #FFFFFF); }
.fc-cx-end__entrada:focus-within { border-color: var(--fc-border-strong); box-shadow: none; }
.fc-cx-end__entrada.is-erro { border-color: var(--fc-framboesa, #F04A68); box-shadow: 0 0 0 4px rgba(240, 74, 104, .12); }
.fc-cx-end__entrada span { color: var(--fc-tom-32, #5E6369); white-space: nowrap; }
.fc-cx-end__entrada input { flex: 1; min-width: 0; height: 100%; padding: 0 2px; border: 0; outline: none; background: none; color: var(--fc-marinho, #121923); font: 600 16px var(--fc-font-text, Inter, sans-serif); }
.fc-cx-end__ajuda { margin: 8px 0 0; color: var(--fc-text); opacity: .85; font-size: 14px; }
.fc-cx-end__aviso { display: none; margin: 10px 0 0; padding: 10px 14px; border-radius: 12px; background: var(--fc-nevoa, #EAEFEE); color: var(--fc-marinho, #121923); font-size: 13.5px; font-weight: 600; }
.fc-cx-end__aviso.is-on { display: block; }
.fc-cx-end__fica { margin: 14px 0 20px; padding: 14px 18px; border-radius: 16px; background: var(--fc-branco, #FFFFFF); font-size: 14px; color: var(--fc-tom-32, #5E6369); }
.fc-cx-end [data-end-confirmar]:disabled { opacity: .45; cursor: default; }
/* confirmação do endereço: janela padrão do app (dialog.fc-modal); só o link em destaque é desta tela */
.fc-cx-end__lk { margin: 12px 0; padding: 14px 16px; border-radius: 14px; background: var(--fc-surface-3); color: var(--fc-text); font-weight: 700; font-size: 16px; overflow-wrap: anywhere; }
@media (max-width: 900px) { .fc-cx-end__demo { order: 2; } }
@media (prefers-reduced-motion: reduce) { .fc-cx-end__cursor, .fc-cx-end__dlink, .fc-cx-end__dpronto { transition: none; } }

/* Tarefa de WhatsApp do funil: o motivo em cima da mensagem pronta */
.fc-cx-motivo { margin: 0 0 8px; font-size: 13px; font-weight: 600; color: var(--fc-text); }

a.fc-cx-chamar { text-decoration: none; }

/* Caixa do link: clicar em qualquer lugar copia (não abre a página); sem a palavra Link; botão Copiar com ícone */
.fc-cx-linkbox[data-cx-copiar] { cursor: pointer; }
.fc-cx-linkbox .fc-cx-linkbox__url, body:not(.fc-claro) .fc-cx-link .fc-cx-linkbox .fc-cx-linkbox__url { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; font-weight: 600; color: var(--fc-text); }
.fc-cx-divulga .fc-cx-linkbox .fc-cx-linkbox__url { color: var(--fc-marinho, #121923); font-size: 14.5px; }
.fc-cx-linkbox button { display: inline-flex; align-items: center; gap: 6px; }
.fc-cx-linkbox button .fc-icon { width: 16px; height: 16px; }
/* Contatos › Quadro no modo escuro: as colunas ficam brancas (a página segue escura), fichas em cinza claro */
body:not(.fc-claro) .fc-cx-raia { --fc-text: var(--fc-marinho, #121923); --cx-tx2: var(--fc-tom-32, #5E6369); --cx-bloco: var(--fc-nevoa, #EAEFEE); --cx-bloco-2: var(--fc-nevoa, #EAEFEE); --cx-linha: var(--fc-tom-88, #E3E3E5); background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); }

/* Teste grátis: convite na sala da live, página que libera (/t/) e o link da comunidade */
.fc-cxp-teste { margin-top: 28px; padding: 20px; border-radius: 20px; background: rgba(255, 255, 255, .05); }
.fc-cxp-teste p { margin: 0 0 14px; color: var(--cx-2); }
.fc-cxp-teste b { color: var(--fc-nevoa, #EAEFEE); }
.fc-cxp-sala .fc-cxp-teste .fc-cxp-bt { margin-top: 0; }
.fc-cxp-bt--claro { background: var(--fc-nevoa, #EAEFEE); color: var(--fc-marinho, #121923); }
.fc-cxp-grupo { margin: 20px 0 0; }
.fc-cxp-nota { margin: 14px 0 0; font-size: 14px; color: var(--cx-2); }
.fc-cxp-nota b { color: var(--fc-nevoa, #EAEFEE); }

/* Leads do afiliado: painel de acompanhamento (pulso, etapas com a onda, pessoas em cartões, agora no seu funil). Só acompanhar. */
.fc-cx-ld { --ld-palco: var(--fc-branco, #FFFFFF); --ld-palco2: var(--fc-nevoa, #EAEFEE); --ld-palco3: var(--fc-nevoa, #EAEFEE); --ld-onda1: var(--fc-ardosia, #2A3446); --ld-onda2: var(--fc-tom-24, #4B5058); --ld-risco: rgba(18, 25, 35, .55); --ld-trilho: var(--fc-nevoa, #EAEFEE); --ld-sobre: var(--fc-branco, #FFFFFF); display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 18px; height: calc(100vh - 225px); min-height: 560px; }
body:not(.fc-claro) .fc-cx-ld { --ld-palco: var(--fc-ardosia, #2A3446); --ld-palco2: var(--fc-ardosia, #2A3446); --ld-palco3: var(--fc-ardosia, #2A3446); --ld-onda1: var(--fc-marinho, #121923); --ld-onda2: var(--fc-ardosia, #2A3446); --ld-risco: rgba(255, 255, 255, .4); --ld-trilho: var(--fc-marinho, #121923); --ld-sobre: var(--fc-ardosia, #2A3446); }
[data-cx-vista="leads"] .fc-cx-tit { margin-bottom: 14px; }
.fc-cx-ld-esq { display: grid; grid-template-rows: auto auto minmax(0, 1fr); gap: 16px; min-width: 0; min-height: 0; }
.fc-cx-ld-periodo { display: inline-flex; gap: 4px; padding: 4px; border-radius: 999px; background: var(--cx-bloco); }
.fc-cx-ld-periodo button { padding: 7px 14px; border: 0; border-radius: 999px; background: none; color: var(--cx-tx2); font: 600 13px var(--fc-font-text); cursor: pointer; }
.fc-cx-ld-periodo button.is-on { background: var(--cx-forte); color: var(--cx-on-forte); }
.fc-cx-ld-pilula { display: inline-flex; align-items: center; gap: 7px; padding: 5px 12px 5px 10px; border-radius: 999px; background: var(--ld-palco3); font-size: 12.5px; font-weight: 600; }
.fc-cx-ld-pilula i { width: 7px; height: 7px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); }
.fc-cx-ld-pulso { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.fc-cx-ld-kpi { display: flex; flex-direction: column; justify-content: space-between; gap: 10px; min-height: 112px; padding: 16px 18px; border-radius: 20px; background: var(--ld-palco); }
.fc-cx-ld-kpi > span { font-size: 13px; font-weight: 500; color: var(--cx-tx2); }
.fc-cx-ld-kpi > div { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; }
.fc-cx-ld-kpi b { font: 700 34px/1 var(--fc-font-title); letter-spacing: -.03em; white-space: nowrap; font-variant-numeric: tabular-nums; }
.fc-cx-ld-kpi b.is-din { font-size: 28px; }
.fc-cx-ld-kpi b small { margin-left: 6px; font: 600 13px var(--fc-font-text); letter-spacing: 0; color: var(--fc-menta, #2EFFA0); }
body:not(.fc-claro) .fc-cx-ld-kpi b small { color: var(--fc-menta, #2EFFA0); }
.fc-cx-ld-kpi svg { display: block; flex: none; }
.fc-cx-ld-pilha { display: flex; } .fc-cx-ld-pilha .fc-cx-av { margin-left: -9px; border: 2px solid var(--ld-palco); } .fc-cx-ld-pilha .fc-cx-av:first-child { margin-left: 0; }
.fc-cx-ld-anel { position: relative; display: inline-block; flex: none; } .fc-cx-ld-anel svg { display: block; } .fc-cx-ld-anel b { position: absolute; inset: 0; display: grid; place-items: center; font: 700 11.5px var(--fc-font-text); letter-spacing: 0; }
.fc-cx-ld-kpi .fc-cx-ld-anel b { font-size: 12.5px; }
.fc-cx-ld-funil { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-radius: 22px; }
/* cada etapa é um bloco: ao passar o mouse ele sai da tela (sobe, cresce um pouco e ganha sombra) */
.fc-cx-ld-etapa { position: relative; z-index: 0; display: flex; flex-direction: column; padding: 0; overflow: hidden; border: 0; border-left: 1px solid var(--cx-linha); background: var(--ld-palco); color: inherit; font: inherit; text-align: left; cursor: pointer; transition: transform .22s cubic-bezier(.2, .8, .2, 1), box-shadow .22s, border-radius .22s, background .22s; }
.fc-cx-ld-etapa:first-child { border-radius: 22px 0 0 22px; }
.fc-cx-ld-etapa:last-child { border-radius: 0 22px 22px 0; }
.fc-cx-ld-etapa:hover { z-index: 2; transform: translateY(-8px) scale(1.035); border-radius: 18px; border-left-color: transparent; background: var(--ld-sobre); box-shadow: 0 22px 44px rgba(18, 25, 35, .45), 0 0 0 1px rgba(255, 255, 255, .06); }
body.fc-claro .fc-cx-ld-etapa:hover { box-shadow: 0 22px 44px rgba(18, 25, 35, .18), 0 0 0 1px rgba(18, 25, 35, .06); }
@media (prefers-reduced-motion: reduce) { .fc-cx-ld-etapa:hover { transform: none; } }
.fc-cx-ld-etapa:hover .fc-cx-ld-onda__area { opacity: .85; }
.fc-cx-ld-etapa__topo { display: flex; flex-direction: column; gap: 8px; padding: 18px 22px 14px; }
.fc-cx-ld-onda { display: block; width: 100%; height: 120px; }
.fc-cx-ld-onda__risco { stroke: var(--ld-risco); stroke-width: 1.5; }
.fc-cx-ld-etapa.is-on .fc-cx-ld-onda__area { fill: var(--fc-menta, #2EFFA0); opacity: 1; }
.fc-cx-ld-etapa.is-on .fc-cx-ld-onda__risco { stroke: var(--fc-menta, #2EFFA0); }
.fc-cx-ld-etapa:first-child { border-left: 0; }
.fc-cx-ld-etapa__topo > span:first-child { font-size: 14px; font-weight: 600; color: var(--cx-tx2); }
.fc-cx-ld-etapa__meio { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.fc-cx-ld-etapa b { font: 700 38px/1 var(--fc-font-title); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.fc-cx-ld-etapa em { padding: 3px 9px; border-radius: 999px; background: var(--ld-palco3); font-style: normal; font-size: 12.5px; font-weight: 600; color: var(--cx-tx2); font-variant-numeric: tabular-nums; }
.fc-cx-ld-etapa.is-on .fc-cx-ld-etapa__topo > span:first-child { color: inherit; }
.fc-cx-ld-etapa.is-on em { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-ld-etapa.is-on::before { content: ""; position: absolute; left: 22px; right: 22px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--fc-menta, #2EFFA0); }
.fc-cx-ld-etapa:focus-visible { outline: 2px solid var(--fc-foco); outline-offset: -4px; border-radius: 16px; }
.fc-cx-ld-pessoas { display: grid; grid-template-rows: auto minmax(0, 1fr); min-height: 0; padding: 16px 18px 14px; border-radius: 22px; background: var(--ld-palco); }
.fc-cx-ld-cab { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.fc-cx-ld-cab h2 { margin: 0; font: 700 19px var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-ld-cartoes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; overflow-y: auto; align-content: start; }
.fc-cx-ld-cartao { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 14px; border: 0; border-radius: 16px; background: var(--ld-palco2); color: inherit; font: inherit; text-align: left; cursor: pointer; transition: background .15s; }
.fc-cx-ld-cartao:hover { background: var(--ld-palco3); }
.fc-cx-ld-cartao[hidden], .fc-cx-ld-ev[hidden] { display: none; }
.fc-cx-ld-cartao .fc-cx-av, .fc-cx-ld-ev .fc-cx-av { flex: none; border-radius: 50%; object-fit: cover; }
.fc-cx-ld-cartao__txt { display: flex; flex-direction: column; min-width: 0; }
.fc-cx-ld-cartao__txt b { font-size: 14px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fc-cx-ld-cartao__txt small { font-size: 12px; color: var(--cx-tx2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fc-cx-ld-trilha { display: flex; gap: 3px; margin-top: 6px; } .fc-cx-ld-trilha em { width: 16px; height: 4px; border-radius: 9px; background: var(--ld-trilho); } .fc-cx-ld-trilha em.is-feito { background: currentColor; }
.fc-cx-ld-ok { padding: 4px 10px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-size: 12px; font-weight: 700; }
.fc-cx-ld-agora { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; min-height: 0; padding: 18px; border-radius: 22px; background: var(--ld-palco); }
.fc-cx-ld-feed { display: flex; flex-direction: column; gap: 2px; overflow-y: auto; }
.fc-cx-ld-ev { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; padding: 10px 6px; border: 0; border-radius: 12px; background: none; color: var(--cx-tx2); font: inherit; font-size: 13.5px; text-align: left; cursor: pointer; }
.fc-cx-ld-ev:hover { background: var(--ld-palco2); }
.fc-cx-ld-ev b { color: var(--cx-forte); font-weight: 600; }
.fc-cx-ld-ev em { display: inline-block; margin-left: 4px; padding: 1px 8px; border-radius: 999px; background: var(--ld-palco3); font-style: normal; font-size: 11.5px; font-weight: 600; color: var(--cx-forte); }
.fc-cx-ld-ev em.is-ok { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-ld-ev small { display: block; margin-top: 2px; font-size: 12px; color: var(--cx-tx2); opacity: .8; }
.fc-cx-ld-nota { margin: 12px 0 0; padding: 12px 14px; border-radius: 14px; background: var(--ld-palco2); font-size: 12.5px; color: var(--cx-tx2); }
.fc-cx-ld-nota b { color: var(--cx-forte); }
.fc-cx-ld-vazio { margin: 8px 0; font-size: 13px; color: var(--cx-tx2); }
@media (max-width: 1280px) { .fc-cx-ld { grid-template-columns: 1fr; height: auto; } .fc-cx-ld-agora { max-height: 420px; } .fc-cx-ld-cartoes { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 60vh; } }
@media (max-width: 760px) { .fc-cx-ld-pulso { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fc-cx-ld-funil { grid-template-columns: repeat(4, 150px); overflow-x: auto; } .fc-cx-ld-onda { display: none; } .fc-cx-ld-cartoes { grid-template-columns: 1fr; } }
/* Gaveta do lead: a trilha em tracinhos, a etapa e a % (sem contato: quem conversa é a equipe) */
.fc-cx-gtrilha { display: flex; gap: 4px; }
.fc-cx-gtrilha span { flex: 1; height: 6px; border-radius: 999px; background: var(--cx-trilho); }
.fc-cx-gtrilha span.is-feito { background: var(--cx-forte); }
.fc-cx-gpasso { margin: 8px 0 0; font-size: 13.5px; font-weight: 600; }
.fc-cx-gfora { margin: 0; font-size: 13.5px; color: var(--cx-tx2); }
.fc-cx-gnota { margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--cx-bloco-2); font-size: 13px; color: var(--cx-tx2); }

/* A ficha do lead abre no meio da tela (não pela lateral), no mesmo tom do funil e do quadro */
.fc-cx-gaveta { top: 50%; left: 50%; right: auto; bottom: auto; width: min(520px, calc(100vw - 32px)); max-height: min(86vh, 760px); border-radius: 20px; background: var(--fc-branco, #FFFFFF); box-shadow: 0 30px 80px rgba(0, 0, 0, .35); transform: translate(-50%, -47%) scale(.98); opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .22s ease; }
.fc-cx-gaveta.is-on { transform: translate(-50%, -50%); opacity: 1; pointer-events: auto; }
body:not(.fc-claro) .fc-cx-gaveta { background: var(--fc-ardosia, #2A3446); border: 1px solid rgba(255, 255, 255, .06); }

/* Ficha do lead (modelo B, aprovado em 21/10/2026): perfil no topo, chance e ganho em destaque, uma linha do tempo do que fez ao próximo passo */
.fc-cx-gaveta { --gb-bloco: var(--fc-nevoa, #EAEFEE); --gb-trilho: var(--fc-tom-88, #EAEFEE); --gb-fundo: var(--fc-branco, #FFFFFF); overflow-y: auto; }
body:not(.fc-claro) .fc-cx-gaveta { --gb-bloco: var(--fc-ardosia, #2A3446); --gb-trilho: var(--fc-marinho, #121923); --gb-fundo: var(--fc-ardosia, #2A3446); background: var(--fc-ardosia, #2A3446); }
.fc-cx-gb__x { position: absolute; top: 16px; right: 16px; z-index: 1; display: grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 50%; background: var(--gb-fundo); color: inherit; cursor: pointer; }
.fc-cx-gb__x svg { width: 18px; height: 18px; }
.fc-cx-gb__topo { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 28px 24px 22px; text-align: center; background: var(--gb-bloco); }
.fc-cx-gb__topo .fc-cx-av { margin-bottom: 8px; border-radius: 50%; object-fit: cover; font-size: 22px; }
.fc-cx-gb__topo h2 { margin: 0; font: 700 22px/1.2 var(--fc-font-title); letter-spacing: -.02em; }
.fc-cx-gb__topo p { margin: 0; font-size: 14.5px; color: var(--cx-tx2); }
.fc-cx-gb__duo { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 16px 18px 6px; }
.fc-cx-gb__duo > div { padding: 14px 16px; border-radius: 16px; background: var(--gb-bloco); }
.fc-cx-gb__duo small { display: block; font-size: 13.5px; color: var(--cx-tx2); }
.fc-cx-gb__duo b { display: block; margin-top: 4px; font: 700 28px/1.1 var(--fc-font-title); letter-spacing: -.02em; white-space: nowrap; }
.fc-cx-gb__duo .is-verde { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-gb__duo .is-verde small { color: var(--fc-marinho, #121923); opacity: .75; }
.fc-cx-gb__linha { position: relative; margin: 14px 24px 26px; padding-left: 24px; }
.fc-cx-gb__linha::before { content: ""; position: absolute; left: 6px; top: 8px; bottom: 8px; width: 2px; background: var(--gb-trilho); }
.fc-cx-gb__linha > div { position: relative; padding: 9px 0; }
.fc-cx-gb__linha > div::before { content: ""; position: absolute; left: -23px; top: 14px; width: 12px; height: 12px; border-radius: 50%; background: currentColor; }
.fc-cx-gb__linha b { display: block; font-size: 15.5px; font-weight: 600; }
.fc-cx-gb__linha small { font-size: 13.5px; color: var(--cx-tx2); }
.fc-cx-gb__linha .is-agora::before { top: 13px; background: var(--fc-menta, #2EFFA0); box-shadow: 0 0 0 4px var(--gb-fundo), 0 0 0 6px var(--fc-menta, #2EFFA0); }
.fc-cx-gb__linha .is-agora span { display: inline-block; padding: 3px 11px; border-radius: 999px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-size: 13px; font-weight: 700; }
.fc-cx-gb__linha .is-depois::before { width: 8px; height: 8px; left: -21px; top: 16px; border: 2px solid var(--cx-tx2); background: var(--gb-fundo); }
.fc-cx-gb__linha .is-depois b { color: var(--cx-tx2); }

/* Paleta Fourclass em teste no Conecta (21/10/2026): só 5 cores. Escuro = fundo #121923 e quadros/botões #202836;
   o que fica "um nível acima" dentro de um quadro não ganha outro azul: é branco transparente por cima do #202836. */
body:not(.fc-claro):has(.fc-cx) { --fc-bg: var(--fc-marinho, #121923); --cx-chao: var(--fc-marinho, #121923); --cx-painel: var(--fc-ardosia, #2A3446); --cx-bloco: var(--fc-ardosia, #2A3446); --cx-bloco-2: rgba(255, 255, 255, .06); --cx-raia: rgba(255, 255, 255, .04); --cx-hover: rgba(255, 255, 255, .06); --cx-linha: rgba(255, 255, 255, .07); --cx-trilho: rgba(255, 255, 255, .12); background-color: var(--fc-marinho, #121923); }
body:not(.fc-claro) .fc-cx-ld { --ld-palco: var(--fc-ardosia, #2A3446); --ld-palco2: rgba(255, 255, 255, .05); --ld-palco3: rgba(255, 255, 255, .09); --ld-onda1: rgba(255, 255, 255, .2); --ld-onda2: rgba(255, 255, 255, .04); --ld-trilho: rgba(255, 255, 255, .14); --ld-sobre: var(--fc-ardosia, #2A3446); }
body:not(.fc-claro) .fc-cx-gaveta { --gb-bloco: rgba(255, 255, 255, .06); --gb-trilho: rgba(255, 255, 255, .16); --gb-fundo: var(--fc-ardosia, #2A3446); background: var(--fc-ardosia, #2A3446); }

/* Caixinha do link (regra única, 21/10/2026): no escuro, o link fica no marinho do fundo, recortado do quadro; sem cor nova. No claro continua branca com contorno. */
body:not(.fc-claro) .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-link .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-eu .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-divulga .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-janela__barra .fc-cx-linkbox { background: var(--fc-marinho, #121923); box-shadow: none; }
body:not(.fc-claro) .fc-cx-linkbox .fc-cx-linkbox__url, body:not(.fc-claro) .fc-cx-linkbox a { color: var(--fc-branco, #FFFFFF); }
body:not(.fc-claro) .fc-cx-linkbox span:not(.fc-cx-linkbox__url) { color: rgba(255, 255, 255, .55); }

/* Celular (21/10/2026): as 6 medalhas cabem na largura; o menu do Conecta vira uma lista que abre ao tocar (mostra só a página atual com uma seta) */
@media (max-width: 760px) {
  .fc-cx-degraus, .fc-cx-eu .fc-cx-degraus { justify-content: center; }
  .fc-cx-degraus span, .fc-cx-eu .fc-cx-degraus span { width: 36px; height: 36px; }
  .fc-cx-degraus span + span, .fc-cx-eu .fc-cx-degraus span + span { margin-left: 8px; }
  .fc-cx-degraus span + span::before { width: 8px; }
}

/* Campos e links nos quadros escuros (regra única, 21/10/2026): o marinho do fundo, recortado do quadro ardósia — nunca uma cor nova */
body:not(.fc-claro) .fc-cx-campo input, body:not(.fc-claro) .fc-cx-campo textarea, body:not(.fc-claro) .fc-cx-campo select, body:not(.fc-claro) .fc-cx-prefixo,
body:not(.fc-claro) .fc-cx-config .fc-cx-campo input, body:not(.fc-claro) .fc-cx-config .fc-cx-campo textarea, body:not(.fc-claro) .fc-cx-config .fc-cx-prefixo { background: var(--fc-marinho, #121923); border-color: transparent; }
body:not(.fc-claro) .fc-cx-prefixo input { background: none; }
body:not(.fc-claro) .fc-cx-fica div { background: var(--fc-marinho, #121923); }

@media (max-width: 760px) {
  /* Meus dados: cada link com o nome em cima e o endereço embaixo */
  .fc-cx-fica div { flex-direction: column; align-items: flex-start; gap: 2px; border-radius: 16px; padding: 12px 16px; }
  .fc-cx-fica b { text-align: left; }
  .fc-cx-fica span:empty { display: none; }

  /* Plano: os 6 níveis numa linha do tempo vertical (rola para baixo, sem cortar para o lado) */
  .fc-cx-como { grid-template-columns: minmax(0, 1fr); }
  .fc-cx-nvtrilha { overflow: visible; padding: 18px 16px; width: auto; min-width: 0; max-width: 100%; box-sizing: border-box; }
  .fc-cx-nvtrilha__linha { grid-template-columns: minmax(0, 1fr); grid-auto-rows: 1fr; min-width: 0; margin-top: 0; }
  .fc-cx-nvtrilha__linha::before, .fc-cx-nvtrilha__linha::after { left: 31px; right: auto; width: 4px; height: auto; top: calc(50% / var(--n, 5)); }
  .fc-cx-nvtrilha__linha::before { bottom: calc(50% / var(--n, 5)); }
  .fc-cx-nvtrilha__linha::after { bottom: auto; height: calc((100% - 100% / var(--n, 5)) * var(--feito)); }
  .fc-cx-aqui { display: none; }
  .fc-cx-parada { display: grid; grid-template-columns: 66px minmax(0, 1fr) auto; grid-template-areas: "pino nome com" "pino meta coml" "pino premio premio"; align-items: center; column-gap: 14px; row-gap: 2px; text-align: left; padding: 12px 0; }
  .fc-cx-parada__pino { grid-area: pino; width: 66px; height: 66px; }
  .fc-cx-parada__pino svg { width: 100%; height: 100%; }
  .fc-cx-parada h3 { grid-area: nome; margin: 0; font-size: 19px; }
  .fc-cx-parada__meta { grid-area: meta; font-size: 13.5px; }
  .fc-cx-parada__com { grid-area: com; margin: 0; font-size: 30px; text-align: right; }
  .fc-cx-parada__com sup { font-size: 14px; vertical-align: 14px; }
  .fc-cx-parada__coml { grid-area: coml; margin: 0; font-size: 12.5px; text-align: right; }
  .fc-cx-parada__premio { grid-area: premio; justify-self: start; margin-top: 6px; }
  .fc-cx-parada.is-atual .fc-cx-parada__meta::after { content: " · você está aqui"; color: var(--fc-menta, #2EFFA0); font-weight: 600; }
}
@media (max-width: 760px) {
  .fc-cx-main { padding-top: 12px; }
}
/* Celular, ajustes (21/10/2026): o painel do menu começa abaixo da barra do topo e termina acima da barra de abas;
   Plano com a medalha grande no centro, nome e pontos à esquerda, comissão à direita */
@media (max-width: 760px) {
  .fc-cx-nvtrilha__linha::before, .fc-cx-nvtrilha__linha::after { left: calc(50% - 2px); }
  .fc-cx-parada { grid-template-columns: minmax(0, 1fr) 104px minmax(0, 1fr); grid-template-areas: "nome pino com" "meta pino coml" "premio premio premio"; column-gap: 12px; padding: 22px 0; }
  .fc-cx-parada__pino { width: 104px; height: 104px; justify-self: center; }
  .fc-cx-parada h3 { font-size: 22px; align-self: end; }
  .fc-cx-parada__meta { font-size: 15px; align-self: start; }
  .fc-cx-parada__com { font-size: 40px; align-self: end; }
  .fc-cx-parada__com sup { font-size: 18px; vertical-align: 18px; }
  .fc-cx-parada__coml { font-size: 14px; align-self: start; }
  .fc-cx-parada__premio { justify-self: center; }
  .fc-cx-parada.is-atual .fc-cx-parada__meta::after { content: "você está aqui"; display: block; margin-top: 4px; }
}
@media (max-width: 760px) {
  .fc-cx-parada { grid-template-columns: minmax(0, 1fr) 92px minmax(0, 1fr); column-gap: 10px; }
  .fc-cx-parada__pino { width: 92px; height: 92px; }
  .fc-cx-parada h3 { font-size: 21px; }
  .fc-cx-parada__meta { white-space: nowrap; }
}

/* Janela da ficha: fundo bem escuro e desfocado, para a janela ganhar destaque (21/10/2026) */
.fc-cx-veu { background: rgba(18, 25, 35, .72); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
/* Minha rede no celular: segurar uma bolinha arrasta só ela (não rola a página) e o dedo tem uma área maior para pegar */
.fc-cx-b { touch-action: none; }
@media (pointer: coarse) { .fc-cx-b::before { content: ""; position: absolute; inset: -14px; border-radius: 50%; } }

/* Leads no celular (21/10/2026): funil vertical — cada etapa é uma barra que afina; nome no centro, quantidade à esquerda, % à direita;
   tocar na etapa acende em verde e a lista de baixo mostra as pessoas dela. Sem os números do topo e sem o "Agora no seu funil". */
@media (max-width: 760px) {
  .fc-cx-ld-pulso, .fc-cx-ld-agora { display: none; }
  .fc-cx-ld { display: block; height: auto; min-height: 0; }
  .fc-cx-ld-funil { display: flex; flex-direction: column; align-items: center; gap: 6px; overflow: visible; background: none; border-radius: 0; margin-bottom: 18px; }
  .fc-cx-ld-etapa, .fc-cx-ld-etapa:first-child, .fc-cx-ld-etapa:last-child { width: 100%; border: 0; border-radius: 14px; background: var(--ld-palco); }
  .fc-cx-ld-etapa:nth-child(2) { width: 90%; } .fc-cx-ld-etapa:nth-child(3) { width: 80%; } .fc-cx-ld-etapa:nth-child(4) { width: 70%; } .fc-cx-ld-etapa:nth-child(5) { width: 60%; }
  .fc-cx-ld-etapa:hover { transform: none; box-shadow: none; border-radius: 14px; background: var(--ld-palco); }
  .fc-cx-ld-onda { display: none; }
  .fc-cx-ld-etapa__topo { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: 8px; padding: 12px 16px; }
  .fc-cx-ld-etapa__meio { display: contents; }
  .fc-cx-ld-etapa__topo > span:first-child { grid-column: 2; grid-row: 1; text-align: center; font-size: 15px; color: var(--fc-text); white-space: nowrap; }
  .fc-cx-ld-etapa__meio b { grid-column: 1; grid-row: 1; justify-self: start; font-size: 22px; line-height: 1; }
  .fc-cx-ld-etapa__meio em { grid-column: 3; grid-row: 1; justify-self: end; }
  .fc-cx-ld-etapa.is-on, .fc-cx-ld-etapa.is-on:hover { background: var(--fc-menta, #2EFFA0); }
  .fc-cx-ld-etapa.is-on .fc-cx-ld-etapa__topo > span:first-child, .fc-cx-ld-etapa.is-on b { color: var(--fc-marinho, #121923); }
  .fc-cx-ld-etapa.is-on em { background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); }
  .fc-cx-ld-cartoes { grid-template-columns: minmax(0, 1fr); overflow: visible; }
}

/* Conecta no celular sem menu (21/10/2026): na Visão geral, as 6 áreas em cartões (estilo app de banco) logo abaixo do cartão com a foto;
   dentro de cada área, "‹ Conecta" no topo para voltar. No computador nada muda (menu lateral). */
.fc-cx-atalhos, .fc-cx-voltar { display: none; }
@media (max-width: 760px) {
  .fc-cx, .fc-cx.is-recolhido { display: flex; flex-direction: column; }
  .fc-cx-menu { position: static; height: auto; padding: 12px 16px 0; }
  .fc-cx-menu > button { display: none; }
  .fc-cx-menu:not(:has(.fc-cx-treino)) { display: none; }
  .fc-cx-atalhos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
  .fc-cx-atalhos > :is(button, a) { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 96px; padding: 12px 6px; border: 0; border-radius: 18px; background: var(--cx-bloco); color: var(--fc-text); font: 600 13.5px var(--fc-font-text); text-align: center; cursor: pointer; }
  .fc-cx-atalhos > :is(button, a) span { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--fc-marinho, #121923); }
  .fc-cx-atalhos .fc-icon { width: 22px; height: 22px; color: var(--fc-menta, #2EFFA0); }
  body.fc-claro .fc-cx-atalhos > :is(button, a) { background: var(--fc-branco, #FFFFFF); }
  body.fc-claro .fc-cx-atalhos > :is(button, a) span { background: var(--fc-nevoa, #EAEFEE); }
  body.fc-claro .fc-cx-atalhos .fc-icon { color: var(--fc-marinho, #121923); }
  .fc-cx-voltar { display: inline-flex; align-items: center; gap: 4px; margin: 0 0 12px; padding: 8px 14px 8px 8px; border: 0; border-radius: 999px; background: var(--cx-bloco); color: var(--fc-text); font: 600 15px var(--fc-font-text); cursor: pointer; }
  .fc-cx-voltar .fc-icon { width: 20px; height: 20px; }
  .fc-cx-main:has(> [data-cx-vista="geral"]:not([hidden])) > .fc-cx-voltar { display: none; }
}
/* Atalhos do Conecta no celular, ajuste: no topo (antes do cartão da foto), 2 por fileira, ícone solto (sem bola) e o nome, como cartão de app de banco */
@media (max-width: 760px) {
  .fc-cx-atalhos { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .fc-cx-atalhos > :is(button, a) { align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 92px; padding: 16px; font-size: 16px; text-align: left; }
  .fc-cx-atalhos > :is(button, a) span, body.fc-claro .fc-cx-atalhos > :is(button, a) span { width: auto; height: auto; background: none; border-radius: 0; }
  .fc-cx-atalhos .fc-icon { width: 28px; height: 28px; }
}
/* Atalhos, ajuste 2: Autopilot grande (linha inteira), depois 2 (Leads, Minha rede) e 3 menores (Meus dados, Plano, Regras) */
@media (max-width: 760px) {
  .fc-cx-atalhos { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .fc-cx-atalhos > :is(button, a) { grid-column: span 2; min-height: 88px; padding: 14px 12px; font-size: 14.5px; }
  .fc-cx-atalhos > :is(button, a):nth-child(2), .fc-cx-atalhos > :is(button, a):nth-child(3) { grid-column: span 3; font-size: 16px; padding: 16px; }
  .fc-cx-atalhos > :is(button, a):first-child { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: flex-start; gap: 14px; min-height: 84px; padding: 18px 20px; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font-size: 19px; }
  .fc-cx-atalhos > :is(button, a):first-child .fc-icon { width: 32px; height: 32px; color: var(--fc-marinho, #121923); }
}

/* Conecta no celular, mais leve (21/10/2026): sem a caixa grande em volta de você — Conecta, foto, nível e velocímetro direto no fundo;
   só a base ganha um cartão: as medalhas (maiores, na largura do link), a comissão e o link. Atalhos com contorno, conteúdo no centro. */
.fc-cx-eu__base { display: contents; }
@media (max-width: 760px) {
  .fc-cx-eu, body:not(.fc-claro) .fc-cx-eu { background: none; box-shadow: none; padding-left: 0; padding-right: 0; }
  .fc-cx-eu__base { display: flex; flex-direction: column; align-items: stretch; gap: 14px; width: 100%; margin-top: 8px; padding: 18px 16px; border-radius: 22px; background: var(--cx-bloco); box-sizing: border-box; }
  body.fc-claro .fc-cx-eu__base { background: var(--fc-branco, #FFFFFF); }
  .fc-cx-eu .fc-cx-eu__base .fc-cx-degraus, .fc-claro .fc-cx-eu .fc-cx-eu__base .fc-cx-degraus { justify-content: space-between; margin: 0; padding-top: 0; border-top: 0; }
  .fc-cx-eu__base .fc-cx-degraus span, .fc-cx-eu .fc-cx-eu__base .fc-cx-degraus span { width: 44px; height: 44px; margin-left: 0; }
  .fc-cx-eu__base .fc-cx-degraus span + span { margin-left: 0; }
  .fc-cx-eu__base .fc-cx-degraus span + span::before { display: none; }
  .fc-cx-eu__base .fc-cx-eu__prox { margin: 0; text-align: center; }
  .fc-cx-eu__base .fc-cx-linkbox { width: 100%; margin: 0; }
  .fc-cx-atalhos > :is(button, a) { align-items: center; justify-content: center; text-align: center; background: none; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14); }
  body.fc-claro .fc-cx-atalhos > :is(button, a) { background: none; box-shadow: inset 0 0 0 1px rgba(18, 25, 35, .14); }
  .fc-cx-atalhos > :is(button, a):first-child { justify-content: center; box-shadow: none; }
}
/* Conecta no celular: "Conecta" vira o título da área no topo (à esquerda, com uma frase), sai de cima da foto; uma linha separa os atalhos do seu cartão */
.fc-cx-titcel { display: none; }
@media (max-width: 760px) {
  .fc-cx-titcel { display: block; padding: 0 2px; }
  .fc-cx-titcel h2 { margin: 0; font: 600 26px/1.15 var(--fc-font-title); letter-spacing: -.02em; }
  .fc-cx-titcel p { margin: 4px 0 0; color: var(--cx-tx2); font-size: 14.5px; }
  .fc-cx-eu .fc-cx-eu__marca { display: none; }
  .fc-cx-atalhos { padding-bottom: 22px; border-bottom: 1px solid rgba(255, 255, 255, .1); }
  body.fc-claro .fc-cx-atalhos { border-bottom-color: rgba(18, 25, 35, .1); }
  .fc-cx-eu { padding-top: 6px; }
}
/* Conecta no celular, espaçamento medido (21/10/2026): 16 px entre todos os blocos; 28 px dos atalhos até a linha e 32 px da linha até a foto */
@media (max-width: 760px) {
  .fc-cx-bento { row-gap: 16px; }
  .fc-cx-meio, .fc-cx-lado { gap: 16px; row-gap: 16px; }
  .fc-cx-atalhos { padding-bottom: 28px; }
  .fc-cx-eu, body:not(.fc-claro) .fc-cx-eu { padding-top: 16px; padding-bottom: 0; }
}

/* Conecta no celular, limpeza (21/10/2026): só o título em cada área (sem subtítulo); Leads sem busca no celular, com os períodos
   na mesma linha do título e o funil largo e grande; Plano com a pontuação numa pílula antes das medalhas */
.fc-cx-nvtrilha__pts { display: none; }
@media (max-width: 760px) {
  .fc-cx-sub, .fc-cx-como__cima p { display: none; }
  [data-cx-vista="leads"] .fc-cx-tit { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
  [data-cx-vista="leads"] .fc-cx-tit__acoes { margin: 0; }
  [data-cx-vista="leads"] .fc-cx-busca { display: none; }
  .fc-cx-ld-periodo button { padding: 6px 10px; }
  .fc-cx-ld-funil { gap: 8px; margin: 0 0 22px; }
  .fc-cx-ld-etapa__topo { min-height: max(72px, calc((100dvh - 290px) / 5)); padding: 0 14px; box-sizing: border-box; }
  .fc-cx-ld-etapa__topo > span:first-child { font-size: 17px; font-weight: 600; }
  .fc-cx-ld-etapa__meio b { font-size: 28px; }
  .fc-cx-ld-etapa:nth-child(2) { width: 90%; } .fc-cx-ld-etapa:nth-child(3) { width: 80%; } .fc-cx-ld-etapa:nth-child(4) { width: 70%; } .fc-cx-ld-etapa:nth-child(5) { width: 60%; }
  .fc-cx-nvtrilha__pts { display: flex; }
  .fc-cx-pl__tit { display: flex; justify-content: space-between; gap: 10px; width: 100%; height: auto; min-height: 56px; padding: 6px; box-sizing: border-box; font-size: 18px; line-height: 1.15; text-align: center; white-space: normal; }
  .fc-cx-pl__tit > span { flex: none; }
  .fc-cx-pl__tit > span { width: 44px; height: 44px; }
  .fc-cx-pl__tit svg { width: 22px; height: 22px; }
  .fc-cx-pl__tit::after { content: ""; width: 44px; flex: none; }
}

/* Conecta, visão geral também no computador como no celular (21/10/2026): sem a caixa grande em volta de você — "Conecta" no topo (centralizado)
   e foto, nível e velocímetro ficam direto no fundo; só a base (medalhas, comissão, link) é cartão. "Esperando você" sem
   cartão: só o título e a lista (agora "O que aconteceu com os seus leads"). O PIN na foto maior, porque é o reconhecimento da pessoa. */
.fc-cx-eu, body:not(.fc-claro) .fc-cx-eu { background: none; box-shadow: none; padding-left: 0; padding-right: 0; }
@media (min-width: 761px) { .fc-cx-menu { border-right: 1px solid rgba(255, 255, 255, .1); } body.fc-claro .fc-cx-menu { border-right-color: rgba(18, 25, 35, .1); } }
.fc-cx-eu__base { display: flex; flex-direction: column; align-items: stretch; gap: 14px; width: 100%; margin-top: auto; padding: 18px 16px; border-radius: 22px; background: var(--cx-bloco); box-sizing: border-box; }
body.fc-claro .fc-cx-eu__base { background: var(--fc-branco, #FFFFFF); }
.fc-cx-eu .fc-cx-eu__base .fc-cx-degraus, .fc-claro .fc-cx-eu .fc-cx-eu__base .fc-cx-degraus { justify-content: space-between; margin: 0; padding-top: 0; border-top: 0; }
.fc-cx-eu__base .fc-cx-degraus span + span { margin-left: 0; }
.fc-cx-eu__base .fc-cx-degraus span + span::before { display: none; }
.fc-cx-eu__base .fc-cx-eu__prox { margin: 0; text-align: center; }
.fc-cx-eu__base .fc-cx-linkbox { width: 100%; margin: 0; }
/* o PIN embaixo à direita da foto, por fora do círculo, com a base da medalha alinhada à base do anel verde da foto (o anel sai 7 px; a medalha tem ~4 px de folga) */
.fc-cx-eu .fc-cx-pin { right: -36px; bottom: -11px; width: 64px; height: 64px; }
.fc-cx-eu .fc-cx-pin .fc-medalha, .fc-cx-eu .fc-cx-pin svg { width: 100%; height: 100%; }
@media (max-width: 760px) { .fc-cx-eu .fc-cx-pin { right: -44px; bottom: -11px; width: 76px; height: 76px; } .fc-cx-eu__base { margin-top: 8px; } }
/* Conecta no computador, margens iguais (21/10/2026): o conteúdo fica onde estava; a linha do menu vai para o meio do espaço
   entre o botão do menu e o conteúdo (38 px de cada lado) */
@media (min-width: 761px) {
  .fc-cx:not(.is-recolhido) { grid-template-columns: 260px minmax(0, 1fr); }
  .fc-cx:not(.is-recolhido) .fc-cx-menu { padding-right: 38px; }
  .fc-cx-main { padding-left: 38px; padding-right: 62px; }
  .fc-cx-main > section { max-width: none; margin-inline: 0; }
}

/* Conecta, visão geral: "O que aconteceu com os seus leads" no lugar do "Esperando você" (21/10/2026) — só para acompanhar, quem fecha
   é a equipe. Sem cartão: uma linha por lead, separadas por linhas finas; ícone cinza com onde a pessoa está, verde só quando assinou. */
.fc-cx-mov { display: flex; flex-direction: column; overflow: hidden; }
.fc-cx-mov, body:not(.fc-claro) .fc-cx-mov, body.fc-claro .fc-cx-mov { background: none; box-shadow: none; }
.fc-cx-mov .fc-cx-cab { padding: 16px 0 6px; }
.fc-cx-mov__lista { flex: 1; min-height: 0; overflow: auto; }
.fc-cx-mov__item { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 14px; width: 100%; padding: 13px 4px; border: 0; border-top: 1px solid rgba(255, 255, 255, .1); border-radius: 0; background: none; color: var(--fc-text); font: inherit; font-size: 15px; text-align: left; cursor: pointer; }
body.fc-claro .fc-cx-mov__item { border-top-color: rgba(18, 25, 35, .1); }
.fc-cx-mov__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--fc-ardosia, #2A3446); color: var(--fc-text); }
body.fc-claro .fc-cx-mov__ic { background: var(--fc-nevoa, #EAEFEE); }
.fc-cx-mov__ic .fc-icon { width: 19px; height: 19px; }
.fc-cx-mov__ic.is-ok, body.fc-claro .fc-cx-mov__ic.is-ok { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-mov__tx { min-width: 0; line-height: 1.35; }
.fc-cx-mov__tx b { font-weight: 600; }
.fc-cx-mov__tx small { display: block; margin-top: 2px; overflow: hidden; color: var(--cx-tx2); font-size: 13px; white-space: nowrap; text-overflow: ellipsis; }
.fc-cx-mov__item time { color: var(--cx-tx2); font-size: 13px; white-space: nowrap; }
.fc-cx-mov__item time.is-ok { color: var(--fc-menta, #2EFFA0); }
body.fc-claro .fc-cx-mov__item time.is-ok { color: var(--fc-marinho, #121923); font-weight: 600; }
.fc-cx-mov .fc-cx-lista-vazia { border-top: 1px solid rgba(255, 255, 255, .1); }

/* Conta de treinamento: os PINs viram botões (mostram o mês de quem está em cada nível) */
.fc-cx-degraus__form { display: contents; }
.fc-cx-degraus__pin { display: grid; place-items: center; width: 100%; height: 100%; padding: 0; border: 0; background: none; cursor: pointer; border-radius: 50%; }
.fc-cx-degraus__pin:hover { transform: scale(1.08); }
.fc-cx-degraus__pin:focus-visible { outline: 2px solid var(--fc-foco); outline-offset: 2px; }
.fc-cx-degraus span:has(.fc-cx-degraus__pin):not(.is-feito):not(.is-atual) { opacity: .55; }
/* Tela única de ativação (22/10): afiliar, colar o link e aceitar as regras no mesmo lugar */
.fc-cx-boas__form--unica { flex-direction: column; align-items: stretch; margin-top: 14px; }
.fc-cx-boas__form--unica .fc-cx-boas__bt { align-self: flex-start; }
.fc-cx-boas__form--unica input[type="checkbox"] { flex: none; width: 18px; height: 18px; padding: 0; accent-color: var(--fc-menta, #2EFFA0); }
.fc-cx-boas__aceite { display: flex; align-items: center; gap: 10px; font-size: 15px; color: var(--fc-text); }
.fc-cx-boas__aceite a { color: inherit; text-decoration: underline; }
.fc-cx-boas__bt.is-leve { background: transparent; color: var(--fc-text); box-shadow: inset 0 0 0 1px var(--fc-border-strong); }
.fc-cx-boas__form--unica input[type="text"] { flex: none; height: 56px; }
/* Ativar o Conecta no escuro (22/10): sem o quadro de fundo; campo do link branco; botões e etiquetas escuros */
body:not(.fc-claro) .fc-cx-boas { background: transparent; box-shadow: none; border: 0; }
body:not(.fc-claro) .fc-cx-boas .fc-cx-boas__bt, body:not(.fc-claro) .fc-cx-boas .fc-cx-boas__bt.is-leve { background: #2A3446; color: #FFFFFF; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14); }
body:not(.fc-claro) .fc-cx-boas .fc-cx-boas__bt:hover { color: #FFFFFF; }
body:not(.fc-claro) .fc-cx-boas__form input[type="text"] { background: #FFFFFF; color: #121923; border-color: #FFFFFF; }
body:not(.fc-claro) .fc-cx-boas__form input[type="text"]::placeholder { color: #5E6369; }
body:not(.fc-claro) .fc-cx-boas__passos span.is-ok { background: #2A3446; color: #FFFFFF; }
body:not(.fc-claro) .fc-cx-boas__passos span.is-agora { background: #2A3446; border-color: #2A3446; color: #FFFFFF; }

/* O botão verde com a bolinha e o campo do link com o Ativar dentro (trilha do Conecta e páginas da live) */
.fc-cx-at__bt { display: inline-flex; align-items: center; gap: 14px; height: 48px; padding: 0 6px 0 22px; border-radius: 999px; background: #2EFFA0; color: #121923; font: 600 15px var(--fc-font-text, 'Inter', sans-serif); text-decoration: none; }
.fc-cx-at__bt span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: #121923; color: #2EFFA0; }
.fc-cx-at__bt svg { width: 16px; height: 16px; }
.fc-cx-at__linha { display: flex; align-items: center; gap: 6px; width: 100%; max-width: 560px; height: 48px; padding: 0 4px 0 0; border-radius: 999px; background: #FFFFFF; }
.fc-cx-at__linha input { flex: 1; min-width: 0; height: 100%; padding: 0 20px; border: 0; border-radius: 999px; background: transparent; color: #121923; font: inherit; font-size: 15px; }
.fc-cx-at__linha input::placeholder { color: #5E6369; }
.fc-cx-at__linha input:focus { outline: none; }
.fc-cx-at__linha:focus-within { box-shadow: 0 0 0 2px var(--fc-foco); }
.fc-cx-at__ativar { flex: none; height: 40px; padding: 0 26px; border: 0; border-radius: 999px; background: #2EFFA0; color: #121923; font: 600 15px var(--fc-font-text, 'Inter', sans-serif); cursor: pointer; }
body.fc-claro .fc-cx-at__bt { background: #2EFFA0; color: #121923; } /* verde da marca nos dois temas */
body.fc-claro .fc-cx-at__linha { box-shadow: inset 0 0 0 1.5px rgba(18, 25, 35, .2); }

/* Afiliado grátis (24/10/2026): o símbolo da Fourclass no lugar do pin, a comissão fixa e o convite para assinar */
.fc-cx-assine, body:not(.fc-claro) .fc-cx-assine { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 22px; padding: 32px 36px; background: var(--fc-escuro, #202836); color: var(--fc-branco, #FFFFFF); }
.fc-cx-assine h2 { margin: 0; max-width: 16em; font: 600 30px/1.2 var(--fc-font-title, 'Sora', sans-serif); letter-spacing: -.02em; text-wrap: balance; }
.fc-cx-assine ul { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; font-size: 17px; }
.fc-cx-assine li { display: flex; align-items: center; gap: 10px; }
.fc-cx-assine li .fc-icon { width: 22px; height: 22px; padding: 4px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); box-sizing: border-box; }
.fc-cx-como__cima .fc-cx-convite { margin-left: 0; height: 40px; padding: 0 6px 0 18px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); text-decoration: none; }
body:not(.fc-claro) .fc-cx-como__cima .fc-cx-convite { background: var(--fc-branco, #FFFFFF); color: var(--fc-marinho, #121923); }

/* Aceite das regras na aba Regras */
.fc-cx-div__form { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.fc-cx-div__aceite { display: flex; align-items: center; gap: 10px; font-size: 15px; cursor: pointer; }
.fc-cx-div__aceite input { width: 18px; height: 18px; accent-color: var(--fc-menta, #2EFFA0); }

/* Visão geral do afiliado grátis (protótipo aprovado 24/10): à esquerda você e o convite para assinar; no meio a comissão e os números;
   à direita o seu link. Os cartões ficam do tamanho do conteúdo. */
.fc-cx-bento.is-livre { align-items: start; }
.fc-cx-eu.is-livre { justify-content: flex-start; gap: 0; padding-top: 12px; }
.fc-cx-eu.is-livre .fc-cx-eu__nivel { margin-top: 10px; }
.fc-cx-eu .fc-cx-assine, body:not(.fc-claro) .fc-cx-eu .fc-cx-assine { align-items: flex-start; gap: 12px; width: 100%; margin: auto 0 0; padding: 0; border-radius: 0; background: none; color: var(--fc-text); text-align: left; box-sizing: border-box; }
.fc-cx-eu .fc-cx-assine h2 { font-size: 21px; }
.fc-cx-eu .fc-cx-assine ul { gap: 8px; font-size: 14.5px; }
.fc-cx-eu .fc-cx-assine li .fc-icon { width: 18px; height: 18px; padding: 3px; }
.fc-cx-num { display: flex; flex-direction: column; gap: 14px; padding: 22px 24px; }
.fc-cx-num__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.fc-cx-num__grade div { display: flex; flex-direction: column; gap: 2px; padding: 16px; border-radius: 16px; background: var(--cx-chao); }
.fc-cx-num__grade b { font: 700 30px/1.1 var(--fc-font-text, 'Inter', sans-serif); letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.fc-cx-num__grade span { color: var(--cx-tx2); font-size: 13px; }
.fc-cx-num__nota { margin: 0; color: var(--cx-tx2); font-size: 13.5px; }
.fc-cx-bento.is-livre .fc-cx-lado { grid-template-rows: none; align-content: start; }
.fc-cx-menu__cad { margin-left: auto; display: grid; place-items: center; opacity: .6; }
.fc-cx-menu__cad .fc-icon { width: 14px; height: 14px; }
.fc-cx.is-recolhido .fc-cx-menu__cad { display: none; }
.fc-cx-num .fc-cx-cab { padding: 0; }
/* grátis: o link logo abaixo do "Afiliado · 20%" e o convite para assinar maior, um tópico por linha */
.fc-cx-eu.is-livre .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-eu.is-livre .fc-cx-linkbox { width: 100%; height: 50px; margin-top: 18px; padding: 0 4px 0 18px; border-radius: 999px; background: var(--fc-branco, #FFFFFF); box-shadow: 0 0 0 1px rgba(18, 25, 35, .12); box-sizing: border-box; }
.fc-cx-eu.is-livre .fc-cx-linkbox__url, body:not(.fc-claro) .fc-cx-eu.is-livre .fc-cx-linkbox__url { color: var(--fc-marinho, #121923); }
.fc-cx-eu .fc-cx-assine h2 { font-size: 24px; }
.fc-cx-eu .fc-cx-assine ul { gap: 12px; font-size: 16px; }
.fc-cx-eu .fc-cx-assine li .fc-icon { width: 22px; height: 22px; padding: 4px; }

/* Visão geral igual para aluno e grátis (protótipo aprovado 25/10): 3 colunas; à direita a live e o Encontro deitados (16:9) e os links.
   No grátis, só as caixas do aluno: a dos pins com o link, a comissão e os links; o resto fica direto no fundo. */
@media (min-width: 1281px) { .fc-cx-bento { grid-template-columns: 390px minmax(0, 1fr) 460px; } }
.fc-cx-bento .fc-cx-lado { grid-template-rows: auto auto minmax(0, 1fr); align-content: stretch; }
.fc-cx-bento .fc-cx-lado .fc-cx-live { aspect-ratio: 16 / 9; min-height: 0; }
.fc-cx-bento .fc-cx-live h3 { font-size: 26px; }
.fc-cx-live__cad { position: absolute; top: 14px; right: 14px; display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; border-radius: 999px; background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); font-size: 12.5px; font-weight: 600; }
.fc-cx-live__cad .fc-icon { width: 13px; height: 13px; }
.fc-cx-live .fc-cx-convite { text-decoration: none; }
.fc-cx-eu .fc-cx-assine h2 { font-size: 18px; white-space: nowrap; }
.fc-cx-eu .fc-cx-assine ul { gap: 9px; font-size: 15px; }
.fc-cx-eu .fc-cx-assine li .fc-icon { width: 20px; height: 20px; padding: 4px; }
.fc-cx-foto { flex: none; }
.fc-cx-degraus.is-off span { filter: grayscale(1) brightness(.55); }
.fc-cx-eu__prox { display: flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; }
.fc-cx-eu__prox .fc-icon { width: 14px; height: 14px; }
.fc-cx-meio.is-livre { grid-template-rows: auto auto minmax(0, 1fr); }
.fc-cx-num, body:not(.fc-claro) .fc-cx-num { padding: 4px 0 0; background: none; border-radius: 0; box-shadow: none; }
.fc-cx-num__grade div { padding: 0 0 0 18px; border-radius: 0; background: none; border-left: 1px solid var(--cx-linha); }
.fc-cx-num__grade div:first-child { padding-left: 0; border-left: 0; }
.fc-cx-vendas { display: flex; flex-direction: column; gap: 10px; min-height: 0; padding-top: 4px; }
.fc-cx-vendas .fc-cx-cab { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; padding: 0; }
.fc-cx-vendas .fc-cx-cab small { color: var(--cx-tx2); font-size: 13px; }
.fc-cx-vendas__item { display: grid; grid-template-columns: 36px 1fr auto; gap: 14px; align-items: center; padding: 12px 0; border-top: 1px solid var(--cx-linha); }
.fc-cx-vendas__item:last-of-type { border-bottom: 1px solid var(--cx-linha); }
.fc-cx-vendas__ic { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
.fc-cx-vendas__ic .fc-icon { width: 16px; height: 16px; }
.fc-cx-vendas__item small { display: block; color: var(--cx-tx2); font-size: 13px; }
.fc-cx-vendas__item strong { color: var(--fc-menta, #2EFFA0); font-variant-numeric: tabular-nums; }
.fc-cx-vendas__item strong.is-off { color: var(--cx-tx2); text-decoration: line-through; }
.fc-cx-vendas__vazio { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; padding: 16px 0; text-align: center; }
.fc-cx-vendas__vazio span { max-width: 44ch; color: var(--cx-tx2); font-size: 14px; }
.fc-cx-vendas__vazio .fc-cx-at__bt { margin-top: 6px; }
.fc-cx-at__bt.is-escuro { background: var(--fc-marinho, #121923); color: var(--fc-branco, #FFFFFF); border: 0; cursor: pointer; }
.fc-cx-at__bt.is-escuro span { background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); }
@media (max-width: 1280px) { .fc-cx-eu .fc-cx-assine h2, .fc-cx-eu__prox { white-space: normal; } }

/* Ativar o Conecta (desenho do Figma "Primeiro Cadastro", 22/10): texto à esquerda, ilustração à direita, um passo de cada vez */
.fc-cx-at { flex: 1; display: grid; grid-template-columns: minmax(0, 780px) minmax(220px, 460px); justify-content: center; align-content: center; align-items: center; gap: clamp(16px, 2vw, 32px); padding: 24px 0; color: var(--fc-text); } /* sem quadro: direto no fundo, texto e boneco juntos no meio da tela (Figma) */
.fc-cx-at__txt { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; min-width: 0; }
.fc-cx-at__selo { display: inline-flex; align-items: center; height: 36px; padding: 0 16px; border-radius: 999px; border: 1.5px solid #2EFFA0; color: #2EFFA0; font: 700 16px var(--fc-font-title, 'Sora', sans-serif); }
.fc-cx-at h1 { margin: 0; font: 700 clamp(38px, 4vw, 76px)/1.04 var(--fc-font-title, 'Sora', sans-serif); letter-spacing: -.035em; text-wrap: balance; }
.fc-cx-at em { font-style: normal; color: #2EFFA0; }
.fc-cx-at__frase { margin: 0; font-size: clamp(16px, 1.05vw, 20px); line-height: 1.45; }
.fc-cx-at__frase em { font-weight: 700; }
/* os 2 passos (25/10, no lugar da trilha de 6): 1 aceitar as regras, 2 ativar; feito vira ✓ */
.fc-cx-at__trilha { display: flex; align-items: center; gap: 14px; width: 100%; margin: 10px 0 0; padding: 24px 0 0; border-top: 1px solid rgba(255, 255, 255, .12); list-style: none; font-size: 16px; font-weight: 600; } /* linha separa o título do passo a passo */
.fc-cx-at__trilha li { display: flex; align-items: center; gap: 14px; color: var(--fc-text); }
.fc-cx-at__trilha li + li::before { content: ""; width: 48px; border-top: 2px dashed rgba(255, 255, 255, .3); }
.fc-cx-at__trilha :is(a, button) { display: flex; align-items: center; gap: 10px; padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: none; cursor: pointer; }
.fc-cx-at__trilha :is(a, button):hover { text-decoration: underline; }
.fc-cx-at__trilha b { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; border: 1.5px dashed currentColor; font-size: 15px; } /* a fazer: círculo pontilhado com o número */
.fc-cx-at__trilha b svg { display: none; width: 18px; height: 18px; }
.fc-cx-at:not([data-cx-at="0"]) .fc-cx-at__p0 b { border: 0; background: #2EFFA0; color: #121923; } /* feito: verde cheio com o ✓ escuro */
.fc-cx-at:not([data-cx-at="0"]) .fc-cx-at__p0 b span { display: none; }
.fc-cx-at:not([data-cx-at="0"]) .fc-cx-at__p0 b svg { display: block; }
body.fc-claro .fc-cx-at__trilha { border-top-color: rgba(18, 25, 35, .12); }
body.fc-claro .fc-cx-at__trilha li + li::before { border-top-color: rgba(18, 25, 35, .25); }
.fc-cx-at__passo0, .fc-cx-at__passo1, .fc-cx-at__passo2 { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin: 2px 0 0; width: 100%; }
.fc-cx-at:not([data-cx-at="0"]) .fc-cx-at__passo0, .fc-cx-at:not([data-cx-at="1"]) .fc-cx-at__passo1, .fc-cx-at:not([data-cx-at="2"]) .fc-cx-at__passo2 { display: none; }
/* o campo do link com o Ativar dentro (como o botão da Hotmart com a bolinha dentro) */
.fc-cx-at__plano { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
.fc-cx-at__plano b { font: 700 18px var(--fc-font-title, 'Sora', sans-serif); }
.fc-cx-at__plano div { display: flex; gap: 4px; }
.fc-cx-at__plano i { display: block; width: 44px; height: 44px; }
.fc-cx-at__plano svg { width: 100%; height: 100%; }
.fc-cx-at__arte { color: #FFFFFF; }
.fc-cx-at__arte svg { display: block; width: 100%; height: auto; }
body.fc-claro .fc-cx-at em { color: inherit; background: linear-gradient(transparent 62%, #2EFFA0 62%); }
body.fc-claro .fc-cx-at__selo { border-color: #121923; color: #121923; }
body.fc-claro .fc-cx-at__arte { color: #121923; }
@media (max-width: 900px) { .fc-cx-at { grid-template-columns: 1fr; } .fc-cx-at__arte { max-width: 280px; } }

/* Tela de ativação: "Veja como fazer" ao lado da ação e o vídeo numa janela no meio */
.fc-cx-at__passo1 { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 18px; }
.fc-cx-at__ajuda { display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0; border: 0; background: none; color: var(--fc-text); font: 600 15px var(--fc-font-text, 'Inter', sans-serif); cursor: pointer; }
/* o play em Framboesa, com o triângulo branco, pulsando como o "ao vivo" (chama para o vídeo) */
.fc-cx-at__play { display: grid; place-items: center; width: 30px; height: 30px; flex: none; border-radius: 50%; background: var(--fc-framboesa, #F04A68); animation: fc-cx-pulsa 1.8s infinite; }
.fc-cx-at__play .fc-icon { width: 13px; height: 13px; margin-left: 2px; color: #FFFFFF; }
@media (prefers-reduced-motion: reduce) { .fc-cx-at__play { animation: none; } }
.fc-cx-at__ajuda small { margin-left: 4px; color: var(--fc-text-2); font-size: 13px; font-weight: 500; }
.fc-cx-at__ajuda:hover span { text-decoration: underline; }
.fc-cx-at__passo2 .fc-cx-at__ajuda { height: auto; margin-top: 4px; }
.fc-cx-vd { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; padding: 24px; background: rgba(18, 25, 35, .86); }
.fc-cx-vd[hidden] { display: none; }
.fc-cx-vd__caixa { width: min(960px, 100%); display: flex; flex-direction: column; gap: 14px; }
.fc-cx-vd__cab { display: flex; align-items: center; justify-content: space-between; gap: 16px; color: #FFFFFF; }
.fc-cx-vd__cab h2 { margin: 0; font: 700 20px var(--fc-font-title, 'Sora', sans-serif); }
.fc-cx-vd__fechar { display: grid; place-items: center; width: 40px; height: 40px; flex: none; border: 0; border-radius: 50%; background: #2A3446; color: #FFFFFF; cursor: pointer; }
.fc-cx-vd__fechar .fc-icon { width: 18px; height: 18px; }
.fc-cx-vd__video { aspect-ratio: 16 / 9; border-radius: 16px; overflow: hidden; background: #202836; }
.fc-cx-vd__video :is(video, iframe) { display: block; width: 100%; height: 100%; border: 0; background: #121923; }

/* Aba Regras (25/10): cabe na tela sem rolar no computador, começando no alto, na linha do menu; o aceite fica numa linha (caixinha + botão) */
@media (min-width: 1024px) {
  .fc-cx-main > [data-cx-vista="regras"] > .fc-cx-div { gap: 16px; }
  [data-cx-vista="regras"] .fc-cx-div__tit h1 { margin: 0; }
  [data-cx-vista="regras"] .fc-cx-div__col { padding: 18px 24px 20px; }
  [data-cx-vista="regras"] .fc-cx-div__col h3 { margin-bottom: 10px; }
  [data-cx-vista="regras"] .fc-cx-div__col ul { gap: 4px; }
  [data-cx-vista="regras"] .fc-cx-div__col li small { margin-top: 0; font-size: 13.5px; line-height: 1.35; }
  [data-cx-vista="regras"] .fc-cx-div__pe { padding: 14px 24px; }
}
[data-cx-vista="regras"] .fc-cx-div__pe .fc-cx-div__form { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px 20px; }

/* Link de divulgação na caixa dos pins (25/10, pedido do Luciano): campo branco para contrastar, também no tema escuro */
.fc-cx-eu__base .fc-cx-linkbox, body:not(.fc-claro) .fc-cx-eu__base .fc-cx-linkbox { background: var(--fc-branco, #FFFFFF); box-shadow: none; }
.fc-cx-eu__base .fc-cx-linkbox .fc-cx-linkbox__url, body:not(.fc-claro) .fc-cx .fc-cx-eu__base .fc-cx-linkbox .fc-cx-linkbox__url { color: var(--fc-marinho, #121923); }
/* "Quero assinar" do afiliado grátis: da largura da coluna, como a caixa dos pins embaixo (25/10) */
.fc-cx-eu .fc-cx-assine .fc-cx-at__bt { position: relative; align-self: stretch; justify-content: center; height: 52px; padding: 0 56px; box-sizing: border-box; }
.fc-cx-eu .fc-cx-assine .fc-cx-at__bt > span { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); }
/* Plano de níveis do afiliado grátis (25/10): sem o "Você está aqui" (que é de aluno), os pins ficam no meio da caixa;
   embaixo, o banner do convite (2 colunas) e o quadro do que conta (1 coluna) */
.fc-cx-nvtrilha__linha.is-livre { margin-top: 0; }
.fc-cx-nvtrilha:has(> .fc-cx-nvtrilha__linha.is-livre) { padding-block: 76px 72px; } /* caixa mais alta, com os pins no meio */
.fc-cx-pl.is-livre { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fc-cx-plb { grid-column: span 2; display: flex; align-items: center; gap: 32px; padding: 36px 36px 36px 28px; border-radius: var(--fc-r-xl); background: var(--cx-bloco); }
.fc-cx-plb__fig { display: block; flex: none; width: 300px; height: auto; margin: -20px 0 -20px -4px; } /* a ilustração, com fundo transparente */
.fc-cx-plb__txt { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }
.fc-cx-plb__txt h3 { margin: 0; font: 600 26px/1.15 var(--fc-font-title); letter-spacing: -.025em; text-wrap: balance; }
.fc-cx-plb__txt p { margin: 0; max-width: 62ch; color: var(--cx-tx2); font-size: 17px; line-height: 1.5; text-wrap: balance; }
.fc-cx-plb .fc-cx-at__bt { flex: none; height: 52px; margin-top: 8px; }
@media (min-width: 1700px) { .fc-cx-plb__txt h3 { font-size: 28px; white-space: nowrap; } } /* tela grande: o título numa linha só */
@media (max-width: 1100px) { .fc-cx-plb { grid-column: auto; flex-wrap: wrap; } .fc-cx-pl.is-livre { grid-template-columns: 1fr; } }
/* Banner vertical do afiliado grátis, embaixo de Regras: encolhe para caber na tela; some com o menu recolhido e no celular */
.fc-cx-banner { position: relative; flex: 1 1 0; min-height: 0; max-height: 330px; margin-top: 18px; border-radius: 20px; overflow: hidden; display: block; color: #F5F8F7; text-decoration: none; transition: transform 600ms cubic-bezier(.25, .8, .25, 1); }
.fc-cx-banner:hover { transform: translateY(-2px); }
.fc-cx-banner img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; display: block; }
.fc-cx-banner.is-conectee img { object-position: 76% 30%; } /* foto larga do estúdio: o Luciano fica à direita */
.fc-cx-banner.is-padrao::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(18, 25, 35, 0) 35%, rgba(18, 25, 35, .92) 78%); }
.fc-cx-banner__txt { position: absolute; z-index: 1; left: 16px; right: 16px; bottom: 16px; display: grid; gap: 4px; font: 400 13px/1.35 var(--fc-font-text); color: rgba(245, 248, 247, .72); }
.fc-cx-banner__txt b { font: 700 18px/1.15 var(--fc-font-title, "Sora"), sans-serif; letter-spacing: -0.02em; color: #F5F8F7; }
.fc-cx-banner__txt i { margin-top: 8px; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; background: #2EFFA0; color: #04140D; transition: transform 220ms cubic-bezier(.2, .8, .2, 1); }
.fc-cx-banner__txt i svg { width: 16px; height: 16px; }
.fc-cx-banner:hover .fc-cx-banner__txt i { transform: rotate(45deg); }
.fc-cx.is-recolhido .fc-cx-banner { display: none; }
@media (max-width: 900px) { .fc-cx-banner { display: none; } }
.fc-cx-atalhos > a, .fc-cx-menu a.fc-cx-menu__ir { text-decoration: none; }
/* Celular: o Conectee fechado leva o cadeado no canto do cartão, como o cadeado do menu do computador */
.fc-cx-atalhos > a { position: relative; }
.fc-cx-atalhos > a .fc-cx-atalhos__cad { position: absolute; top: 14px; right: 16px; display: grid; opacity: .6; }
.fc-cx-atalhos > a .fc-cx-atalhos__cad .fc-icon { width: 16px; height: 16px; }
/* Meus dados: o link de cada outro produto (Conectee, Mentoria) para quem tem o Conectee */
.fc-cx-extras { margin-top: 16px; }
.fc-cx-extra { display: grid; gap: 14px; }
.fc-cx-extra__cab { display: flex; align-items: center; gap: 16px; }
.fc-cx-extra__cab > div { flex: 1; display: grid; gap: 2px; }
.fc-cx-extra__cab b { font: 600 17px/1.2 var(--fc-font-title, "Sora"), sans-serif; letter-spacing: -0.02em; }
.fc-cx-extra__cab small { color: var(--cx-tx2); font-size: 13px; }
.fc-cx-extra__ok { display: inline-flex; align-items: center; gap: 8px; height: 32px; padding: 0 12px 0 6px; border-radius: 999px; background: var(--cx-bloco-2); font-size: 13px; font-weight: 600; }
.fc-cx-extra__ok .fc-icon { width: 20px; height: 20px; padding: 3px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); box-sizing: border-box; }
.fc-cx-extra__form { display: flex; align-items: flex-end; gap: 12px; }
.fc-cx-extra__form .fc-cx-campo { flex: 1; }
.fc-cx-extra__form .fc-cx-convite { height: 46px; margin-left: 0; }
/* Visão geral: o aviso dos links que faltam */
.fc-cx-aviso-links { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; padding: 16px 18px; border-radius: 20px; background: var(--cx-bloco); }
.fc-cx-aviso-links > b { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--fc-menta, #2EFFA0); color: var(--fc-marinho, #121923); font: 700 16px var(--fc-font-title, "Sora"), sans-serif; }
.fc-cx-aviso-links p { flex: 1; margin: 0; font-weight: 600; }
.fc-cx-aviso-links small { display: block; color: var(--cx-tx2); font-size: 13px; font-weight: 400; }
@media (max-width: 760px) { .fc-cx-extra__form, .fc-cx-aviso-links { flex-wrap: wrap; } .fc-cx-extra__cab { flex-wrap: wrap; } }
/* Quem tem o Conectee: dois links embaixo dos pins, cada um com a sua etiqueta (Venda e Convite); o segundo cola no primeiro */
.fc-cx-linkbox__tipo { flex: none; font-style: normal; font-size: 12px; font-weight: 700; color: var(--fc-marinho, #121923); }
body:not(.fc-claro) .fc-cx-linkbox .fc-cx-linkbox__tipo { color: var(--fc-branco, #FFFFFF); }
.fc-cx-eu__base .fc-cx-linkbox .fc-cx-linkbox__tipo, body:not(.fc-claro) .fc-cx .fc-cx-eu__base .fc-cx-linkbox .fc-cx-linkbox__tipo, body:not(.fc-claro) .fc-cx-eu.is-livre .fc-cx-linkbox .fc-cx-linkbox__tipo { color: var(--fc-marinho, #121923); }
.fc-cx-linkbox + .fc-cx-linkbox { margin-top: 8px; }
