.admin-main .btn:not(.btn-close),
.public-form-container .btn:not(.btn-close),
.modal .btn:not(.btn-close) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 2.125rem;
    padding: .35rem .75rem;
    border-radius: .65rem;
    font-size: .875rem;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
}

.public-form-container .btn-lg {
    min-height: 3rem;
    padding: .65rem 1.15rem;
    font-size: 1rem;
}

.admin-main .btn-group > .btn,
.modal .btn-group > .btn {
    min-width: 2.125rem;
    padding-inline: .6rem;
    border-radius: 0;
}

.admin-main .btn-group > .btn:first-child,
.modal .btn-group > .btn:first-child {
    border-radius: .65rem 0 0 .65rem;
}

.admin-main .btn-group > .btn:last-child,
.modal .btn-group > .btn:last-child {
    border-radius: 0 .65rem .65rem 0;
}

.admin-page-actions,
.admin-form-actions,
.admin-table-actions,
.admin-filter-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
}

.admin-page-actions,
.admin-table-actions {
    justify-content: flex-end;
}

.admin-form-actions,
.admin-filter-actions {
    justify-content: flex-start;
}

.admin-table-actions form {
    display: inline-flex;
    margin: 0;
}

.admin-main .btn > .fa-solid,
.public-form-container .btn > .fa-solid,
.modal .btn > .fa-solid {
    width: 1rem;
    flex: 0 0 1rem;
    text-align: center;
}

.admin-main .form-editor-palette .btn {
    justify-content: flex-start;
}

@media (max-width: 575.98px) {
    .admin-page-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .admin-form-actions > .btn,
    .admin-form-actions > form {
        flex: 1 1 auto;
    }

    .admin-form-actions > form > .btn {
        width: 100%;
    }
}
