.cli-hero { display:flex; justify-content:space-between; align-items:end; gap:24px; background:var(--preto); color:var(--cinza-bg); padding:32px; border-radius:var(--raio-lg); margin-bottom:22px; overflow:hidden; position:relative; }
.cli-hero::after { content:""; position:absolute; width:220px; height:220px; border:1px solid rgba(237,242,246,.16); border-radius:50%; right:-100px; top:-125px; box-shadow:0 0 0 38px rgba(237,242,246,.025); }
.cli-hero > div, .cli-busca { position:relative; z-index:1; }
.cli-hero h1 { margin:7px 0 5px; color:var(--cinza-bg); font-size:clamp(30px,4vw,44px); letter-spacing:-.055em; }
.cli-hero p { margin:0; color:rgba(237,242,246,.62); font-size:12px; }
.cli-kicker { font-size:9px; text-transform:uppercase; letter-spacing:.16em; color:var(--azul-suave); }
.cli-busca { display:flex; gap:8px; min-width:min(410px,100%); }
.cli-busca input { flex:1; border:1px solid rgba(237,242,246,.22); border-radius:999px; padding:13px 17px; background:rgba(255,255,255,.08); color:#fff; font:inherit; }
.cli-busca input::placeholder { color:rgba(255,255,255,.5); }
.cli-busca button { border:0; border-radius:999px; background:var(--azul-suave); color:var(--preto); padding:0 19px; font:700 10px var(--sans); letter-spacing:.06em; text-transform:uppercase; }
.cli-hero-acoes { display:flex; align-items:center; justify-content:flex-end; gap:9px; flex:1; }
.cli-novo { position:relative; z-index:1; flex:0 0 auto; min-height:44px; padding:0 18px; border:1px solid rgba(255,255,255,.35); border-radius:999px; background:#fff; color:var(--preto); font:700 10px var(--sans); letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.cli-novo:hover { background:var(--azul-suave); }
.cli-resumo { font-size:10px; color:var(--fraco); margin:0 0 14px; text-transform:uppercase; letter-spacing:.08em; }
.cli-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.cli-card { background:rgba(255,255,255,.78); border:1px solid rgba(30,30,30,.13); border-radius:17px; padding:18px; cursor:pointer; text-align:left; transition:.18s; }
.cli-card:hover { border-color:var(--preto); transform:translateY(-2px); box-shadow:var(--sombra-md); }
.cli-card-topo { display:flex; align-items:center; gap:11px; }
.cli-avatar { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--azul-suave); color:var(--preto); font-size:11px; letter-spacing:.04em; }
.cli-card h3 { font-size:14px; margin:0 0 3px; letter-spacing:-.025em; }
.cli-tel { font-family:var(--mono); font-size:10px; color:var(--fraco); }
.cli-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin:15px 0; }
.cli-stat { background:var(--creme); border-radius:10px; padding:9px; }
.cli-stat b { display:block; font-size:18px; letter-spacing:-.05em; }
.cli-stat span { font-size:7.5px; text-transform:uppercase; color:var(--fraco); letter-spacing:.05em; }
.tags { display:flex; gap:5px; flex-wrap:wrap; }
.tag { font-size:8px; padding:5px 8px; border-radius:999px; background:var(--azul-suave); color:var(--preto); text-transform:uppercase; letter-spacing:.04em; }
.tag.alerta { background:#f1dcdc; color:#8b4348; }
.tag.conta { background:var(--verde-bg); color:#336c49; }
.tag.pendente { background:#f5ecd3; color:#806522; }

.perfil-modal { max-width:1160px; padding:0; overflow:hidden; }
.perfil-modal .modal-topo { margin:0; padding:20px 26px; background:var(--preto); border:0; }
.perfil-modal .modal-topo h2, .perfil-modal .modal-fechar { color:var(--cinza-bg); }
.perfil-conteudo { max-height:calc(92vh - 67px); overflow-y:auto; padding:25px; }
.perfil-identidade { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:22px; align-items:start; margin-bottom:17px; }
.perfil-pessoa { display:flex; align-items:center; gap:15px; }
.perfil-avatar { width:58px; height:58px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--azul-suave); color:var(--preto); font-size:17px; letter-spacing:.03em; }
.perfil-pessoa h2 { margin:0; color:var(--preto); font-size:clamp(25px,3vw,37px); line-height:1; letter-spacing:-.055em; }
.perfil-pessoa p { margin:7px 0 0; color:var(--fraco); font-size:11px; }
.perfil-acoes { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.perfil-acoes .btn { width:auto; min-height:43px; padding:11px 17px; }
.perfil-conta-status { display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border-radius:999px; background:var(--verde-bg); color:#336c49; font-size:9px; text-transform:uppercase; letter-spacing:.06em; }
.perfil-conta-status::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }
.perfil-conta-status.pendente { background:#f5ecd3; color:#806522; }
.perfil-principal { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:14px; }
.perfil-bloco, .perfil-lista { border:1px solid rgba(30,30,30,.13); border-radius:16px; background:rgba(255,255,255,.7); padding:18px; }
.perfil-bloco-titulo { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:13px; color:var(--fraco); font-size:9px; text-transform:uppercase; letter-spacing:.11em; }
.perfil-dados { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--borda); border:1px solid var(--borda); border-radius:12px; overflow:hidden; }
.perfil-dado { min-height:78px; padding:13px; background:var(--branco); }
.perfil-dado.endereco { grid-column:1/-1; }
.perfil-dado span { display:block; margin-bottom:7px; color:var(--fraco); font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.perfil-dado b { display:block; color:var(--preto); font-size:13px; font-weight:500; line-height:1.35; overflow-wrap:anywhere; }
.perfil-dado b .vazio { color:var(--sub); font-style:italic; }
.perfil-metricas { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:14px; }
.perfil-metrica { padding:13px; border-radius:12px; background:var(--creme); }
.perfil-metrica b { font-size:22px; display:block; letter-spacing:-.055em; }
.perfil-metrica span { font-size:7.5px; text-transform:uppercase; color:var(--fraco); letter-spacing:.06em; }
.perfil-alerta { margin-top:12px; padding:11px 13px; border-radius:10px; background:#f5ecd3; color:#725b22; font-size:10px; line-height:1.45; }
.perfil-relacionamento .campo { margin-bottom:14px; }
.tag-opcoes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.tag-opcoes label { display:flex; align-items:center; gap:7px; min-height:38px; font-size:8px; padding:8px; border:1px solid var(--borda); border-radius:9px; cursor:pointer; }
.tag-opcoes input { accent-color:var(--preto); }
.perfil-relacionamento textarea { min-height:108px; }
.nota-meta { font-size:8px; color:var(--fraco); margin-top:5px; }
.perfil-relacionamento .btn { min-height:43px; }
.perfil-historico { display:grid; grid-template-columns:1.35fr .65fr; gap:14px; margin-top:14px; }
.res-hist { padding:11px 0; border-top:1px solid var(--borda); display:flex; justify-content:space-between; align-items:center; gap:10px; font-size:10px; }
.res-hist:first-of-type { border-top:0; }
.res-hist b { font-size:11px; }
.res-hist small { color:var(--fraco); font-size:9px; }
.perfil-vazio { padding:20px 0; color:var(--fraco); font-size:10px; }
.perfil-modal-loading { padding:70px; text-align:center; color:var(--fraco); font-size:11px; }
.perfil-edicao { margin-top:14px; padding:20px; border:1px solid var(--preto); border-radius:16px; background:var(--creme); }
.perfil-edicao .perfil-bloco-titulo button { border:0; background:transparent; color:var(--preto); font:inherit; text-transform:uppercase; cursor:pointer; }
.perfil-edicao-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; }
.perfil-edicao-largo, .perfil-edicao-aviso { grid-column:1/-1; }
.perfil-edicao-aviso { margin:2px 0 16px; padding:12px; border-radius:10px; background:#f5ecd3; color:#725b22; font-size:10px; line-height:1.5; }
.perfil-edicao-acoes { display:flex; justify-content:flex-end; gap:8px; margin-top:3px; }
.perfil-edicao-acoes .btn { width:auto; min-width:145px; }
.novo-cliente-modal { max-width:680px; }
.novo-cliente-intro { margin:-1px 0 19px; color:var(--fraco); font-size:12px; line-height:1.5; }
.novo-cliente-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; }
.novo-cliente-largo { grid-column:1/-1; }
.novo-cliente-modal textarea { min-height:90px; }
.novo-cliente-acoes { display:flex; justify-content:flex-end; gap:8px; margin-top:4px; }
.novo-cliente-acoes .btn { width:auto; min-width:155px; }

@media (max-width:900px) {
  .cli-grid { grid-template-columns:repeat(2,1fr); }
  .perfil-principal, .perfil-historico { grid-template-columns:1fr; }
  .perfil-modal { max-width:760px; }
  .perfil-conteudo { max-height:calc(95vh - 67px); }
}
@media (max-width:650px) {
  .cli-hero { align-items:stretch; flex-direction:column; }
  .cli-hero-acoes { align-items:stretch; flex-direction:column; }
  .cli-novo { min-height:46px; }
  .cli-busca { min-width:0; }
  .cli-grid { grid-template-columns:1fr; }
  .perfil-modal { border-radius:18px 18px 0 0; }
  .perfil-conteudo { padding:18px; }
  .perfil-identidade { grid-template-columns:1fr; }
  .perfil-acoes { align-items:stretch; flex-direction:column; }
  .perfil-acoes .btn { width:100%; }
  .perfil-dados { grid-template-columns:1fr; }
  .perfil-dado.endereco { grid-column:auto; }
  .perfil-metricas { grid-template-columns:repeat(2,1fr); }
  .tag-opcoes { grid-template-columns:1fr; }
  .perfil-edicao-grid { grid-template-columns:1fr; }
  .perfil-edicao-largo, .perfil-edicao-aviso { grid-column:auto; }
  .perfil-edicao-acoes { flex-direction:column; }
  .perfil-edicao-acoes .btn { width:100%; }
  .novo-cliente-grid { grid-template-columns:1fr; }
  .novo-cliente-largo { grid-column:auto; }
  .novo-cliente-acoes { flex-direction:column-reverse; }
  .novo-cliente-acoes .btn { width:100%; }
}
