.solar-demo { color-scheme: light; background: #fff8f3; color: #251817; }
.solar-header { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-block: 20px; border-bottom: 1px solid #e6d6d0; }
.solar-header a { text-decoration: underline; }
.solar-header span, .solar-note { color: #645450; font-size: .9rem; }
.solar-demo main { padding-bottom: 36px; }
.solar-hero { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); align-items: center; gap: clamp(20px,6vw,84px); padding-block: clamp(26px,5vw,72px); }
.solar-hero h1 { font-size: clamp(2.5rem,6vw,6rem); line-height: .98; }
.solar-hero p { margin-block: 14px; max-width: 45ch; }
.solar-hero img { display: block; width: min(100%,360px); height: auto; border-radius: 14px; justify-self: center; }
.solar-label { color: #a5251b; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.solar-button { display: inline-flex; align-items: center; padding: 12px 18px; border: 0; border-radius: 8px; background: #a5251b; color: white; font: inherit; font-weight: 700; cursor: pointer; }
.solar-demo :focus-visible { outline-color: #a5251b; }
.solar-panel { padding: clamp(18px,4vw,42px); margin-bottom: 16px; border: 1px solid #e6d6d0; border-radius: 14px; background: white; }
.solar-panel h2 { margin-block: 6px 10px; font-size: clamp(1.8rem,4vw,3.5rem); }
.solar-panel dl { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,165px),1fr)); gap: 12px; margin-block: 20px; }
.solar-panel dl div { padding: 12px; background: #faeee9; border-radius: 8px; }
.solar-panel dd { margin: 4px 0 0; font-weight: 800; font-size: 1.35rem; }
#solar-form, #solar-preview { margin-block: 14px; }
#solar-form label, #solar-preview label { display: block; margin-bottom: 6px; }
#solar-site, #solar-draft { font: inherit; color: #251817; background: white; border: 1px solid #8c7670; border-radius: 6px; padding: 10px; }
#solar-draft { width: min(100%,620px); }
#solar-form button { margin-top: 6px; }
@media (max-width:700px) { .solar-hero { grid-template-columns: 1fr; } }
