/* A common interaction rhythm for CRM forms and actionable validation. */
.crm-form-section+.crm-form-section{margin-block-start:16px;padding-block-start:12px;border-block-start:1px solid #e5eaf1}
.crm-form-section>h2{display:flex;align-items:center;gap:8px;margin:0 0 8px;color:#344054;font-size:.9375rem}
.crm-form-section>h2 i{color:var(--org-accent-hover)}
.crm-body form.business-form>.form-actions{position:sticky;bottom:12px;z-index:30;display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px;border:1px solid #e0e6ef;border-radius:12px;background:rgba(255,255,255,.97);box-shadow:0 5px 22px rgb(20 35 60 / 8%);margin-block-start:20px}
.crm-validation-summary{display:grid;gap:8px;border:1px solid #f4bac1;border-radius:10px;background:#fff5f6;color:#ae263b;padding:14px;margin-block-end:18px;font-size:.875rem}
.crm-validation-summary ul{margin:0;padding-inline-start:20px}.crm-validation-summary a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.crm-body .has-errors :is(input,select,textarea){border-color:#d5445b}.crm-body :is(input,select,textarea,button,a,summary):focus-visible{outline:2px solid #2783c4;outline-offset:3px}
.crm-optional>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;cursor:pointer;list-style:none;border-block-end:1px solid #e9edf3}
.crm-optional>summary::-webkit-details-marker{display:none}.crm-optional>summary h2{font-size:.9375rem;margin:0}.crm-optional>summary p{font-size:.8125rem;color:#778396;margin:4px 0 0}.crm-optional>summary::after{content:'+';font-size:1.25rem;color:#667085}.crm-optional[open]>summary::after{content:'−'}
.crm-body :is(input[type=email],input[type=tel],input[inputmode=tel]){direction:ltr;text-align:start}
@media(prefers-reduced-motion:reduce){.crm-body *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:600px){.crm-body form.business-form>.form-actions{bottom:6px;padding:10px}.crm-body form.business-form>.form-actions button[type=submit]{flex:1}.crm-form-section+.crm-form-section{margin-block-start:18px}}
.crm-body .generic-form-panel>form{display:block}
.crm-body .generic-form-panel>form>.ca-launch{margin-block-end:16px}
.crm-body .crm-form-section{width:100%;min-width:0}
.crm-body .generic-form-page-head h1{font-size:1.25rem}
.crm-body .generic-form-page-head p{font-size:.8125rem}
.crm-body .crm-form-section>.structured-form-grid.business-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}

.crm-body .generic-form-panel>form{padding:16px}
.crm-body .crm-form-section>.structured-form-grid.business-fields{padding:10px 0!important}
