/* Public-form-only layout and composition. Foundations live in design-system.css. */
body { display:flex; width:100%; min-width:0; min-height:100vh; flex-direction:column; background:var(--color-page); overflow-x:hidden; }
.page-shell { width:calc(100% - var(--space-8)); min-width:0; max-width:var(--form-max); margin-inline:auto; padding:clamp(var(--space-5),5vw,var(--space-12)) 0; overflow-x:clip; }
.form-card { width:100%; min-width:0; max-width:100%; overflow:hidden; border-radius:var(--radius-card-large); box-shadow:var(--shadow-elevated); }
.form-header,.fields,.form-footer,.not-found { padding:var(--space-8) clamp(var(--space-5),5vw,var(--space-10)); }.form-header { border-top:.3rem solid var(--color-accent); border-bottom:1px solid var(--color-border); }.organization { margin:0 0 var(--space-2); color:var(--color-accent); font-weight:750; }.introduction,.not-found>p:last-child,.state-card>p:last-child { color:var(--color-text-secondary); line-height:1.65; }
.notice,.validation-summary { margin:var(--space-6) clamp(var(--space-5),5vw,var(--space-10)) 0; }.notice { display:flex; gap:var(--space-3); padding:var(--space-4); border:1px solid var(--color-info-border); border-radius:var(--radius-control); color:var(--color-info); background:var(--color-info-soft); }.notice p { margin:0; line-height:1.55; }
.fields { display:grid; min-width:0; grid-template-columns:minmax(0,1fr); gap:var(--space-3); }.field-section { width:100%; min-width:0; max-width:100%; padding:var(--space-5) 0; }.field-section+.field-section { border-top:1px solid var(--color-border); }.field-section fieldset { width:100%; min-width:0; max-width:100%; margin:0; padding:0; border:0; }.field-section>label,fieldset legend { display:block; max-width:100%; margin-bottom:var(--space-2); overflow-wrap:anywhere; }.help-text { max-width:100%; margin:0 0 var(--space-3); overflow-wrap:anywhere; }
.standalone-option { margin-bottom:var(--space-2); }.field-errors p { margin:var(--space-1) 0 0; }.form-footer { border-top:1px solid var(--color-border); background:var(--color-surface-subtle); }.form-footer button { width:100%; min-height:var(--control-height); }
.tenant-brand { margin-bottom:var(--space-6); }.tenant-logo { width:min(100%,31rem); }.not-found,.state-card { min-height:31rem; display:flex; flex-direction:column; justify-content:center; text-align:center; }.not-found .tenant-brand,.state-card .tenant-brand { justify-content:center; }.state-card .state-icon { margin:0 auto var(--space-5); }
@media(max-width:480px){.page-shell{width:100%;max-width:100%;padding:0}.form-card{width:100%;max-width:100%;min-height:calc(100vh - 8rem);border-inline:0;border-radius:0;box-shadow:none}.form-header,.fields,.form-footer,.not-found{padding-inline:var(--mobile-padding)}.notice,.validation-summary{max-width:calc(100% - (2 * var(--mobile-padding)));margin-inline:var(--mobile-padding)}.tenant-logo{width:100%;max-width:100%}.state-card,.not-found{min-height:calc(100vh - 8rem)}}
