:root{--ink:#18323b;--muted:#61717a;--teal:#147d88;--dark:#122d36;--line:#dce5e7;--paper:#f3f6f5;--white:#fff;--amber:#f1bf66;--radius:12px;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,summary{cursor:pointer}a{color:inherit}button:disabled{opacity:.55;cursor:wait}input,select{width:100%;min-width:0;min-height:43px;padding:10px 12px;background:#fff;color:var(--ink);border:1px solid #cbd7db;border-radius:7px}input:focus,select:focus,button:focus-visible,summary:focus-visible{outline:3px solid #66b5bc;outline-offset:2px}input:disabled{background:#edf1f2;color:#88969b}label{display:block;font-size:13px;font-weight:600;line-height:1.5}label input,label select{margin-top:6px}h1,h2,h3,p{margin:0}h1{font-size:clamp(32px,4.2vw,49px);font-weight:600;line-height:1.15;letter-spacing:-1.6px}h2{font-size:23px;letter-spacing:-.5px;font-weight:600}h3{font-size:18px;font-weight:600}.shell{max-width:1180px;margin:auto;padding-left:32px;padding-right:32px}.masthead{background:var(--dark);color:#fff}.brand-row{display:flex;justify-content:space-between;align-items:center;padding-top:26px;padding-bottom:25px;border-bottom:1px solid #ffffff17}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;letter-spacing:3px;font-size:20px;font-weight:700}.brand-symbol{display:grid;place-items:center;width:37px;height:42px;border:1px solid #93b7bb;border-radius:7px;font-size:27px;color:#8ecbd0;letter-spacing:0}.brand-sub{display:block;font-size:8px;letter-spacing:2.4px;color:#9db6bb;margin-top:4px}.connection{font-size:12px;display:flex;align-items:center;gap:8px;color:#c7d9dc}.connection::before{content:'';width:7px;height:7px;background:#e9bf66;border-radius:50%}.connection.online::before{background:#68ccb4}.connection.offline::before{background:#fa9180}.intro{padding-top:32px;padding-bottom:42px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--teal);margin-bottom:9px}.intro .eyebrow{color:#8ac2c8}.intro>p:not(.eyebrow){margin-top:17px;max-width:510px;font-size:15px;line-height:1.7;color:#b9cbd0}.intro-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:23px}.intro-tags span{border:1px solid #ffffff25;border-radius:20px;padding:6px 11px;font-size:11px;color:#cbdde0}.workspace{padding-top:26px}.toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:24px}.small-label{font-size:9px;letter-spacing:1.5px;font-weight:700;color:var(--muted);display:block;margin-bottom:8px}.button-group{display:flex;gap:8px;flex-wrap:wrap}.button{border:1px solid #cbd7db;border-radius:7px;font-size:12px;font-weight:600;min-height:39px;padding:9px 14px;background:white;color:var(--ink);transition:background .15s}.button:hover{background:#eaf1f2}.button.primary{background:var(--teal);border-color:var(--teal);color:white;min-height:49px;min-width:215px;font-size:14px}.button.primary:hover{background:#0d626c}.button.primary span{margin-left:20px}.connection-settings{max-width:410px;flex:1;font-size:12px}.connection-settings>summary{text-align:right;padding:10px 0;color:var(--muted)}.connection-settings label{margin-top:10px}.inline{display:flex;gap:8px}.inline input{margin-top:0}.hint{font-size:12px;font-weight:400;color:var(--muted);line-height:1.65;margin-top:7px}.panel{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:25px;margin-bottom:20px;box-shadow:0 2px 4px #13364003}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.load-list{display:grid;gap:14px}.load-card{border:1px solid var(--line);background:#fafcfc;border-radius:9px;padding:17px}.load-top{display:grid;grid-template-columns:minmax(130px,1.5fr) 72px 115px minmax(105px,1fr) 33px;gap:12px;align-items:end}.load-card .current-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.unit{float:right;font-size:11px;font-weight:400;color:var(--muted)}.icon-button{border:0;background:transparent;color:#7e8d93;font-size:19px;padding:9px 4px;min-height:43px}.icon-button:hover{color:#ad3636}.load-schedule{display:flex;align-items:flex-start;gap:22px;margin-top:15px;flex-wrap:wrap}.checkbox{display:flex;gap:8px;align-items:center;font-size:12px;min-height:39px;white-space:nowrap}.checkbox input{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--teal)}.periods{display:flex;gap:9px;flex-wrap:wrap;align-items:flex-end;flex:1}.period{display:flex;align-items:flex-end;gap:7px}.period input{width:120px;min-height:37px;padding:7px 9px}.period label{font-size:10px;color:var(--muted)}.period .icon-button{min-height:37px}.period-add{font-size:11px;min-height:37px}.fields{display:grid;gap:16px;margin-bottom:16px}.fields.two{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid>.panel{margin-bottom:0}.mini-icon{color:var(--teal);font-size:25px}.battery-energy{margin-top:12px;font-size:13px;color:var(--teal);font-weight:600}.advanced{border-top:1px solid var(--line);margin-top:20px;padding-top:15px;font-size:12px}.advanced>summary{font-weight:600;color:var(--muted)}.advanced>label,.advanced>.fields{margin-top:16px}.scope-note{margin-top:24px;display:flex;gap:10px;padding:16px;background:#f1f6f6;border-radius:8px;font-size:12px}.scope-note p{color:var(--muted);margin-top:5px;line-height:1.6}.scope-dot{flex:none;width:8px;height:8px;margin-top:4px;background:var(--teal);border-radius:50%}.calculate-bar{display:flex;align-items:center;justify-content:space-between;padding:22px 0 30px;gap:20px}.calculate-bar>p{font-size:12px;color:var(--muted)}.message{padding:13px 17px;margin-bottom:18px;border-radius:8px;font-size:13px;line-height:1.6;background:#eaf3f4;border:1px solid #c2dcdf}.message.error{background:#fff0ed;border-color:#efc3ba;color:#9c3526}.message.warning{background:#fff7e9;border-color:#ecd7b2;color:#79571d}.results{border-top:1px solid #d4dfe1;padding-top:28px}.summary-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:12px;margin-bottom:20px}.metric{padding:21px;background:white;border:1px solid var(--line);border-radius:10px}.metric.recommended{background:var(--dark);color:white;border-color:var(--dark)}.metric-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.recommended .metric-label{color:#adc8cc}.metric-value{font-size:24px;letter-spacing:-.6px;font-weight:600;margin-top:12px}.metric-value small{font-size:13px;font-weight:400;letter-spacing:0}.metric-sub{font-size:11px;color:var(--muted);margin-top:8px;line-height:1.5}.recommended .metric-sub{color:#b8d4d8}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-size:10px;color:var(--muted);font-weight:600;white-space:nowrap;padding:12px 12px;border-bottom:1px solid var(--line);background:#f6f9f9}td{padding:15px 12px;border-bottom:1px solid #e9eff0;white-space:nowrap;vertical-align:top}td:first-child{font-weight:600}.status{font-size:10px;font-weight:600;padding:5px 8px;border-radius:15px;display:inline-block}.status.suitable{background:#e5f4ee;color:#24745b}.status.unsuitable{background:#f9ece8;color:#9b4733}.status.requires_review{background:#fff4df;color:#8e6722}.age-data{display:block;margin-bottom:8px}.age-data:last-child{margin-bottom:0}.product-notes{margin-top:15px}.product-notes details{font-size:12px;margin-top:12px}.product-notes summary{font-weight:600}.product-notes ul,.assumptions ul{padding-left:20px;margin-bottom:0}.product-notes li,.assumptions li{font-size:12px;line-height:1.8;color:var(--muted)}.chart-selects{min-width:340px;margin:0}.chart-selects label{font-size:11px}#soc-chart svg{width:100%;height:auto;display:block}#soc-chart{min-height:150px}.chart-empty{padding:45px;text-align:center;color:var(--muted);font-size:13px}.assumptions>summary,.catalogue-panel summary{font-size:13px;font-weight:600}.catalogue-panel{margin-top:3px}.catalogue-panel table{margin-top:16px}#catalogue-count{color:var(--muted);font-weight:400;margin-left:6px}footer{display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:30px;font-size:10px;color:#7a8c93;letter-spacing:.5px}[hidden]{display:none!important}
@media(max-width:950px){.load-top{grid-template-columns:minmax(120px,1fr) 60px 100px minmax(110px,1fr) 25px;gap:8px}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shell{padding-left:22px;padding-right:22px}.panel{padding:21px}.chart-selects{min-width:280px}}
@media(max-width:700px){.shell{padding-left:16px;padding-right:16px}.intro{padding-top:27px;padding-bottom:30px}.intro h1{letter-spacing:-1px}.toolbar{display:block}.connection-settings{max-width:none;margin-top:13px}.connection-settings>summary{text-align:left}.settings-grid{grid-template-columns:1fr;gap:15px}.load-top{grid-template-columns:1fr 64px 32px}.load-top>.mode-label{grid-column:1;grid-row:2}.load-top>.power-fields{grid-column:2/4;grid-row:2}.load-top>.remove-load{grid-column:3;grid-row:1}.load-schedule{gap:9px}.periods{flex-basis:100%}.load-card{padding:13px}.section-heading{align-items:flex-start;gap:12px}.section-heading h2{font-size:20px}.calculate-bar{flex-direction:column;align-items:stretch;gap:12px}.calculate-bar .button{width:100%}.results>.section-heading{flex-direction:column}.summary-grid{gap:9px}.metric{padding:16px}.metric-value{font-size:21px}.chart-heading{flex-direction:column}.chart-selects{width:100%;min-width:0}.panel{padding:18px}.intro-tags{gap:7px}.button{font-size:11px;padding:9px 11px}footer{flex-direction:column;gap:9px}.connection{font-size:11px}.brand{font-size:17px}}

.simple-load{display:grid;grid-template-columns:minmax(150px,2fr) minmax(100px,1fr) minmax(100px,1fr) 32px;gap:16px;align-items:end}.fuel-setting{margin-top:20px}@media(max-width:700px){.simple-load{grid-template-columns:1fr 1fr 28px;gap:12px}.simple-load>label:first-child{grid-column:1/3}.simple-load>.remove-load{grid-column:3;grid-row:1}.simple-load>label:nth-child(2){grid-column:1;grid-row:2}.simple-load>label:nth-child(3){grid-column:2;grid-row:2}}
.chart-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin:14px 0}.legend-toggle{border:1px solid var(--line);background:white;border-radius:6px;padding:8px 11px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}.legend-toggle[aria-pressed=false]{opacity:.4}.legend-swatch{width:14px;height:7px;display:inline-block;border-radius:2px}#annual-chart svg{width:100%;height:auto;display:block}#solar-summary{margin-bottom:14px}tfoot td{font-weight:700;background:#f1f6f6}.month-hit{fill:transparent;cursor:crosshair}.chart-tooltip{font-size:12px;color:var(--ink);min-height:37px;padding:10px 12px;background:#f4f8f8;border-radius:6px;line-height:1.7}.annual-graph-wrap{overflow-x:auto}.annual-graph-wrap svg{min-width:600px}
