body>main.heater-demo{margin:var(--header) auto 0;max-width:1060px;padding:28px 24px 48px;height:auto;overflow:visible;line-height:1.5;font-size:18px;--accent:#365c7b}.heater-demo h1{font-size:clamp(32px,5vw,50px);line-height:1.12}.heater-demo h2{font-size:25px;line-height:1.25;margin:0 0 14px}.heater-demo h3{font-size:21px}.heater-demo p{max-width:80ch}.heater-demo .muted{color:#616864;font-size:16px}.heater-demo .panel{border:2px solid #365c7b;border-radius:12px;padding:22px;margin:22px 0;background:#fffdf8}.heater-demo .settings{background:#e8eef2}.heater-demo .fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.heater-demo label{display:block;min-width:0}.heater-demo input[type=number],.heater-demo select{display:block;width:100%;font:inherit;color:inherit;min-height:48px;border:1.5px solid #738276;border-radius:7px;background:#fffdf8;padding:10px;margin-top:7px}.heater-demo button{font:inherit;cursor:pointer;min-height:44px;border:1.5px solid #365c7b;border-radius:8px;padding:10px 14px;color:#365c7b;background:#e8eef2}.heater-demo button:focus-visible,.heater-demo input:focus-visible,.heater-demo select:focus-visible,.heater-demo a:focus-visible,.heater-demo summary:focus-visible{outline:3px solid #ae6b30;outline-offset:3px}.heater-demo .quick{display:flex;flex-wrap:wrap;gap:10px}.heater-demo .scheme{display:grid;grid-template-columns:1fr 1.3fr 1fr;grid-template-rows:1fr 1fr;gap:16px;align-items:center;max-width:740px;margin:26px auto}.heater-demo .boiler{margin:0;min-width:0;grid-column:2;grid-row:1/3;text-align:center}.heater-demo .boiler svg{width:100%;max-width:190px;height:auto;display:block;margin:auto}.heater-demo .boiler strong{display:block;color:#365c7b}.heater-demo .fixture{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:transparent;color:#27343b;min-height:120px;position:relative}.heater-demo .fixture svg{height:50px;width:50px;fill:none;stroke:#365c7b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.heater-demo .fixture.active{background:#e5efe5;border-color:#41664d;box-shadow:0 0 0 1px #41664d}.heater-demo .fixture small{font-size:15px}.heater-demo .fixture:nth-of-type(1){grid-column:1;grid-row:1}.heater-demo .fixture:nth-of-type(2){grid-column:3;grid-row:1}.heater-demo .fixture:nth-of-type(3){grid-column:1;grid-row:2}.heater-demo .fixture:nth-of-type(4){grid-column:3;grid-row:2}.heater-demo .check{display:flex;align-items:flex-start;gap:10px;margin:18px 0}.heater-demo .check input{width:22px;height:22px;flex:0 0 22px;accent-color:#41664d}.heater-demo .metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.heater-demo .metric{padding:14px;background:#e8eef2;border-radius:8px}.heater-demo .metric strong{display:block;font-size:29px;color:#365c7b}.heater-demo .verdict{padding:16px;border-radius:8px;border-left:5px solid #41664d;background:#e5efe5}.heater-demo .verdict.short{border-color:#ae6b30;background:#f2e9dd}.heater-demo .table-wrap{overflow-x:auto}.heater-demo table{width:100%;border-collapse:collapse;font-size:17px}.heater-demo th,.heater-demo td{padding:12px 8px;border-bottom:1px solid #d8d7ce;text-align:left;vertical-align:top}.heater-demo td small{display:block;color:#616864}.heater-demo .bar{height:10px;max-width:100%;background:#e0e3de;border-radius:8px;margin:8px 0;overflow:hidden}.heater-demo .bar span{display:block;background:#41664d;height:100%;transition:width .3s}.heater-demo .short .bar span{background:#ae6b30}.heater-demo .recommend{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.heater-demo .recommend>div{border:1px solid #41664d;border-radius:8px;padding:16px}.heater-demo .recommend strong{font-size:26px;display:block;color:#41664d}.heater-demo details{border-top:1px solid #c9cec7;padding:18px 0}.heater-demo summary{font-size:20px;cursor:pointer;font-weight:bold;min-height:44px}.heater-demo .notice{border-left:4px solid #ae6b30;padding:14px;background:#f2e9dd}.heater-demo .error{color:#994e3f;font-weight:bold}.heater-demo a{color:#365c7b;text-underline-offset:3px}.heater-demo .contact-box{border:2px solid #246d6b;border-radius:12px;padding:22px;margin:28px 0}.heater-demo .contact-box .button{display:block;text-align:center;white-space:normal}.heater-demo .hero-messengers a{font-size:18px;padding:12px 4px}.heater-demo [hidden]{display:none!important}@media(max-width:700px){body>main.heater-demo{padding:20px 16px 35px}.heater-demo .fields{grid-template-columns:1fr 1fr}.heater-demo .panel{padding:16px}.heater-demo .scheme{gap:10px;grid-template-columns:1fr 1fr 1fr}.heater-demo .fixture{padding:8px 4px;font-size:16px;min-height:115px}.heater-demo .boiler strong{font-size:17px}.heater-demo .metrics{grid-template-columns:1fr}.heater-demo .metric{display:flex;justify-content:space-between;align-items:center;gap:12px}.heater-demo .metric strong{font-size:25px}.heater-demo .recommend{grid-template-columns:1fr}.heater-demo table{font-size:15px}.heater-demo .quick button{flex:1 1 130px}.heater-demo .hero-messengers{gap:6px}}@media(max-width:360px){.heater-demo .fields{grid-template-columns:1fr}.heater-demo .metric{display:block}}@media(prefers-reduced-motion:reduce){.heater-demo .bar span{transition:none}}

/* Keep primary actions legible; the generic link rule must not recolour buttons. */
.heater-demo a.button{color:#fffdf8;background:#365c7b;border-color:#365c7b;display:flex;justify-content:center;align-items:center;min-height:52px;line-height:1.35;text-align:center;padding:14px 18px;white-space:normal}
.heater-demo .contact-box .hero-messengers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}
.heater-demo .contact-box .hero-messengers a{display:flex;align-items:center;justify-content:center;border:1.5px solid #246d6b;border-radius:8px;color:#246d6b;background:#e4efeb;font-size:17px;padding:12px 4px;white-space:nowrap}
.heater-demo .basic-fields{grid-template-columns:1fr 1fr}.heater-demo .temperature-settings{margin-top:16px;padding-bottom:0}.heater-demo .temperature-settings summary{font-size:17px}.heater-demo .temperature-settings summary span{font-weight:normal}
.heater-demo .live-summary{padding:18px;border:2px solid #41664d;background:#e5efe5;border-radius:12px;margin:20px 0}.heater-demo .live-summary strong{font-size:23px;display:block;line-height:1.3;color:#41664d}.heater-demo .live-summary span{display:block;margin:8px 0}.heater-demo .live-summary.short{border-color:#ae6b30;background:#f2e9dd}.heater-demo .live-summary.short strong{color:#865122}
.heater-demo .result-link{display:inline-flex;min-height:44px;align-items:center;font-weight:bold;text-decoration:underline}.heater-demo .result-jump{margin-top:18px}.heater-demo #results,.heater-demo #measure-flow{scroll-margin-top:calc(var(--header) + 18px)}
.heater-demo .inline-measure{display:inline-flex;min-height:44px;align-items:center;text-decoration:underline}.heater-demo .scheme{margin:18px auto}.heater-demo #tool-status{overflow-wrap:anywhere}.heater-demo label:focus-within{scroll-margin-top:calc(var(--header) + 16px)}
@media(max-width:700px){.heater-demo h1{font-size:30px;margin:20px 0 14px}.heater-demo .live-summary strong{font-size:21px}.heater-demo .basic-fields{grid-template-columns:1fr}.heater-demo .contact-box .hero-messengers a{font-size:16px}.heater-demo .contact-box{padding:16px}}

.heater-demo #heater-start{scroll-margin-top:calc(var(--header) + 18px)}
