@font-face{font-family:Outfit;src:url(./assets/outfit.woff2) format("woff2");font-weight:400 600;font-display:swap}body{margin:0;background:#f7f8f7}
#home-studio { width:100%; }
#home-studio .lf-app { --lf-bg:#fff; --lf-panel:#fff; --lf-soft:#f5f7f7; --lf-ink:#101512; --lf-muted:#5d6762; --lf-line:#d9dfdc; --lf-blue:#006add; --lf-solar:#ac7b00; --lf-green:#008862; --lf-yellow:#ffc912; --lf-radius:8px; color:var(--lf-ink); background:var(--lf-bg); font:400 14px/1.45 Outfit,Arial,sans-serif;  padding:0 30px 24px; box-sizing:border-box; }
#home-studio .lf-app *,#home-studio .lf-app *::before,#home-studio .lf-app *::after { box-sizing:border-box; }
#home-studio .lf-app [hidden] { display:none!important; }
#home-studio .lf-app h1,#home-studio .lf-app h2,#home-studio .lf-app h3,#home-studio .lf-app p { margin:0; }
#home-studio .lf-app h1 { font-size:32px; font-weight:600; line-height:1.12; letter-spacing:-1.1px; }
#home-studio .lf-app h2 { font-size:18px; font-weight:600; line-height:1.25; letter-spacing:-.35px; }
#home-studio .lf-app h3 { font-size:14px; font-weight:500; }
#home-studio .lf-app button,#home-studio .lf-app select,#home-studio .lf-app input { font:inherit; color:inherit; }
#home-studio .lf-app button,#home-studio .lf-app select,#home-studio .lf-app summary { cursor:pointer; }
#home-studio .lf-app button:focus-visible,#home-studio .lf-app select:focus-visible,#home-studio .lf-app input:focus-visible,#home-studio .lf-app summary:focus-visible { outline:3px solid var(--lf-blue); outline-offset:3px; }
#home-studio .lf-app button { border:0; }
#home-studio .lf-header { height:78px; border-bottom:1px solid var(--lf-ink); display:flex; align-items:center; justify-content:space-between; gap:16px; padding-right:70px; }
#home-studio .lf-logo { display:flex; align-items:center; font-size:24px; font-weight:800; letter-spacing:-1px; line-height:1; color:var(--lf-ink); }
#home-studio .lf-e { display:inline-flex; flex-direction:column; gap:3px; width:13px; margin:1px 2px 0; }
#home-studio .lf-e i { height:4px; width:13px; background:#ffc912; }
#home-studio .lf-e i:nth-child(2) { background:#00aa7a; }
#home-studio .lf-e i:nth-child(3) { background:#006add; }
#home-studio .lf-caption { color:var(--lf-muted); font-size:12px; }
#home-studio .lf-overline { text-transform:uppercase; letter-spacing:1.3px; font-size:11px; font-weight:600; }
#home-studio .lf-intro { padding:25px 0 22px; display:flex; align-items:end; justify-content:space-between; gap:12px; }
#home-studio .lf-intro p { margin-top:8px; color:var(--lf-muted); }
#home-studio .lf-location { font-size:12px; white-space:nowrap; text-align:right; }
#home-studio .lf-main { display:grid; grid-template-columns:minmax(0,1.75fr) minmax(230px,1fr); gap:18px; grid-template-areas:'metrics metrics' 'house outage' 'energy energy' 'details details'; }
#home-studio .lf-metrics { grid-area:metrics; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--lf-line); border-radius:var(--lf-radius); overflow:hidden; background:var(--lf-panel); }
#home-studio .lf-metric { padding:20px 24px 18px; min-width:0; }
#home-studio .lf-metric+.lf-metric { border-left:1px solid var(--lf-line); }
#home-studio .lf-metric .lf-value { display:block; font-size:37px; line-height:1.16; font-weight:500; letter-spacing:-1.3px; font-variant-numeric:tabular-nums; margin:8px 0 6px; }
#home-studio .lf-metric .lf-unit { font-size:19px; letter-spacing:-.3px; }
#home-studio .lf-metric-head { font-size:13px; color:var(--lf-muted); }
#home-studio .lf-comparison { display:none; }
#home-studio .lf-house { grid-area:house; background:var(--lf-soft); border:1px solid var(--lf-line); border-radius:var(--lf-radius); padding:18px; min-width:0; }
#home-studio .lf-section-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:10px; }
#home-studio .lf-section-head .lf-caption { text-align:right; }
#home-studio .lf-config { position:relative; min-height:314px; }
#home-studio .lf-diagram { width:100%; height:314px; display:block; color:var(--lf-ink); }
#home-studio .lf-diagram .lf-wall { fill:var(--lf-panel); stroke:var(--lf-ink); stroke-width:1.35; }
#home-studio .lf-diagram .lf-roof { fill:var(--lf-soft); stroke:var(--lf-ink); stroke-width:1.35; }
#home-studio .lf-diagram .lf-detail { fill:none; stroke:var(--lf-ink); stroke-width:1.1; }
#home-studio .lf-diagram .lf-ground { fill:var(--lf-panel); stroke:var(--lf-line); stroke-width:1; }
#home-studio .lf-diagram .lf-panel-cell { fill:var(--lf-blue); fill-opacity:.1; stroke:var(--lf-blue); stroke-width:1; }
#home-studio .lf-diagram .lf-wire { fill:none; stroke:var(--lf-blue); stroke-width:2; }
#home-studio .lf-diagram .lf-battery-shape { fill:var(--lf-panel); stroke:var(--lf-green); stroke-width:2; }
#home-studio .lf-diagram .lf-window { fill:var(--lf-blue); fill-opacity:.08; stroke:var(--lf-line); }
#home-studio .lf-node { position:absolute; width:136px; z-index:1; background:var(--lf-panel); border:1px solid var(--lf-line); padding:9px 10px; border-radius:calc(var(--lf-radius) * .7); box-shadow:0 3px 10px #00000003; }
#home-studio .lf-node>label { display:block; font-weight:500; font-size:12px; margin-bottom:5px; }
#home-studio .lf-node select { width:100%; font-size:12px; padding:4px 1px; border:0; border-bottom:1px solid var(--lf-line); background:var(--lf-panel); }
#home-studio .lf-node .lf-node-note { display:block; color:var(--lf-muted); font-size:11px; margin-top:4px; }
#home-studio .lf-node[data-node=solar] { left:0; top:10px; }
#home-studio .lf-node[data-node=backup] { left:0; bottom:6px; }
#home-studio .lf-node[data-node=ev] { right:0; bottom:6px; }
#home-studio .lf-node[data-node=tariff] { right:0; top:10px; }
#home-studio .lf-switch { display:flex; align-items:center; gap:7px; }
#home-studio .lf-toggle { width:31px; height:19px; border-radius:20px; background:var(--lf-line); padding:3px; flex-shrink:0; }
#home-studio .lf-toggle::after { content:''; display:block; width:13px; height:13px; border-radius:50%; background:var(--lf-panel); }
#home-studio .lf-toggle[aria-pressed=true] { background:var(--lf-blue); }
#home-studio .lf-toggle[aria-pressed=true]::after { transform:translateX(12px); background:#fff; }
#home-studio .lf-state { font-size:11px; white-space:nowrap; }
#home-studio .lf-home-footer { color:var(--lf-muted); font-size:11px; margin-top:10px; border-top:1px solid var(--lf-line); padding-top:10px; }
#home-studio .lf-outage { grid-area:outage; padding:19px 20px; border:1px solid var(--lf-line); border-radius:var(--lf-radius); min-width:0; background:var(--lf-panel); }
#home-studio .lf-outage .lf-section-head { margin-bottom:15px; }
#home-studio .lf-outage-controls { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0 14px; }
#home-studio .lf-outage-controls select { min-width:0; max-width:100%; font-size:11px; padding:6px 8px; border-radius:4px; background:var(--lf-soft); border:1px solid var(--lf-line); }
#home-studio .lf-duration-row { margin:13px 0; }
#home-studio .lf-duration-heading { display:flex; align-items:baseline; justify-content:space-between; gap:8px; font-size:12px; }
#home-studio .lf-duration-heading strong { font-size:18px; letter-spacing:-.3px; font-weight:500; font-variant-numeric:tabular-nums; }
#home-studio .lf-track { background:var(--lf-soft); height:5px; margin:6px 0; border-radius:8px; overflow:hidden; }
#home-studio .lf-track span { display:block; height:100%; background:var(--lf-blue); border-radius:8px; }
#home-studio .lf-duration-row[data-source=battery] .lf-track span { background:var(--lf-green); }
#home-studio .lf-duration-row[data-source=propane] .lf-track span { background:var(--lf-solar); }
#home-studio .lf-duration-note { font-size:11px; color:var(--lf-muted); }
#home-studio .lf-outage-note { margin-top:13px!important; padding-top:12px; border-top:1px solid var(--lf-line); font-size:11px; color:var(--lf-muted); }
#home-studio .lf-energy { grid-area:energy; padding:20px 20px 14px; border:1px solid var(--lf-line); border-radius:var(--lf-radius); background:var(--lf-panel); min-width:0; }
#home-studio .lf-legend { display:flex; flex-wrap:wrap; gap:9px 16px; font-size:11px; margin:12px 0 15px; color:var(--lf-muted); }
#home-studio .lf-legend span { display:flex; align-items:center; gap:6px; }
#home-studio .lf-legend i { width:16px; height:2px; background:var(--lf-ink); }
#home-studio .lf-legend .lf-solar-key { background:var(--lf-solar); }
#home-studio .lf-legend .lf-battery-key { background:var(--lf-green); }
#home-studio .lf-legend .lf-vpp-key { background:repeating-linear-gradient(90deg,var(--lf-green) 0,var(--lf-green) 3px,transparent 3px,transparent 5px); }
#home-studio .lf-charts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px 18px; }
#home-studio .lf-month { min-width:0; }
#home-studio .lf-month-name { font-size:12px; font-weight:500; display:flex; justify-content:space-between; gap:5px; }
#home-studio .lf-month-name span { font-size:11px; font-weight:400; color:var(--lf-muted); }
#home-studio .lf-chart { width:100%; height:103px; overflow:visible; display:block; }
#home-studio .lf-chart text { font-family:Outfit,Arial,sans-serif; font-size:11px; fill:var(--lf-muted); }
#home-studio .lf-energy-foot { font-size:11px; color:var(--lf-muted); margin-top:14px!important; border-top:1px solid var(--lf-line); padding-top:10px; }
#home-studio .lf-details { grid-area:details; border-top:1px solid var(--lf-line); border-bottom:1px solid var(--lf-line); background:var(--lf-panel); }
#home-studio .lf-details>summary { padding:15px 2px; font-size:14px; font-weight:500; }
#home-studio .lf-details>summary span { color:var(--lf-muted); font-size:12px; font-weight:400; margin-left:12px; }
#home-studio .lf-fields { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; padding:8px 0 22px; }
#home-studio .lf-field { display:block; font-size:12px; color:var(--lf-muted); min-width:0; }
#home-studio .lf-field input { display:block; width:100%; background:var(--lf-soft); border:1px solid var(--lf-line); padding:9px; border-radius:4px; margin-top:5px; color:var(--lf-ink); font-size:14px; }
#home-studio .lf-validation { color:#a63324; padding-bottom:10px; font-size:12px; }
#home-studio .lf-footer { display:flex; justify-content:space-between; gap:20px; padding-top:17px; font-size:11px; color:var(--lf-muted); }
#home-studio .lf-nightfall { --lf-bg:#101615; --lf-panel:#19211f; --lf-soft:#121b18; --lf-ink:#f2f5f1; --lf-muted:#a4b5ad; --lf-line:#35433b; --lf-blue:#71b4ff; --lf-solar:#f5c947; --lf-green:#53d5a3; --lf-radius:12px; }
#home-studio .lf-nightfall .lf-header { border-color:var(--lf-line); }
#home-studio .lf-nightfall .lf-main { grid-template-columns:205px minmax(0,1fr); grid-template-areas:'metrics house' 'outage outage' 'energy energy' 'details details'; }
#home-studio .lf-nightfall .lf-metrics { display:block; background:transparent; border:0; border-radius:0; }
#home-studio .lf-nightfall .lf-metric { padding:12px 4px 22px; }
#home-studio .lf-nightfall .lf-metric+.lf-metric { border:0; border-top:1px solid var(--lf-line); padding-top:21px; }
#home-studio .lf-nightfall .lf-metric .lf-value { font-size:38px; }
#home-studio .lf-nightfall .lf-house { background:radial-gradient(ellipse at 50% 55%,#1e3027,var(--lf-soft) 70%); }
#home-studio .lf-nightfall .lf-config { min-height:327px; }
#home-studio .lf-nightfall .lf-diagram { height:327px; }
#home-studio .lf-nightfall .lf-outage { display:grid; grid-template-columns:185px minmax(0,1fr); gap:8px 22px; }
#home-studio .lf-nightfall .lf-outage-intro { grid-row:span 2; }
#home-studio .lf-nightfall .lf-source-rows { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
#home-studio .lf-nightfall .lf-duration-note { min-height:32px; }
#home-studio .lf-nightfall .lf-outage-note { margin:0!important; }
#home-studio .lf-nightfall .lf-node { background:#1c2822; }
#home-studio .lf-nightfall .lf-node select { background:#1c2822; }
#home-studio .lf-fieldwork { --lf-bg:#f4f2ec; --lf-panel:#ffFEfa; --lf-soft:#ecefe9; --lf-ink:#17231c; --lf-muted:#626c63; --lf-line:#d4dad0; --lf-blue:#1a6fcd; --lf-solar:#a77d08; --lf-green:#15835e; --lf-radius:3px; }
#home-studio .lf-fieldwork .lf-main { grid-template-columns:minmax(0,1.75fr) minmax(255px,1fr); grid-template-areas:'house metrics' 'outage metrics' 'energy energy' 'details details'; }
#home-studio .lf-fieldwork .lf-intro { padding-top:29px; }
#home-studio .lf-fieldwork .lf-metrics { display:block; padding:18px 21px; }
#home-studio .lf-fieldwork .lf-metric { padding:20px 0; }
#home-studio .lf-fieldwork .lf-metric+.lf-metric { border-left:0; border-top:1px solid var(--lf-line); }
#home-studio .lf-fieldwork .lf-metric .lf-value { font-size:35px; }
#home-studio .lf-fieldwork .lf-comparison { display:block; font-size:12px; padding-top:14px; border-top:1px solid var(--lf-line); color:var(--lf-muted); }
#home-studio .lf-fieldwork .lf-house { background:var(--lf-panel); }
#home-studio .lf-fieldwork .lf-node { background:var(--lf-soft); box-shadow:none; }
#home-studio .lf-fieldwork .lf-node select { background:var(--lf-soft); }
#home-studio .lf-fieldwork .lf-outage { padding-top:14px; }
#home-studio .lf-fieldwork .lf-outage-intro { display:flex; align-items:center; gap:12px; justify-content:space-between; }
#home-studio .lf-fieldwork .lf-outage-controls { margin:0; flex-direction:column; }
#home-studio .lf-fieldwork .lf-source-rows { display:flex; flex-direction:column; }
#home-studio .lf-fieldwork .lf-duration-row { display:grid; grid-template-columns:185px 1fr; gap:0 16px; margin:7px 0; }
#home-studio .lf-fieldwork .lf-duration-note { grid-column:2; }
#home-studio .lf-fieldwork .lf-duration-heading { grid-row:span 2; }
#home-studio .lf-fieldwork .lf-track { margin:7px 0; }
#home-studio .lf-fieldwork .lf-energy { border:0; border-top:2px solid var(--lf-ink); border-radius:0; padding:21px 0 8px; background:transparent; }
@media(max-width:850px){
 #home-studio .lf-app { padding:0 20px 22px;  }
 #home-studio .lf-main { grid-template-columns:minmax(0,1.55fr) minmax(215px,1fr); gap:13px; }
 #home-studio .lf-metric { padding:17px; }
 #home-studio .lf-metric .lf-value { font-size:31px; }
 #home-studio .lf-node { width:112px; padding:8px; }
 #home-studio .lf-node select { font-size:11px; }
 #home-studio .lf-nightfall .lf-main { grid-template-columns:170px minmax(0,1fr); }
 #home-studio .lf-nightfall .lf-source-rows { gap:12px; }
 #home-studio .lf-charts { gap:10px 12px; }
 #home-studio .lf-fieldwork .lf-duration-row { grid-template-columns:1fr; gap:0; }
 #home-studio .lf-fieldwork .lf-duration-note { grid-column:auto; }
}
@media(max-width:700px){
 #home-studio .lf-app { padding:0 16px 18px;  }
 #home-studio .lf-header { padding-right:70px; height:69px; }
 #home-studio .lf-header .lf-caption { display:none; }
 #home-studio .lf-intro { display:block; }
 #home-studio .lf-location { text-align:left; margin-top:10px; }
 #home-studio .lf-app h1 { font-size:28px; }
 #home-studio .lf-main,#home-studio .lf-nightfall .lf-main,#home-studio .lf-fieldwork .lf-main { display:flex; flex-direction:column; gap:15px; }
 #home-studio .lf-metrics,#home-studio .lf-fieldwork .lf-metrics,#home-studio .lf-nightfall .lf-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--lf-line); border-radius:var(--lf-radius); padding:0; }
 #home-studio .lf-metric,#home-studio .lf-fieldwork .lf-metric,#home-studio .lf-nightfall .lf-metric { padding:13px 10px; }
 #home-studio .lf-metric+.lf-metric,#home-studio .lf-nightfall .lf-metric+.lf-metric,#home-studio .lf-fieldwork .lf-metric+.lf-metric { padding:13px 10px; border:0; border-left:1px solid var(--lf-line); }
 #home-studio .lf-metric .lf-value,#home-studio .lf-fieldwork .lf-metric .lf-value,#home-studio .lf-nightfall .lf-metric .lf-value { font-size:26px; letter-spacing:-1px; }
 #home-studio .lf-metric .lf-unit { font-size:14px; }
 #home-studio .lf-metric-head { font-size:11px; }
 #home-studio .lf-metric .lf-caption { font-size:11px; }
 #home-studio .lf-fieldwork .lf-comparison { display:none; }
 #home-studio .lf-house { padding:16px; }
 #home-studio .lf-config,#home-studio .lf-nightfall .lf-config { display:grid; grid-template-columns:1fr 1fr; gap:9px; min-height:0; }
 #home-studio .lf-node { position:static; width:auto; padding:10px; }
 #home-studio .lf-diagram,#home-studio .lf-nightfall .lf-diagram { grid-column:1/-1; grid-row:1; height:230px; }
 #home-studio .lf-node select { font-size:14px; min-height:30px; }
 #home-studio .lf-toggle { width:39px; height:25px; padding:4px; }
 #home-studio .lf-toggle::after { width:17px; height:17px; }
 #home-studio .lf-toggle[aria-pressed=true]::after { transform:translateX(14px); }
 #home-studio .lf-switch { min-height:30px; }
 #home-studio .lf-outage,#home-studio .lf-nightfall .lf-outage { display:block; }
 #home-studio .lf-nightfall .lf-source-rows { display:block; }
 #home-studio .lf-nightfall .lf-duration-note { min-height:0; }
 #home-studio .lf-fieldwork .lf-outage-intro { display:block; }
 #home-studio .lf-fieldwork .lf-outage-controls { margin:10px 0; flex-direction:row; }
 #home-studio .lf-fieldwork .lf-duration-row { display:block; margin:13px 0; }
 #home-studio .lf-charts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 16px; }
 #home-studio .lf-energy { padding:16px; }
 #home-studio .lf-energy .lf-section-head { align-items:start; flex-direction:column; gap:4px; }
 #home-studio .lf-chart { height:113px; }
 #home-studio .lf-fields { grid-template-columns:1fr 1fr; }
 #home-studio .lf-field input { font-size:16px; }
 #home-studio .lf-details>summary span { display:block; margin-left:0; margin-top:4px; }
 #home-studio .lf-footer { flex-direction:column; gap:7px; }
}
@media(max-width:380px){#home-studio .lf-metric .lf-value,#home-studio .lf-fieldwork .lf-metric .lf-value,#home-studio .lf-nightfall .lf-metric .lf-value{font-size:23px;}#home-studio .lf-app{padding-left:12px;padding-right:12px;}}

#home-studio{max-width:1440px;margin:auto;}#home-studio .lf-app{padding:0 40px 28px;min-height:100vh}#home-studio .lf-header{padding-right:0;height:92px}#home-studio .lf-brand{display:block;width:225px;height:auto}#home-studio .lf-header a{color:inherit}#home-studio .lf-metrics{grid-template-columns:1fr 1fr 1fr 1.25fr}#home-studio .lf-lifestyle{background:#f0f8f3}#home-studio .lf-lifestyle .lf-value{font-size:24px;letter-spacing:-.5px;line-height:1.14}#home-studio .lf-presets{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 20px}#home-studio .lf-presets button,#home-studio .lf-tabs button,#home-studio .lf-download{padding:8px 13px;border:1px solid var(--lf-line);border-radius:5px;background:white;font-size:12px}#home-studio .lf-presets button[aria-pressed=true],#home-studio .lf-tabs button[aria-pressed=true]{background:#101512;color:white;border-color:#101512}#home-studio .lf-presets button[data-preset=v2h],#home-studio .lf-presets button[data-preset=v2g]{border-color:#006add}#home-studio .lf-node[data-node=ev]{border-color:#006add;box-shadow:0 2px 10px #006add0b}#home-studio .lf-node[data-node=ev]>label{color:#006add}#home-studio .lf-tabs{display:flex;gap:6px;flex-wrap:wrap}#home-studio .lf-notice{padding:10px 12px;margin-top:12px;background:#fff8dc;border-left:3px solid #ffc912;font-size:12px}#home-studio .lf-checks{display:grid;gap:10px;padding-top:15px}#home-studio .lf-checks label{font-size:13px}#home-studio .lf-checks input{margin-right:8px;accent-color:#006add}#home-studio .lf-details details{border-top:1px solid var(--lf-line)}#home-studio .lf-details details summary{padding:14px 0;cursor:pointer}#home-studio .lf-details .lf-fields{grid-template-columns:repeat(4,minmax(0,1fr))}#home-studio .lf-chart{height:auto;aspect-ratio:2.1}#home-studio .lf-evidence{font-size:12px;color:var(--lf-muted);line-height:1.6}#home-studio .lf-evidence p{margin-bottom:12px}#home-studio .lf-financial-summary{display:flex;gap:25px;flex-wrap:wrap;font-size:12px;margin-top:15px;padding-top:12px;border-top:1px solid var(--lf-line)}#home-studio .lf-financial-summary strong{font-weight:600;color:var(--lf-ink)}#home-studio .lf-tooltip{position:fixed;z-index:10;pointer-events:none;padding:10px 12px;background:#101512;color:white;font-size:12px;line-height:1.6;border-radius:6px;box-shadow:0 4px 24px #0002;max-width:230px}#home-studio .lf-download{cursor:pointer;margin-top:12px}#home-studio .lf-fields input:disabled{opacity:.5}#home-studio .lf-method ul{padding-left:20px}#home-studio .lf-method li{margin-bottom:7px}#home-studio a{color:#006add}#home-studio .lf-chart path{vector-effect:non-scaling-stroke}#home-studio .lf-fields{gap:15px}
@media(max-width:1000px){#home-studio .lf-app{padding:0 22px 22px}#home-studio .lf-metric{padding:17px}#home-studio .lf-metric .lf-value{font-size:31px}#home-studio .lf-lifestyle .lf-value{font-size:22px}}
@media(max-width:700px){#home-studio .lf-app{padding:0 16px 20px}#home-studio .lf-header{height:75px}#home-studio .lf-brand{width:185px}#home-studio .lf-metrics{grid-template-columns:1fr 1fr}#home-studio .lf-metric{padding:17px!important}#home-studio .lf-metric:nth-child(3){border-left:0;border-top:1px solid var(--lf-line)}#home-studio .lf-metric:nth-child(4){border-top:1px solid var(--lf-line)}#home-studio .lf-metric .lf-value{font-size:29px}#home-studio .lf-lifestyle .lf-value{font-size:22px}#home-studio .lf-details .lf-fields{grid-template-columns:1fr 1fr}#home-studio .lf-node[data-node=ev]{grid-column:1/-1;grid-row:2}#home-studio .lf-node[data-node=tariff]{grid-column:1/-1}#home-studio .lf-financial-summary{gap:12px}}

/* Equipment controls and their physical connections. */
#home-studio .lf-house{container-type:inline-size;background:#f7f9f7}
#home-studio .lf-config{height:360px;min-height:0;margin-top:12px;isolation:isolate}
#home-studio .lf-diagram{position:absolute;left:150px;top:35px;width:calc(100% - 300px);height:290px;overflow:visible}
#home-studio .lf-connectors{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:visible}
#home-studio .lf-node{width:165px;padding:12px;border-radius:12px;box-shadow:0 3px 12px #163a2110;z-index:2}
#home-studio .lf-node[data-node=solar],#home-studio .lf-node[data-node=tariff]{top:8px}
#home-studio .lf-node[data-node=backup],#home-studio .lf-node[data-node=ev]{bottom:10px}
#home-studio .lf-node>label{font-size:12px;margin-bottom:8px}
#home-studio .lf-node select,#home-studio .lf-outage-controls select{appearance:none;-webkit-appearance:none;border:1.5px solid #a4b7ab;border-radius:999px;background:#eef4ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2335493d' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 10px center;padding:10px 28px 10px 12px;min-height:42px;font-size:12px;font-weight:500;transition:background-color .15s,border-color .15s}
#home-studio .lf-node select:hover,#home-studio .lf-outage-controls select:hover{background-color:#e2ece4;border-color:#4c7960}
#home-studio .lf-node[data-node=ev]{border-color:#88b9ef;background:#f8fbff}
#home-studio .lf-node[data-node=ev] select{background-color:#e8f2ff;border-color:#7eaee3;color:#0058b9}
#home-studio .lf-node .lf-node-note{margin-top:7px;line-height:1.3;font-size:11px}
#home-studio .lf-switch{border:1.5px solid #b3c2b8;border-radius:999px;padding:8px 10px;min-height:42px;background:#eef4ef}
#home-studio .lf-toggle{width:35px;height:22px;padding:3px}
#home-studio .lf-toggle::after{width:16px;height:16px}
#home-studio .lf-toggle[aria-pressed=true]::after{transform:translateX(13px)}
#home-studio .lf-state{font-size:12px}
#home-studio .lf-outage-controls select{font-size:12px;padding-left:12px;min-height:40px}
@container(max-width:620px){
 #home-studio .lf-config{height:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 250px auto;column-gap:24px;row-gap:24px}
 #home-studio .lf-diagram{position:static;grid-column:1/-1;grid-row:2;width:100%;height:250px;align-self:center}
 #home-studio .lf-node{position:static;width:100%;min-width:0}
 #home-studio .lf-node[data-node=solar]{grid-column:1;grid-row:1}
 #home-studio .lf-node[data-node=tariff]{grid-column:2;grid-row:1}
 #home-studio .lf-node[data-node=backup]{grid-column:1;grid-row:3}
 #home-studio .lf-node[data-node=ev]{grid-column:2;grid-row:3}
}
@media(max-width:700px){
 #home-studio .lf-intro{padding:20px 0}
 #home-studio .lf-config{column-gap:14px;row-gap:22px;grid-template-rows:auto 230px auto}
 #home-studio .lf-diagram{height:230px}
 #home-studio .lf-node{padding:10px}
 #home-studio .lf-node select{font-size:12px;padding-left:10px;padding-right:24px;background-position:right 7px center}
 #home-studio .lf-house>.lf-section-head{align-items:start}
 #home-studio .lf-house>.lf-section-head>.lf-caption{max-width:125px}
}
