/*#region FpmTextBox*/
.fpmtextbox {
    align-self: flex-start;
    display: flex;
    justify-content: start;
    line-height: 1;
    max-width: 100%;
    min-height: var(--fpm-default-height);
    width: fit-content;
}

    .fpmtextbox > .fpmtextbox-label {
        align-items: center;
        color: var(--fpm-text-color);
        display: inline-flex;
        font-size: var(--fpm-font-size);
        font-weight: 400;
        margin: 0;
        padding: var(--fpm-input-label-padding);
        text-align: center;
        white-space: nowrap;
    }

    .fpmtextbox.full-width {
        width: 100%;
    }

        .fpmtextbox.full-width > .e-input-group {
            width: 100%;
        }

    .fpmtextbox.width-small {
        width: var(--fpm-width-small);
    }

        .fpmtextbox.width-small > .e-input-group {
            min-width: 0;
            width: 100%;
        }

    .fpmtextbox.width-medium {
        width: var(--fpm-width-medium);
    }

        .fpmtextbox.width-medium > .e-input-group {
            min-width: 0;
            width: 100%;
        }

    .fpmtextbox.width-fit {
        width: fit-content;
    }

    .fpmtextbox.inputgroup > .fpmtextbox-label {
        background-color: var(--fpm-lightgray-light);
        border: 1px solid var(--fpm-lightgray-light);
        border-radius: var(--fpm-border-radius) 0 0 var(--fpm-border-radius);
    }

    .fpmtextbox.inputgroup > .e-input-group {
        border-radius: 0 var(--fpm-border-radius) var(--fpm-border-radius) 0;
    }

    .fpmtextbox.is-centered {
        align-self: center;
    }

    .fpmtextbox.text-centered input {
        text-align: center;
    }

    .fpmtextbox .e-input-group .e-textbox {
        font-size: 1rem !important;
        height: 100% !important;
        min-height: var(--fpm-default-height) !important;
    }

    .fpmtextbox.no-label .e-control-wrapper .e-textbox {
        height: var(--fpm-default-height) !important;
    }
/*#endregion*/

.e-rowcell > div:has(.fpminput:not(.fpmcheckbox)) {
    display: flex;
    margin-inline: auto;
    width: fit-content;
}

.e-rowcell > div:has(.fpminput.full-width) {
    width: 100%;
}

.e-rowcell .e-checkbox-wrapper.fpmcheckbox {
    height: 100% !important;
    top: 0 !important;
}

.fpmcard.e-card.three-across:has(.fpmcheckbox) > .e-card-content,
.fpmcard.e-card.two-across:has(.fpmcheckbox) > .e-card-content {
    gap: 0;
}

.e-grid .e-row .e-input-group {
    margin: 0 !important;
}