@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Tilt+Warp&display=swap";
.simulator-copy{flex:1;min-width:0}.simulator-form{gap:17px;max-width:580px;display:grid}.simulator-form label{gap:7px;font-weight:600;display:grid}.simulator-form input[type=range]{accent-color:var(--accent);width:100%}.price-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.price-grid label{font-size:.88rem}.input-suffix{border:1px solid var(--border);background:#fff;border-radius:12px;align-items:center;gap:5px;padding:0 10px;font-weight:400;display:flex}.input-suffix input{background:0 0;border:0;outline:0;width:100%;min-width:0;padding:10px 0}.simulation-message{font-weight:600;margin:16px 0 0!important}.simulation-result{background:#fff;border-radius:18px;max-width:580px;margin-top:22px;padding:20px}.simulation-stats{grid-template-columns:repeat(3,1fr);gap:12px;margin:14px 0;display:grid}.simulation-stats div{gap:4px;display:grid}.simulation-stats span{color:var(--muted);font-size:.78rem}.simulation-stats strong{font-family:var(--font-display);font-size:1.2rem}.simulation-detail-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:12px 0;display:grid}.simulation-detail-grid span{border:1px solid var(--border);background:#f9fffc;border-radius:12px;gap:3px;padding:10px 12px;display:grid}.simulation-detail-grid strong{font-family:var(--font-display);font-size:1rem}.simulation-detail-grid small{color:var(--muted);font-size:.78rem}.secondary-button{margin-top:14px;color:var(--fg)!important;border:1px solid var(--fg)!important;background:0 0!important}.battery-illustration{flex:none}.battery-illustration small{font-size:1rem}.shared-page{background:#f6fffa;min-height:100vh}.shared-card{max-width:760px;margin:0 auto;padding:64px 24px}.shared-card h1{font-size:clamp(2.3rem,5vw,4rem)}:root{--bg:#fff;--surface:#fff;--surface-warm:#9cd6e8;--fg:#0e3d23;--muted:#4c6a5b;--border:#d7ece3;--accent:#0e3d23;--accent-on:#fff;--accent-hover:#13512e;--success:#00a36f;--warn:#ffcd00;--hero-bg:#00a36f;--orange:#e94e1b;--font-display:"Tilt Warp",sans-serif;--font-body:"Outfit",sans-serif;--radius-md:24px;--radius-lg:32px;--radius-pill:999px}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{color:var(--fg);background:var(--bg);font-family:var(--font-body);margin:0;font-size:16px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.1}h1{max-width:760px;font-size:clamp(2.6rem,7vw,4.5rem)}h2{font-size:clamp(2rem,4vw,3.1rem)}h3{font-size:1.45rem}.hero{background:var(--hero-bg);color:#fff;padding:22px max(24px,50vw - 560px) 80px}.hero nav{justify-content:space-between;align-items:center;max-width:1120px;margin:auto;display:flex}.brand{align-items:center;display:flex}.brand-lockup{align-items:center;gap:12px;display:flex}.brand-logo{object-fit:contain;width:54px;height:74px}.brand-tagline{font-family:var(--font-display);max-width:105px;font-size:1rem;line-height:1.1}.brand-mark{background:var(--warn);width:40px;height:40px;color:var(--fg);border-radius:14px;place-items:center;font-size:1.8rem;font-weight:700;display:inline-grid}.logout{color:#fff;border-radius:var(--radius-pill);background:0 0;border:2px solid #fff;padding:8px 18px}.hero-copy{max-width:1120px;margin:74px auto 0}.hero-copy>p:last-child{max-width:600px;margin-top:20px;font-size:1.2rem}.eyebrow{text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:.75rem;font-weight:700}.page-section,.simulator-section{max-width:1120px;margin:auto;padding:64px 24px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.section-heading select{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--fg);background:#fff;padding:12px 18px}.resolution-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.resolution-tabs button{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--fg);background:#fff;padding:9px 16px}.resolution-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff}.stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px;display:grid}.stat,.card,.quality-card{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;padding:24px}.stat p,.card-heading p,.muted{color:var(--muted)}.stat strong{font-family:var(--font-display);font-size:1.8rem}.card-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.legend{color:var(--muted);white-space:nowrap;font-size:.9rem}.legend i{border-radius:50%;width:9px;height:9px;margin:0 4px 0 10px;display:inline-block}.import-dot,.bar.import{background:var(--fg)}.export-dot,.bar.export{background:var(--warn)}.chart{border-bottom:1px solid var(--border);align-items:end;gap:2px;height:250px;margin-top:14px;padding-top:24px;display:flex;overflow:hidden}.bar-group{flex:1;align-items:end;gap:1px;min-width:4px;height:100%;display:flex}.bar{border-radius:4px 4px 0 0;flex:1;display:block}.quality-card{background:#f8fffb;justify-content:space-between;align-items:center;gap:24px;margin-top:16px;display:flex}.quality-card.attention{background:#fffbed}.quality-ring{background:var(--success);color:#fff;width:86px;height:86px;font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.3rem;display:grid}.attention .quality-ring{background:var(--warn);color:var(--fg)}.simulator-section{background:var(--surface-warm);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:32px;margin-bottom:64px;display:flex}.simulator-section p:not(.eyebrow){max-width:560px;margin:16px 0 24px}.simulator-section button,.login-card button{background:var(--accent);color:#fff;border-radius:var(--radius-pill);font-family:var(--font-display);border:0;padding:13px 22px}.simulator-section button:disabled{opacity:.55;cursor:not-allowed}.battery-illustration{background:var(--fg);color:#fff;text-align:center;width:180px;height:180px;font-family:var(--font-display);border-radius:32px;place-content:center;font-size:2.2rem;display:grid}.battery-illustration span{color:var(--warn);font-size:3.2rem}.login-page{background:var(--hero-bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#fff;border-radius:32px;max-width:480px;padding:42px}.login-card .brand-lockup{margin-bottom:24px}.login-card .brand-logo{width:70px;height:96px}.login-card .brand-tagline{color:var(--fg)}.login-card h1{margin:20px 0 12px;font-size:2.5rem}.login-card form{gap:10px;margin-top:24px;display:grid}.login-card input{border:1px solid var(--border);border-radius:12px;padding:12px}.message{color:var(--muted);margin-top:16px}.empty{text-align:center;padding:48px}.empty .brand-mark{margin-bottom:16px}@media (max-width:720px){.hero{padding-bottom:52px}.hero-copy{margin-top:52px}.section-heading,.simulator-section{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr}.simulator-section{margin:0 16px 32px;padding:32px 24px}.battery-illustration{width:130px;height:130px}.card-heading{flex-direction:column}.legend{white-space:normal}}.chart-card{min-height:390px}.chart-shell{margin-top:14px}.chart-layout{gap:12px;display:flex}.chart-y-axis{width:76px;height:250px;color:var(--muted);flex-direction:column;justify-content:space-between;align-items:end;padding:0 0 22px;font-size:.75rem;display:flex}.chart-y-axis small{writing-mode:vertical-rl;letter-spacing:.04em;margin-top:12px;font-size:.67rem;transform:rotate(180deg)}.chart-plot{flex:1;min-width:0}.chart{background:repeating-linear-gradient(#0000 0 calc(50% - 1px),#edf7f1 50%,#0000 calc(50% + 1px) 100%);margin-top:0}.bar-group{background:0 0;border:0;padding:0}.bar-group:focus-visible{outline:2px solid var(--orange);outline-offset:-1px}.bar-group.active .bar{filter:brightness(1.18);box-shadow:0 0 0 1px #0e3d2340}.chart-x-axis{height:43px;color:var(--muted);font-size:.72rem;position:relative}.chart-x-axis span{white-space:nowrap;position:absolute;top:6px;transform:translate(-50%)}.chart-x-axis span:first-child{transform:none}.chart-x-axis span:last-of-type{transform:translate(-100%)}.chart-x-axis small{letter-spacing:.04em;font-size:.67rem;position:absolute;bottom:0;right:0}.chart-tooltip{min-height:48px;color:var(--muted);background:#f6fffa;border-radius:12px;align-items:center;gap:14px;margin:12px 0 0 88px;padding:10px 12px;font-size:.85rem;display:flex}.chart-tooltip strong{color:var(--fg)}.period-navigation{justify-content:center;align-items:center;gap:16px;margin:0 0 8px;display:flex}.period-navigation strong{text-align:center;min-width:220px;font-family:var(--font-display);text-transform:capitalize;font-size:1.2rem}.period-navigation button{border:1px solid var(--border);width:38px;height:38px;color:var(--fg);background:#fff;border-radius:50%;font-size:1.25rem}.period-navigation button:disabled{opacity:.35;cursor:not-allowed}.period-selection-hint{text-align:center;min-height:24px;color:var(--muted);margin:0 0 18px;font-size:.9rem}@media (max-width:720px){.period-navigation strong{flex:1;min-width:0;font-size:1rem}.period-selection-hint{text-align:left}}.install-toast{z-index:20;border:1px solid var(--border);background:#fff;border-radius:22px;align-items:center;gap:14px;max-width:520px;padding:16px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 18px 50px #0b3f242e}.install-toast strong{font-family:var(--font-display);font-size:1.2rem}.install-toast p{color:var(--muted);font-size:.92rem}.install-toast-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.install-toast-actions button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;padding:10px 16px}.install-toast-actions .text-button{color:var(--fg);background:0 0;padding:10px}@media (max-width:720px){.install-toast{flex-wrap:wrap;align-items:flex-start;bottom:16px;left:16px;right:16px}.install-toast-actions{justify-content:flex-end;width:100%}}.login-card .text-button{color:var(--accent);background:0 0;border:0;margin-top:14px;padding:0;text-decoration:underline}.login-divider{color:var(--muted);align-items:center;gap:12px;margin:22px 0;font-size:.9rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.login-card .secondary-button{width:100%;color:var(--accent);border:1px solid var(--accent);background:#fff}.release-footer{color:#dff5e9;background:#083d29;flex-wrap:wrap;justify-content:center;gap:8px 22px;padding:18px 24px;font-size:.78rem;display:flex}.release-footer span{white-space:nowrap}@media (max-width:720px){.release-footer{text-align:center;flex-direction:column;align-items:center;gap:4px}.release-footer span{white-space:normal}}.landing-page{background:#fff}.landing-hero{background:var(--hero-bg);color:#fff;padding:22px max(24px,50vw - 560px) 50px}.landing-nav{justify-content:space-between;align-items:center;max-width:1120px;margin:auto;display:flex}.landing-login,.landing-actions button,.landing-final button{border-radius:var(--radius-pill);color:var(--fg);font-family:var(--font-display);background:#fff;border:0;padding:12px 20px}.landing-hero-copy{max-width:900px;margin:86px auto 58px}.landing-hero-copy h1{max-width:820px}.landing-hero-copy>p:not(.eyebrow){max-width:660px;margin-top:22px;font-size:1.25rem;line-height:1.55}.landing-actions{align-items:center;gap:14px;margin-top:32px;display:flex}.landing-actions button{background:var(--warn)}.landing-actions a{color:#fff;font-family:var(--font-display);text-decoration:none}.landing-statements{flex-wrap:wrap;gap:12px;max-width:1120px;margin:auto;display:flex}.landing-statements span{border-radius:var(--radius-pill);border:1px solid #ffffff59;padding:8px 14px;font-size:.9rem}.landing-section{max-width:1120px;margin:auto;padding:82px 24px}.landing-section h2{max-width:720px}.landing-card-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:32px;display:grid}.landing-card-grid article{border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;padding:28px}.landing-card-grid h3{margin:18px 0 10px}.landing-card-grid p,.landing-import-preview>div>p,.landing-strategy p{color:var(--muted)}.landing-number{color:var(--success);font-family:var(--font-display);font-size:1.2rem}.landing-strategy{background:#f9fffc;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);align-items:start;gap:42px;display:grid}.landing-strategy>div:first-child{gap:16px;display:grid}.landing-strategy-points{gap:12px;display:grid}.landing-strategy-points article{border:1px solid var(--border);border-left:6px solid var(--success);background:#fff;border-radius:16px;padding:18px}.landing-strategy-points strong{font-family:var(--font-display);font-size:1.25rem;display:block}.landing-strategy-points span{border-radius:var(--radius-pill);color:#064c31;background:#dff8ec;margin:8px 0;padding:5px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.landing-how{border-radius:var(--radius-lg);background:#f5fcf8;grid-template-columns:1fr 1fr;gap:54px;margin-bottom:64px;display:grid}.landing-how ol{gap:20px;margin:0;padding:0;list-style:none;display:grid}.landing-how li{gap:16px;display:flex}.landing-how b{background:var(--warn);width:36px;height:36px;color:var(--fg);border-radius:50%;flex:none;place-items:center;display:grid}.landing-how span{gap:4px;display:grid}.landing-how small{color:var(--muted);font-size:1rem}.landing-import-preview{grid-template-columns:1fr 1fr;align-items:center;gap:48px;display:grid}.landing-imports{gap:14px;display:grid}.landing-imports article{border:1px solid var(--border);border-radius:18px;padding:20px 104px 20px 20px;position:relative}.landing-imports article>span{float:left;width:46px;height:46px;color:var(--fg);background:#dff5e9;border-radius:12px;place-items:center;margin:0 14px 8px 0;font-weight:700;display:grid}.landing-imports h3{font-size:1.2rem}.landing-imports p{clear:both;color:var(--muted);margin-top:10px}.landing-imports small{border-radius:var(--radius-pill);background:#fff0ad;padding:5px 9px;font-weight:700;position:absolute;top:18px;right:18px}.landing-final{background:var(--surface-warm);border-radius:var(--radius-lg);align-items:center;gap:26px;max-width:1120px;margin:0 auto 64px;padding:42px;display:flex}.landing-final>div{flex:1}.landing-final h2{font-size:clamp(1.8rem,3vw,2.8rem)}.landing-final p{margin-top:10px}.landing-final .brand-tagline{color:var(--fg)}.landing-final button{background:var(--fg);color:#fff;white-space:nowrap}.landing-back{margin:-4px 0 12px!important;display:block!important}@media (max-width:720px){.landing-hero-copy{margin:58px auto 42px}.landing-hero-copy>p:not(.eyebrow){font-size:1.1rem}.landing-actions{flex-direction:column;align-items:flex-start}.landing-card-grid,.landing-strategy,.landing-how,.landing-import-preview{grid-template-columns:1fr}.landing-how{gap:32px;margin:0 16px 32px;padding:42px 24px}.landing-section{padding:58px 24px}.landing-final{flex-direction:column;align-items:flex-start;margin:0 16px 32px;padding:32px 24px}.landing-statements span{font-size:.82rem}.landing-nav .brand-tagline{display:none}}.calculation-explanation{color:#173f2a;background:#fff8d8;border-left:4px solid #fc0;padding:12px 14px;line-height:1.55}.simulation-monthly{margin-top:24px}.simulation-monthly h3{margin-bottom:4px}.simulation-month-chart{border-bottom:1px solid #b7dfd0;align-items:end;gap:8px;height:190px;margin:16px 0;display:flex}.simulation-month{text-align:center;flex:1;gap:6px;min-width:24px;display:grid}.simulation-bars{justify-content:center;align-items:end;gap:2px;height:160px;display:flex}.simulation-bars i{border-radius:4px 4px 0 0;width:28%;min-height:3px;display:block}.simulation-bars .stored{background:#a5dcf0}.simulation-bars .charged{background:#064c31}.simulation-bars .grid-charged{background:#0b7c54}.simulation-bars .discharged{background:#fc0}.simulation-month-table{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.simulation-month-table>div{border:1px solid #d6ece2;border-radius:8px;gap:3px;padding:10px;font-size:.85rem;display:grid}.simulation-month-table span{color:#456757}.hero-nav{position:relative}.menu-toggle{display:none}.nav-actions{align-items:center;gap:10px;display:flex}.nav-actions .logout{text-decoration:none}.nav-actions .superadmin-link{color:#fff;background:#ffcd001f;border-color:#ffcd00}@media (max-width:720px){.hero nav.hero-nav{align-items:flex-start}.menu-toggle{color:#fff;background:0 0;border:2px solid #ffffffbf;border-radius:50%;place-items:center;gap:4px;width:48px;height:48px;margin-left:auto;display:grid}.menu-toggle span{background:#fff;border-radius:2px;width:20px;height:2px;display:block}.nav-actions{z-index:10;background:#008b5f;border:1px solid #ffffff52;border-radius:18px;min-width:min(280px,100vw - 48px);padding:12px;display:none;position:absolute;top:62px;right:0;box-shadow:0 18px 48px #00362147}.nav-actions.open{gap:8px;display:grid}.nav-actions .logout{text-align:center;justify-content:center;width:100%}.nav-actions .superadmin-link:first-of-type{margin-top:8px}.nav-actions .superadmin-link{background:#076447;border-color:#ffcd00}.hero-copy{margin-top:46px}}.admin-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.admin-form label{gap:6px;font-weight:700;display:grid}.admin-form input,.admin-form select{font:inherit;border:1px solid #b9dfd1;border-radius:8px;padding:10px}.admin-users{gap:10px;display:grid}.admin-users>div{border-top:1px solid #d5ece2;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.admin-users span{color:#527060;font-size:.9rem;display:block}.admin-page{gap:18px;display:grid}.admin-devices{gap:8px;margin-top:16px;display:grid}.admin-device{border-top:1px solid #d5ece2;grid-template-columns:minmax(220px,1fr) 112px 180px 92px;align-items:center;gap:12px;padding:12px 0;display:grid}.admin-device span,.admin-device small{color:#527060;font-size:.86rem}.admin-device small{overflow-wrap:anywhere;display:block}.status-pill{color:#0e3d23;background:#edf7f1;border-radius:999px;justify-self:start;padding:4px 9px;font-size:.78rem;font-weight:700}.status-pill.archived{color:#6b5a38;background:#f1eee8}.status-pill.inactive,.status-pill.retired{color:#4c3d05;background:#fff0ad}@media (max-width:720px){.admin-device{grid-template-columns:1fr}.status-pill{justify-self:start}}.import-result{background:#f8fffb;border:1px solid #d5ece2;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:16px;padding:14px;display:grid}.import-result div{gap:2px;display:grid}.import-result strong{font-family:var(--font-display);font-size:1.25rem}.import-result span{color:var(--muted);font-size:.82rem}.import-result ul{color:#7a3a00;grid-column:1/-1;margin:6px 0 0;padding-left:18px}.admin-dongles{gap:8px;margin-top:16px;display:grid}.admin-dongles>div{border-top:1px solid #d5ece2;grid-template-columns:90px minmax(150px,1fr) minmax(150px,1fr) minmax(160px,1fr);align-items:center;gap:12px;padding:10px 0;display:grid}.admin-dongles span{color:#527060;overflow-wrap:anywhere;font-size:.88rem}@media (max-width:720px){.admin-dongles>div{grid-template-columns:1fr}}.comparison-result{max-width:760px}.comparison-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:16px;display:grid}.comparison-grid>div{border:1px solid #d6ece2;border-radius:10px;gap:5px;padding:12px;display:grid}.comparison-grid strong{font-family:var(--font-display);font-size:1.2rem}.comparison-grid span,.comparison-grid small{color:var(--muted);font-size:.82rem}.comparison-grid b{font-size:.95rem}.saved-simulation-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.saved-simulation{text-align:left;color:var(--fg);cursor:pointer;gap:5px;text-decoration:none;display:grid}.saved-simulation strong{font-family:var(--font-display);font-size:1.3rem}.saved-simulation span,.saved-simulation small{color:var(--muted)}.tariff-mode-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.tariff-option{text-align:left;gap:3px;border:1px solid var(--border)!important;color:var(--fg)!important;font-family:var(--font-body)!important;background:#fff!important;border-radius:16px!important;padding:13px 14px!important;display:grid!important}.tariff-option strong{font-family:var(--font-display);font-weight:400}.tariff-option span{color:var(--muted);font-size:.82rem}.tariff-option.active.dynamic{box-shadow:inset 0 0 0 2px var(--success);border-color:var(--success)!important;background:#f1fff8!important}.tariff-option.active.fixed{box-shadow:inset 0 0 0 2px var(--warn);border-color:var(--warn)!important;background:#fffbe7!important}.tariff-note{color:var(--fg);background:#f6fffa;border-radius:14px;padding:12px 14px;font-size:.92rem;margin:0!important}.tariff-note.fixed{background:#fff8d8}.tariff-facts{border:1px solid var(--border);background:#fff;border-radius:12px;gap:3px;padding:12px 14px;display:grid}.tariff-facts span{color:var(--muted);font-size:.85rem}.dynamic-prices{grid-template-columns:1fr 1fr}.simulation-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.simulation-meta>span:not(.tariff-badge){color:var(--muted);font-size:.86rem}.tariff-badge{border-radius:var(--radius-pill);align-items:center;padding:5px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.tariff-badge.dynamic{color:#064c31;background:#dff8ec}.tariff-badge.fixed{color:#4f3d00;background:#fff0ad}.calculation-explanation.dynamic{border-left-color:var(--success);background:#f1fff8}.data-quality-note{border:1px solid var(--border);color:var(--muted);background:#f9fffc;border-radius:12px;padding:10px 12px;font-size:.92rem}.simulation-monthly{border:1px solid var(--border);background:#fff;border-radius:16px;padding:0}.simulation-monthly summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:flex}.simulation-monthly summary::-webkit-details-marker{display:none}.simulation-monthly summary:after{content:"+";width:28px;height:28px;font-family:var(--font-display);background:#edf8f2;border-radius:50%;place-items:center;display:grid}.simulation-monthly[open] summary:after{content:"−"}.simulation-monthly summary span{gap:2px;display:grid}.simulation-monthly summary small{color:var(--muted);font-size:.82rem}.simulation-monthly>p,.simulation-monthly>.simulation-month-chart,.simulation-monthly>.simulation-month-table{margin-left:16px;margin-right:16px}.saved-simulation{border-left:6px solid var(--border)}.saved-simulation.dynamic{border-left-color:var(--success)}.saved-simulation.fixed{border-left-color:var(--warn)}.saved-simulation-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.advanced-simulation-settings{border:1px solid var(--border);background:#fff;border-radius:16px;padding:0}.advanced-simulation-settings summary{cursor:pointer;padding:13px 14px;list-style:none}.advanced-simulation-settings summary::-webkit-details-marker{display:none}.advanced-simulation-settings summary span{gap:2px;display:grid}.advanced-simulation-settings summary small{color:var(--muted);font-size:.82rem}.advanced-simulation-settings .price-grid{padding:0 14px 12px}.advanced-simulation-settings .check-row{align-items:center;gap:8px;margin:0 14px 10px;display:flex}.advanced-simulation-settings .check-row input{width:auto}.advanced-simulation-settings>p{font-size:.86rem;margin:0 14px 14px!important}.input-suffix select{width:100%;min-width:0;color:var(--fg);background:0 0;border:0;outline:0;padding:10px 0}.simulation-settings-summary{border:1px solid var(--border);background:#fff;border-radius:16px;margin:12px 0}.simulation-settings-summary summary{cursor:pointer;padding:13px 14px;list-style:none}.simulation-settings-summary summary::-webkit-details-marker{display:none}.simulation-settings-summary summary span{gap:2px;display:grid}.simulation-settings-summary summary small{color:var(--muted);font-size:.82rem}.simulation-settings-summary .simulation-detail-grid{margin:0;padding:0 14px 14px}.scenario-grid{grid-template-columns:repeat(3,1fr)}.scenario-comparison-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.scenario-comparison-grid>div{border-left-width:5px}.scenario-comparison-grid>div.theoretical{border-left-color:#7c3aed}.scenario-comparison-grid>div.realistic{border-left-color:#0f766e}.scenario-comparison-grid>div.self-consumption{border-left-color:var(--success)}.tariff-badge.theoretical{color:#4c1d95;background:#ede9fe}.tariff-badge.realistic{color:#134e4a;background:#ccfbf1}.tariff-badge.self-consumption{color:#064c31;background:#dff8ec}.data-quality-note.warning,.warning-text{color:#634500;background:#fff8d8;border-color:#ffd166}.forecast-efficiency{color:#064c31;background:#eefcf7;border-radius:12px;padding:10px 12px}.warning-text{background:0 0;border:0;padding:0;font-weight:700}.simulation-result-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.simulation-result-actions .secondary-button{text-decoration:none}.simulation-detail-page .simulation-result,.simulation-detail-page .simulation-ai-answer{max-width:860px}.help-marker{border:1px solid var(--border);width:18px;height:18px;color:var(--fg);cursor:help;background:#fff;border-radius:50%;place-items:center;margin-left:4px;font-size:.72rem;font-weight:700;line-height:1;display:inline-grid}.help-marker:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.simulation-ai-panel{padding-top:0}.simulation-ai-controls{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;max-width:760px;display:grid}.simulation-ai-controls label{gap:6px;font-weight:700;display:grid}.simulation-ai-controls input{border:1px solid var(--border);width:100%;min-width:0;color:var(--fg);background:#fff;border-radius:10px;padding:10px}.simulation-ai-controls .secondary-button{margin-top:0}.simulation-ai-answer{max-width:760px}.simulation-ai-answer ul{color:var(--muted);margin:10px 0 0;padding-left:18px}@media (max-width:720px){.tariff-mode-grid,.dynamic-prices{grid-template-columns:1fr}}.prospect-calculator{border-radius:var(--radius-lg);background:#f5fcf8;grid-template-columns:minmax(0,1fr) minmax(320px,480px);align-items:start;gap:32px;margin-bottom:64px;display:grid}.prospect-heading{grid-column:1/-1;max-width:820px}.prospect-heading>p:not(.eyebrow){color:var(--muted);margin-top:14px;font-size:1.08rem}.prospect-form{gap:16px;display:grid}.prospect-form fieldset{border:1px solid var(--border);background:#fff;border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:18px;display:grid}.prospect-form legend{font-family:var(--font-display);padding:0 8px;font-size:1.08rem}.prospect-form label{gap:6px;font-weight:700;display:grid}.prospect-form input,.prospect-form select{width:100%;min-width:0;color:var(--fg);background:#fff;border:1px solid #b9dfd1;border-radius:10px;padding:10px}.prospect-form input[type=file]{padding:8px}.prospect-form .muted{grid-column:1/-1;font-size:.88rem}.prospect-form code{background:#edf8f2;border-radius:6px;padding:1px 5px}.prospect-form .check-row{align-items:center;gap:8px;display:flex}.prospect-form .check-row input{width:auto}.prospect-form label span{color:var(--muted);font-size:.82rem}.prospect-form>button,.prospect-cta button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;padding:13px 20px}.prospect-form>button:disabled{opacity:.55;cursor:not-allowed}.prospect-result{border:1px solid var(--border);background:#fff;border-radius:22px;align-self:start;padding:22px}.prospect-result h3{font-size:1.6rem}.prospect-result .simulation-stats{grid-template-columns:1fr}.prospect-cta{background:var(--surface-warm);border-radius:18px;gap:10px;margin-top:16px;padding:18px;display:grid}.prospect-cta h3{font-size:1.45rem}.prospect-cta p{color:#1a4d35}.prospect-cta button{justify-self:start}.landing-actions a[href=\#csv-berekening]{border-bottom:2px solid #ffffff73}@media (max-width:860px){.prospect-calculator{grid-template-columns:1fr;margin:0 16px 32px;padding:42px 24px}.prospect-form fieldset,.prospect-result .simulation-stats{grid-template-columns:1fr}}.landing-login{text-decoration:none}.landing-upload-link{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);margin-top:24px;padding:12px 20px;text-decoration:none;display:inline-flex}.csv-upload-hero{padding-bottom:50px}.csv-upload-hero+.prospect-calculator{margin-top:64px}.prospect-result{grid-column:1/-1}.prospect-result>.simulation-stats{grid-template-columns:repeat(3,1fr)}.prospect-monthly{margin-top:16px}.prospect-monthly .simulation-month-table{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}@media (max-width:720px){.prospect-result>.simulation-stats{grid-template-columns:1fr}}.prospect-lead-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.prospect-lead-form label{gap:6px;font-weight:700;display:grid}.prospect-lead-form input{width:100%;min-width:0;color:var(--fg);background:#fff;border:1px solid #7fc8dd;border-radius:10px;padding:10px}.prospect-lead-form button{align-self:end}.prospect-cta .secondary-button{justify-self:start;margin-top:0;color:var(--fg)!important;border:1px solid var(--fg)!important;background:0 0!important}@media (max-width:720px){.prospect-lead-form{grid-template-columns:1fr}}.brand-lockup{color:inherit;text-decoration:none}.admin-nav-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.admin-nav-card{color:var(--fg);gap:8px;text-decoration:none;display:grid}.admin-nav-card span{font-family:var(--font-display);color:var(--success);font-size:2rem}.admin-nav-card strong{font-family:var(--font-display);font-size:1.35rem}.admin-nav-card p{color:var(--muted)}.admin-table-controls{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(150px,1fr));gap:12px;margin-bottom:14px;display:grid}.admin-table-controls label{gap:6px;font-weight:700;display:grid}.admin-table-controls input,.admin-table-controls select{min-width:0;color:var(--fg);background:#fff;border:1px solid #b9dfd1;border-radius:10px;padding:10px}.admin-table-meta{color:var(--muted);margin-bottom:10px;font-size:.9rem}.admin-table-wrap{border:1px solid var(--border);background:#fff;border-radius:18px;overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:880px}.admin-table th,.admin-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:12px 14px}.admin-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:#f8fffb;font-size:.78rem}.admin-table td{font-size:.9rem}.admin-table tr:last-child td{border-bottom:0}.admin-table a{color:var(--accent);font-weight:700}.admin-table code,.admin-detail-list code{overflow-wrap:anywhere;font-size:.84rem}.match-pill{border-radius:var(--radius-pill);color:#0e3d23;white-space:nowrap;background:#edf7f1;padding:4px 9px;font-size:.75rem;font-weight:700;display:inline-flex}.match-pill.inventory-active{color:#064c31;background:#dff8ec}.match-pill.inventory-only{color:#4c3d05;background:#fff0ad}.match-pill.iot-only{color:#123d66;background:#e8f3ff}.match-pill.inventory-device{color:#6b5a38;background:#f1eee8}.admin-pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex}.admin-pagination button{border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--fg);background:#fff;padding:9px 15px}.admin-pagination button:disabled{opacity:.45;cursor:not-allowed}.admin-pagination span{color:var(--muted);font-size:.9rem}.admin-detail-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.admin-detail-list{grid-template-columns:minmax(120px,.6fr) minmax(0,1fr);gap:10px 14px;margin:14px 0 0;display:grid}.admin-detail-list dt{color:var(--muted);font-size:.86rem}.admin-detail-list dd{overflow-wrap:anywhere;margin:0}@media (max-width:860px){.admin-table-controls{grid-template-columns:1fr}.admin-pagination{flex-wrap:wrap;justify-content:flex-start}.admin-detail-list{grid-template-columns:1fr}}.intake-page{gap:18px;display:grid}.intake-context{gap:16px;display:grid}.intake-context label,.intake-form label,.intake-photo-form label,.intake-create-context label{gap:6px;font-weight:700;display:grid}.intake-context select,.intake-context input,.intake-form textarea,.intake-form input,.intake-form select,.intake-photo-form input{width:100%;min-width:0;color:var(--fg);background:#fff;border:1px solid #b9dfd1;border-radius:10px;padding:10px}.intake-create-context{border:1px solid var(--border);background:#f8fffb;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;padding:12px;display:grid}.intake-create-context button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;padding:12px 18px}.intake-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.intake-form>label,.intake-form fieldset{grid-column:1/-1}.intake-form fieldset{border:1px solid var(--border);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:16px;display:grid}.intake-form legend{font-family:var(--font-display);padding:0 8px;font-size:1rem}.intake-form textarea{resize:vertical;line-height:1.45}.intake-solar-array{background:#f8fffb;border:1px solid #d5ece2;border-radius:12px;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;display:grid}.intake-solar-array label:has(textarea){grid-column:1/-1}.intake-solar-array label:has(input[placeholder=kW]){grid-column:auto}.intake-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:14px;display:flex}.intake-actions button,.intake-photo-form button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;padding:12px 18px}.intake-actions button:disabled,.intake-photo-form button:disabled,.intake-create-context button:disabled{opacity:.55;cursor:not-allowed}.intake-actions span{color:var(--muted);font-size:.9rem}.intake-photos{gap:14px;display:grid}.intake-photo-form{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:end;gap:12px;display:grid}.intake-photo-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.intake-photo-grid figure{border:1px solid var(--border);background:#fff;border-radius:14px;margin:0;overflow:hidden}.intake-photo-grid figure>div{aspect-ratio:4/3;color:var(--muted);background:#f6fffa;place-items:center;display:grid}.intake-photo-grid img{object-fit:cover;width:100%;height:100%}.intake-photo-grid figcaption{gap:6px;padding:10px;display:grid}.intake-photo-grid strong{overflow-wrap:anywhere;font-size:.92rem}.intake-photo-grid small{color:var(--muted)}.intake-photo-grid .secondary-button,.intake-solar-array .secondary-button{justify-self:start;margin-top:0;padding:7px 10px;font-size:.82rem}@media (max-width:860px){.intake-form,.intake-photo-form,.intake-create-context,.intake-form fieldset,.intake-solar-array{grid-template-columns:1fr}.intake-form label:first-child,.intake-form label:nth-child(2),.intake-form label:last-of-type,.intake-solar-array label:nth-last-child(2){grid-column:auto}}.auth-tabs{margin:0 0 10px}.profile-page .section-heading p{max-width:680px;color:var(--muted)}.status-pill.success{color:#064c31;background:#dff8ec}.status-pill.warning{color:#4c3d05;background:#fff0ad}.profile-form{gap:18px;display:grid}.profile-form fieldset{border:1px solid var(--border);background:#fff;border-radius:18px;gap:14px;margin:0;padding:20px;display:grid}.profile-form legend{font-family:var(--font-display);padding:0 8px;font-size:1.15rem}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.profile-grid label{gap:6px;font-weight:700;display:grid}.profile-grid input,.profile-grid select,.profile-grid textarea{width:100%;min-width:0;color:var(--fg);background:#fff;border:1px solid #b9dfd1;border-radius:10px;padding:10px}.profile-grid input[readonly],.profile-grid textarea[readonly],.profile-grid select:disabled{color:#60786c;background:#f5fbf8}.field-missing input,.field-missing select,.field-missing textarea{border-color:#fc0;box-shadow:0 0 0 2px #fc03}.profile-form>button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;justify-self:start;padding:12px 20px}.profile-form>button:disabled{opacity:.55;cursor:not-allowed}.profile-field-editor{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px;display:grid}.profile-admin-form{align-items:start}.profile-admin-form h3,.profile-admin-form .wide,.profile-admin-actions{grid-column:1/-1}.profile-admin-form textarea{width:100%;min-width:0;min-height:90px;color:var(--fg);background:#fff;border:1px solid #b9dfd1;border-radius:10px;padding:10px}.profile-admin-actions{align-items:center;gap:10px;display:flex}.profile-admin-actions button{border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-family:var(--font-display);border:0;padding:10px 16px}.admin-form .check-row{align-items:center;gap:8px;display:flex}.admin-form .check-row input{width:auto}.profile-field-group{margin-bottom:16px}.profile-field-list{border:1px solid var(--border);border-radius:14px;display:grid;overflow:hidden}.profile-field-row{border-top:1px solid var(--border);grid-template-columns:minmax(180px,1fr) 120px 110px 130px 90px;align-items:center;gap:12px;padding:11px 13px;display:grid}.profile-field-row:first-child{border-top:0}.profile-field-row small{color:var(--muted);font-size:.78rem;display:block}.profile-field-row .text-button{color:var(--accent);background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.profile-field-head{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:#f8fffb;font-size:.78rem;font-weight:700}@media (max-width:720px){.profile-grid,.profile-field-row,.profile-field-editor{grid-template-columns:1fr}.profile-field-head{display:none}}.commercial-page{gap:18px;display:grid}.commercial-heading-actions,.commercial-card-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.commercial-card-head{margin-bottom:14px}.commercial-heading-actions .secondary-button,.commercial-card-head .secondary-button{margin-top:0}.commercial-list{gap:10px;display:grid}.commercial-list-item{color:var(--fg);grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;align-items:center;gap:16px;text-decoration:none;display:grid}.commercial-list-item span,.commercial-list-item strong{gap:2px;display:grid}.commercial-list-item small,.commercial-audit span,.commercial-audit small{color:var(--muted);font-size:.86rem}.commercial-tabs{flex-wrap:wrap;gap:8px;display:flex}.commercial-tabs a{border:1px solid var(--border);color:var(--fg);border-radius:999px;padding:9px 14px;text-decoration:none}.commercial-tabs a.active{background:var(--fg);color:#fff;border-color:var(--fg)}.commercial-form,.commercial-line-form,.commercial-status-form{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end;gap:12px;display:grid}.commercial-form label,.commercial-line-form label,.commercial-status-form label{gap:6px;font-weight:700;display:grid}:is(.commercial-form textarea,.commercial-form label:has(textarea)){grid-column:1/-1}.commercial-form input,.commercial-form select,.commercial-form textarea,.commercial-line-form input,.commercial-line-form select,.commercial-status-form input,.commercial-status-form select{font:inherit;border:1px solid #b9dfd1;border-radius:8px;padding:10px}.commercial-form button,.commercial-line-form button,.commercial-status-form button{justify-self:start}.commercial-lines{gap:8px;margin-top:16px;display:grid}.commercial-lines>div{border-top:1px solid var(--border);grid-template-columns:minmax(220px,1fr) 90px 120px 120px auto;align-items:center;gap:10px;padding:10px 0;display:grid}.commercial-lines span{gap:2px;display:grid}.commercial-lines small{color:var(--muted)}.commercial-lines footer{border-top:2px solid var(--border);flex-wrap:wrap;justify-content:flex-end;gap:12px;padding-top:12px;display:flex}.commercial-preview{gap:16px;max-width:840px;display:grid}.commercial-audit{gap:10px;margin-top:16px;display:grid}.commercial-audit p{border-top:1px solid var(--border);gap:3px;padding:10px 0;display:grid}@media (max-width:720px){.commercial-heading-actions,.commercial-card-head{display:grid}.commercial-list-item,.commercial-lines>div,.commercial-form,.commercial-line-form,.commercial-status-form{grid-template-columns:1fr}.commercial-lines footer{justify-content:flex-start}}@media print{.hero,.release-footer,.commercial-tabs,.no-print,.install-toast{display:none!important}body{color:#111;background:#fff}.page-section{max-width:none;padding:0}.card.commercial-preview{border:0;border-radius:0;padding:0}.commercial-preview .commercial-card-head{display:block}.commercial-lines>div{grid-template-columns:minmax(220px,1fr) 70px 110px 110px}.commercial-lines button{display:none}}
