:root{color:#17201c;background:#eef4ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}body{margin:0;min-width:320px;min-height:100vh}.shell{box-sizing:border-box;width:min(1120px,calc(100% - 2rem));margin:5vh auto;padding:clamp(2rem,6vw,4rem);border:1px solid #c7d7cc;border-radius:1.5rem;background:#fff;box-shadow:0 1.5rem 4rem #193a271a}.eyebrow{color:#28734a;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}h1{margin:.4rem 0 1rem;font-size:clamp(2.2rem,8vw,4.5rem);line-height:.95}.dashboard-nav{display:flex;gap:.4rem;margin:1.5rem 0 2rem;padding:.35rem;border:1px solid #d5e2d9;border-radius:.9rem;background:#f1f6f2}.nav-button{flex:1;color:#496057;background:transparent}.nav-button--active{color:#fff;background:#17643d;box-shadow:0 .2rem .6rem #17643d33}.scenario-panel{display:grid;gap:1rem}.scenario-evidence{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem}.scenario-evidence div{display:grid;gap:.2rem;padding:.8rem;border-radius:.75rem;background:#f1f6f2}.scenario-evidence small,.scenario-actions small{color:#607167}.scenario-results{display:grid;gap:.8rem;padding:1rem;border:1px solid #d5e2d9;border-radius:.9rem;background:#fbfdfb}.scenario-results .section-heading{margin:0}.scenario-results h3{margin:.15rem 0 0;font-size:clamp(1.2rem,3vw,1.65rem)}.scenario-result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem}.scenario-result-card{display:grid;align-content:start;gap:.35rem;min-width:0;padding:.9rem;border-top:4px solid #16834b;border-radius:.75rem;background:#f1f6f2}.scenario-result-card>span{color:#52665a;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.scenario-result-card>strong{overflow-wrap:anywhere;font-size:1.05rem}.scenario-result-card>small{color:#52665a;line-height:1.4}.scenario-disclaimer{margin:0;padding:.75rem;border-left:4px solid #64748b;color:#44544b;background:#f3f6f4;font-size:.82rem;line-height:1.45}.scenario-panel details{border:1px solid #d5e2d9;border-radius:.8rem;overflow:hidden}.scenario-panel summary{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;cursor:pointer;background:#f7faf8}.scenario-panel summary span{color:#607167;font-size:.8rem;text-align:right}.scenario-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.85rem;padding:1rem}.scenario-field{display:grid;align-content:start;gap:.35rem;color:#40544a;font-size:.82rem;font-weight:650}.scenario-field--wide{grid-column:1 / -1}.scenario-field input,.scenario-field select{box-sizing:border-box;width:100%;min-height:44px;padding:.65rem;border:1px solid #b9cabe;border-radius:.55rem;color:#17201c;background:#fff;font:inherit}.scenario-input{display:flex;align-items:center;gap:.5rem}.scenario-input small{min-width:3.5rem;color:#607167}.scenario-warning{margin:0 1rem 1rem;padding:.75rem;border-left:4px solid #b45309;color:#713f12;background:#fff7e8}.scenario-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap}.scenario-success{padding:.8rem 1rem;border-left:4px solid #16834b;color:#14532d;background:#effcf3}p{max-width:58ch;line-height:1.65}button{border:0;border-radius:.75rem;padding:.8rem 1.1rem;color:#fff;background:#17643d;font:inherit;font-weight:700;cursor:pointer}button:focus-visible{outline:3px solid #8fc7a7;outline-offset:3px}.secondary{color:#25372d;background:#e2ece5}.link{display:inline;padding:0;color:#17643d;background:transparent;text-decoration:underline}.error{padding:.8rem 1rem;border-left:4px solid #ae3030;color:#7f1d1d;background:#fff1f1}.notice{padding:1rem;background:#f2f6f3}.reading-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.freshness{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.35rem .7rem;border-radius:999px;font-size:.82rem;font-weight:700}.freshness--fresh{color:#14532d;background:#dcfce7}.freshness--delayed{color:#713f12;background:#fef3c7}.freshness--stale{color:#7f1d1d;background:#fee2e2}.status-dot{width:.55rem;height:.55rem;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 currentColor;animation:status-pulse 2s infinite}.stale-warning{margin:.75rem 0 1rem;padding:.75rem 1rem;border-left:4px solid #b91c1c;color:#7f1d1d;background:#fff1f2}.metric{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:.5rem 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid #dbe5de}.metric strong{font-size:clamp(1.8rem,6vw,3rem)}.metric>span{display:grid;gap:.2rem}.metric .metric-direction{font-size:1rem}.metric small{color:#607167;font-size:.78rem}.metric--from-grid>strong{color:#b45309}.metric--to-grid>strong{color:#16834b}.metric--balanced>strong{color:#475569}.details{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:0}.details div{padding:.8rem;border-radius:.75rem;background:#f4f8f5}.details .detail--from-grid{border-top:4px solid #d97706}.details .detail--to-grid{border-top:4px solid #16834b}.details dt{color:#607167;font-size:.8rem}.details dd{margin:.25rem 0 0;font-weight:700}.details small,.solar-details small{display:block;margin-top:.35rem;color:#607167;font-size:.72rem;line-height:1.35}.solar-panel{margin-top:1.5rem;padding:clamp(1rem,3vw,1.4rem);border:1px solid #b9ddc7;border-radius:1rem;background:linear-gradient(135deg,#f5fcf7,#fffdf2)}.solar-panel h2{margin:.15rem 0 0;font-size:clamp(1.3rem,4vw,1.8rem)}.solar-panel .eyebrow{margin:0}.solar-power{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:1.2rem 0;padding-bottom:1rem;border-bottom:1px solid #cfe5d6}.solar-power strong{color:#16834b;font-size:clamp(1.8rem,6vw,3rem)}.solar-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin:0}.solar-details div{padding:.8rem;border-top:4px solid #16834b;border-radius:.75rem;background:#ffffffbf}.solar-details .solar-detail--calculated{border-top-color:#64748b}.solar-history-panel{margin-top:1.5rem;padding:1.5rem;border:1px solid #bfd8ca;border-radius:1rem;background:#f8fbf9}.solar-history-panel h2{margin:.15rem 0 .5rem}.analysis-period{margin:0 0 1rem;color:#51635a}.value-badge{align-self:center;padding:.4rem .7rem;border-radius:999px;background:#e8edf0;color:#46545c;font-weight:700;font-size:.8rem}.solar-analysis-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}.solar-analysis-grid>div{padding:1rem;border-radius:.8rem;background:#fff;border-top:4px solid #16854e}.solar-analysis-grid dt{color:#52665b;font-size:.82rem}.solar-analysis-grid dd{margin:.3rem 0;font-weight:800;font-size:1.1rem}.solar-analysis-grid small{color:#52665b}@media(max-width:700px){.solar-analysis-grid{grid-template-columns:1fr 1fr}}@media(max-width:430px){.solar-analysis-grid{grid-template-columns:1fr}}.solar-details dt{color:#607167;font-size:.8rem}.solar-details dd{margin:.25rem 0 0;font-weight:750}.signed-in{margin-top:2rem;color:#607167;font-size:.85rem}.history-panel{margin-top:2rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid #d5e2d9;border-radius:1rem;background:#fbfdfb}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.section-heading .eyebrow{margin:0 0 .25rem}.section-heading h2{margin:0;font-size:clamp(1.5rem,4vw,2.25rem)}.calculated-label{padding:.35rem .65rem;border-radius:999px;color:#59420c;background:#fff3cd;font-size:.78rem;font-weight:700}.history-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.8rem;margin:1.25rem 0}.history-summary div{padding:.9rem;border-radius:.75rem;background:#f1f6f2}.history-summary dt{color:#607167;font-size:.78rem}.history-summary dd{margin:.25rem 0 0;font-size:1.05rem;font-weight:750}.history-summary small{display:block;margin-top:.2rem;color:#607167;font-size:.72rem;font-weight:500}.history-summary .summary--from-grid{border-top:4px solid #d97706}.history-summary .summary--to-grid{border-top:4px solid #16834b}.history-summary .summary--estimated-cost{border-top:4px solid #4169a1}.history-chart{width:100%;height:390px;margin-top:.75rem}.annual-table-wrap{overflow-x:auto;margin-top:1rem}.annual-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.annual-table caption{padding:.5rem 0;text-align:left;font-weight:750}.annual-table th,.annual-table td{padding:.7rem;border-bottom:1px solid #dbe5de;text-align:right}.annual-table th:first-child{text-align:left}.annual-table thead th{color:#607167;font-size:.78rem}.method-note{margin:1rem 0 0;color:#607167;font-size:.82rem}.scope-explanation{margin:0 0 1rem;padding:.8rem 1rem;border-left:4px solid #64748b;border-radius:.55rem;background:#f3f6f4;color:#44544b;font-size:.86rem;line-height:1.5}.load-shifting{min-height:28rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid #d5e2d9;border-radius:1rem;background:#fbfdfb}.profile-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1.5rem 0 1rem}.segmented{display:flex;gap:.25rem;padding:.25rem;border-radius:.75rem;background:#e8f0ea}.segmented button{padding:.55rem .8rem;color:#3e554a;background:transparent;font-size:.84rem}.segmented button.active{color:#fff;background:#17643d}.surplus-windows{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem}.surplus-window{padding:1rem;border:1px solid #cbded3;border-top:4px solid #16834b;border-radius:.85rem;background:#fff}.surplus-window .eyebrow{margin:0}.surplus-window h3{margin:.35rem 0;font-size:1.45rem}.surplus-window dl{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:1rem 0}.surplus-window dl div{min-width:0;padding:.6rem;border-radius:.55rem;background:#f1f6f2}.surplus-window dt,.surplus-window small{color:#607167;font-size:.74rem}.surplus-window dd{margin:.25rem 0 0;font-weight:750}.activity-planner{margin-top:1.25rem;padding:1rem;border:1px solid #cbded3;border-radius:.9rem;background:#fff}.planner-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap}.planner-heading .segmented{flex-wrap:wrap}.planner-heading .eyebrow{margin:0 0 .25rem}.planner-heading h3{margin:0;font-size:1.2rem}.planner-selectors{display:grid;gap:.65rem}.planner-selectors>div>span{display:block;margin-bottom:.3rem;color:#607167;font-size:.72rem;font-weight:700}.planner-result{display:grid;grid-template-columns:minmax(175px,.8fr) minmax(0,1.5fr);gap:1rem;align-items:center;margin-top:1rem;padding:1rem;border-left:5px solid #16834b;border-radius:.75rem;background:#eef8f1}.planner-result>div:first-child{display:grid;gap:.25rem}.planner-result>div:first-child span,.planner-result small{color:#53655c;font-size:.78rem}.planner-result>div:first-child strong{font-size:clamp(1.5rem,5vw,2.15rem)}.planner-result dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin:0}.planner-result dl div{min-width:0;padding:.65rem;border-radius:.55rem;background:#fff}.planner-result dt{color:#607167;font-size:.72rem}.planner-result dd{margin:.25rem 0 0;font-weight:750}.activity-value{grid-column:1 / -1;padding-top:.9rem;border-top:1px solid #cfe0d4}.activity-value>dl{margin-top:.6rem}.activity-value small{display:block;margin-top:.25rem;color:#607167;font-size:.72rem}.activity-value .tariff-fallback{margin-top:.65rem;color:#80500d}.activity-value>a{display:inline-block;margin-top:.45rem;color:#17643d;font-size:.75rem;font-weight:700}.evening-comparison{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem 1rem;align-items:start;margin-top:1rem;padding:1rem;border-left:5px solid #d97706;border-radius:.85rem;background:#fff8e9}.evening-comparison .eyebrow{margin:0}.evening-comparison h3{margin:.3rem 0}.evening-comparison p{margin:.25rem 0 0}.evening-comparison .method-note{grid-column:1 / -1}.evidence-chip{padding:.4rem .65rem;border-radius:999px;color:#694510;background:#ffedc2;font-size:.76rem;font-weight:700;white-space:nowrap}.solar-period-analysis{margin-top:1rem;padding:1rem;border:1px solid #cbded3;border-radius:.9rem;background:#fff}.solar-period-insight{margin:.9rem 0;color:#44544b;line-height:1.5}.solar-period-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:.7rem}.solar-period-card{display:grid;gap:.35rem;min-width:0;padding:.85rem;border-top:4px solid #64748b;border-radius:.75rem;background:#f4f7f5}.solar-period-card--after-sunset,.solar-period-card--before-sunrise{border-top-color:#475569;background:#f1f5f9}.solar-period-card--weak-daylight{border-top-color:#d97706;background:#fff8e9}.solar-period-card--strong-daylight{border-top-color:#16834b;background:#eef8f1}.solar-period-card>span{color:#44544b;font-size:.82rem;font-weight:750}.solar-period-card>strong{font-size:1.35rem}.solar-period-card>small{color:#607167;font-size:.73rem;line-height:1.35}.solar-period-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin:.35rem 0}.solar-period-card dl div{min-width:0;padding:.5rem;border-radius:.5rem;background:#ffffffbf}.solar-period-card dt{color:#607167;font-size:.68rem}.solar-period-card dd{margin:.2rem 0 0;font-size:.82rem;font-weight:750;overflow-wrap:anywhere}.history-reminder{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:0 0 1.5rem;padding:1rem 1.15rem;border:1px solid #e2bd77;border-left:5px solid #c67a16;border-radius:14px;background:#fff8e9}.history-reminder p{margin:.25rem 0 0}.reminder-actions{display:flex;gap:.55rem;flex-wrap:wrap}.history-upload{margin-top:1.5rem;padding:1.25rem;border:1px solid #cbded3;border-radius:16px;background:#f8fbf9}.history-upload h3{margin:.2rem 0 0;font-size:1.25rem}.recommended-range{margin:1rem 0;padding:1rem;border-radius:12px;background:#fff}.recommended-range p{margin:.35rem 0;font-weight:700}.recommended-range small{color:#53655c}.upload-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.upload-controls input{max-width:100%;padding:.65rem;border:1px solid #b9ccc1;border-radius:10px;background:#fff}.selected-file{color:#53655c;font-size:.86rem;overflow-wrap:anywhere}.import-receipt{margin-top:1rem;padding:.85rem 1rem;border-radius:10px;background:#dcf8e5;color:#105c34}.import-receipt p{margin:.25rem 0 0}.import-receipt--attention{background:#fff0d5;color:#80500d}.coverage-table-wrap{margin-top:1.5rem;max-height:28rem;overflow:auto}.coverage-status{display:inline-block;padding:.25rem .55rem;border-radius:999px;font-size:.8rem;font-weight:800}.coverage-status--complete{background:#dcf8e5;color:#105c34}.coverage-status--partial,.coverage-status--awaiting_upload,.coverage-status--import_failed{background:#fff0d5;color:#80500d}.coverage-status--current_not_due{background:#edf2ef;color:#53655c}.page-panel{min-height:28rem;padding:clamp(1rem,3vw,1.5rem);border:1px solid #d5e2d9;border-radius:1rem;background:#fbfdfb}.history-period-controls{display:flex;align-items:end;gap:1rem;flex-wrap:wrap;margin:1.25rem 0}.period-control-label{display:block;margin-bottom:.4rem;color:#607167;font-size:.78rem;font-weight:700}.range-picker{display:flex;gap:.45rem;flex-wrap:wrap}.range-button{padding:.55rem .8rem;color:#3e554a;background:#e8f0ea;font-size:.84rem}.range-button--active{color:#fff;background:#17643d}.year-picker select{min-width:9rem;padding:.55rem 2rem .55rem .7rem;border:1px solid #b9ccc1;border-radius:.65rem;color:#243c30;background:#fff;font:inherit;font-size:.84rem}.year-picker select:focus-visible{outline:3px solid #8fc7a7;outline-offset:2px}.explore-summary{margin-bottom:.5rem}.cost-disclosure{margin:.75rem 0;border:1px solid #cbd9e7;border-radius:.75rem;background:#f7faff}.cost-disclosure summary{padding:.8rem .9rem;cursor:pointer;color:#26476f;font-size:.86rem;font-weight:750}.cost-disclosure>div{padding:0 .9rem .9rem;color:#526477;font-size:.8rem}.cost-disclosure p{margin:.5rem 0}.cost-disclosure ul{margin:.65rem 0;padding-left:1.25rem}.cost-disclosure li{margin:.3rem 0}.cost-caution{padding:.6rem;border-radius:.5rem;color:#80500d;background:#fff0d5}.source-links a{color:#17643d;font-weight:700}.explore-chart{width:100%;height:430px}.period-caption{margin:.5rem 0 0;color:#607167;font-size:.8rem}.quality-state{padding:.4rem .7rem;border-radius:999px;font-size:.8rem;font-weight:750}.quality-state--good{color:#14532d;background:#dcfce7}.quality-state--attention{color:#713f12;background:#fef3c7}.quality-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:.8rem;margin:1.25rem 0}.quality-summary div{padding:.9rem;border-radius:.75rem;background:#f1f6f2}.quality-summary dt{color:#607167;font-size:.78rem}.quality-summary dd{margin:.25rem 0 0;font-size:1.25rem;font-weight:750}.quality-explanations{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.8rem;margin:1rem 0 1.5rem}.quality-explanations article{padding:1rem;border-left:4px solid #438363;border-radius:.65rem;background:#fff}.quality-explanations p{margin:.35rem 0 0;color:#607167;font-size:.82rem}.data-disclosure{margin-top:1rem;border:1px solid #d5e2d9;border-radius:.9rem;background:#fff}.data-disclosure>summary{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.9rem 1rem;cursor:pointer;list-style:none}.data-disclosure>summary::-webkit-details-marker{display:none}.data-disclosure>summary:after{content:"＋";grid-column:2;grid-row:1 / span 2;color:#17643d;font-size:1.25rem;font-weight:700}.data-disclosure[open]>summary:after{content:"−"}.data-disclosure>summary strong{font-size:.95rem}.data-disclosure>summary span{grid-column:1;color:#607167;font-size:.78rem}.data-disclosure>summary:focus-visible{outline:3px solid #8fc7a7;outline-offset:2px;border-radius:.75rem}.disclosure-body{padding:0 1rem 1rem}.data-disclosure .quality-explanations{margin:0}.annual-disclosure{margin-top:1rem}.annual-disclosure .annual-table-wrap{margin-top:0}.source-table-wrap{overflow-x:auto}.source-table{width:100%;min-width:760px;border-collapse:collapse;font-size:.82rem;font-variant-numeric:tabular-nums}.source-table caption{padding:.5rem 0;text-align:left;font-weight:750}.source-table th,.source-table td{padding:.7rem;border-bottom:1px solid #dbe5de;text-align:left;vertical-align:top}.source-table thead th{color:#607167;font-size:.75rem}.source-table tbody th span,.source-table tbody th small{display:block}.source-table tbody th small{margin-top:.2rem;color:#28734a;font-weight:600}.source-table code{font-size:.75rem}.health-panel{margin-top:1.5rem;padding:1rem;border:1px solid #dbe5de;border-radius:.9rem;background:#f8faf8}.health-panel--healthy{border-left:5px solid #23834f}.health-panel--attention{border-left:5px solid #b7791f}.health-panel--unknown{display:grid;gap:.2rem;border-left:5px solid #64748b}.health-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.health-heading .eyebrow{margin:0 0 .2rem}.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.7rem;margin:1rem 0 0}.health-grid div{padding:.7rem;border-radius:.65rem;background:#fff}.health-grid dt{color:#607167;font-size:.75rem}.health-grid dd{margin:.2rem 0 0;font-weight:700}.health-note{margin:.8rem 0 0;color:#694510;font-size:.85rem}.diagnostics{margin-top:1rem;border:1px solid #cfdcd3;border-radius:.9rem;background:#fff;overflow:hidden}.diagnostics--attention{border-left:5px solid #b45309;background:#fffaf0}.diagnostics--healthy{border-left:5px solid #23834f}.diagnostics>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;cursor:pointer;list-style:none}.diagnostics>summary::-webkit-details-marker{display:none}.diagnostics>summary span:first-child{display:grid;gap:.2rem}.diagnostics>summary small{color:#607167}.diagnostics>summary:focus-visible{outline:3px solid #8fc7a7;outline-offset:-3px}.diagnostic-badge{padding:.3rem .65rem;border-radius:999px;font-size:.75rem;font-weight:800}.diagnostic-badge--attention{color:#7c2d12;background:#ffedd5}.diagnostic-badge--healthy{color:#166534;background:#dcfce7}.diagnostics-body{padding:0 1rem 1rem;border-top:1px solid #e3ebe5}.diagnostics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem;margin:1rem 0}.diagnostics-grid div{min-width:0;padding:.7rem;border-radius:.65rem;background:#f6f8f6}.diagnostics-grid dt{color:#607167;font-size:.75rem}.diagnostics-grid dd{margin:.25rem 0 0;overflow-wrap:anywhere;font-weight:700}.diagnostic-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.diagnostic-actions small{color:#607167}.diagnostics h3{margin:1.25rem 0 .65rem;font-size:.95rem}.diagnostic-events{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}.diagnostic-event{padding:.75rem;border-left:4px solid #64748b;border-radius:.5rem;background:#f6f8f6}.diagnostic-event--error{border-left-color:#b91c1c}.diagnostic-event--warning{border-left-color:#b45309}.diagnostic-event--info{border-left-color:#23834f}.diagnostic-event div{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.diagnostic-event code{padding:.15rem .35rem;border-radius:.3rem;background:#e8eee9;overflow-wrap:anywhere}.diagnostic-event p{margin:.45rem 0}.diagnostic-event time,.diagnostic-empty{color:#607167;font-size:.78rem}.activity{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;margin-top:1.5rem;padding:.85rem 1rem;border:1px solid #dbe5de;border-radius:.9rem;background:#f8faf8}.activity strong,.activity small{display:block}.activity small{margin-top:.15rem;color:#607167}.activity-spinner{width:.75rem;height:.75rem;border:3px solid #b9c9bf;border-top-color:#17643d;border-radius:50%}.activity-spinner--active{animation:spin .8s linear infinite}.refresh-button{white-space:nowrap}.refresh-button:disabled{cursor:wait;opacity:.65}@keyframes spin{to{transform:rotate(360deg)}}@keyframes status-pulse{50%{box-shadow:0 0 0 .3rem transparent}}@media(max-width:600px){.history-reminder{align-items:stretch;flex-direction:column}.reminder-actions button{flex:1}.shell{width:calc(100% - .75rem);margin:.375rem auto;padding:1rem;border-radius:1rem}.dashboard-nav{display:grid;grid-template-columns:1fr 1fr;position:sticky;top:.4rem;z-index:5}.nav-button{padding:.7rem .35rem;font-size:.82rem}.page-panel,.history-panel,.load-shifting{padding:.85rem}.profile-controls{align-items:stretch;flex-direction:column}.segmented button{flex:1}.surplus-windows,.slot-list{grid-template-columns:1fr}.planner-heading{align-items:stretch;flex-direction:column}.planner-heading .segmented{width:100%}.planner-heading .segmented button{flex:1 1 calc(33.333% - .25rem)}.planner-result,.planner-result dl,.evening-comparison{grid-template-columns:1fr}.evening-comparison .method-note{grid-column:auto}.evidence-chip{justify-self:start;white-space:normal}.solar-period-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start}.history-period-controls{align-items:stretch;flex-direction:column}.year-picker select{box-sizing:border-box;width:100%}.history-upload{padding:0}.data-disclosure>summary{padding:.85rem}.disclosure-body{padding:0 .85rem .85rem}.upload-controls{align-items:stretch;flex-direction:column}.upload-controls input,.upload-controls button{box-sizing:border-box;width:100%}.history-chart,.explore-chart{height:320px}.activity{grid-template-columns:auto 1fr}.refresh-button{grid-column:1 / -1;width:100%}.diagnostics>summary{align-items:flex-start}.diagnostics-grid{grid-template-columns:1fr}.diagnostic-actions{align-items:stretch;flex-direction:column}.diagnostic-actions button{width:100%}.annual-table-wrap,.source-table-wrap,.coverage-table-wrap{max-height:none;overflow-x:visible}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table th,.responsive-table td{display:block;box-sizing:border-box;width:100%;min-width:0}.responsive-table{border-collapse:separate;border-spacing:0}.responsive-table caption{display:block;padding:.75rem 0;font-size:1rem}.responsive-table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.responsive-table tbody{display:grid;gap:.75rem}.responsive-table tbody tr{padding:.7rem;border:1px solid #d5e2d9;border-radius:.75rem;background:#fff}.responsive-table tbody th,.responsive-table tbody td{display:grid;grid-template-columns:minmax(6.5rem,40%) minmax(0,1fr);gap:.65rem;padding:.45rem 0;border:0;text-align:left;overflow-wrap:anywhere}.responsive-table tbody tr>*+*{border-top:1px solid #edf2ef}.responsive-table tbody th:before,.responsive-table tbody td:before{content:attr(data-label);color:#607167;font-size:.75rem;font-weight:700}.responsive-table tbody th.stacked-cell:before{grid-row:1 / span 2}.responsive-table tbody th.stacked-cell>span,.responsive-table tbody th.stacked-cell>small{grid-column:2}.responsive-table code{white-space:normal;overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){.status-dot,.activity-spinner--active{animation:none}}.google-sign-in{min-height:44px;margin-top:1rem}
