/* Interactive isometric solution scene; shared by home, solar and battery pages. */
.solutions-explorer{grid-template-columns:165px minmax(230px,.75fr) minmax(0,1.5fr);gap:32px}.solutions-visual{min-width:0;position:relative}.iso-stage{background:radial-gradient(ellipse at 55% 50%,#edf6f0,transparent 68%);border-radius:30px;position:relative}.solutions-scene{isolation:isolate}.solutions-scene .scene-grid{opacity:.46}.solutions-scene .scene-grid line{stroke:#b6cfc1;stroke-width:.75}.solutions-scene .f-top{fill:#f9fcfa;stroke:#a9c2b5}.solutions-scene .f-left{fill:url(#iso-wall);stroke:#a9c2b5}.solutions-scene .f-right{fill:#9ebbac;stroke:#87a996}.solutions-scene .roof-a{fill:#8ea7a0;stroke:#65847a}.solutions-scene .roof-b{fill:url(#iso-roof);stroke:#57776c}.solutions-scene .pv{fill:url(#iso-panel);stroke:#71b0bd;stroke-width:1.1}.solutions-scene .pv-line{stroke:#88c6d4;stroke-width:.8;opacity:.8}.solutions-scene .detail{fill:#315847}.solutions-scene .window{fill:#74b6c1;stroke:#d4eaf0;stroke-width:.6}.solutions-scene .scene-node{opacity:.8;filter:drop-shadow(1px 8px 5px #153d322b);cursor:pointer;outline:none;transition:filter .45s,opacity .45s}.solutions-scene .node-hub{opacity:1;cursor:default}.solutions-scene .f-top.hub{fill:#1d9661}.solutions-scene .f-left.hub{fill:#096142}.solutions-scene .f-right.hub{fill:#063c2a}.solutions-scene .f-top.battery{fill:#e6efec}.solutions-scene .f-left.battery{fill:#284b44}.solutions-scene .f-right.battery{fill:#133a31}.solutions-scene .charge{fill:#78a895}.solutions-scene .scene-wire{stroke:#86a999;stroke-width:2;stroke-dasharray:none;opacity:.55}.solutions-scene .scene-flow{stroke:#159060;stroke-width:4;stroke-dasharray:none;animation:none!important}.iso-halos ellipse{fill:url(#iso-glow);opacity:0;transition:opacity .5s}.iso-particles{opacity:0;pointer-events:none}.iso-label{opacity:.8;pointer-events:none;transition:opacity .3s}.iso-label rect{fill:#fff;stroke:#cfdfd4;stroke-width:1}.iso-label text{fill:#486553;font:600 13px 'DM Sans',Arial,sans-serif}.solutions-scene .scene-node:hover,.solutions-scene .scene-node:focus-visible{opacity:1;filter:drop-shadow(0 0 5px #1b995c) drop-shadow(0 12px 10px #123d3440)}
.solutions-explorer[data-active=residencial] [data-node=residencial],.solutions-explorer[data-active=empresas] [data-node=empresas],.solutions-explorer[data-active=rural] [data-node=rural],.solutions-explorer[data-active=baterias] [data-node=baterias]{opacity:1;filter:drop-shadow(1px 12px 8px #0b503446)}
.solutions-explorer[data-active=residencial] [data-highlight=residencial],.solutions-explorer[data-active=empresas] [data-highlight=empresas],.solutions-explorer[data-active=rural] [data-highlight=rural],.solutions-explorer[data-active=baterias] [data-highlight=baterias]{opacity:1;animation:iso-breathe 3s ease-in-out infinite alternate}
.solutions-explorer[data-active=residencial] [data-particles=residencial],.solutions-explorer[data-active=empresas] [data-particles=empresas],.solutions-explorer[data-active=rural] [data-particles=rural],.solutions-explorer[data-active=baterias] [data-particles=baterias]{opacity:1}
.solutions-explorer[data-active=residencial] [data-label=residencial],.solutions-explorer[data-active=empresas] [data-label=empresas],.solutions-explorer[data-active=rural] [data-label=rural],.solutions-explorer[data-active=baterias] [data-label=baterias]{opacity:1}.solutions-explorer[data-active=residencial] [data-label=residencial] rect,.solutions-explorer[data-active=empresas] [data-label=empresas] rect,.solutions-explorer[data-active=rural] [data-label=rural] rect,.solutions-explorer[data-active=baterias] [data-label=baterias] rect{fill:#0b583b;stroke:#0b583b}.solutions-explorer[data-active=residencial] [data-label=residencial] text,.solutions-explorer[data-active=empresas] [data-label=empresas] text,.solutions-explorer[data-active=rural] [data-label=rural] text,.solutions-explorer[data-active=baterias] [data-label=baterias] text{fill:#fff}.solutions-explorer[data-active=baterias] .charge{fill:#c2ef71;animation:iso-charge 2.4s ease-in-out infinite}.solutions-explorer[data-active=baterias] .charge:nth-last-child(2){animation-delay:.35s}.solutions-explorer[data-active=baterias] .charge:last-child{animation-delay:.7s}
.iso-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #d9e6df;padding:17px 2px;margin:0 24px}.iso-toolbar>div{display:grid;grid-template-columns:8px 1fr;gap:2px 10px;align-items:center}.iso-status-dot{width:7px;height:7px;border-radius:50%;background:#168851}.iso-selection{font-size:15px;font-weight:650;color:#174e36}.iso-status{grid-column:2;font-size:13px;color:#687a6e}.iso-motion{min-height:44px;padding:9px 12px;border:1px solid #c9dbd0;border-radius:8px;color:#245c42;background:#fff;font-size:13px;cursor:pointer;white-space:nowrap}.iso-motion:hover{background:#edf5ee}.scene-paused .ring-progress,.scene-paused .iso-halos ellipse,.scene-paused .charge,.page-hidden .iso-halos ellipse,.page-hidden .charge{animation-play-state:paused!important}
@keyframes iso-breathe{from{opacity:.5}to{opacity:1}}@keyframes iso-charge{0%,100%{opacity:.4}50%{opacity:1}}
@media(min-width:1500px){.solutions-explorer{grid-template-columns:180px minmax(250px,.7fr) minmax(0,1.6fr);gap:42px}}
@media(max-width:1100px){.solutions-explorer{grid-template-columns:160px minmax(0,1fr);gap:26px}.solutions-visual{grid-column:2;grid-row:1 / span 2;width:100%;max-width:none}.solutions-panels{grid-column:1/-1;max-width:650px;margin:auto;text-align:center}.solutions-tabs{grid-column:1;grid-row:1 / span 2}.iso-toolbar{margin:0 10px}.iso-status{font-size:12px}}
@media(max-width:760px){.solutions-explorer{grid-template-columns:minmax(0,1fr);gap:22px}.solutions-tabs{grid-column:1;grid-row:1}.solutions-visual{grid-column:1;grid-row:2;margin:0;max-width:none}.solutions-panels{grid-column:1;grid-row:3;text-align:left;margin:0}.iso-toolbar{margin:0;padding:12px 0;gap:8px}.iso-status{max-width:175px}.iso-motion{font-size:12px;padding:8px}.iso-stage{margin:0 -12px}.solutions-scene .iso-label text{font-size:15px}.solution-directory{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.iso-halos ellipse,.solutions-scene .charge{animation:none!important}.iso-particles{display:none}.solutions-scene .scene-node{transition:none}}
/* Solar installation: one property per scenario, with a roof/ground array and solar inverter. */
.solar-installation .building-view{display:none;filter:drop-shadow(0 8px 7px #24453120)}
.solutions-explorer[data-active=residencial] [data-view=residencial],.solutions-explorer[data-active=baterias] [data-view=residencial],.solutions-explorer[data-active=empresas] [data-view=empresas],.solutions-explorer[data-active=rural] [data-view=rural]{display:block}
.solutions-scene.solar-installation .f-top{fill:#fffdf6;stroke:#b9b8a5}.solutions-scene.solar-installation .f-left{fill:url(#solar-wall);stroke:#bbb8a5}.solutions-scene.solar-installation .f-right{fill:#cecbb9;stroke:#b8b8a4}.solutions-scene.solar-installation .roof-a{fill:#c28b64;stroke:#9d6f50}.solutions-scene.solar-installation .roof-b{fill:#ad7755;stroke:#966347}.solutions-scene.solar-installation .pv{fill:url(#solar-panel);stroke:#a9cadb;stroke-width:.8}.solutions-scene.solar-installation .pv-line{stroke:#8db5d0;stroke-width:.6}.solutions-scene.solar-installation .window{fill:#83b5c7;stroke:#d4e3e4}.solutions-scene.solar-installation .detail{fill:#695d43}.solar-inverter,.solar-storage{filter:drop-shadow(0 5px 4px #2d483129)}
.solar-route{display:none}.solar-cable{fill:none;stroke:#248057;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.route-consumo{display:block}.route-consumo .solar-cable{stroke:#4596ab}.solar-storage,.storage-label{display:none}.solutions-explorer[data-active=residencial] .route-residencial,.solutions-explorer[data-active=baterias] .route-residencial,.solutions-explorer[data-active=empresas] .route-empresas,.solutions-explorer[data-active=rural] .route-rural,.solutions-explorer[data-active=baterias] .route-bateria,.solutions-explorer[data-active=baterias] .solar-storage,.solutions-explorer[data-active=baterias] .storage-label{display:block}
.solar-labels rect{fill:#fff;stroke:#d3dfcf;stroke-width:1}.solar-labels text{fill:#37583c;text-anchor:middle;font:600 14px 'DM Sans',Arial,sans-serif}.solar-sun{animation:solar-daylight 4s ease-in-out infinite alternate}.storage-charge{animation:solar-daylight 2s ease-in-out infinite alternate}.scene-paused .solar-sun,.scene-paused .storage-charge{animation-play-state:paused!important}.iso-stage{background:radial-gradient(ellipse at 48% 46%,#fff9e9,transparent 70%)}
@keyframes solar-daylight{from{opacity:.65}to{opacity:1}}
@media(max-width:760px){.solar-labels text{font-size:16px}.solar-labels rect{stroke:none}.iso-stage{margin:0 -20px}}
@media(prefers-reduced-motion:reduce){.solar-sun,.storage-charge{animation:none!important}.solar-electron{display:none}}
/* Grid availability, export, backup and irrigation scenarios. */
.operation-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 20px 10px;padding:18px;border:1px solid #d5e2d8;border-radius:14px;background:#f5f8f4}.operation-label{width:100%;font-size:11px;letter-spacing:.12em;color:#57705d;font-weight:650}.operation-modes{display:flex;gap:5px;flex-wrap:wrap}.operation-modes button{background:#fff;color:#3c624a;border:1px solid #cbdccf;padding:10px 14px;min-height:44px;border-radius:7px;font-size:14px;cursor:pointer}.operation-modes button[aria-pressed=true]{background:#0b583b;color:white;border-color:#0b583b}.grid-toggle{margin-left:auto;background:#fff;border:1px solid #bdcfc1;border-radius:7px;padding:10px 12px;font-size:13px;color:#254e36;min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer}.grid-indicator{width:7px;height:7px;background:#26935b;border-radius:50%;flex-shrink:0}.grid-toggle[aria-pressed=true]{border-color:#dca691;color:#a34129;background:#fff5ee}.grid-toggle[aria-pressed=true] .grid-indicator{background:#c15839}.operation-explanation{margin:12px 22px 0;padding:18px 20px;background:#f2f7f1;border-left:3px solid #4b8c58;border-radius:0 10px 10px 0}.operation-title{font-size:17px;font-weight:650;color:#214b30;display:block;margin-bottom:8px}.operation-copy{font-size:15px;line-height:1.6;color:#556b58}.energy-outcome{font-size:14px;color:#285b37;font-weight:550;margin-top:12px}.operation-note{font-size:12px;line-height:1.6;color:#6d7a6d;margin:16px 24px 0}.utility-title{fill:#385842;font:600 14px 'DM Sans',Arial}.utility-state{fill:#488452;font:500 12px 'DM Sans',Arial}.route-export .solar-cable{stroke:#bd8c20}.route-battery-discharge .solar-cable{stroke:#9260ba}.route-irrigation .solar-cable{stroke:#4596ab}.irrigation-water{stroke-dasharray:4 5;animation:irrigation-flow 1s linear infinite}.scene-paused .irrigation-water{animation-play-state:paused!important}.solutions-explorer[data-grid=outage] .utility-icon{opacity:.35}.solutions-explorer[data-grid=outage] .utility-state{fill:#b05234}.solutions-explorer[data-grid=outage] .grid-switch{stroke:#bd5434}.solutions-explorer[data-solar=off] .solar-sun{opacity:.2;animation:none}.solutions-explorer[data-solar=off] .pv{opacity:.5}.solutions-explorer[data-supply=off] .irrigation-water{display:none}.solutions-explorer[data-grid=outage] .operation-explanation{background:#fff7ee;border-color:#c19150}.solutions-explorer[data-battery-flow=discharge] .storage-charge{fill:#be8ce4}.solutions-explorer[data-system=zero] .grid-connection{opacity:.4}.irrigation-system{display:none}.solar-installation .solar-cable{stroke-width:3}.solar-labels .solar-load-label{font-size:13px}
@keyframes irrigation-flow{to{stroke-dashoffset:-18}}
@media(min-width:1101px){.solutions-explorer{align-items:start}.solutions-tabs,.solutions-panels{margin-top:160px}.solutions-visual{grid-row:1;grid-column:3}}
@media(max-width:1100px){.solutions-explorer{align-items:start}.operation-controls{margin:0 0 12px;padding:12px}.grid-toggle{margin-left:0}.operation-explanation{margin:12px 0 0}.operation-note{margin:14px 2px 0}}
@media(max-width:760px){.operation-controls{gap:8px}.grid-toggle{width:100%;justify-content:center}.operation-modes{width:100%}.operation-modes button{flex:1}.operation-explanation{padding:16px}.operation-copy{font-size:14px}.operation-title{font-size:16px}.utility-title{font-size:15px}.solar-load-label{font-size:16px!important}.iso-stage{margin:0 -12px}.iso-toolbar{flex-wrap:wrap}.iso-status{max-width:none}.iso-toolbar>div{flex:1;min-width:160px}}
@media(prefers-reduced-motion:reduce){.irrigation-water{animation:none}}
.solar-route .solar-cable{marker-end:url(#solar-flow-arrow)}
.rural-house-label{display:none}.rural-house-label text{font:600 14px 'DM Sans',Arial;fill:#37583c}.solutions-explorer[data-active=rural] .rural-house-label{display:block}.route-rural-house .solar-cable{stroke:#4596ab}.solutions-explorer[data-supply=off] .rural-home-window{fill:#abb8b9;opacity:.55}

.solar-toggle{background:#fff9e7;border:1px solid #e4d299;color:#755c24;border-radius:7px;padding:10px 12px;min-height:44px;font-size:13px;cursor:pointer}.solar-toggle[hidden]{display:none}.solar-toggle[aria-pressed=true]{background:#edf1f5;border-color:#bdc9d5;color:#486176}@media(max-width:760px){.solar-toggle{width:100%}}
