/* Home-only layout: measured guide pages keep their existing presentation. */
.language-bar { display: flex; flex-wrap: wrap; gap: 8px 18px; padding-block: 12px; font-size: .9rem; }
.language-bar a { text-decoration: underline; text-underline-offset: 3px; }
.builder-shell { grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); grid-template-areas: "intro form" "report form"; row-gap: 24px; }
.builder-intro { grid-area: intro; min-width: 0; }
.builder-aside { grid-area: report; min-width: 0; }
.builder-form { grid-area: form; min-width: 0; }
.builder-scope { color: #c8d5e8; font-size: .92rem; margin-top: 20px; }
.builder-scope a { color: #fff; text-decoration: underline; }
.builder-form .field, .builder-form .field-row, .builder-form .employee-grid { min-width: 0; }
.builder-form input, .builder-form select, .builder-form textarea { min-width: 0; max-width: 100%; }
.builder-form .btn, .report-cta .btn { white-space: normal; overflow-wrap: anywhere; }
.builder-form .sample-actions { flex-wrap: wrap; }
.builder-form .form-head { flex-wrap: wrap; }
.flow-step { min-width: 0; border: 1px solid var(--line); border-radius: 15px; }
.flow-step > summary { padding: 18px; font-family: var(--ff-display); color: var(--navy); font-weight: 700; cursor: pointer; scroll-margin-top: 100px; }
.flow-step > summary:focus-visible { outline: 3px solid var(--indigo); outline-offset: 3px; border-radius: 15px; }
.flow-step .builder-step { border: 0; padding-top: 8px; }
.flow-step legend { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
.flow-controls { display: flex; gap: 12px; flex-wrap: wrap; }
.flow-controls:empty { display: none; }
#resultSummary { scroll-margin-top: 100px; }
.operator-identity { font-size: .85rem; line-height: 1.6; padding-block: 16px; overflow-wrap: anywhere; }
@media (max-width: 1080px) {
  .builder-shell { grid-template-columns: minmax(0, 1fr); grid-template-areas: "intro" "form" "report"; }
}
@media (max-width: 480px) {
  .builder-form { padding: 18px 12px; }
  .builder-form .field-row, .builder-form .employee-grid { grid-template-columns: minmax(0, 1fr); }
  .flow-step > summary { padding: 16px 12px; }
}
/* Long source/library calls to action must also fit a 320px phone. */
.trust-cta { grid-template-columns: minmax(0, 1fr); }
.trust-cta .btn { white-space: normal; max-width: 100%; line-height: 1.4; }
