/* BelezaLink app safe areas */
:root {
    --bl-native-tabbar-height: 86px;
    --bl-native-tabbar-gap: 18px;
    --bl-native-bottom-space: calc(var(--bl-native-tabbar-height) + var(--bl-native-tabbar-gap) + env(safe-area-inset-bottom, 0px));
}

html {
    scroll-padding-bottom: var(--bl-native-bottom-space);
}

body {
    padding-bottom: var(--bl-native-bottom-space);
}

body.bl-no-native-bottom-space {
    padding-bottom: 0;
}

.app-shell,
.page-shell,
.mobile-shell,
.content-shell,
.main-shell,
.kanban-board,
main,
[data-app-content],
[data-scroll-content] {
    scroll-padding-bottom: var(--bl-native-bottom-space);
}

.app-shell,
.page-shell,
.mobile-shell,
.content-shell,
.main-shell,
[data-app-content] {
    padding-bottom: max(var(--bl-native-bottom-space), env(safe-area-inset-bottom, 0px));
}

.kanban-board,
.scroll-area,
.scroll-container,
.modal-body,
.modal-content,
.sheet-body,
.drawer-body,
.form-scroll,
[data-scroll-content] {
    padding-bottom: var(--bl-native-bottom-space) !important;
}

.safe-bottom,
.pb-safe,
.bottom-safe {
    padding-bottom: var(--bl-native-bottom-space) !important;
}

.fixed-bottom-safe,
.fab,
.floating-action,
.mobile-sale-fab {
    bottom: calc(var(--bl-native-bottom-space) + 8px) !important;
}

form {
    scroll-padding-bottom: var(--bl-native-bottom-space);
}

textarea,
input,
select,
button,
.btn,
.card,
.order-builder,
.order-total-row,
.order-payment-summary {
    scroll-margin-bottom: var(--bl-native-bottom-space);
}

@supports (height: 100dvh) {
    .full-height-app,
    .h-screen,
    .min-h-screen {
        min-height: 100dvh;
    }
}
