#cpModal.cp-form-mode {
  background: rgba(12, 24, 19, .62) !important;
  backdrop-filter: blur(12px) !important;
}

#cpModal.cp-form-mode > div {
  max-width: 760px !important;
  max-height: min(820px, calc(100dvh - 36px)) !important;
  background: #fff !important;
  border: 1px solid #dce5df !important;
  border-radius: 10px !important;
  box-shadow: 0 30px 90px rgba(3, 18, 11, .28) !important;
}

#cpModal.cp-form-mode > div > div:first-child {
  padding: 25px 32px 13px !important;
  border-bottom: 0 !important;
  background: #fff !important;
  color: #14231b !important;
}

#cpModal.cp-form-mode > div > div:first-child > div > div:first-child {
  margin-bottom: 5px !important;
  color: #287454 !important;
  font-size: 11px !important;
  letter-spacing: 1.2px !important;
}

#cpModal.cp-form-mode > div > div:first-child > div > div:last-child {
  color: #14231b !important;
  font: 700 22px/1.2 'Inter', sans-serif !important;
  letter-spacing: 0 !important;
}

#cpModal.cp-form-mode > div > div:first-child > button {
  width: 36px !important;
  height: 36px !important;
  border: 1px solid #dbe4de !important;
  border-radius: 50% !important;
  background: #f4f7f5 !important;
  color: #243b2e !important;
}

.cp-stepper {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  padding: 10px 32px 18px;
  background: #fff;
}

.cp-step {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: #718078;
  font: 600 11px/1.25 'Inter', sans-serif;
  white-space: nowrap;
}

.cp-step-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  border: 1px solid #d8e1db;
  border-radius: 50%;
  background: #f5f8f6;
  color: #718078;
  font-size: 11px;
}

.cp-step.is-current { color: #173c2b; }
.cp-step.is-current .cp-step-dot {
  border-color: #287454;
  background: #287454;
  color: #fff;
  box-shadow: 0 0 0 4px #e5f2e9;
}
.cp-step.is-done .cp-step-dot {
  border-color: #b4d5c0;
  background: #eaf5ed;
  color: #206e4c;
}

#cpModal.cp-form-mode .cp-stepper + div {
  height: 3px !important;
  background: #e6ece8 !important;
}
#cpModal.cp-form-mode #cpProg { background: #287454 !important; }

#cpModal.cp-form-mode #cpBody {
  padding: 30px 36px 36px !important;
  background: #fff !important;
  color: #14231b !important;
  scrollbar-color: #cadbd0 transparent !important;
}

#cpModal.cp-form-mode #cpBody > div[id^="cpS"] {
  max-width: 580px !important;
  animation: cpFormEnter .28s ease-out both;
}

@keyframes cpFormEnter {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

#cpModal.cp-form-mode #cpBody p[style*="font-size:18px"] {
  color: #14231b !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
}

#cpModal.cp-form-mode #cpBody p[style*="font-size:13px"] {
  color: #5d6e63 !important;
  font-size: 14px !important;
}

#cpModal.cp-form-mode #cpBody label {
  color: #465a4d !important;
  font-size: 11px !important;
  letter-spacing: .7px !important;
}

#cpModal.cp-form-mode #cpBody input:not([type="checkbox"]):not([type="radio"]) {
  min-height: 47px;
  border: 1px solid #d8e2db !important;
  border-radius: 6px !important;
  background: #f8faf8 !important;
  color: #172820 !important;
  font-size: 15px !important;
  box-shadow: none !important;
}

#cpModal.cp-form-mode #cpBody input::placeholder { color: #89988e !important; }
#cpModal.cp-form-mode #cpBody input:focus {
  outline: 2px solid rgba(40, 116, 84, .2) !important;
  border-color: #287454 !important;
}

#cpModal.cp-form-mode #cpBody :is(#cpBtn1, #cpBtn2, #cpBtn4, #cpS3 > button:first-of-type, #cpS3roomsContent > button:first-of-type) {
  min-height: 49px;
  border: 0 !important;
  border-radius: 6px !important;
  background: #183f2e !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  transition: background .2s, transform .2s !important;
}
#cpModal.cp-form-mode #cpBody :is(#cpBtn1, #cpBtn2, #cpBtn4, #cpS3 > button:first-of-type, #cpS3roomsContent > button:first-of-type):not(:disabled):hover {
  background: #287454 !important;
  transform: translateY(-1px);
}
#cpModal.cp-form-mode #cpBody button:disabled { opacity: .42 !important; cursor: not-allowed !important; }

#cpModal.cp-form-mode .cp-back-btn {
  margin-top: 14px;
  border: 1px solid #d8e2db !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #264734 !important;
}
#cpModal.cp-form-mode .cp-back-btn:hover { background: #f1f7f2 !important; }

#cpModal.cp-form-mode :is(#cpRegGrid button, #cpS2bContent button, #cpSysGrid > div, #cpS3content button) {
  border: 1px solid #d8e2db !important;
  border-radius: 6px !important;
  background: #f8faf8 !important;
  color: #172820 !important;
  box-shadow: none !important;
}

#cpModal.cp-form-mode :is(#cpRegGrid button, #cpS2bContent button, #cpSysGrid > div, #cpS3content button):hover {
  border-color: #8bb9a0 !important;
  background: #f1f8f3 !important;
}

#cpModal.cp-form-mode :is(#cpRegGrid button, #cpSysGrid > div, #cpS3content button)[style*="rgba(34"] {
  border-color: #287454 !important;
  background: #eaf5ed !important;
}

#cpModal.cp-form-mode #cpBody [style*="color:#fff"] { color: #172820 !important; }
#cpModal.cp-form-mode #cpBody [style*="color:#9CA3AF"],
#cpModal.cp-form-mode #cpBody [style*="color:#a8a8a8"],
#cpModal.cp-form-mode #cpBody [style*="color:#999"],
#cpModal.cp-form-mode #cpBody [style*="color:#bbb"] { color: #66786b !important; }

#cpModal.cp-form-mode #cpSysGrid span[style*="background:#0D1117"] {
  background: #edf3ee !important;
  border-color: #d8e2db !important;
}

#cpModal.cp-wide .cp-stepper {
  background: #0d1117;
  border-bottom: 1px solid #262b38;
}
#cpModal.cp-wide .cp-step { color: #a1ada5; }
#cpModal.cp-wide .cp-step.is-current { color: #fff; }
#cpModal.cp-wide .cp-step.is-current .cp-step-dot { box-shadow: 0 0 0 4px rgba(40, 116, 84, .3); }

@media (max-width: 1050px) {
  #cpModal.cp-form-mode > div {
    max-width: 760px !important;
    max-height: 100dvh !important;
    border-radius: 0 !important;
  }
}

@media (min-width: 560px) and (max-width: 1050px) {
  #cpModal.cp-form-mode { align-items: center !important; padding: 18px !important; }
  #cpModal.cp-form-mode > div {
    max-height: calc(100dvh - 36px) !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 640px) {
  #cpModal.cp-form-mode > div > div:first-child { padding: 18px 18px 10px !important; }
  #cpModal.cp-form-mode > div > div:first-child > div > div:last-child { font-size: 18px !important; }
  .cp-stepper { gap: 4px; padding: 11px 18px 15px; }
  .cp-step { justify-content: center; }
  .cp-step-label { display: none; }
  .cp-step-dot { flex-basis: 24px; width: 24px; height: 24px; }
  #cpModal.cp-form-mode #cpBody { padding: 26px 18px 32px !important; }
  #cpModal.cp-form-mode #cpBody p[style*="font-size:18px"] { font-size: 23px !important; }
}

@media (max-width: 390px) {
  #cpModal.cp-form-mode #cpS1 > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  #cpModal.cp-form-mode #cpRegGrid,
  #cpModal.cp-form-mode #cpS2bContent > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  #cpModal.cp-form-mode #cpBody > div[id^="cpS"] { animation: none; }
  #cpModal.cp-form-mode #cpBody button { transition: none !important; }
}

/* The result is a concise proposal; the form above retains its original layout. */
#cpModal.cp-result-mode {
  background: rgba(13, 23, 18, .7) !important;
  backdrop-filter: blur(10px) !important;
}
#cpModal.cp-result-mode > div {
  max-width: 980px !important;
  max-height: min(860px, calc(100dvh - 32px)) !important;
  background: #fff !important;
  border: 1px solid #dce4de !important;
  border-radius: 8px !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .28) !important;
}
#cpModal.cp-result-mode > div > div:first-child {
  padding: 18px 30px !important;
  border-color: #e2e8e3 !important;
  background: #fff !important;
  color: #19251d !important;
}
#cpModal.cp-result-mode > div > div:first-child > div > div:first-child { color: #287454 !important; }
#cpModal.cp-result-mode > div > div:first-child > div > div:last-child { color: #19251d !important; }
#cpModal.cp-result-mode > div > div:first-child > button {
  background: #f5f7f5 !important;
  border-color: #dce4de !important;
  color: #24372a !important;
}
#cpModal.cp-result-mode .cp-stepper { background: #fff; border-bottom: 1px solid #e7ece8; }
#cpModal.cp-result-mode .cp-step { color: #6c7b70; }
#cpModal.cp-result-mode .cp-step.is-current { color: #1c4f33; }
#cpModal.cp-result-mode .cp-step.is-current .cp-step-dot { box-shadow: 0 0 0 4px #e8f3eb; }
#cpModal.cp-result-mode .cp-stepper + div { background: #e5ebe6 !important; }
#cpModal.cp-result-mode #cpProg { background: #287454 !important; }
#cpModal.cp-result-mode #cpBody {
  padding: 30px 42px 40px !important;
  background: #fff !important;
  color: #19251d !important;
  scrollbar-color: #cbd9cf transparent !important;
}
#cpModal.cp-result-mode #cpResult { color: #19251d !important; }
#cpModal.cp-result-mode #cpResult > [hidden] { display: none !important; }
#cpModal.cp-result-mode #cpResult > section { padding: 0 !important; }

#cpModal.cp-result-mode .cp-report-lead > div:first-child { margin: 0 0 15px !important; }
#cpModal.cp-result-mode #cpRKit {
  font: 700 32px/1.2 'Inter', sans-serif !important;
  letter-spacing: 0 !important;
  color: #19251d !important;
}
#cpModal.cp-result-mode .cp-title-green { color: #287454 !important; }
#cpModal.cp-result-mode #cpRSub { font-size: 14px !important; line-height: 1.5; color: #66756a !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 16px 0 22px;
  border-bottom: 1px solid #dfe6e0;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div {
  min-height: 0 !important;
  padding: 0 18px !important;
  border: 0 !important;
  border-right: 1px solid #e6ebe7 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div:first-child { padding-left: 0 !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div:last-child { border-right: 0 !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) svg { display: none; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) span {
  display: block;
  margin-bottom: 6px;
  color: #77867a !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .6px !important;
  text-transform: uppercase;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) [id$="Val"] {
  color: #223027 !important;
  font: 650 14px/1.3 'Inter', sans-serif !important;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) button {
  top: auto !important;
  right: 18px !important;
  bottom: 0 !important;
  color: #287454 !important;
  font-size: 11px !important;
}

#cpModal.cp-result-mode #cpResult > .cp-report-finance { padding: 24px 0 0 !important; }
.cp-report-kicker {
  margin: 0 0 12px;
  color: #748176;
  font: 700 11px/1.3 'Inter', sans-serif;
  letter-spacing: .9px;
  text-transform: uppercase;
}
#cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 0 17px !important;
}
#cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) > div {
  min-height: 0 !important;
  padding: 4px 22px 8px 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) > div + div {
  padding-left: 24px !important;
  border-left: 1px solid #e1e7e2 !important;
}
#cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) > div::before { display: none !important; }
#cpModal.cp-result-mode .cp-report-finance [style*="color:#9CA3AF"] { color: #6a7a6e !important; }
#cpModal.cp-result-mode :is(#cpRAhorro, #cpRPrice) {
  color: #19251d !important;
  font: 700 32px/1.15 'Inter', sans-serif !important;
}
#cpModal.cp-result-mode #cpVariantGrid { margin: 6px 0 16px !important; }
#cpModal.cp-result-mode #cpVariantGrid > div:first-child {
  display: inline-grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: 100% !important;
  max-width: 460px !important;
  border: 1px solid #dfe6e0 !important;
  background: #f6f8f6 !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode #cpVariantGrid button { min-height: 48px !important; font-size: 13px !important; }
#cpModal.cp-result-mode #cpVariantGrid button {
  background: transparent !important;
  color: #596a5f !important;
}
#cpModal.cp-result-mode #cpVariantGrid #cpVarPremium[style*="rgb(255, 79, 160)"],
#cpModal.cp-result-mode #cpVariantGrid #cpVarEstandar[style*="rgb(34, 197, 94)"] {
  background: #1d4931 !important;
  color: #fff !important;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div:first-child { padding-left: 16px !important; }
#cpModal.cp-result-mode .cp-var-title { font-size: 12px; }
#cpModal.cp-result-mode .cp-premium-note { display: none !important; }

#cpModal.cp-result-mode #cpResult > .cp-report-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 16px 0 0 !important;
  border-top: 1px solid #e1e7e2;
}
#cpModal.cp-result-mode #cpBuyBox {
  min-height: 54px;
  margin: 0 !important;
  padding: 12px 16px !important;
  border: 1px solid #1d4931 !important;
  border-radius: 6px !important;
  background: #1d4931 !important;
  color: #fff !important;
}
#cpModal.cp-result-mode #cpBuyBox > div:first-child,
#cpModal.cp-result-mode #cpBuyBox > svg { display: none !important; }
#cpModal.cp-result-mode #cpBuyTitle { color: #fff !important; font-size: 13px !important; }
#cpModal.cp-result-mode #cpBuySub { color: #d5e9db !important; font-size: 10px !important; }
#cpModal.cp-result-mode #cpWaBtn {
  min-height: 54px;
  margin: 0 !important;
  border: 1px solid #bdcec1 !important;
  border-radius: 6px !important;
  background: #fff !important;
  color: #1d4931 !important;
  font-size: 13px !important;
}
#cpModal.cp-result-mode #cpWaBtn svg { display: none; }
#cpModal.cp-result-mode .cp-report-actions > button:last-child {
  grid-column: 1 / -1;
  width: auto !important;
  justify-self: start;
  margin: 0 !important;
  padding: 4px 0 !important;
  border: 0 !important;
  background: none !important;
  color: #64756a !important;
  font-size: 12px !important;
}
.cp-report-disclaimer { margin: 8px 0 24px; color: #7a897d; font: 400 11px/1.5 'Inter', sans-serif; }

#cpModal.cp-result-mode .cp-report-details { border-top: 1px solid #e1e7e2; }
#cpModal.cp-result-mode .cp-report-details > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 0;
  color: #234934;
  font: 650 14px/1.35 'Inter', sans-serif;
  cursor: pointer;
  list-style: none;
}
#cpModal.cp-result-mode .cp-report-details > summary::-webkit-details-marker { display: none; }
#cpModal.cp-result-mode .cp-report-details > summary::after { content: '+'; font-size: 22px; font-weight: 400; }
#cpModal.cp-result-mode .cp-report-details[open] > summary::after { content: '−'; }
#cpModal.cp-result-mode .cp-report-details > div:not(.cp-result-col-kit):not(.cp-roi-card) { margin-bottom: 20px !important; }
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(1) { font-size: 17px !important; color: #19251d !important; }
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2) {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2) > div {
  min-height: 0 !important;
  padding: 12px 14px 12px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid #e6ebe7 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2) > div::before { display: none !important; }
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2) > div > div:first-child,
#cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2) > div > div:last-child { color: #6d7c70 !important; }
#cpModal.cp-result-mode :is(#cpRGen, #cpRCov, #cpRAhorroBoleta, #cpRAhorroNB) {
  color: #1e5137 !important;
  font: 700 20px/1.2 'Inter', sans-serif !important;
}
#cpModal.cp-result-mode #cpRAhorroNote {
  padding: 12px 14px !important;
  border: 1px solid #dbe8dd !important;
  border-radius: 5px !important;
  background: #f6faf6 !important;
  color: #435849 !important;
  font-size: 12px !important;
}
#cpModal.cp-result-mode #cpRAhorroNote::before { display: none !important; }
#cpModal.cp-result-mode .cp-result-col-kit,
#cpModal.cp-result-mode .cp-roi-card {
  width: auto !important;
  margin: 20px 0 0 !important;
  padding: 20px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid #e1e7e2 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-result-col-kit > div:has(> img) { display: none; }
#cpModal.cp-result-mode .cp-result-col-kit [style*="font-size:14.5px"] {
  color: #19251d !important;
  font: 700 17px/1.3 'Inter', sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
#cpModal.cp-result-mode #cpKitSubtitle { color: #68796c !important; font-size: 12px !important; }
#cpModal.cp-result-mode .cp-kit-float-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 0 !important; }
#cpModal.cp-result-mode .cp-kit-item {
  min-height: 0;
  padding: 10px 8px 10px 0;
  border: 0;
  border-bottom: 1px solid #e7ebe8;
  border-radius: 0;
  background: none;
  box-shadow: none;
  animation: none;
  opacity: 1;
}
#cpModal.cp-result-mode .cp-kit-icon,
#cpModal.cp-result-mode .cp-kit-check { display: none; }
#cpModal.cp-result-mode .cp-kit-item-title { color: #26392b; font-size: 12px !important; letter-spacing: 0 !important; text-transform: none; }
#cpModal.cp-result-mode .cp-kit-item-desc { color: #728074 !important; font-size: 11px !important; }
#cpModal.cp-result-mode .cp-roi-card [style*="color:#fff"] { color: #19251d !important; }
#cpModal.cp-result-mode .cp-report-details > div:last-child {
  padding: 16px 0 !important;
  border: 0 !important;
  border-top: 1px solid #e1e7e2 !important;
  border-radius: 0 !important;
  background: #fff !important;
}
#cpModal.cp-result-mode .cp-report-details > div:last-child [style*="color:#fff"] { color: #283b2c !important; }
#cpModal.cp-result-mode #cpRNetBilling { color: #283b2c !important; }
#cpModal:not(.cp-result-mode) #cpScrollHint { display: none !important; }

@media (max-width: 1050px) {
  #cpModal.cp-result-mode { padding: 0 !important; align-items: stretch !important; }
  #cpModal.cp-result-mode > div { max-height: 100dvh !important; border-radius: 0 !important; }
}
@media (max-width: 680px) {
  #cpModal.cp-result-mode #cpBody { padding: 24px 20px 30px !important; }
  #cpModal.cp-result-mode #cpRKit { font-size: 26px !important; }
  #cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) { grid-template-columns: 1fr !important; padding: 12px 0 18px; }
  #cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div {
    padding: 9px 58px 9px 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #e6ebe7 !important;
  }
  #cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div:last-child { border-bottom: 0 !important; }
  #cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) { grid-template-columns: 1fr !important; }
  #cpModal.cp-result-mode .cp-report-finance > div:not(#cpVariantGrid) > div + div {
    padding-left: 0 !important;
    border-left: 0 !important;
    border-top: 1px solid #e1e7e2 !important;
    padding-top: 16px !important;
  }
  #cpModal.cp-result-mode #cpResult > .cp-report-actions { grid-template-columns: 1fr; }
  #cpModal.cp-result-mode .cp-report-actions > button:last-child { grid-column: 1; }
  #cpModal.cp-result-mode .cp-report-details > div:nth-of-type(2),
  #cpModal.cp-result-mode .cp-kit-float-wrap { grid-template-columns: 1fr !important; }
}

/* Proposal dashboard. The data-only nodes remain mounted for the calculator logic. */
#cpModal.cp-result-mode #cpResult > .cp-report-retained,
#cpModal.cp-result-mode #cpResult > [hidden],
#cpModal.cp-result-mode .cp-report-recommendation[hidden] { display: none !important; }
#cpModal.cp-result-mode > div { max-width: 1120px !important; }
#cpModal.cp-result-mode #cpBody { padding: 28px 32px 34px !important; }
#cpModal.cp-result-mode .cp-report-recommendation {
  display: inline-block;
  margin: 0 0 12px;
  color: #246b4d;
  font: 750 10px/1.4 'Inter', sans-serif;
  letter-spacing: 1.1px;
}
#cpModal.cp-result-mode .cp-report-lead > div:first-of-type { margin: 0 0 20px !important; }
#cpModal.cp-result-mode #cpRKit { font-size: 29px !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding: 0 !important;
  border: 0 !important;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div {
  min-height: 90px !important;
  padding: 14px 16px !important;
  border: 1px solid #2f3533 !important;
  border-radius: 7px !important;
  background: #181c1b !important;
  color: #fff !important;
}
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) span { color: #a5b0ab !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) [id$="Val"] { color: #fff !important; }
#cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) button { bottom: 13px !important; color: #75d1a4 !important; }
#cpModal.cp-result-mode #cpResult > .cp-report-stats { padding-top: 26px !important; }
#cpModal.cp-result-mode .cp-report-stats h3,
#cpModal.cp-result-mode .cp-report-service h3 {
  margin: 0 0 13px;
  color: #1c2822;
  font: 700 17px/1.3 'Inter', sans-serif;
}
#cpModal.cp-result-mode .cp-report-stats-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
#cpModal.cp-result-mode .cp-report-stats-grid > div {
  min-width: 0 !important;
  min-height: 132px !important;
  margin: 0 !important;
  padding: 17px 18px !important;
  border: 1px solid #2f3533 !important;
  border-radius: 7px !important;
  background: #181c1b !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-report-stats-grid > div::before { display: none !important; }
#cpModal.cp-result-mode .cp-report-stats-grid > div > div:first-child {
  min-height: 30px;
  color: #acb7b1 !important;
  font: 650 11px/1.3 'Inter', sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
#cpModal.cp-result-mode .cp-report-stats-grid > div > div:last-child { color: #acb7b1 !important; font-size: 10px !important; }
#cpModal.cp-result-mode .cp-report-stats-grid :is(#cpRAhorro, #cpRPrice, #cpRGen, #cpRCov) {
  margin: 8px 0 4px !important;
  color: #fff !important;
  font: 750 24px/1.15 'Inter', sans-serif !important;
  overflow-wrap: anywhere;
}
#cpModal.cp-result-mode .cp-report-stats-grid #cpRAhorro { color: #75d1a4 !important; }
#cpModal.cp-result-mode .cp-report-overview {
  display: grid !important;
  grid-template-columns: minmax(0, 1.6fr) minmax(260px, 1fr) !important;
  gap: 10px;
  padding: 10px 0 0 !important;
  margin-top: 10px !important;
}
#cpModal.cp-result-mode .cp-report-overview > :is(.cp-roi-card, .cp-report-service) {
  min-width: 0;
  margin: 0 !important;
  padding: 20px 22px !important;
  border: 1px solid #2f3533 !important;
  border-radius: 7px !important;
  background: #181c1b !important;
  box-shadow: none !important;
}
#cpModal.cp-result-mode .cp-report-service h3 { color: #fff; font-size: 16px; }
#cpModal.cp-result-mode .cp-report-service ol { margin: 0; padding: 0; list-style: none; counter-reset: service; }
#cpModal.cp-result-mode .cp-report-service li {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 1px 8px;
  padding: 13px 0;
  border-top: 1px solid #333b37;
  counter-increment: service;
}
#cpModal.cp-result-mode .cp-report-service li::before {
  content: counter(service, decimal-leading-zero);
  grid-row: 1 / 3;
  color: #75d1a4;
  font: 700 11px/1.4 'Inter', sans-serif;
}
#cpModal.cp-result-mode .cp-report-service strong { color: #fff; font: 700 13px/1.3 'Inter', sans-serif; }
#cpModal.cp-result-mode .cp-report-service li span { color: #aeb8b1; font: 400 11px/1.45 'Inter', sans-serif; }
#cpModal.cp-result-mode #cpROIChart > div:nth-of-type(n+2) { display: none !important; }
#cpModal.cp-result-mode .cp-report-overview .cp-roi-card [style*="color:#fff"] { color: #fff !important; }
#cpModal.cp-result-mode #cpROIChart svg { max-height: 240px !important; }
#cpModal.cp-result-mode #cpResult > .cp-report-actions { margin-top: 18px; }
#cpModal.cp-result-mode .cp-report-disclaimer { margin-bottom: 0; }
#cpModal.cp-result-mode #cpScrollHint {
  width: 44px !important;
  height: 44px !important;
  bottom: 14px !important;
  border: 1px solid #69766d !important;
  border-radius: 50% !important;
  background: #141918 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .4) !important;
}
#cpModal.cp-result-mode #cpScrollHint:hover { background: #225d43 !important; }
#cpModal.cp-result-mode #cpScrollHint:focus-visible { outline: 2px solid #94e0b6; outline-offset: 3px; }

/* Dark-gray modal surfaces; proposal cards remain near-black. */
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) > div {
  background: #2b302e !important;
  border-color: #48514b !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) > div > div:first-child {
  background: #2b302e !important;
  border-color: #48514b !important;
  color: #f5f7f5 !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) > div > div:first-child > div > div:first-child { color: #9ee2b8 !important; }
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) > div > div:first-child > div > div:last-child { color: #f5f7f5 !important; }
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) > div > div:first-child > button {
  background: #1a211e !important;
  border-color: #566259 !important;
  color: #f5f7f5 !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-stepper {
  background: #2b302e !important;
  border-color: #48514b !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-step { color: #b6c0b9 !important; }
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-step.is-current { color: #fff !important; }
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-step-dot {
  background: #202622 !important;
  border-color: #59645c !important;
  color: #cbd5cd !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-step.is-current .cp-step-dot {
  background: #286b4d !important;
  border-color: #286b4d !important;
  color: #fff !important;
  box-shadow: 0 0 0 4px rgba(123, 208, 160, .15) !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-step.is-done .cp-step-dot {
  background: #263c30 !important;
  border-color: #498564 !important;
  color: #a8ebbf !important;
}
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) .cp-stepper + div { background: #465149 !important; }
#cpModal:is(.cp-form-mode, .cp-result-mode, .cp-wide) #cpBody {
  background: #2b302e !important;
  color: #f5f7f5 !important;
  scrollbar-color: #69766d transparent !important;
}
#cpModal.cp-form-mode #cpBody p[style*="font-size:18px"],
#cpModal.cp-form-mode #cpBody [style*="color:#fff"] { color: #f5f7f5 !important; }
#cpModal.cp-form-mode #cpBody p[style*="font-size:13px"],
#cpModal.cp-form-mode #cpBody :is([style*="color:#9CA3AF"], [style*="color:#a8a8a8"], [style*="color:#999"], [style*="color:#bbb"]) { color: #bdc8bf !important; }
#cpModal.cp-form-mode #cpBody label { color: #d2dbd4 !important; }
#cpModal.cp-form-mode #cpBody input:not([type="checkbox"]):not([type="radio"]) {
  background: #171d1a !important;
  border-color: #59655b !important;
  color: #fff !important;
}
#cpModal.cp-form-mode #cpBody input::placeholder { color: #a8b4aa !important; }
#cpModal.cp-form-mode .cp-back-btn {
  background: #1b211e !important;
  border-color: #58645b !important;
  color: #f4f7f4 !important;
}
#cpModal.cp-form-mode .cp-back-btn:hover { background: #27372e !important; }
#cpModal.cp-form-mode :is(#cpRegGrid button, #cpS2bContent button, #cpSysGrid > div, #cpS3content button) {
  background: #171d1a !important;
  border-color: #59655b !important;
  color: #f5f7f5 !important;
}
#cpModal.cp-form-mode :is(#cpRegGrid button, #cpS2bContent button, #cpSysGrid > div, #cpS3content button):hover,
#cpModal.cp-form-mode :is(#cpRegGrid button, #cpSysGrid > div, #cpS3content button)[style*="rgba(34"] {
  background: #243b2e !important;
  border-color: #7bc99a !important;
}
#cpModal.cp-form-mode #cpSysGrid span[style*="background:#0D1117"] {
  background: #222a25 !important;
  border-color: #59655b !important;
}
#cpModal.cp-result-mode #cpResult { color: #f5f7f5 !important; }
#cpModal.cp-result-mode #cpRKit,
#cpModal.cp-result-mode .cp-report-stats h3 { color: #f5f7f5 !important; }
#cpModal.cp-result-mode #cpRSub,
#cpModal.cp-result-mode .cp-report-disclaimer { color: #c0cbc2 !important; }
#cpModal.cp-result-mode .cp-title-green,
#cpModal.cp-result-mode .cp-report-recommendation { color: #9ee2b8 !important; }
#cpModal.cp-result-mode #cpResult > .cp-report-actions { border-color: #5b685e !important; }

@media (prefers-reduced-motion: reduce) {
  #cpModal.cp-result-mode #cpScrollHint { animation: none !important; }
}

@media (max-width: 900px) {
  #cpModal.cp-result-mode .cp-report-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  #cpModal.cp-result-mode .cp-report-overview { grid-template-columns: 1fr !important; }
}
@media (max-width: 680px) {
  #cpModal.cp-result-mode #cpBody { padding: 22px 16px 28px !important; }
  #cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) { grid-template-columns: 1fr !important; gap: 8px !important; }
  #cpModal.cp-result-mode .cp-report-lead > div:nth-child(2) > div { min-height: 69px !important; padding: 10px 14px !important; }
  #cpModal.cp-result-mode .cp-report-stats-grid > div { min-height: 118px !important; padding: 14px !important; }
  #cpModal.cp-result-mode .cp-report-stats-grid :is(#cpRAhorro, #cpRPrice, #cpRGen, #cpRCov) { font-size: 20px !important; }
}
