/* Site-wide control alignment contract. Keep this stylesheet last. */
.button,
label.button,
label.file-button {
  display: inline-flex;
  box-sizing: border-box;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 0;
  line-height: 1.2;
  text-align: center;
  vertical-align: middle;
}

label.button,
label.file-button {
  width: auto;
  color: inherit;
  font-size: inherit;
  font-weight: 750;
}

.button.compact,
label.button.compact,
label.file-button.compact { min-height: 34px; }

.requirements-actions,
.requirements-step-actions,
.requirements-design-reminder-actions,
.dialog-actions,
.guarded-action-buttons,
.project-list-actions,
.project-scan-actions,
.project-scan-toolbar,
.organization-card-actions,
.organization-domain-actions,
.actionable-error-actions,
.findings-filter-actions,
.findings-approval-actions,
.aep-context-actions,
.aep-inline-deployment > div,
.replicator-job-actions {
  align-items: center;
}

.requirements-actions > *,
.requirements-step-actions > *,
.requirements-design-reminder-actions > * { align-self: center; }

.findings-filters > label,
.model-usage-filters > label,
.organization-domain-form > label,
.access-assignment-toolbar > label,
.aep-context-fields > label,
.field-row > label { min-width: 0; margin-bottom: 0; }

.findings-filters > .button,
.model-usage-filters > .button,
.organization-domain-form > .button,
.access-assignment-toolbar > .button { align-self: end; }

input,
select,
textarea,
.button { max-width: 100%; }

/* Native choice controls must never inherit the full-width text-field contract. */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  width: 18px;
  height: 18px;
  min-width: 18px;
  max-width: 18px;
  flex: 0 0 18px;
  margin: 0;
  padding: 0;
}

@media (max-width: 650px) {
  .requirements-actions > *,
  .requirements-step-actions > *,
  .requirements-design-reminder-actions > * { width: 100%; }
  .dialog-actions,
  .guarded-action-buttons { align-items: stretch; }
  .dialog-actions .button,
  .guarded-action-buttons .button { flex: 1 1 auto; }
}
