[data-solar-case-form] { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.2rem; max-width: 60rem; }
[data-solar-case-form][hidden] { display: none; }
[data-solar-case-form] label { display: grid; gap: .45rem; min-width: 0; font-weight: 600; line-height: 1.5; }
[data-solar-case-form] input,
[data-solar-case-form] select,
[data-solar-case-form] textarea { width: 100%; min-width: 0; box-sizing: border-box; padding: .75rem; border: 1px solid #758078; border-radius: .35rem; background: #fff; color: #17241f; font: inherit; font-weight: 400; }
[data-solar-case-form] textarea { resize: vertical; }
[data-solar-case-form] fieldset { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin: 0; padding: 1rem; border: 1px solid #758078; border-radius: .4rem; min-width: 0; }
[data-solar-case-form] legend { padding: 0 .25rem; font-weight: 600; }
[data-solar-case-form] .button { justify-self: start; }
[data-solar-case-form] .button:disabled { opacity: .6; cursor: not-allowed; }
[data-solar-case-form] .solar-case-confirmation { border: 1px solid #758078; border-radius: .4rem; padding: 1rem; }
[data-solar-case-form] .solar-case-confirmation .button { margin: .35rem .5rem .35rem 0; max-width: 100%; white-space: normal; }
[data-solar-case-form] [hidden] { display: none; }
@media (min-width: 768px) {
  [data-solar-case-form] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-solar-case-form] fieldset { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-solar-case-form] .solar-case-wide,
  [data-solar-case-form] .form-status { grid-column: 1 / -1; }
}
