.calc{gap:clamp(24px,3vw,40px);display:grid}.calc-presets{border:0;margin:0;padding:0}.calc-presets legend{margin-bottom:10px;font-weight:500}.calc-hint{max-width:62ch;margin-top:10px}.calc-inputs{border-bottom:1px solid var(--rule);gap:18px;margin-bottom:22px;padding-bottom:22px;display:grid}.calc-range,.calc-select{gap:8px;display:grid}.calc-range>span,.calc-select>span{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;font-weight:500;display:flex}.calc-range>span b{font-weight:500}.calc-range small,.calc-select small{color:var(--ink-3);font-size:.875rem;line-height:1.4}.calc-select select{border:1.5px solid var(--rule);background:#fff;border-radius:6px;width:100%;padding:11px 12px}.calc input[type=range]{width:100%;accent-color:var(--green);height:32px}.calc-toggle{align-items:center;gap:10px;margin-top:20px;font-weight:500;display:flex}.calc-toggle input{width:20px;height:20px;accent-color:var(--green)}.calc-stage{grid-template-columns:8fr 4fr;align-items:start;gap:clamp(16px,2vw,28px);display:grid}@media (width<=1100px){.calc-stage{grid-template-columns:1fr}}.calc-board{border:1px solid var(--rule);border-radius:var(--radius-l);background:#fff;padding:clamp(18px,2.4vw,32px)}.calc-board-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.calc-play{border:1.5px solid var(--green);color:var(--green);font:inherit;cursor:pointer;transition:background .2s var(--ease), color .2s var(--ease);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 16px;font-weight:500;display:inline-flex}.calc-play svg{fill:currentColor}.calc-play:hover,.calc-play[aria-pressed=true]{background:var(--green);color:#fff}.calc-day{touch-action:none;user-select:none;width:100%;height:auto;margin-top:14px;display:block}.calc-day .g{stroke:var(--rule)}.calc-day .tick{font-family:var(--font);fill:var(--ink-3);font-size:12px}.calc-day .a-over{fill:var(--amber);opacity:.35;transition:d .25s var(--ease)}.calc-day .a-charge{fill:var(--green-soft)}.calc-day.off .a-charge{fill:var(--amber-ink);opacity:.28}.calc-day .l-load{fill:none;stroke:#9aa69f;stroke-width:2px}.calc-day .l-grid{fill:none;stroke:var(--green);stroke-width:3.5px;stroke-linejoin:round}.calc-day.off .l-grid{stroke:var(--amber-ink)}.calc-day .cap line{stroke:var(--ink);stroke-width:1.5px;stroke-dasharray:6 5}.calc-day .cap text{font-family:var(--font);fill:var(--ink);font-size:13px;font-weight:500}.calc-day .cap .hit{fill:#0000;cursor:ns-resize}.calc-day .knob{pointer-events:none}.calc-day .knob circle{fill:var(--green)}.calc-day .knob path{fill:none;stroke:#fff;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.calc-day .cap.hint .knob circle{animation:nudge 1.6s var(--ease) infinite}@keyframes nudge{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}.calc-day .new-peak circle{fill:var(--amber);stroke:#fff;stroke-width:2px;animation:1.2s ease-in-out infinite blink}.calc-day .new-peak text{font-family:var(--font);fill:var(--amber-ink);font-size:13px;font-weight:500}@keyframes blink{50%{opacity:.35}}.calc-day .playhead line{stroke:var(--ink-3);stroke-width:1px}.calc-day .playhead circle{fill:var(--ink)}@media (width<=560px){.calc-day .tick,.calc-day .cap text,.calc-day .new-peak text{font-size:20px}}@media (prefers-reduced-motion:reduce){.calc-day .cap.hint .knob circle,.calc-day .new-peak circle{animation:none}}.calc-cap{margin-top:8px}.calc-now{align-items:center;gap:14px;margin-top:12px;display:flex}.calc-now b{font-weight:500;display:block}.calc-now span{color:var(--ink-2);font-size:.9375rem;display:block}.calc-battery{flex:none;width:26px;height:46px}.calc-battery .shell{fill:none;stroke:var(--ink-3);stroke-width:2px}.calc-battery .cap{fill:var(--ink-3)}.calc-battery .fill{fill:var(--green);transition:y .12s linear,height .12s linear}.calc-battery .fill.low{fill:var(--amber)}.calc-flag{border-radius:var(--radius-s);background:var(--amber-soft);color:var(--amber-ink);margin-top:14px;padding:10px 14px;font-size:.9375rem}.calc-switch{border-radius:var(--radius-s);background:var(--amber-soft);transition:background .3s var(--ease);grid-template-columns:auto 1fr;align-items:start;gap:14px;margin-top:20px;padding:16px 18px;display:grid}.calc-switch.on{background:var(--green-soft)}.calc-switch b{font-weight:500;display:block}.calc-switch div span{color:var(--ink-2);margin-top:4px;font-size:.9375rem;line-height:1.45;display:block}.calc-switch button{cursor:pointer;width:52px;height:30px;transition:background .25s var(--ease);background:#b7c1ba;border:0;border-radius:999px;margin-top:2px;padding:0;position:relative}.calc-switch.on button{background:var(--green)}.calc-switch button span{width:24px;height:24px;transition:transform .25s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.calc-switch.on button span{transform:translate(22px)}.calc-out{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius-l);padding:clamp(20px,2.4vw,30px)}.calc-hero span{color:var(--ink-3);font-size:.9375rem;display:block}.calc-hero b{letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--green);transition:color .3s var(--ease);margin-top:6px;font-size:clamp(2.3rem,3.6vw,3.2rem);font-weight:500;line-height:1;display:block}.calc-hero b.lost{color:var(--amber-ink)}.calc-hero small{color:var(--ink-2);margin-top:10px;font-size:.9375rem;display:block}.calc-vs{gap:12px;margin-top:22px;display:grid}.calc-bar-head{justify-content:space-between;gap:12px;font-size:.9375rem;display:flex}.calc-bar-head b{font-variant-numeric:tabular-nums;font-weight:500}.calc-bar-track{background:var(--mist);border-radius:999px;height:10px;margin-top:6px;overflow:hidden}.calc-bar-track i{border-radius:inherit;height:100%;display:block}.calc-bar.on i{background:var(--green)}.calc-bar.off i{background:var(--amber)}.calc-units{flex-wrap:wrap;align-items:flex-end;gap:5px;margin-top:22px;display:flex}.calc-units p{flex-basis:100%;margin-top:6px}.calc-units .unit{width:22px;height:34px;fill:var(--mist-2);stroke:var(--ink-3);stroke-width:1px;animation:pop .35s var(--ease) both}.calc-units .unit .door{fill:#fff}.calc-units .unit .led{fill:var(--green);stroke:none}@keyframes pop{0%{opacity:0;transform:translateY(6px)scale(.7)}to{opacity:1;transform:none}}.calc-table{border-collapse:collapse;width:100%;margin-top:20px}.calc-table td{border-top:1px solid var(--rule);padding:9px 0;font-size:.9375rem}.calc-table td:last-child{text-align:right;white-space:nowrap;font-weight:500}.calc-table tr.sum td{border-top:2px solid var(--ink);font-size:1.0625rem}.pl{gap:18px;display:grid}.pl-pagehead{padding-top:clamp(24px,2.6vw,36px);padding-bottom:18px}.pl-pagehead .who{margin-bottom:8px}.pl-pagehead h1{letter-spacing:-.025em;font-size:clamp(1.9rem,2.8vw,2.6rem)}.pl-seg{background:var(--mist);border-radius:999px;justify-self:start;gap:4px;padding:4px;display:inline-flex}.pl-seg button{font:inherit;color:var(--ink-2);cursor:pointer;text-align:center;transition:background .2s var(--ease), color .2s var(--ease), box-shadow .2s var(--ease);background:0 0;border:0;border-radius:999px;padding:8px 20px;line-height:1.2;display:grid}.pl-seg button b{font-size:.9375rem;font-weight:500}.pl-seg button span{color:var(--ink-3);font-size:.75rem}.pl-seg button:hover{color:var(--ink)}.pl-seg button.on{color:var(--green-deep);background:#fff;box-shadow:0 1px 3px #141a171f}.pl-seg button.on span{color:var(--green)}.pl-seg button:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.pl-main{grid-template-columns:minmax(280px,4fr) 8fr;align-items:start;gap:clamp(20px,2.4vw,36px);display:grid}@media (width<=1000px){.pl-main{grid-template-columns:1fr}}.pl-side{gap:14px;display:grid}.pl-field{gap:8px;display:grid}.pl-label,.pl-side .calc-range>span,.pl-side .calc-select>span{font-size:.9375rem;font-weight:500}.pl-row{flex-wrap:wrap;gap:18px 22px;display:flex}.pl-side .chips label{padding:7px 13px;font-size:.9375rem}.pl-sizes label{min-width:0}.pl-rec{color:var(--green);background:var(--green-soft);border-radius:999px;margin-left:4px;padding:2px 8px;font-size:.75rem;font-style:normal;font-weight:500}.pl-side .calc-toggle{margin-top:0;font-size:.9375rem}.pl-side .calc-range small{font-size:.8125rem}.pl-side-note{color:var(--ink-3)}.pl-cta{margin-top:4px}.pl-flex{gap:6px;display:grid}.pl-toggles{flex-wrap:wrap;gap:8px 24px;display:flex}.pl-off{opacity:.35;pointer-events:none;filter:grayscale();transition:opacity .25s var(--ease)}.pl-flex .pl-side-note{padding-left:2px}.pl-nums{grid-template-columns:1fr 1fr;gap:10px;display:grid}.pl-num{border:1.5px solid var(--rule);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:0 12px;display:flex}.pl-num:focus-within{border-color:var(--green)}.pl-num span{color:var(--ink-3);font-size:.875rem}.pl-num input{width:100%;min-width:0;font:inherit;text-align:right;font-variant-numeric:tabular-nums;-moz-appearance:textfield;background:0 0;border:0;outline:none;flex:1;padding:9px 0}.pl-num input::-webkit-outer-spin-button,.pl-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pl-num em{color:var(--ink-3);font-size:.875rem;font-style:normal}.pl-chargers{grid-template-columns:auto 1fr 1fr;align-items:end;gap:12px;display:grid}.pl-select{width:100%;font:inherit;border:1.5px solid var(--rule);cursor:pointer;background:#fff;border-radius:6px;padding:8px 10px}.pl-select:disabled{color:var(--ink-3);background:var(--mist);cursor:default}.pl-select:focus-visible{outline:3px solid var(--amber);outline-offset:1px}.pl-batt{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.pl-batt>span{line-height:1.15;display:grid}.pl-batt>span b{font-weight:500}.pl-batt>span small{color:var(--ink-3);font-size:.75rem}.pl-stepper{border:1.5px solid var(--rule);background:#fff;border-radius:999px;justify-self:start;align-items:center;display:inline-flex}.pl-stepper button{width:38px;height:36px;font:inherit;color:var(--green);cursor:pointer;transition:background .15s var(--ease);background:0 0;border:0;border-radius:999px;font-size:1.125rem}.pl-stepper button:hover:not(:disabled){background:var(--green-soft)}.pl-stepper button:disabled{color:var(--rule);cursor:default}.pl-stepper button:focus-visible{outline:3px solid var(--amber);outline-offset:1px}.pl-stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:70px}.pl-stepper output b{font-weight:500}.pl-stepper output span{color:var(--ink-3);font-size:.8125rem}.pl-out{border:1px solid var(--rule);border-radius:var(--radius-l);background:#fff;gap:10px;padding:clamp(18px,2vw,26px);display:grid}.pl-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.pl-head .calc-hero b{font-size:clamp(2rem,3vw,2.75rem)}.pl-head .calc-hero small{margin-top:8px}.pl-head .calc-hero{flex:1;min-width:0}.pl-plus{letter-spacing:0;color:var(--green);white-space:nowrap;vertical-align:middle;margin-left:12px;font-size:1.125rem;font-style:normal;font-weight:500}.pl-fig{border-left:1px solid var(--rule);flex:none;align-self:stretch;padding-left:20px}.pl-fig span{color:var(--ink-3);font-size:.9375rem;display:block}.pl-fig b{letter-spacing:-.03em;color:var(--green);white-space:nowrap;transition:color .3s var(--ease);margin-top:8px;font-size:clamp(1.5rem,2.2vw,2rem);font-weight:500;line-height:1;display:block}.pl-sub{padding-left:30px}.pl-flag{border-radius:var(--radius-s);background:var(--amber-soft);color:var(--amber-ink);padding:8px 12px;font-size:.875rem}.pl-head .pl-pick{font:inherit;color:var(--green-deep);border:1.5px solid var(--rule);cursor:pointer;appearance:none;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-repeat:no-repeat;background-size:5px 5px;border-radius:999px;flex:none;padding:7px 34px 7px 16px;font-size:.9375rem;font-weight:500}.pl-head .pl-pick:hover{border-color:var(--green)}.pl-head .pl-pick:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.pl-chart{width:100%;height:auto;display:block}.pl-chart .g{stroke:var(--rule)}.pl-chart .tick{font-family:var(--font);fill:var(--ink-3);font-size:12px}.pl-chart .a-base{fill:var(--mist-2)}.pl-chart .a-ev{fill:#cfe0d5}.pl-chart .a-out{fill:var(--amber);opacity:.45}.pl-chart .a-in{fill:url(#pl-hatch)}.pl-chart .hatch-bg{fill:#e4efe8}.pl-chart .hatch{stroke:var(--green);stroke-width:2px;opacity:.55}.pl-chart .cap{stroke:var(--ink);stroke-width:1.5px;stroke-dasharray:6 5}.pl-chart .l-grid{fill:none;stroke:var(--green);stroke-width:3px;stroke-linejoin:round}.pl-pt .bar{transition:y .35s var(--ease), height .35s var(--ease), fill .3s var(--ease)}.pl-pt .bar.fcrd{fill:var(--green)}.pl-pt .bar.mfrr{fill:#4c8b74}.pl-pt .bar.fcrn{fill:#9cc3ae}.pl-pt .bar.afrr{fill:#6e8fa8}.pl-pt .bar.sun{fill:var(--amber)}.pl-pt .a-prod{fill:var(--mist-2);transition:d .35s var(--ease)}.pl-pt .a-prod.sol{fill:var(--amber-soft)}.pl-pt .l-soc{fill:none;stroke:var(--ink);stroke-width:2.5px;stroke-linejoin:round}.pl-legend{color:var(--ink-3);flex-wrap:wrap;gap:4px 16px;margin-top:-4px;font-size:.8125rem;list-style:none;display:flex}.pl-legend li{align-items:center;gap:6px;display:inline-flex}.pl-legend i{border-radius:2px;width:12px;height:9px;display:inline-block}.pl-legend .k-base{background:var(--mist-2)}.pl-legend .k-ev{background:#cfe0d5}.pl-legend .k-out{background:var(--amber);opacity:.55}.pl-legend .k-in{background:repeating-linear-gradient(45deg,#e4efe8 0 2px,#7fa996 2px 4px)}.pl-legend .k-grid{background:var(--green);height:3px}.pl-legend .k-cap{border-top:1.5px dashed var(--ink);height:0}.pl-legend .k-fcrd{background:var(--green)}.pl-legend .k-mfrr{background:#4c8b74}.pl-legend .k-fcrn{background:#9cc3ae}.pl-legend .k-afrr{background:#6e8fa8}.pl-legend .k-sun{background:var(--amber)}.pl-legend .k-prod{background:var(--mist-2)}.pl-legend .k-prod.sol{background:var(--amber-soft)}.pl-legend .k-soc{background:var(--ink);height:2px}.pl-drawing{border-top:1px solid var(--rule);justify-content:center;padding-top:10px;display:flex}.pl-drawing svg{width:100%;height:auto;max-height:130px;display:block}.pl-drawing .pl-cbl{fill:none;stroke:#e2323b;stroke-width:3.4px;stroke-linejoin:round}.pl-drawing .pl-cbl.hv{stroke:var(--green);stroke-width:5px}.pl-drawing .pl-pop{animation:pl-pop .4s var(--ease) both;transform-box:fill-box;transform-origin:50% 100%}@keyframes pl-pop{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.pl-drawing .pl-spin{animation:9s linear infinite pl-spin}@keyframes pl-spin{to{transform:rotate(360deg)}}.pl-prop .calc-hero b{font-variant-numeric:proportional-nums}@media (prefers-reduced-motion:reduce){.pl-drawing .pl-pop,.pl-drawing .pl-spin{animation:none}}.pl-main>*{min-width:0}@media (width<=560px){.pl-seg{grid-template-columns:repeat(3,minmax(0,1fr));justify-self:stretch;display:grid}.pl-seg button{padding:8px 4px}.pl-seg button b{font-size:.875rem}.pl-seg button span{font-size:.8125rem}.pl-chargers{grid-template-columns:1fr 1fr}.pl-chargers>:first-child{grid-column:1/-1}.pl-head{flex-wrap:wrap;gap:14px 18px}.pl-head .pl-pick{flex:100%;order:-1}.pl-fig{padding-left:16px}}
