 .cpccs-wrap{--cpccs-ink:#172b3a;--cpccs-muted:#637381;--cpccs-primary:#087f8c;max-width:760px;margin:24px auto;padding:clamp(20px,4vw,38px);border:1px solid #dfe7eb;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(23,43,58,.08);color:var(--cpccs-ink);font-family:inherit}
.cpccs-cabecalho{text-align:center;margin-bottom:28px}.cpccs-icone{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:#e5f5f5;color:var(--cpccs-primary);font-size:30px;font-weight:700}.cpccs-sobretitulo,.cpccs-kicker{font-size:12px;letter-spacing:.09em;font-weight:700;color:var(--cpccs-primary);margin:16px 0 7px}.cpccs-cabecalho h2{font-size:clamp(25px,4vw,34px);line-height:1.15;margin:0 0 10px;color:var(--cpccs-ink)}.cpccs-cabecalho>p:last-child{color:var(--cpccs-muted);margin:0}
.cpccs-form{display:grid;gap:17px}.cpccs-form label{display:grid;gap:7px;font-weight:650;font-size:14px}.cpccs-form input,.cpccs-form select{width:100%;box-sizing:border-box;min-height:48px;border:1px solid #cbd5dc;border-radius:10px;padding:10px 12px;background:#fff;color:#172b3a;font:inherit}.cpccs-form input:focus,.cpccs-form select:focus{outline:3px solid #b8e5e6;border-color:var(--cpccs-primary)}.cpccs-form button{min-height:51px;border:0;border-radius:11px;padding:12px 18px;background:var(--cpccs-primary);color:white;font:inherit;font-weight:750;cursor:pointer}.cpccs-form button:hover{filter:brightness(.93)}.cpccs-privacidade,.cpccs-fonte{font-size:12px;line-height:1.55;color:var(--cpccs-muted);margin:0}.cpccs-fonte{margin-top:22px;padding-top:15px;border-top:1px solid #e5ebef}
.cpccs-resultado{margin:0 0 24px;padding:22px;border-radius:15px;background:#f1f8f8;border:1px solid #c9e7e7}.cpccs-resultado h3{margin:0 0 8px;font-size:22px}.cpccs-valor{font-size:clamp(30px,6vw,42px);font-weight:800;letter-spacing:-.03em;color:#086b75;margin:8px 0 18px}.cpccs-resultado p{line-height:1.5;margin:8px 0}.cpccs-resultado .cpccs-nota{border-top:1px solid #d2e8e8;padding-top:13px;margin-top:16px;font-size:12px;color:#53666b}.cpccs-alerta{padding:13px 15px;margin-bottom:18px;border:1px solid #f1c4bc;background:#fff1ee;color:#8c2e20;border-radius:10px}

.cpccs-acoes{display:grid;grid-template-columns:1fr;gap:10px}.cpccs-form .cpccs-nova{background:#e8eef1;color:#172b3a;border:1px solid #cbd5dc}.cpccs-form .cpccs-nova:hover{background:#dbe5e9}

/* Avisos de cautela e limitações da simulação */
.cpccs-aviso-geral,
.cpccs-aviso-acs {
  margin: 0 0 18px;
  padding: 14px 16px;
  border-left: 4px solid #b7791f;
  border-radius: 8px;
  background: #fff8e6;
  color: #493716;
  line-height: 1.55;
}
.cpccs-aviso-acs { border-left-color: #b42318; background: #fff0ef; color: #6f1d1b; }
.cpccs-aviso-acs[hidden] { display: none !important; }

/* Card de complementação salarial: só aparece quando há diferença positiva */
.cpccs-complementacao {
  margin: 20px 0;
  padding: 18px;
  border-radius: 12px;
  background: #b42318;
  color: #fff;
  box-shadow: 0 4px 14px rgba(127, 29, 29, .18);
}
.cpccs-complementacao-titulo {
  margin: 0 0 14px;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
}
.cpccs-complementacao-linha {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin: 8px 0;
  color: #fff;
}
.cpccs-complementacao-linha strong { color: #fff; white-space: nowrap; }
.cpccs-complementacao-valor {
  margin: 14px 0 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.35);
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.2;
  font-weight: 800;
}
.cpccs-complementacao-nota {
  margin: 12px 0 0;
  color: #fff;
  font-size: .85rem;
  line-height: 1.5;
  opacity: .95;
}
@media (max-width: 520px) {
  .cpccs-complementacao-linha { align-items: flex-start; flex-direction: column; gap: 2px; }
}

/* Card de quinquênios estimados */
.cpccs-quinquenio {
  margin: 20px 0;
  padding: 18px;
  border: 1px solid #9ac7ad;
  border-radius: 12px;
  background: #edf8f0;
  color: #183b28;
}
.cpccs-quinquenio-titulo {
  margin: 0 0 14px;
  font-size: 1.1rem;
  font-weight: 700;
  color: #183b28;
}
.cpccs-quinquenio-linha {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  margin: 8px 0;
}
.cpccs-quinquenio-linha strong { white-space: nowrap; }
.cpccs-quinquenio-valor {
  margin: 14px 0 8px;
  padding-top: 12px;
  border-top: 1px solid #b8d9c3;
  font-size: 1.8rem;
  line-height: 1.2;
  font-weight: 800;
  color: #17663a;
}
.cpccs-quinquenio-valor span {
  display: block;
  margin-top: 5px;
  font-size: .82rem;
  line-height: 1.4;
  font-weight: 500;
}
.cpccs-quinquenio-nota {
  margin: 12px 0 0;
  font-size: .85rem;
  line-height: 1.5;
  color: #315642;
}
@media (max-width: 520px) {
  .cpccs-quinquenio-linha { align-items: flex-start; flex-direction: column; gap: 2px; }
}

/* Resultado dividido em cards independentes */
.cpccs-resultado {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.cpccs-card-salario {
  padding: 20px;
  border: 1px solid #b8dfe5;
  border-radius: 12px;
  background: #eff8f9;
  color: #123b45;
}
.cpccs-card-salario h3 { margin-top: 6px; }
.cpccs-card-salario .cpccs-valor { margin-bottom: 16px; }
.cpccs-resultado > .cpccs-complementacao,
.cpccs-resultado > .cpccs-quinquenio { width: 100%; box-sizing: border-box; }
.cpccs-resultado > .cpccs-nota {
  margin-top: 0;
  padding-top: 12px;
  border-top: 1px solid #d7e2e5;
}
