.energy-calc{padding:76px 0;background:#f5f8fc;scroll-margin-top:90px}.calc-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.calc-heading h2{font-size:clamp(27px,3vw,39px);line-height:1.2;letter-spacing:-1.2px;margin:12px 0}.calc-heading p{color:#59728c;max-width:650px;margin:0}.calc-badge{font-size:11px;font-weight:700;color:#426481;background:#e8f1fb;padding:8px 12px;border-radius:30px;white-space:nowrap}.calc-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px}.calc-inputs,.calc-results{padding:30px;border-radius:22px;background:white;border:1px solid #e1e9f2;min-width:0}.calc-mode{border:0;margin:0 0 24px;padding:0}.calc-mode legend,.calc-label,.calc-field-row label{font-size:13px;font-weight:700;color:#18314e}.calc-mode legend{margin-bottom:10px}.calc-mode>div{display:flex;gap:8px;padding:5px;background:#f1f5fa;border-radius:12px}.calc-mode label{flex:1;position:relative;cursor:pointer}.calc-mode input{position:absolute;opacity:0;width:1px;height:1px}.calc-mode span{display:block;padding:12px 8px;text-align:center;border-radius:9px;font-size:12px;font-weight:750;color:#59728c}.calc-mode input:checked+span{background:#12365c;color:#fff;box-shadow:0 4px 12px #12365c20}.calc-mode input:focus-visible+span{outline:3px solid #1175bd;outline-offset:3px}.calc-field-row{display:grid;grid-template-columns:1.1fr 1fr;gap:12px}.calc-label{display:block;margin-top:16px}.calc-inputs input[type=number],.calc-inputs select{display:block;width:100%;min-width:0;margin-top:8px;min-height:46px;padding:10px 12px;border:1px solid #cbd9e7;border-radius:10px;background:white;color:#12365c;font:inherit;font-size:15px}.calc-inputs input[readonly]{background:#f2f6fa;color:#59728c}.calc-inputs input:focus-visible,.calc-inputs select:focus-visible{outline:3px solid #1175bd55;outline-offset:2px}.calc-inputs input[aria-invalid=true]{border-color:#bf3036}.calc-unit{font-size:11px;color:#698098;font-weight:500}.energy-calc input[type=range]{width:100%;accent-color:#e6373c;cursor:pointer;min-height:30px;margin:12px 0 0}.calc-hint{font-size:11px;line-height:1.65;color:#698098;margin:8px 0 0}.calc-results{background:linear-gradient(145deg,#fff,#f4f9ff);display:flex;flex-direction:column}.calc-result-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px;font-weight:750}.calc-result-chip{color:#1175bd;background:#e9f3fd;border-radius:20px;font-size:11px;padding:6px 10px}.calc-totals{display:grid;grid-template-columns:1fr 1fr 1.2fr;gap:10px;margin:22px 0 28px}.calc-totals>div{padding:16px 12px;background:#fff;border:1px solid #e1e9f2;border-radius:13px}.calc-totals span{display:block;font-size:11px;color:#59728c;margin-bottom:6px}.calc-totals strong{font-size:clamp(19px,2.1vw,29px);letter-spacing:-.6px;white-space:nowrap}.calc-totals .calc-year-card{background:#12365c;color:white;border-color:#12365c}.calc-year-card span{color:#c6dbef}.calc-chart-title{display:flex;justify-content:space-between;align-items:center;gap:12px}.calc-chart-title h3{font-size:14px;margin:0}.calc-chart-title>span{font-size:10px;color:#698098;white-space:nowrap}.calc-chart svg{display:block;width:100%;height:auto;margin:12px 0 0;overflow:visible}.calc-month-control{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:12px;color:#59728c;margin-top:12px}.calc-month-control output{font-weight:750;color:#12365c}.calc-chart-detail{font-size:14px;font-weight:750;color:#12365c;margin:8px 0}.calc-explanation{font-size:12px;line-height:1.7;color:#59728c;margin:12px 0 0}.calc-assumptions{margin-top:22px;font-size:12px;color:#59728c;max-width:100%;line-height:1.8}.calc-assumptions summary{cursor:pointer;font-weight:750;color:#12365c}.calc-assumptions a{color:#1175bd;text-decoration:underline}.calc-error{font-size:12px;color:#b02630;background:#fff0f0;padding:10px;border-radius:8px}.energy-calc [hidden]{display:none!important}@media(max-width:1000px){.calc-layout{grid-template-columns:1fr}.calc-heading{align-items:flex-start}.calc-inputs{display:block}}@media(max-width:650px){.energy-calc{padding:50px 0}.calc-heading{display:block}.calc-badge{display:inline-block;margin-top:16px}.calc-inputs,.calc-results{padding:20px 16px;border-radius:16px}.calc-totals{gap:6px}.calc-totals>div{padding:12px 8px}.calc-totals strong{font-size:19px}.calc-totals span{font-size:10px}.calc-chart-title{align-items:flex-start}.calc-field-row{gap:8px}}@media(prefers-reduced-motion:no-preference){.calc-mode span{transition:background .2s,color .2s}}
.calc-view-label{display:flex;align-items:center;gap:6px;font-size:11px;color:#59728c}.calc-view-label select{max-width:180px;padding:7px;border:1px solid #cbd9e7;border-radius:8px;color:#12365c;background:#fff;font:inherit}.calc-chart-title{flex-wrap:wrap}.calc-totals strong{font-size:clamp(18px,2vw,27px)}.calc-chart-detail{line-height:1.7}

#calc-rate-source{color:#1175bd;text-decoration:underline} #calc-tariff-fields{padding-top:4px} #calc-tariff-fields .calc-field-row{grid-template-columns:.7fr 1.3fr}

.calc-register {
  margin-top: auto;
  padding: 28px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  background: #fff1f2;
  border: 1px solid #f6d1d4;
  border-radius: 18px;
  position: relative;
  top: 16px;
}
.calc-register > div { flex: 1 1 210px; }
.calc-register strong { font-size: 21px; line-height: 1.3; color: #12365c; display: block; letter-spacing: -.5px; }
.calc-register p { margin: 8px 0 0; color: #50647b; font-size: 14px; line-height: 1.65; }
.calc-register .button { flex: 1 1 190px; min-height: 60px; padding: 18px 30px; font-size: 17px; font-weight: 800; border-radius: 13px; box-shadow: 0 8px 22px #e6373c30; }
.calc-register .button span { font-size: 23px; }
.calc-register .button:focus-visible { outline: 3px solid #1175bd; outline-offset: 4px; }
@media (max-width: 650px) {
  .calc-register { padding: 22px 18px; gap: 18px; }
  .calc-register > div { flex-basis: 100%; }
  .calc-register strong { font-size: 20px; }
  .calc-register .button { flex-basis: 100%; width: 100%; }
}
