/* Reusable energy-rating and energy-projection components. */
.deesco-energy-rating-widget { min-width:0; padding:1rem; border:1px solid var(--p-surface-200, #e5e7eb); border-radius:1rem; background:var(--p-surface-50, #f8faf9); }
.deesco-energy-rating-widget__head { display:flex; align-items:center; gap:1rem; }
.deesco-energy-rating-widget h3 { margin:0; color:var(--p-text-color, #1e2d25); font-size:.95rem; font-weight:800; }
.deesco-energy-rating-widget__score { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; min-width:2.15rem; min-height:2rem; margin-left:auto; padding:.25rem .55rem; border-radius:.35rem; font-size:1rem; font-weight:800; line-height:1; }
.deesco-energy-rating-widget__score-label, .deesco-energy-rating-widget__empty { margin:.25rem 0 .9rem; color:var(--p-text-muted-color, #64756a); font-size:.82rem; }
.deesco-energy-rating-widget__histograms { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:1.1rem; margin-top:.9rem; }
.deesco-energy-rating-widget__histograms > section { min-width:0; }
.deesco-energy-rating-widget__histograms p { margin:0 0 .5rem; color:var(--p-text-muted-color, #64756a); font-size:.72rem; font-weight:700; line-height:1.3; }
.deesco-energy-rating-widget__scale { display:flex; flex-direction:column; gap:.25rem; }
.deesco-energy-rating-widget__scale .deesco-housing-dpe-scale-row { position:relative; display:flex; align-items:center; justify-content:space-between; min-height:2rem; }
.deesco-energy-rating-widget__scale div[style*="clip-path"] { display:flex; align-items:center; height:2rem !important; }
.deesco-energy-rating-widget__scale div[style*="clip-path"] > span { padding-left:.7rem; }
.deesco-energy-rating-widget__scale .deesco-housing-dpe-score-value { position:relative; z-index:2; flex:0 0 auto; margin-left:auto; }
.deesco-energy-rating-widget__scale .deesco-housing-dpe-score-value > div { min-width:2.35rem; text-align:center; }
.deesco-energy-rating-widget__scale .deesco-housing-dpe-score-connector { position:absolute; z-index:1; top:50%; right:0; width:100%; height:1px; background:var(--p-slate-800, #1e293b); transform:translateY(-50%); }

/* Reuse the calibrated DPE/eDPE scale treatment from the Housing page for
   both current and potential ratings shown on the eDPE result page. */
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale div[style*="clip-path"] { display:flex; align-items:center; height:2rem !important; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale div[style*="clip-path"] > span { padding-left:.7rem; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale div[style*="clip-path"] + .deesco-housing-dpe-score-value { display:flex; min-width:3.1rem; align-items:center; justify-content:center; text-align:center; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale .deesco-housing-dpe-scale-row { position:relative; display:flex; align-items:center; justify-content:space-between; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale .deesco-housing-dpe-score-value { position:relative; z-index:2; flex:0 0 auto; margin-left:auto; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale .deesco-housing-dpe-score-value > div { width:100%; text-align:center; }
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale .deesco-housing-dpe-score-connector { position:absolute; z-index:1; top:50%; right:0; width:100%; height:1px; background:var(--p-slate-800, #1e293b); transform:translateY(-50%); }

/* On the eDPE comparison, each rating remains easier to read when its energy
   and emissions scales form one continuous vertical sequence. */
body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__histograms {
  grid-template-columns: minmax(0, 1fr);
  gap: 1rem;
}

.deesco-energy-projection__head { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1.35rem 1.35rem .25rem; }
.deesco-energy-projection__kicker { margin:0 0 .25rem; color:var(--p-primary-700, #247d47); font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.deesco-energy-projection__head h2 { margin:0; color:var(--p-text-color, #1e2d25); font-size:1.3rem; line-height:1.2; }
.deesco-energy-projection__head p:not(.deesco-energy-projection__kicker) { margin:.4rem 0 0; color:var(--p-text-muted-color, #64756a); font-size:.9rem; }
.deesco-energy-projection__badge { display:inline-flex; align-items:center; gap:.4rem; padding:.45rem .7rem; border-radius:999px; background:rgba(46,159,89,.12); color:var(--p-primary-700, #247d47); font-size:.78rem; font-weight:700; white-space:nowrap; }
.deesco-energy-projection__body { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(15rem,.85fr); gap:1rem; padding:1.25rem 1.35rem 1.35rem; }
.deesco-energy-projection__charts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.deesco-energy-projection__summary { display:flex; flex-direction:column; gap:.75rem; border-radius:1rem; padding:1rem; color:#fff; background:linear-gradient(145deg,var(--p-primary-700, #247d47),var(--p-primary-500, #2e9f59)); box-shadow:0 .875rem 1.75rem rgba(24,103,61,.18); }
.deesco-energy-projection__summary span { font-size:.74rem; font-weight:700; letter-spacing:.08em; opacity:.8; text-transform:uppercase; }
.deesco-energy-projection__summary strong { font-size:1.75rem; line-height:1; letter-spacing:-.04em; }
.deesco-energy-projection__summary p { margin:0; font-size:.8rem; line-height:1.35; opacity:.9; }
.deesco-energy-projection__status { min-height:1.15rem; padding:0 1.35rem 1.15rem; color:var(--p-text-muted-color, #64756a); font-size:.78rem; }
@media (max-width: 760px) { .deesco-energy-projection__head { padding:1.1rem 1rem .15rem; flex-direction:column; } .deesco-energy-projection__body { grid-template-columns:1fr; padding:1rem; } .deesco-energy-projection__charts { grid-template-columns:1fr; } .deesco-energy-projection__status { padding:0 1rem 1rem; } }
@media (min-width: 48rem) { .deesco-energy-rating-widget__scale div[style*="clip-path"] { height:2.2rem !important; } .deesco-energy-rating-widget__scale div[style*="clip-path"] > span { padding-left:.9rem; } body.deesco-connected-lab [data-exact-edpe-energy-evolution="true"] .deesco-energy-rating-widget__scale div[style*="clip-path"] { height:2rem !important; } }
