.tooltip-custom {
padding: 10px !important;
border-radius: 6px !important;
max-width: 300px !important;
}

.tooltip-custom > * {
margin-bottom: 10px !important;
}

.tooltip-custom > *:last-child {
margin-bottom: 0 !important;
}

/* Offcanvas com layout em coluna */
.offcanvas {
display: flex;
flex-direction: column;
max-height: 100dvh; /* usa viewport dinâmica (mobile) */
}

/* Cabeçalho não cresce */
.offcanvas-header {
flex: 0 0 auto;
}

/* Corpo rola internamente */
.offcanvas-body {
flex: 1 1 auto;
min-height: 0;                /* 🔑 permite o scroll interno em layout flex */
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

/* Isola a rolagem dentro do offcanvas/modal */
.offcanvas, .offcanvas-body {
overscroll-behavior: contain;
}

/* Garante que o corpo é realmente rolável em layout flex */
.offcanvas {
display: flex;
flex-direction: column;
max-height: 100dvh;
}
.offcanvas-header { flex: 0 0 auto; }
.offcanvas-body {
flex: 1 1 auto;
min-height: 0;
overflow-y: auto;
-webkit-overflow-scrolling: touch;
}

/* Desktop: sem scroll interno (mantém seu comportamento atual) */
@media (hover: hover) and (pointer: fine) {
.left-container,
.left-container .left-container-content {
overflow: hidden !important;
max-height: none !important;
overscroll-behavior: auto !important;
-webkit-overflow-scrolling: auto !important;
touch-action: auto !important;
}
}

/* Mobile / Tablet: habilita scroll interno */
@media (hover: none) and (pointer: coarse) {
.left-container {
overflow-y: auto !important;
-webkit-overflow-scrolling: touch !important;
max-height: 100dvh; /* ocupa até a altura da viewport */
overscroll-behavior: contain; /* evita que a rolagem vaze pro body enquanto rola aqui */
}
.left-container .left-container-content {
min-height: 0 !important; /* necessário para flex permitir scroll interno */
}
}

button {
overflow: hidden !important;
overflow-y: hidden !important;
overflow-x: hidden !important;
}

#calloutLogin .alert {
background-color: transparent !important; /* remove cor de fundo */
border: none !important;                  /* remove borda */
color: inherit !important;                /* usa a cor padrão do texto */
padding: 0 !important;                    /* remove espaço extra */
}

.alert-primary,.alert-secondary,.alert-success,.alert-danger,.alert-warning,.alert-info,.alert-light,.alert-dark {
background-color: transparent !important; /* remove cor de fundo */
border: none !important;                  /* remove borda */
color: inherit !important;                /* usa a cor padrão do texto */
padding: 0 !important;                    /* remove espaço extra */
}