/* --- SMALLER CELL FONT SIZE --- */
.fi-ta-cell,
.fi-ta-text-item-label,
.fi-ta-text-item,
.fi-ta-header-cell-label {
    font-size: 0.75rem !important;
}

.fi-ta-cell,
.fi-ta-header-cell {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fi-input[type='number'],
.fi-input[inputmode='decimal'],
.fi-input[inputmode='numeric'] {
    text-align: right !important;
    font-variant-numeric: tabular-nums !important;
}

/* --- MATERIAL OUTLINED INPUT: label on the border --- */
.fi-fo-field-wrp {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    margin-bottom: 6px !important;
    margin-top: 6px !important;
    /* room for label to sit above */
}

.fi-fo-field-wrp-label {
    position: absolute !important;
    top: -7px !important;
    left: 8px !important;
    z-index: 1 !important;
    background: #ffffff !important;
    padding: 0 3px !important;
    line-height: 1 !important;
}

.fi-fo-field-wrp-label label {
    font-size: 0.62rem !important;
    font-weight: 500 !important;
    color: #6b7280 !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
    margin: 0 !important;
}

/* Blue label on focus */
.fi-fo-field-wrp:focus-within .fi-fo-field-wrp-label label {
    color: #3b82f6 !important;
}

/* Blue border on focus */
.fi-fo-field-wrp:focus-within .fi-input-wrp {
    border-color: #3b82f6 !important;
}

.fi-sc-form {
    gap: 0.5rem !important;
}

.fi-sc.fi-sc-has-gap {
    gap: 0.5rem !important;
}

.fi-section:not(.fi-section-not-contained):not(.fi-divided)>.fi-section-content-ctn>.fi-section-content {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
}

.fi-section:not(.fi-section-not-contained).fi-divided>.fi-section-content-ctn>.fi-section-content>* {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
}

.fi-section:not(.fi-section-not-contained)>.fi-section-header {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}

.fi-section.fi-section-not-contained,
.fi-section.fi-section-not-contained>.fi-section-content-ctn {
    row-gap: 0.5rem !important;
}

.fi-fo-field {
    row-gap: 0.25rem !important;
}

.fi-fo-field .fi-fo-field-label-col,
.fi-fo-field .fi-fo-field-content-col {
    row-gap: 0.125rem !important;
}

.fi-fo-field-wrp {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}