:root{--color-bg: #ffffff;--color-bg-elevated: #f7f7f9;--color-fg: #1a1a1f;--color-fg-muted: #555562;--color-border: #d8d8e0;--color-accent: #3056d3;--color-accent-fg: #ffffff;--color-danger: #c0392b;--color-success: #1f8a4c;--color-warning: #c97f00;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08)}[data-theme=dark]{--color-bg: #14141a;--color-bg-elevated: #1d1d26;--color-fg: #f0f0f5;--color-fg-muted: #a8a8b8;--color-border: #2a2a36;--color-accent: #6f8cff;--color-accent-fg: #0a0a10;--color-danger: #e57567;--color-success: #66c98e;--color-warning: #e1a85a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .45)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-bg: #14141a;--color-bg-elevated: #1d1d26;--color-fg: #f0f0f5;--color-fg-muted: #a8a8b8;--color-border: #2a2a36;--color-accent: #6f8cff;--color-accent-fg: #0a0a10;--color-danger: #e57567;--color-success: #66c98e;--color-warning: #e1a85a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .45)}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:var(--color-fg);background-color:var(--color-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}h1{font-size:3.2em;line-height:1.1}.app-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1rem}.app-header nav{display:inline-flex;gap:.5rem}.app-header nav button[aria-current=page]{font-weight:600;text-decoration:underline}.replay-page{text-align:left;display:grid;gap:1.25rem}.replay-form{display:grid;gap:.75rem;grid-template-columns:minmax(0,1fr)}.replay-field{display:grid;gap:.25rem}.replay-field input,.replay-field select{padding:.4rem .6rem;font:inherit}.replay-result{display:grid;gap:1rem}.replay-result__header{display:inline-flex;gap:1rem;align-items:center;font-size:.85em;opacity:.8}.replay-metric-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;list-style:none;padding:0;margin:0}.replay-metric-card{border:1px solid currentColor;border-radius:4px;padding:.75rem}.replay-metric-card--better{border-color:#50c878b3}.replay-metric-card--worse{border-color:#dc5a5ab3}.replay-metric-card__label{font-size:.85em;opacity:.8}.replay-metric-card__value{font-size:1.4em;font-weight:600}.replay-warnings__list{list-style:none;padding:0;margin:0;display:grid;gap:.25rem}.replay-warning{display:inline-flex;gap:.5rem;font-size:.9em}.replay-warning__code{font-weight:600}.replay-timeline{width:100%;height:auto;color:currentColor}.replay-timeline__bg{fill:#ffffff0a}.replay-per-slot table{width:100%;border-collapse:collapse;font-size:.85em}.replay-per-slot th,.replay-per-slot td{padding:.25rem .4rem;border-bottom:1px solid rgba(255,255,255,.1);text-align:right}.replay-per-slot th:first-child,.replay-per-slot td:first-child{text-align:left}.replay-error{color:#dc5a5a;font-weight:500}.page{max-width:64rem;margin:0 auto;padding:1rem}.page__lede{color:#ffffffa6;margin-bottom:1.5rem}.page__form{display:grid;gap:.75rem;margin-bottom:1.5rem}.page__field{display:grid;grid-template-columns:14rem 1fr;gap:.5rem;align-items:center}.page__field span{font-weight:500}.page__field input,.page__field select,.page__field textarea{padding:.4rem .5rem;font:inherit;border:1px solid rgba(255,255,255,.2);border-radius:.25rem;background:#ffffff0d;color:inherit}.page__field--check{grid-template-columns:1.5rem auto}.page__field-group{border:1px solid rgba(255,255,255,.1);border-radius:.25rem;padding:.75rem 1rem;display:grid;gap:.5rem}.page__form button[type=submit]{padding:.5rem 1rem;font-weight:600;cursor:pointer;background:#468cffd9;color:#fff;border:0;border-radius:.25rem;justify-self:start}.page__form button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.page__alert{padding:.75rem 1rem;border-left:3px solid rgba(220,90,90,1);background:#dc5a5a26}.page__result{border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.page__metrics{display:grid;grid-template-columns:max-content 1fr;column-gap:1.5rem;row-gap:.25rem}.page__metrics dt{color:#ffffffa6}.page__metrics dd{margin:0;font-variant-numeric:tabular-nums}.page__table{border-collapse:collapse;margin-top:.5rem;font-variant-numeric:tabular-nums}.page__table th,.page__table td{text-align:right;padding:.3rem .6rem;border-bottom:1px solid rgba(255,255,255,.08)}.page__table th:first-child,.page__table td:first-child{text-align:left}.page__warnings,.page__errors{margin-top:.5rem;padding-left:1.5rem}.page__errors{color:#dc5a5a}.results-step{text-align:left;display:grid;gap:1.25rem}.results-step--streaming{justify-items:center}.results-csv-banner{padding:.6rem .9rem;border-left:3px solid rgba(70,140,255,.8);background:#468cff1f;font-size:.9em}.results-summary-cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.app-card,.results-summary-card{border:1px solid rgba(255,255,255,.12);border-radius:.4rem;padding:.9rem;background:#ffffff08}.results-summary-card__label{margin:0;font-size:.8em;opacity:.7;text-transform:uppercase;letter-spacing:.05em}.results-summary-card__value{margin:.25rem 0;font-variant-numeric:tabular-nums}.results-summary-card__number{font-size:1.6em;font-weight:600}.results-summary-card__unit{font-size:.9em;margin-left:.3rem;opacity:.7}.results-summary-card__subtitle{margin:0;font-size:.8em;opacity:.7}.results-config-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem}.results-config-chip{display:inline-flex}.pill{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;font-size:.78em;line-height:1.4}.results-step__charts{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}@media (min-width: 760px){.results-step__charts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.monthly-savings-chart,.sample-day-chart{margin:0;border:1px solid rgba(255,255,255,.1);border-radius:.4rem;padding:.75rem;background:#ffffff05}.monthly-savings-chart__caption,.sample-day-chart__caption{font-size:.85em;font-weight:600;margin-bottom:.5rem}.monthly-savings-chart__bars{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(12,1fr);gap:.25rem;height:160px;align-items:end}.monthly-savings-chart__bar-wrap{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;font-size:.7em}.monthly-savings-chart__bar{display:block;width:100%;min-height:1px;background:#468cffb3;border-radius:2px 2px 0 0}.monthly-savings-chart__label{margin-top:.25rem;opacity:.7}.sample-day-chart__canvas{position:relative;height:220px}.sample-day-chart__placeholder{margin:0;padding:1rem 0;opacity:.6;font-size:.9em;text-align:center}.results-energy-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem;margin:0}.results-energy-metric{border:1px solid rgba(255,255,255,.08);border-radius:.3rem;padding:.55rem .75rem}.results-energy-metric__label{font-size:.78em;opacity:.7;margin:0 0 .15rem}.results-energy-metric__value{margin:0;font-variant-numeric:tabular-nums}.results-energy-metric__number{font-size:1.1em;font-weight:600}.results-energy-metric__unit{font-size:.85em;margin-left:.25rem;opacity:.7}.results-step__actions{display:flex;flex-wrap:wrap;gap:.5rem}.results-step__actions button{padding:.45rem .9rem;font:inherit;border-radius:.25rem;border:1px solid rgba(255,255,255,.18);background:#ffffff0d;color:inherit;cursor:pointer}.results-step__actions button:hover{background:#ffffff1a}@media print{.commercial-wizard__actions,.results-step__actions,.wizard-progress{display:none!important}}
