.cne { max-width: 1500px; margin: 0 auto; }
.cne__header { display:flex; align-items:flex-start; justify-content:space-between; gap:1.25rem; padding-bottom:1.25rem; margin-bottom:1.25rem; border-bottom:1px solid var(--border); }
.cne__header h1 { margin:0; font-family:var(--font-display); font-size:1.75rem; }
.cne__header p { margin:.35rem 0 0; color:var(--text-muted); font-size:.9rem; line-height:1.5; }
.cne__api { display:flex; align-items:center; gap:.7rem; flex:none; }
.cne__api-status { padding:.4rem .7rem; border-radius:var(--r-pill); background:var(--elevado); color:var(--text-muted); font-size:.75rem; }
.cne__api-status.is-ok { background:rgba(34,197,94,.12); color:#4ade80; }
.cne__api-status.is-erro { background:rgba(239,68,68,.12); color:#f87171; }
.cne__card { margin-bottom:1.25rem; padding:1.25rem; border:1px solid var(--border); border-radius:var(--r-lg); background:var(--panel-bg); }
.cne__card-titulo { color:var(--text); font-size:.95rem; font-weight:750; }
.cne__consulta-layout { display:grid; grid-template-columns:minmax(560px,1.65fr) minmax(350px,.85fr); gap:1rem; align-items:start; }
.cne__consulta-principal { min-width:0; }
.cne__filtros { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; margin-top:1rem; }
.cne__filtros-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.cne__campo { display:flex; flex-direction:column; gap:.4rem; min-width:0; }
.cne__campo--largo { grid-column:span 2; }
.cne__campo--tag { grid-column:span 2; }
.cne__campo > span, .cne__campo label { color:var(--text-muted); font-size:.72rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.cne__campo input,.cne__campo select { width:100%; min-width:0; padding:.7rem .8rem; border:1px solid var(--border-strong); border-radius:var(--r-sm); outline:0; background:var(--bg); color:var(--text); font:inherit; font-size:.84rem; }
.cne__campo input[type="number"] { -moz-appearance:textfield; }
.cne__campo input[type="number"]::-webkit-inner-spin-button,.cne__campo input[type="number"]::-webkit-outer-spin-button { -webkit-appearance:none; }
.cne__campo input:focus,.cne__campo select:focus { border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
.cne__campo small { color:var(--text-fraco); font-size:.7rem; }
.cne__opcoes { display:flex; flex-wrap:wrap; gap:1.25rem; margin-top:1rem; color:var(--text-muted); font-size:.82rem; }
.cne__opcoes label { display:flex; align-items:center; gap:.45rem; cursor:pointer; }
.cne__opcoes input { accent-color:var(--accent); }
.cne__checkbox-label { display:flex; align-items:center; gap:.45rem; cursor:pointer; font-size:.82rem; color:var(--text-muted); }
.cne__checkbox-label input { accent-color:var(--accent); }
.cne__acoes { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; margin-top:1rem; }
.cne__feedback { margin-top:1rem; padding:.75rem .9rem; border:1px solid var(--border); border-radius:var(--r-sm); background:var(--elevado); color:var(--text-muted); font-size:.8rem; }
.cne__feedback.is-erro { border-color:rgba(239,68,68,.4); color:#f87171; background:rgba(239,68,68,.08); }
.cne__feedback.is-sucesso { border-color:rgba(34,197,94,.4); color:#4ade80; background:rgba(34,197,94,.08); }
.cne__feedback.is-info { border-color:rgba(59,130,246,.4); color:#60a5fa; background:rgba(59,130,246,.08); }
.cne__tag-picker { min-width:0; }
.cne__resultados-topo { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.cne__total { display:block; margin-top:.2rem; color:var(--text-muted); font-size:.76rem; }
.cne__acoes--resultado { margin-top:0; }
.cne__acoes--resultado > span { color:var(--text-muted); font-size:.76rem; }
.cne__lista-controles { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.85rem; padding:.72rem .9rem; border:1px solid var(--border); border-radius:12px; background:var(--elevado); }
.cne__lista-controles label { display:flex; align-items:center; gap:.5rem; color:var(--text-muted); font-size:.76rem; font-weight:700; cursor:pointer; }
.cne__lista-controles input { width:16px; height:16px; accent-color:var(--accent); cursor:pointer; }
.cne__lista-controles small { color:var(--text-fraco); font-size:.7rem; }
.cne__empresas-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:.85rem; }
.cne__empresa-card { --empresa-cor:var(--accent); position:relative; display:flex; flex-direction:column; min-width:0; min-height:220px; overflow:hidden; padding:12px; border:1px solid var(--border); border-left:4px solid var(--empresa-cor); border-radius:12px; background:var(--panel-bg); box-shadow:0 2px 6px rgba(25,35,55,.055); transition:transform .2s ease,box-shadow .2s ease; will-change:transform; }
.cne__empresa-card::before { content:""; position:absolute; z-index:2; bottom:0; left:0; width:0; height:3px; border-radius:0 0 0 12px; background:var(--empresa-cor); transition:width 500ms ease; will-change:width; }
.cne__empresa-card:hover { z-index:1; transform:translateY(-2px); box-shadow:0 10px 24px rgba(24,34,55,.11); }
.cne__empresa-card:hover::before,.cne__empresa-card:focus-within::before { width:100%; }
.cne__empresa-card.is-selecionada { border-color:color-mix(in srgb,var(--empresa-cor) 64%,var(--border)); box-shadow:0 0 0 2px color-mix(in srgb,var(--empresa-cor) 16%,transparent),0 6px 16px rgba(15,23,42,.1); }
.cne__empresa-card.is-importada { border-color:color-mix(in srgb,#22a866 48%,var(--border)); border-left-color:#22a866; background:color-mix(in srgb,#22a866 13%,var(--panel-bg)); box-shadow:0 3px 10px rgba(34,168,102,.14); }
.cne__empresa-card.is-importada:hover { box-shadow:0 10px 24px rgba(34,168,102,.18); }
.cne__empresa-check { position:absolute; z-index:3; top:1rem; right:1rem; width:17px; height:17px; accent-color:var(--empresa-cor); cursor:pointer; }
.cne__empresa-check:disabled { cursor:not-allowed; opacity:.45; }
.cne__empresa-perfil { display:flex; align-items:center; gap:.75rem; min-width:0; padding-right:2rem; }
.cne__empresa-avatar { display:grid; place-items:center; flex:none; width:46px; height:46px; border:2px solid color-mix(in srgb,var(--empresa-cor) 72%,white); border-radius:50%; background:var(--empresa-cor); color:#fff; box-shadow:0 4px 10px color-mix(in srgb,var(--empresa-cor) 28%,transparent); font-size:.82rem; font-weight:800; letter-spacing:.02em; }
.cne__empresa-identidade { display:flex; flex-direction:column; min-width:0; }
.cne__empresa-identidade strong,.cne__empresa-identidade span,.cne__empresa-identidade small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cne__empresa-identidade strong { color:var(--text); font-size:.84rem; }
.cne__empresa-identidade span { margin-top:.14rem; color:var(--text-muted); font-size:.7rem; }
.cne__empresa-identidade small { margin-top:.2rem; color:var(--text-fraco); font-family:var(--font-mono); font-size:.65rem; }
.cne__card-importacao { display:flex; align-items:center; gap:.35rem; min-width:0; min-height:27px; margin-top:.75rem; white-space:nowrap; }
.cne__card-importacao .cne__importada-badge { display:inline-flex; flex:none; width:max-content; margin:0; padding:.18rem .42rem; border-radius:var(--r-pill); background:rgba(34,197,94,.13); color:#22a866; font-size:.6rem; font-weight:750; }
.cne__empresa-nova { display:inline-flex; width:max-content; padding:.2rem .48rem; border-radius:var(--r-pill); background:color-mix(in srgb,var(--empresa-cor) 10%,transparent); color:var(--empresa-cor); font-size:.62rem; font-weight:750; }
.cne__importada-tags { display:flex; align-items:center; gap:.2rem; min-width:0; overflow:hidden; }
.cne__card-importacao .cne__importada-tags .ig-contact-tag { display:inline-flex; flex:none; max-width:5.2rem; margin:0; padding:.13rem .35rem; font-size:.55rem; }
.cne__card-importacao .cne__importada-mais { display:inline-flex; flex:none; margin:0; padding:.12rem .38rem; border:1px solid var(--border); border-radius:var(--r-pill); background:var(--elevado); color:var(--accent); font:inherit; font-size:.55rem; font-weight:750; cursor:pointer; transition:transform .15s ease,border-color .15s ease,background-color .15s ease; }
.cne__card-importacao .cne__importada-mais:hover { transform:translateY(-1px); border-color:var(--accent); background:var(--accent-soft); }
.cne__empresa-dados { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem 1.1rem; margin-top:auto; padding-top:1rem; }
.cne__empresa-dados > div { display:flex; flex-direction:column; justify-content:center; min-width:0; min-height:38px; padding:0; background:transparent; }
.cne__empresa-dados span { margin-bottom:.18rem; color:var(--text-fraco); font-size:.56rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.cne__empresa-dados strong { overflow:hidden; color:var(--text-muted); font-size:.68rem; font-weight:650; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.cne__empresa-dados .cne__empresa-email { grid-column:span 2; }
.cne__empresa-dados a { overflow:hidden; color:var(--accent); text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
.cne__empresa-dados a:hover { text-decoration:underline; }
.cne__tags-modal { position:fixed; z-index:10020; inset:0; display:grid; place-items:center; padding:1rem; }
.cne__tags-modal-fundo { position:absolute; inset:0; width:100%; border:0; background:rgba(15,23,42,.58); backdrop-filter:blur(3px); cursor:pointer; }
.cne__tags-modal-painel { position:relative; z-index:1; width:min(520px,100%); max-height:min(78vh,620px); overflow:auto; border:1px solid var(--border); border-radius:20px; background:var(--panel-bg); box-shadow:0 24px 70px rgba(0,0,0,.3); animation:cne-tags-entrar .2s ease both; }
.cne__tags-modal-painel header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1.15rem 1.25rem; border-bottom:1px solid var(--border); }
.cne__tags-modal-painel header div { display:grid; gap:.2rem; min-width:0; }
.cne__tags-modal-painel header span { color:var(--accent); font-size:.62rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.cne__tags-modal-painel header strong { overflow:hidden; color:var(--text); font-size:1rem; text-overflow:ellipsis; white-space:nowrap; }
.cne__tags-modal-painel header small { color:var(--text-muted); font-size:.68rem; }
.cne__tags-modal-painel header > button { display:grid; place-items:center; flex:none; width:34px; height:34px; border:0; border-radius:50%; background:var(--elevado); color:var(--text); font-size:1.2rem; cursor:pointer; }
.cne__tags-modal-lista { display:flex; flex-wrap:wrap; gap:.55rem; padding:1.25rem; }
.cne__tags-modal-lista .ig-tag-chip { cursor:default; }
.cne__tags-modal-lista .ig-tag-chip:hover { transform:none; }
@keyframes cne-tags-entrar { from { opacity:0; transform:translateY(8px) scale(.98); } to { opacity:1; transform:none; } }
.cne__telefone { color:var(--text); font-family:var(--font-mono); white-space:nowrap; }
.cne__nao-encontrado { color:var(--text-fraco); font-style:italic; font-size:.85rem; }
.cne__email { max-width:190px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cne__email a { color:var(--accent); text-decoration:none; }
.cne__email a:hover { text-decoration:underline; }
.cne__porte { display:inline-block; padding:.2rem .45rem; border-radius:var(--r-pill); background:var(--elevado); color:var(--text-muted); font-size:.67rem; white-space:nowrap; }
.cne__paginacao { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1rem; padding:.85rem 1rem; color:var(--text-muted); font-size:.78rem; flex-wrap:wrap; }
.cne__paginacao-acoes { display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
.cne__ir-pagina { display:flex; align-items:center; gap:.5rem; color:var(--text-muted); white-space:nowrap; padding:.35rem .55rem; border:1px dashed var(--border); border-radius:var(--r-sm); background:var(--elevado); }
.cne__ir-pagina input { width:4.5rem; min-height:2rem; padding:.35rem .45rem; border:1px solid var(--border); border-radius:var(--r-sm); background:var(--surface); color:var(--text); text-align:center; font-size:.8rem; }
.cne__vazio { display:flex; flex-direction:column; align-items:center; gap:.35rem; padding:3rem 1rem; color:var(--text-muted); text-align:center; }
.cne__vazio--grid { grid-column:1/-1; }
.cne__vazio strong { color:var(--text); }
.cne__vazio span { font-size:.85rem; }
.cne__vazio svg { width:48px; height:48px; margin-bottom:.5rem; color:var(--text-fraco); }

@media (max-width:1250px) {
  .cne__consulta-layout { grid-template-columns:1fr; }
  .cne__tag-picker { max-width:none; }
}
@media (max-width:1100px) {
  .cne__filtros, .cne__filtros-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cne__empresas-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .cne__header,.cne__resultados-topo { flex-direction:column; align-items:stretch; }
  .cne__api { justify-content:space-between; }
  .cne__filtros, .cne__filtros-grid { grid-template-columns:1fr; }
  .cne__campo--largo,.cne__campo--tag { grid-column:span 1; }
  .cne__acoes--resultado { align-items:stretch; }
  .cne__paginacao { flex-direction:column; align-items:stretch; }
  .cne__paginacao-acoes { justify-content:space-between; }
  .cne__ir-pagina { order:3; width:100%; justify-content:center; }
  .cne__lista-controles { align-items:flex-start; flex-direction:column; }
  .cne__empresa-card { min-height:0; }
  .cne__empresa-dados { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:.85rem; }
  .cne__empresa-dados .cne__empresa-email { grid-column:span 2; }
}
@media (max-width:430px) {
  .cne__empresa-dados { grid-template-columns:1fr; }
  .cne__empresa-dados .cne__empresa-email { grid-column:span 1; }
}
