.rointe-new-calc{font-family:Poppins,Arial,sans-serif;max-width:1200px;margin:0 auto;padding:1rem}.calc-grid{display:grid;grid-template-columns:65% 1fr;gap:1.5rem}.calc-main,.calc-summary{background:#fff;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.08);padding:1.25rem}.calc-summary{height:fit-content;position:sticky;top:20px}.calc-card,.nested-card{border:1px solid #e5e7eb;border-radius:14px;padding:1rem;margin-bottom:1rem}.nested-card{margin-top:1rem;background:#fafafa}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}label{font-weight:600;color:#333;display:block}input,select{width:100%;margin-top:.35rem;border:1px solid #ccc;border-radius:25px;padding:.65rem 1rem;font-family:Poppins,Arial,sans-serif}.btn-solid,.btn-outline,button{width:100%;border-radius:25px;padding:.75rem 1.2rem;cursor:pointer;font-weight:600;border:2px solid #42b029}.btn-solid{background:#42b029;color:#fff}.btn-outline{background:#fff;color:#42b029}.full{width:100%;margin-top:1rem}.actions {
    display: flex;
    gap: .75rem;
    align-items: center;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    align-content: center;
}
.hidden{display:none!important}.error-box{background:#fff1f1;color:#a40000;border:1px solid #f2b8b8;padding:.85rem 1rem;border-radius:12px;margin-bottom:1rem}.info-box{background:#f5f7f5;border:1px solid #dbe8db;border-radius:12px;padding:.8rem 1rem;color:#4b5563;font-size:.9rem;margin-top:15px}.edit-notice{background:#fff8e1;color:#6b4e00;border:1px solid #efd27b;border-radius:12px;padding:.8rem 1rem;margin-bottom:1rem}.summary-item{border:1px solid #eee;border-radius:12px;padding:.75rem;margin-bottom:.75rem}.summary-title{font-weight:700;margin-bottom:.25rem}.summary-meta{color:#4b5563;font-size:.92rem;margin-bottom:.35rem}.summary-power{font-weight:700;margin:.35rem 0}.summary-actions{display:flex;gap:.5rem;margin-top:.5rem}.summary-actions button{padding:.45rem .8rem;font-size:.85rem}.muted{color:#6b7280}.wizard-steps{display:flex;gap:.5rem;margin:1rem 0}.wizard-step{flex:1;padding:.7rem;border-radius:999px;background:#f3f4f6;color:#6b7280;font-weight:600;text-align:center;font-size:.9rem}.wizard-step.is-active{background:#42b029;color:#fff}.wizard-panel{display:none}.wizard-panel.is-active{display:block}.rec-category{margin-top:1rem}.rec-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.rec-card{border:1px solid #e5e7eb;border-radius:16px;padding:1rem;background:#fff;text-align:center}.rec-card img{width:100%;height:140px;object-fit:contain}.rec-card h5{margin:.5rem 0 .2rem}.rec-tag{display:inline-block;font-size:.75rem;background:#eef8ec;color:#2f7c1f;border-radius:999px;padding:.2rem .55rem;margin:.25rem 0}.rec-bullets{margin:.35rem auto .55rem;max-width:95%;font-size:.78rem;line-height:1.35;color:#4b5563;text-align:center}.rec-bullets div{margin:.12rem 0}.rec-card a{display:inline-block;margin-top:.5rem;color:#42b029;font-weight:700;text-decoration:none}@media(max-width:900px){.calc-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.wizard-steps{flex-direction:column}}.rointe-new-calc *,.rointe-new-calc *::before,.rointe-new-calc *::after{box-sizing:border-box}.rointe-new-calc input,.rointe-new-calc select,.rointe-new-calc textarea{width:100%;max-width:100%;box-sizing:border-box}
.lead-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.lead-modal__box{background:#fff;border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:1.5rem;max-width:720px;width:100%;position:relative}.lead-modal__close{position:absolute;top:.75rem;right:.75rem;width:36px;height:36px;border-radius:50%;padding:0;line-height:1;background:#fff;color:#42b029}.lead-modal.hidden{display:none!important}
#recommendationsWrap {margin-top: 2rem;}
/* Popup formulario informe */
.lead-modal{position:fixed;inset:0;background:rgba(17,24,39,.62);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;font-family:Poppins,Arial,sans-serif}.lead-modal.hidden{display:none!important}.lead-modal__box{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.28);padding:28px;position:relative;color:#222}.lead-modal__close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;padding:0;line-height:1;border:2px solid #e5e7eb!important;background:#fff!important;color:#43B02A!important;font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center}.lead-modal__header{padding-right:42px;margin-bottom:18px}.lead-modal__header h3{margin:0 0 6px 0;font-size:1.45rem;line-height:1.2;color:#222;font-weight:700}.lead-modal__header p{margin:0;color:#5f6673;font-size:.95rem;line-height:1.45}.lead-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.lead-field{display:block;font-weight:600;font-size:.92rem;color:#333;line-height:1.25}.lead-field--full{grid-column:1/-1}.lead-field input,.lead-field select{display:block;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-top:7px!important;border:1px solid #cfd4dc!important;border-radius:25px!important;padding:12px 16px!important;font-size:1rem!important;line-height:1.2!important;height:46px!important;background:#fff!important;color:#222!important;font-family:Poppins,Arial,sans-serif!important;box-shadow:none!important;outline:none!important}.lead-field input:focus,.lead-field select:focus{border-color:#43B02A!important;box-shadow:0 0 0 3px rgba(67,176,42,.16)!important}.lead-field input::placeholder{color:#9ca3af}.lead-consent{display:grid!important;grid-template-columns:20px 1fr;gap:10px;align-items:start;margin:8px 0 16px 0!important;font-weight:400!important;color:#4b5563!important;font-size:.88rem!important;line-height:1.4!important}.lead-consent input{width:18px!important;height:18px!important;min-width:18px!important;margin:1px 0 0 0!important;accent-color:#43B02A}.lead-error-box{background:#fff1f1;color:#a40000;border:1px solid #f2b8b8;padding:12px 14px;border-radius:12px;margin:12px 0;font-size:.92rem;line-height:1.4}.lead-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.lead-actions button{min-height:44px}.lead-actions .btn-solid{flex:1 1 260px}.lead-actions .btn-outline{flex:0 0 auto}@media(max-width:700px){.lead-modal{align-items:flex-start;padding:12px}.lead-modal__box{padding:22px 18px;border-radius:18px}.lead-form-grid{grid-template-columns:1fr;gap:12px}.lead-actions{flex-direction:column}.lead-actions .btn-outline,.lead-actions .btn-solid{width:100%;flex:auto}}
a {color:#43b02a;text-decoration:none;}

/* Room step organisation */
.room-section{
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:1rem;
  margin-top:1rem;
  background:#f5f5f5;
}
.room-section:first-of-type{margin-top:.75rem;}
.room-section h4 {
    margin: 0 0 .85rem;
    font-size: 1.5rem;
    color: #43b02a;
    font-weight: 700;
}
.calculated-area-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    width: 100%;
    margin-top: 1rem;
    padding: 1rem 1.15rem;
    font-size: 1rem;
    border: 1px solid #dbe8db;
    background: #6b7280;
    border-radius: 50px;
}
.calculated-area-box span:first-child{
  color:#ffffff;
  font-weight:600;
}
.calculated-area-box strong{
  font-size:1.35rem;
  color:#1f2937;
}


/* Summary option readability */
.summary-option-label{
  display:inline-block;
  font-style:italic;
  font-weight:700;
  color:#4b5563;
  background:#f5f7f5;
  border-left:3px solid #43B02A;
  padding:.08rem .35rem;
  margin:.08rem .25rem .08rem 0;
  border-radius:4px;
}


/* Summary card - option 2 layout */
.summary-card-v2{
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:0;
  margin-bottom:1rem;
  overflow:hidden;
  background:#fff;
  box-shadow:0 8px 24px rgba(17,24,32,.08);
}

.summary-card-v2 .summary-card-header{
  position:relative;
  display:flex;
  gap:.9rem;
  align-items:center;
  padding:1.05rem 1rem 2.25rem;
  background:linear-gradient(135deg,#43B02A 0%,#2f8f21 100%);
  color:#fff;
}

.summary-room-icon{
  flex:0 0 46px;
  width:46px;
  height:46px;
  border:2px solid rgba(255,255,255,.9);
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.6rem;
  font-weight:700;
  line-height:1;
}

.summary-card-heading{
  min-width:0;
}

.summary-card-v2 .summary-title{
  margin:0 0 .35rem;
  font-size:1.35rem;
  line-height:1.15;
  font-weight:800;
  color:#fff;
}

.summary-card-v2 .summary-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem .55rem;
  align-items:center;
  margin:0;
  color:rgba(255,255,255,.94);
  font-size:.9rem;
  line-height:1.25;
}

.summary-card-v2 .summary-meta span{
  display:inline-flex;
  align-items:center;
}

.summary-card-v2 .summary-meta span:not(:last-child)::after{
  content:"•";
  margin-left:.55rem;
  opacity:.75;
}

.summary-power-pill{
  width:max-content;
  max-width:calc(100% - 2rem);
  margin:-1.7rem auto 1rem;
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  background:#fff;
  color:#111820;
  border-radius:999px;
  padding:.75rem 1.35rem;
  box-shadow:0 8px 20px rgba(17,24,32,.18);
  font-size:1.35rem;
}

.summary-power-pill span{
  color:#43B02A;
  font-size:1.45rem;
  line-height:1;
}

.summary-power-pill strong{
  font-weight:900;
  letter-spacing:.01em;
}

.summary-options-list{
  display:flex;
  flex-direction:column;
  gap:.55rem;
  padding:0 1rem .35rem;
  margin-top: 20px;
}

.summary-option-row{
  display:grid;
  grid-template-columns:minmax(96px,auto) 1fr;
  align-items:center;
  gap:.75rem;
  border:1px solid #e5e7eb;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
  line-height:1.35;
}

.summary-option-label{
  display:flex;
  align-items:center;
  align-self:stretch;
  font-style:normal;
  font-weight:800;
  color:#23851a;
  background:#eef8ec;
  border-left:0;
  padding:.7rem .75rem;
  margin:0;
  border-radius:0;
  white-space:nowrap;
}

.summary-option-devices{
  padding:.7rem .7rem .7rem 0;
  color:#111820;
  font-size:.94rem;
}

.summary-thermostats{
  margin:.65rem 1rem 0;
  color:#4b5563;
  font-size:.9rem;
}

.summary-card-v2 .summary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.75rem;
  padding:1rem;
  margin:0;
}

.summary-card-v2 .summary-actions button{
  min-height:44px;
  border-radius:50px;
  padding:.65rem .8rem;
  font-size:.92rem;
  font-weight:800;
}

.summary-card-v2 .summary-edit-btn{
  background:#fff;
  color:#23851a;
  border:2px solid #43B02A;
}

.summary-card-v2 .summary-edit-btn:hover{
  background:#eef8ec;
  color:#23851a;
  border-color:#43B02A;
}

.summary-card-v2 .summary-delete-btn{
  background:#fff;
  color:#d00000;
  border:2px solid #e60000;
}

.summary-card-v2 .summary-delete-btn:hover{
  background:#fff1f1;
  color:#b00000;
  border-color:#d00000;
}

@media(max-width:520px){
  .summary-card-v2 .summary-card-header{
    align-items:flex-start;
  }
  .summary-option-row{
    grid-template-columns:1fr;
    gap:0;
  }
  .summary-option-devices{
    padding:.7rem .75rem;
  }
}



/* Summary dual power display: radiators + storage heaters */
.summary-power-pill.has-storage-power{
  flex-direction:column;
  gap:.18rem;
  padding:.58rem 1.25rem .68rem;
  min-width:158px;
}

.summary-power-main{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  line-height:1;
}

.summary-power-stack{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.1rem;
}

.summary-power-stack small{
  font-size:.68rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:#6b7280;
}

.summary-power-sub{
  font-size:.74rem;
  line-height:1.1;
  color:#4b5563;
  white-space:nowrap;
}

.summary-power-sub strong{
  font-weight:900;
  color:#111820;
}

.lead-field.hidden{display:none!important}
.low-height-box{margin-top:1rem;background:#f5f7f5;border:1px solid #dbe8db;border-radius:12px;padding:.8rem 1rem;color:#4b5563;font-size:.9rem}.low-height-box .checkbox-line{display:flex;align-items:flex-start;gap:.65rem;margin:0;color:#333;font-weight:600}.low-height-box input[type="checkbox"]{width:auto;min-width:18px;height:18px;margin:.1rem 0 0 0;padding:0;accent-color:#42b029}.low-height-help{margin-top:.45rem;line-height:1.45}.low-height-help b,.low-height-help strong{font-weight:700;color:#111820}

/* ===== ROINTE OPTIONAL ACS AND AIR-CONDITIONING MODULES ===== */
.rointe-new-calc .module-selector{margin-bottom:18px}.rointe-new-calc .module-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px}.rointe-new-calc .module-option{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;border:1px solid #dce4de;border-radius:12px;background:#fff;cursor:pointer;font-weight:600}.rointe-new-calc .module-option input{width:18px;height:18px;accent-color:#43b02a}.rointe-new-calc .module-option:has(input:checked){border-color:#43b02a;background:#f3faef}.rointe-new-calc .module-option--complete{border-style:dashed}.rointe-new-calc .module-result-inline{display:flex;flex-direction:column;gap:3px;margin-top:8px;padding:10px 12px;border:1px solid #DADDE2;border-left:3px solid #43B02A;border-radius:10px;background:#FFFFFF}.rointe-new-calc .module-result-inline strong{color:#43B02A}.rointe-new-calc .module-result-inline small{color:#505759}.rointe-new-calc .module-warning{display:block;margin-top:8px;padding:8px 10px;border:1px solid #DADDE2;border-left:3px solid #43B02A;border-radius:8px;background:#FFFFFF;color:#505759;font-size:12px}.rointe-new-calc .module-summary-card{margin-top:12px}.rointe-new-calc #hotWaterProjectFields,.rointe-new-calc #coolingFields{border-left:4px solid #43B02A}@media(max-width:720px){.rointe-new-calc .module-options{grid-template-columns:1fr}}
/* Etiqueta técnica con aclaración secundaria */
.field-label-with-help{display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}
.field-label-with-help>small{font-size:.72em;font-weight:500;color:#505759;line-height:1.2}

